我尝试过通过 I2C 在 RPi3 和 stm32 之间进行通信。首先我安装了 i2c-tools 和 python-smbus。总而言之,我在 RPI 上使用了 python 脚本,如下所示:
import smbus
bus = smbus.SMBus(1)
address = 0x0A
data = [1,2,3,4,5,6,7,8]
bus.write_i2c_block_data(address, 0, data)
Run Code Online (Sandbox Code Playgroud)
当我运行脚本时,我可以看到以下错误:
IOError: [Errno 121] Remote I/O error
Run Code Online (Sandbox Code Playgroud)
STM32 配置为 I2C 从机,两个设备连接正确(SDA、SCL 和 GND)。我怎么知道呢?我使用 BCM2835 库编写了程序。C 程序运行正常。C 程序发送缓冲区没有任何错误。STM32也接收到缓冲区,没有任何错误。你能告诉我,我做错了什么吗?
先感谢您。