硬件:
我可以使用Raspberry Pi的GPIO上的哪些引脚?
软件:
有哪些I²C库可用?
#1 楼
这里有很多关于RPi GPIO的信息:http://elinux.org/Rpi_Low-level_peripherals据此,您可以为I²C编程任何GPIO引脚,但是:
引脚3(SDA0)和引脚5(SCL0)被预设用作I²C接口。因此,板上有用于这些引脚的1.8千瓦上拉电阻。
该Wiki页面还提供了一些入门的低级GPIO代码示例,适用于多种语言。如果您需要重新了解I²C的实际情况,请参考RPi。
对于特定的I²C控制,此python库可能会有所帮助,此博客文章对此进行了讨论,其中包括一个代码示例。
#2 楼
对此进行了大量讨论。这是我的阅读和了解的内容:使用Debian“ squeeze”,默认内核中未内置I2C支持。
必须编译自定义内核使用i2cspi模块(这里是GIT树摘录)
到目前为止,已编写的驱动程序仅适用于3.2内核及更高版本,并且由于安全漏洞,作者无意支持3.1.9+漏洞(Chris Boot讨论了驱动程序)
幸运的是,目前处于RasPi测试版的Debian“ wheezy”发行版将安装该驱动程序。它带有3.2内核。
评论
是的,正如您提到的,它已内置在标准内核中-官方Raspbian和Debian Wheezy发行版。我在这里遵循了一些易于遵循的建议,并且在/ dev中显示了I2C设备... raspberrypi.org/phpBB3/viewtopic.php?f=37&t=15511如果需要,这里还有一些详细信息:robot electronics.co.uk/files/rpi_i2c_setup.doc
– dodgy_coder
2012年9月17日下午6:14
要获取更多详细信息,请在此处而不是在Web链接上保留数据,并希望这不会过时:从Wheezy 2012-09-18图像开始,您可以编辑/etc/modprobe.d/raspi-blacklist.conf注释掉i2c-bcm2708的条目;然后编辑/ etc / modules并附加i2c-dev;然后重启。现在,您应该有一个/ dev / i2c-0特殊文件,该文件非常易于使用。
–达米安
2012年11月13日在8:57
#3 楼
这是我做过的一些示例测量温度
模数转换器
生成信号
#4 楼
硬件:如Tapio所述,该硬件在http://elinux.org/Rpi_Low-level_peripherals
软件:
Linux用户空间(
#include <linux/i2c-dev.h>
)中有一个i2c-dev标头。此外,您需要一个字符伪指令来读取。这可以通过加载正确的模块来完成。 i2c_bcm2708
用于低级驱动器,i2c-dev
用于生成总线的字符指令。应用... sudo modprobe -r i2c_bcm2708
sudo modprobe i2c_bcm2708 baudrate=<your preferred baudrate>
即时加载它们。申请...
sudo sh -c 'echo "i2c-dev" >> /etc/modules'
sudo sh -c 'echo "options i2c_bcm2708 baudrate=<your preferred baudrate>\n" > /etc/modprobe.d/custom.conf
并取消将
i2c_bcm2708
和/etc/modprobe.d/raspi-blacklist.conf
列入黑名单,使/dev/i2c-0
和/dev/i2c-1
永久显示。从现在开始,您可以按照有关如何自己使用I²Cdel maestro的提示。
与其他方法相比,我更喜欢这种方法,因为它与平台无关。只要存在低级别的I²C驱动程序,您就可以将
linux/i2c-dev.h
与其他设备一起使用。 问候
评论
关于将Edison Sparkfun GPIO引脚用于I2C的潜力有何评论?
–地理理论
2015年11月9日14:21