文档库

最新最全的文档下载
当前位置:文档库 > 树莓派通过GPIO控制输出led

树莓派通过GPIO控制输出led

Raspberry pi使用的是2B绿板,配16G内存卡,配有一个BCM2836900MHz 4核ARM Cortex-A7的CPU,1GB内存,USB、HDMI、网口等普通接口,并配有40pin的GPIO接口,用于实现丰富的数字输入输出功能,其中包含I2C、UART、SPI等不同传输类型,并有三种编码方式,分别为wringPi、BCM和BOARD编码方式。如下图所示:

树莓派通过GPIO控制输出led

2.软件环境:

Raspberrypi官方上推荐python编程,且C语言的的开发环境需要安装WiringPi,我们这里主要用python来实现,相比C语言更加直观。

Raspberry pi中烧写官方推荐Raspbian系统,可通过命令行操作,也可类似Windows通过可视化界面接入系统,系统中预装了Python,但是需要安装设置python的库文件,由于goolecode被国内屏蔽了,添加源总不成功,所以通过安装git来添加Adafruit的代码库到Pi上,打开LX终端(LXTerminal),更新apt-get 软件安装包列表(注意必须要在网络连接正常情况下),安装git软件,并添加Adafruit的代码库,具体指令如下:

sudo apt-get update

sudo apt-get install git

git clone http://www.wendangku.net/doc/ffc053babd64783e09122bf0.html/adafruit/Adafruit-Raspberry-Pi-Python-Code.git

cd Adafruit-Raspberry-Pi-Python-Code

ls

之后可接线led,通过简单的led闪烁程序测试GPIO输入输出口,程序示例如下:

import RPi.GPIO as GPIO

import time

# BOARD编号方式,插座编号方式

GPIO.setmode(GPIO.BOARD)

#输出模式

GPIO.setup(40, GPIO.OUT)

while True:

GPIO.output(40, GPIO.HIGH)

time.sleep(1)

GPIO.output(40, GPIO.LOW)

time.sleep(1)

程序编辑在python2.7中,由于运行需要root权限,所以在python2.7中保存为led.py后打开LXTerminal,在命令行中输入sudo python led.py即可看到led 显示效果。Led将循环点亮和熄灭。

通过简单的GPIO输出程序测试了GPIO输出功能,并熟悉如何通过命令行运行python程序。

对GPIO口编程过程中,应该注意不同的编号命名方式,python中侧重物理引脚BOARD插座编号方式,直接按各插座所在位置编号,比较直观。同时,python 中应特别注意缩进格式。