树莓派开发板上提供了大量的GPIO引脚,它们通过40Pin的排针引出,早期版本只有26Pin。除去通用输入输出引脚、5V/3.3V电源和地引脚外,还提供了SPI、UART和IIC接口,新版本的开发板在原有基础上不断进行功能的扩展。
1. GPIO编号方式
树莓派的GPIO端口编号存在三种不同的方式:
- 物理「BOARD」编号方式:
从左到右,从上到下,左边奇数,右边偶数,1-40。这种编号方式的优点是无论开发板版本如何变化,我们的硬件都能正常工作,无需重新连接。
40pin
- BCM编号方式:
指的是板载的博通CPU上的GPIO编号,侧重CPU寄存器。由于CPU有大量的引脚,所以内部分配的引脚编号和板载排针的编号不一致。
BCM编号
- wiringPi编号方式:
侧重实现逻辑,把对外引出的GPIO端口从0开始编号,非常方便程序的编写。
40Pin对照表
2. wiringPi库介绍
wiringPi是由Gordon用C语言编写的库,起初主要作为BCM2835芯片的GPIO库,而现在已经非常的丰富,除去GPIO库,还包括了IIC库、SPI库、UART库和软件PWM库等。
wiringPi库非常适合那些具有C基础,在此之前接触过单片机或者嵌入式的开发人群。它的API函数和arduino的非常相似,这也使它受到极大的欢迎。
3. 安装wiringPi
1. 通过SSH远程登陆到树莓派,然后输入如下命令,更新树莓派各软件包和依赖到最新版本。
sudo apt-get update
sudo apt-get upgrade
update
2. 安装
wiringPi已经预装在了标准的树莓派系统中,可以输入如下命令进行更新或安装。
sudo apt-get install wiringpi
安装wiringPi
3. 测试
wiringPi包括了一套gpio命令,使用gpio命令可控制树莓派的各个接口。
输入如下命令,可显示当前wiringPi库版本和当前树莓派开发板的信息。
gpio -v
版本
输入如下命令,可以获取管教对应表。
gpio readall
打印管脚信息