树莓派与硬件模块双工通信,详细步骤配置I2C

在本教程中,详细介绍了如何在Raspberry Pi上设置I2C,让树莓派与支持I2C通信的硬件模块进行全双工通信。

Raspberry-Pi-I2C-Thumbnail.jpg

I2C是Inter-integrated Circuit的缩写,是一种允许一个芯片与另一个芯片同步通话的通信协议。Raspberry Pi内置了对I2C协议的支持,允许它与各种I2C功能的电路连接和通话。

我之前在树莓Pi项目中使用的两个具有I2C功能的电路例子是VEML6075 UV传感器ADXL345加速度计

Raspberry Pi上的I2C协议最酷的地方之一是它可以支持多个设备通信,一个独特的地址用于识连接到Raspberry Pi的I2C设备。

设备清单

以下是我用来设置Pi的I2C设备的设备清单,点击链接可直达特别优惠购买。

建议

可选

将I2C工具安装到Raspberry Pi上

在Raspberry Pi上启用协议之前,先安装I2C工具。

1. 但是,在安装I2C工具之前,首先需要更新我们的设备。

要更新软件包列表然后升级软件包,需要做的就是运行下面的命令。

sudo apt update
sudo apt full-upgrade

2. 当Raspberry Pi完成更新后,就可以安装I2C工具和Python SMBus包了。

要安装这两个软件包,请运行以下命令。

sudo apt install -y i2c-tools python3-smbus

i2c-tools包允许我们与Raspberry Pi上的I2C协议进行交互。使用它,能够检测I2C连接。

python3-smbus是一个python包,让我们可以使用Python与Raspberry Pi的I2C设备进行交互。

在Raspberry Pi上启用I2C协议。

在本节中,将向您展示如何在您的Pi上启用I2C协议。默认情况下,I2C协议的支持在内核中没有被启用。

1. 为了在内核中启用对I2C的支持,我们需要使用raspi-config工具。

通过运行以下命令启动配置工具。

sudo raspi-config

当你在这个工具中时,你可以使用箭头键来导航,使用ENTER键来选择。

2. 在这个工具里面,我们需要进入5个接口选项。

本页包含了Raspberry Pi支持的串行接口的所有选项。

Raspberry-Pi-I2C-Raspi-Config-Interfacing-Options.png

3. 接下来,你需要选择P5 I2C。

Raspberry-Pi-Select-I2C.png

4. 现在将询问您是否要启用ARM I2C接口。

要启用接口,选择<是>选项,然后按ENTER键。

Raspberry-Pi-Enable-I2C.png

5. 现在,将收到通知,说明已经在设备上启用了 I2C。

可以通过使用ESC键退出工具。

Raspberry-Pi-I2C-Successfully-Enabled.png

6. 为了让改变生效,需要重新启动树莓派。

要重启Raspberry Pi,需要做的就是使用下面的命令。

sudo reboot

对内核设置的更改将在Raspberry Pi完成重启后加载。

测试I2C连接

现在已经在设备上启用了I2C,测试一下它是否在检测连接。在本节中,您需要确保您的设备使用正确的GPIO引脚连接了一个I2C功能。如果不确定要使用什么引脚,请务必查看我的树莓派引脚指南。本指南将为您提供一些使用正确引脚的图例。

1. 接好I2C设备后,就可以使用前面安装的i2c-tools包来检测设备。

通过运行以下命令来检测当前连接到Raspberry Pi的所有设备。

sudo i2cdetect -y 1

请注意,如果您使用的是第一代的Raspberry Pi,那么这个命令会有所不同。现代的Pi使用端口1,而原来的Pi使用端口0。对于原始的Pi,请使用以下命令。

sudo i2cdetect -y 0

2. 从这个命令中,应该看到一些十六进制的数字出现。这些数字代表了您的I2C设备可以被访问的地址。如果你只看到连字符–那么需要检查电路是否正确接线。如果不能正常工作,那么你的设备可能有问题。

希望到这里,您已经成功地在您的Raspberry Pi上运行了I2C协议。如果你遇到任何问题或有任何反馈,欢迎在下面留言。

平均: 0 / 5. votes: 0

到目前为止还没有投票!成为第一位评论此文章。

欢迎转载,请留下出处链接:Labno3 » 树莓派与硬件模块双工通信,详细步骤配置I2C

赞 (0)

评论

7+9=