sudo apt-get install python-dev
sudo apt-get install python-rpi.gpio
该库使用Python 封装原生C 代码的方式使IO 尽可能快。
由于我使用的是Raspbian,所以我需要修改一些相应配置
编辑文件/etc/modules
:
sudo nano /etc/modules
文件末尾添加:
i2c-bcm2708
i2c-dev
再看看/etc/modprobe.d/raspi-blacklist.conf
这个文件中是否有如下这句话:
blacklist i2c-bcm2708
若有,则在其前面添加#
,将其注释
最后安装Python I2C 库:
sudo apt-get install python-smbus
重启即可使用I2C
安装并使用i2c-tools:
sudo apt-get install i2c-tools
将I2C 设备连接到树莓派上并运行命令:
sudo i2cdetect -y 1
若I2C 是可用的,则会出现I2C 设备地址图
i2cDetect 是一个诊断工具,适合在使用一个新的I2C 设备的第一时间运行它
我使用的是Raspbian,故需要做一些相应的配置修改
编辑文件/etc/modules
:
sudo nano /etc/modules
文件末尾添加:
spidev
再看看/etc/modprobe.d/raspi-blacklist.conf
这个文件中是否有如下这句话:
blacklist spi-bcm2708
若有,则在其前面添加#
,将其注释
树莓派的SPI 特性也被Python 库所支持,该库允许在Python 程序中进行SPI 通信。要安装该库,首先安装Git:
cd ~
sudo apt-get install python-dev
git clone git://github.com/doceme/py-spidev
cd py-spidev/
sudo python setup.py install
重启树莓派就能使用SPI 了
当不需要通过控制台线缆连接树莓派,而是通过wifi 或以太网连接时,可将串口释放,使得我们可以连接诸如GPS 等外围设备到串口:
sudo nano /etc/inittab
但我的树莓派根本就没有这个文件
找到这一行:
T0:23:respawn:/sbin/getty -L ttyAMA0 115200 VT100
并注释:
#TO:23:respawn:/sbin/getty -L ttyAMAO 115200 VT100
安装PySerial 库:
sudo apt-get install python-serial
库的使用非常容易,以下语法能够创建一个连接:
ser = serial.Serial(DEVICE, BAUD)
其中,DEVICE 是连接到串口的设备,BAUD 是数字表示的波特率,例如:
ser = serial.Serial('/dev/ttyAMA0', 9600)
一旦建立连接,即可发送数据:
ser.write('some text')
监听响应通常使用包含读取和打印的循环:
while True:
print(ser.read())
安装Minicom:
sudo apt-get install minicom
Minicom 安装好后,可使用如下命令开启一个与连接到GPIO 接口的RXD 与TXD 引脚的串行设备之间的串行通信会话:
minicom -b 9600 -o -D /dev/ttyAMA0
-b 之后的参数表示波特率,-D 之后的是串口。
波特率应与要通信的设备所设置的波特率相同
该命令会开启一个Minicom 会话,此时要做的就是开启local echo,这样就可以看到输入的命令
按下Ctrl-A,然后再按Z
按下E,开启local echo
此时输入的任何内容都会被发送到串行设备,并且任何来自串行设备的内容也都会显示出来。
Minicom 在查看来自串行设备的消息或检查设备是否工作方面是一个非常不错的工具。