I2C Bus Design

I2C Bus Design

1. First, let’s discuss open-drain output and push-pull output First, watch the video explanation: The following video is from Guo Tianxiang Push-Pull Output Structure and Principle: A push-pull output circuit consists of two complementary transistors (usually an NPN transistor and a PNP transistor). In this structure, when the input is high, the upper transistor (like … Read more

A Step-by-Step Guide to Mastering Arduino UNO R4

A Step-by-Step Guide to Mastering Arduino UNO R4

Follow+Star Public Account Number, don’t miss out on exciting content Source | Arduino Chinese Community The Arduino UNO R4 is a new generation classic development board launched in 2023, equipped with a 32-bit Renesas RA4M1 Cortex-M4 processor, significantly improving performance and adding practical features such as Wi-Fi and DAC. It comes with 32 kB of … Read more

FPGA Digital Barometer Design: I2C Driver for BMP280 and Dynamic LED Display

FPGA Digital Barometer Design: I2C Driver for BMP280 and Dynamic LED Display

1. Experiment Task Task: Based on the STEP-MAX10M08 core board and STEP BaseBoard V4.0 baseboard, complete the design of a digital barometer and observe the debugging results. Requirements: Drive the digital barometer on the baseboard, displaying BMP280 information on an 8-digit scanning LED display. Analysis: Use FPGA programming to drive the I2C interface of the … Read more

Ultra-Miniature Circuit Board Integrating Six Sensors: Let’s Explore What It Can Transmit!

Ultra-Miniature Circuit Board Integrating Six Sensors: Let's Explore What It Can Transmit!

[Disassembly] Monument This is a low-power Bluetooth device, and this tiny circuit board integrates six types of sensors. Let’s see what it can transmit. ▽ It is called “Monument” because it looks like a stone tablet. ▽ Stripped of its fancy attire, revealing the transparent “xq underwear”. ▽ Shyly turning away. ▽ Screwless design for … Read more

Accessing FPGA Registers via UART

Accessing FPGA Registers via UART

I often use ZYNQ, and I access FPGA registers through Linux. Recently, I experimented with the Xilinx XC7K325 development board KC705, which is a pure FPGA without ARM. So how do we access FPGA registers? I2C transmits one byte and responds each time, without the need for an additional feedback mechanism; SPI sends and receives … Read more

Additional Things You Need to Know About I2C Signals (Part 1)

Additional Things You Need to Know About I2C Signals (Part 1)

Hello everyone, I am Goat.I2C signals are a very common type of signal. It is a two-wire serial bidirectional bus used to connect microcontrollers and external devices. Because it only requires two pins (CLK and DATA), the hardware implementation is simple and highly scalable, making it widely used for communication between multiple integrated circuits ICs … Read more

Designing I2C Device Drivers for VxWorks 7

Designing I2C Device Drivers for VxWorks 7

1. Introduction The Inter-Integrated Circuit (I²C) is a widely used low-speed, two-wire communication protocol designed for communication between integrated circuits. In embedded systems, I²C is commonly used to connect sensors, EEPROMs, ADCs, and other peripherals. [VxWorks 7] introduces a modern, scalable, and modular driver framework built on VxBus, supporting dynamic driver registration, device tree integration, … Read more

What Communication Technologies Should You Master for Microcontroller Work?

What Communication Technologies Should You Master for Microcontroller Work?

Recently, a reader asked a question: What communication technologies should one master when working with microcontrollers?With the development of technology, there are more and more communication technologies, but in the embedded field, the common communication technologies are actually not many, such as UART, I²C, SPI, CAN, USB, and TCP/IP, which are the most common.These communication … Read more

How to Communicate with Multiple Slave Serial Ports Using a Single Microcontroller Serial Port?

How to Communicate with Multiple Slave Serial Ports Using a Single Microcontroller Serial Port?

To join the hardware electronics learning group, reply with “Join Group“. Sometimes, when a circuit needs to implement a master-slave communication setup, the commonly used communication protocols are SPI, I2C, or RS485 bus forms. Among these, I2C is the simplest and most convenient for on-board communication, requiring only two wires to establish a bus. However, … Read more

Embedded – Simulating the IIC Bus

Embedded - Simulating the IIC Bus

The following is a source code example of simulating an I2C (IIC) controller using the C language, suitable for general microcontroller platforms (here, it simulates the operation of GPIO pin operations to implement the SCL and SDA lines). The code implements the basic functions of I2C, including initialization, start signal, stop signal, sending acknowledgment bits, … Read more