背景

最近的项目需要使用树莓派的硬件开发。在多方面考虑后,决定使用树莓派自带串口与有人USR-LTE-7S4进行通讯。首先得学习树莓派GPIO操作。

硬件准备

  • 树莓派3
  • LED*1
  • 220Ω电阻
  • 杜邦线若干

安装依赖库

理论上直接操纵树莓派的相关文件就可以直接控制GPIO引脚电平(Linux系统中所有硬件都被虚拟成文件),但是我们没有必要去造这个轮子。
本人熟悉C++,所以决定使用wiringPi这一开源库。
WiringPi官方网站
WiringPi官方手册
首先输入shell指令$ gpio -v确定树莓派没有安装WiringPi(如果安装了会显示版本号)。
然后安装Git$ sudo apt-get install git-core
更新系统$ sudo apt-get update $ sudo apt-get upgrade
新建一个目录用于存放WiringPi临时文件,然后在此目录内$ git clone git://git.drogon.net/wiringPi .
然后./build
无需root权限就可以进行安装。

初步了解WiringPi

安装好后,使用命令$ gpio readall查看引脚信息。
引脚信息
引脚图
很形象地展示了树莓派的引脚状况。BCM这一列暂时不去考虑,V代表电平,Mode表示工作模式,Name就不解释了,wPi是WiringPi的接口编号,GPIO编程就使用此编号。
如果使用过单片机,就很容易理解了。
暂时先学两个命令gpio writegpio mode

1
2
$ gpio write <pin> <value>
$ gpio mode <pin> <mode>

例如

1
2
$ gpio write 1 1
$ gpio mode 1 OUT

使用shell脚本让一个LED闪烁

代码部分

直接上代码

1
2
3
4
5
6
7
8
gpio mode 1 OUT
while /bin/true
do
gpio write 1 1
sleep 0.5
gpio write 1 0
sleep 0.5
done

硬件连接

硬件连接

然后终端使用命令$ sh blink.sh,LED便可以闪烁。