您好,请不要马上删除。我在使用C ++在Raspberry Pi上为I2C / SPI编程找到好的CODE示例时遇到了麻烦。我已经查看了wiringPi和其他来源,但他们没有提供我们想要的源代码的大量文档。有没有人在详细记录的源代码甚至视频解释中找到了令人愉快的例子?如果你有可能请分享一个链接?
谢谢!
答案 0 :(得分:2)
在Raspberry Pi上用C语言执行I2C很容易 - 大多数情况下你需要普通的低级文件操作 - 打开,读取,写入等。
首先打开相应的设备:
int f = open ("/dev/i2c-1", O_RDWR);
然后使用ioctl()
设置I2C设备地址:
ioctl (f, I2C_SLAVE, address);
然后只需使用普通的read()
和write()
调用来发送和接收数据。
困难的部分是了解设备的数据协议 - 这可能会或可能不会被记录。对于RPi,许多供应商只提供Python编程示例,因此我们必须对Python代码中的实际协议进行反向工程。
我已经使用这种方法将各种设备连接到RPi - 显示器,电机,传感器等。老实说,读取和写入I2C总线非常容易 部分工作:))