陈拓chentuo@ms.xab.ac.cn 2018.06.09/2018.06.10
从网上下载了几张精美的图片,感谢图片的制作者!
0. 概述
本文介绍树莓派 Zero W的GPIO控制,并用LED看效果。
0.1 树莓派GPIO编号方式
- 功能物理引脚
从左到右,从上到下:左边奇数,右边偶数:1-40
- BCM
编号侧重CPU寄存器,根据BCM2835的GPIO寄存器编号。
- wiringPi
编号侧重实现逻辑,把扩展GPIO端口从0开始编号,这种编号方便编程。如图 WiringPi一栏。
操作GPIO时一定先要清楚使用那一套编号。
1. 准备
1.1 硬件
- 树莓派(我测试了Pi 3B+和Pi Zero W)
- LED(3mm或5mm)
- 1KΩ电阻
- 杜邦线
- 电脑(我用Windows 7)
1.2 GPIO接口
1.3 接线
首先我们把LED和树莓派连接。LED的正极串联一个1KΩ电阻接树莓派的GPIO18(pin12),负极接地。
这个图是用Fritzing画的。
2. 测试
2.1 连接电脑和Pi Zero W
用putty连接电脑和Pi Zero W,看本文最后的参考文档。Host Name填raspberrypi.local,端口22,用户名pi,密码raspberry。
注意:boot分区有一个名为ssh的空文本文件,这个ssh文件容易丢失,如果ssh不能登录了,先检查ssh是否丢失。
2.2 用Shell命令直接控制GPIO
- 使GPIO18从内核空间暴露到用户空间中
pi@raspberrypi:~ $ sudo echo 18 > /sys/class/gpio/export
> 是IO重定向符号,IO重定向是指改变linux标准输入和输出的默认设备,指向一个用户定义的设备。echo 18 > export就是把18写入到export文件中。
执行该操作之后,/sys/class/gpio目录下会增加一个gpio18文件夹。