I2C

I2C模块可使用I2C总线协议与开发板连接通信。可以同时连接多个从设备,并且每个从设备都有自己的唯一地址,这是固定的设备或在其上配置的。可以通过I2C主机进行控制。

设备使用7位寻址。可能与其他micro:bit开发板的解决方案不同。

怎样与设备进行通信?要发送的字节和解释响应的方式取决于所使用的设备,并查看其相关文档。

函数

microbit.i2c.init(freq=100000.sda=pin20,scl=pin19)

初始化指定的时钟频率frep,初始化sda和scl引脚。

警告:如果改变默认的I2C引脚,会导致指南针和加速度计停止工作,因为它们都默认连接到这些内部引脚。

microbit.i2c.read(addr,n,repeat=False)

从具有7位地址的I2C设备的addr地址读取n字节。如果repeat=True,则不会发送停止位。

microbit.i2c.write(addr,buf,repeat=False)

将buf的内容写入7位地址I2C设备的addr地址。如果repeat=True,则不会发送停止位。

连接

需要将scl引脚连接到microbit开发板的19引脚,将sda引脚连接到开发板的20引脚;还需要将i2c设备和microbit的GND相连。需要外部电源为microbit供电。

开发板上I²C线路上有内部上拉电阻,但使用特别长的导线或大量器件,可能需要添加额外的上拉电阻,以确保无噪音通信。