学习用树莓派驱动LED灯闪烁
【前沿】
・GPIO
・准备实验材料
・实验电路连接
・编写驱动程序
・讲解其它的驱动方式(扩展篇)
GPIO
LEDGPIO51GPIO两种编码方式,分别为BCM和wiringPiGPIO
二、准备实验材料
1
22
3LED
三、线路连接
四、编写驱动程序
说明:以下的实验都是使用SSH方式登录到树莓派来完成的,具体操作可看我的其它博文。
pythonBCMLED!
vim.tinypythonLED
mkdir lesson_1 cd lesson_1/
led_falsh.py:
vim.tiny led_flash.py
正式写入驱动代码:
import RPi.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(25,GPIO.OUT) while True: GPIO.output(25,GPIO.HIGH) time.sleep(0.2) GPIO.output(25,GPIO.LOW) time.sleep(0.2)
下面开始执行文件,查看具体效果,首先先给文件增加用户可执行权限:
sudo chmod u+x led_flash.py运行程序:
python led_flash.py
此时就可以看到LED实际的效果了,同时如果程序有误的话,终端也会打印出错误消息!
如需退出执行程序,直接按下 ctrl+c 组合键即可退出
程序解读:
到此,一个驱动LED闪烁的学习就完成了!
五、讲解其它的驱动方式(扩展篇)
【驱动方式】
使用wiringPi编码方式实现驱动LED
【示例程序】
在文件夹下新建一个名为flash.c的文件,并写入以下示例代码:
使用cd命令进入文件所在目录,以下命令对文件进行编译:
gcc -Wall -o flash flash.c -lwiringPi
如何编译没有错误,接着输入以下命令执行程序:
sudo ./flash
此时可以看到实时的效果,最后可使用ctrl+c可以结束程序。
【小结】
1、由于人为退出程序时间的不确定性,所以在程序退出时可能为亮,也可能为灭的状态。
2、使用python的程序驱动和C程序驱动LED,只是在编码方式上稍有不同,但实际上驱动的都是同一个IO端口。