用python实现raspberry-pi中的I2C通信

2024-05-13 02:49:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用PYTHON或last choice C为raspberry pi配置I2C。我曾在ATMEL微控制器上工作过,它提供与任何设备的I2C通信。我想要一些类似的机制来制作覆盆子派。我有以下问题:

1我们必须定义I2C总线中每个设备的地址。如果我想从ATMEL微控制器发送一些数据到raspberry pi(将数据写入raspberry pi),那么raspberry pi的地址是什么,或者我们如何设置地址。

2如果我们在I2C总线上接收到一些数据,是否会出现中断或类似的情况?

三。哪个库最适合PYTHON还是C?

4我可以编写实现I2C协议的自定义代码吗?在

请帮忙。。。。提前谢谢。。在


Tags: 数据覆盆子定义地址pi情况i2craspberry
1条回答
网友
1楼 · 发布于 2024-05-13 02:49:09

我建议您使用i2c-devi2c-bcm2708模块,其中i2c总线将暴露到/dev文件系统。在

$ sudo modprobe i2c-dev
$ sudo modprobe i2c-bcm2708

现在将有i2c总线导出,列出它们

^{pr2}$

使用它并不是那么简单,因为它是i2c,它有不同的协议和地址。在

如果要在C中使用它,这是tutorial。在

在python中,您可以安装^{}包并按如下方式使用:

from devi2c import I2C
device, bus = 0x42, 0
i2c = I2C(device, bus)
value = i2c.read(1)         # read 1 byte
i2c.write(b’some raw data’)     # write bytes
i2c.close()                 # close connection

相关问题 更多 >