703| 1
|
[项目] 用树莓派做一个警灯演示 |
本帖最后由 tiger_zc 于 2024-1-7 21:14 编辑 一、项目介绍 看到DF社区组织的活动,立马就报名了,也提交成功了,但是奇怪的是,报名单里面并没有我的名字。但这些都不重要,参与第一!我的手里一直有两块香蕉派,但一直没有时间用起来。十一的时候,儿子想研究树莓派,就给他买了一套B4, 然自己先去研究。这次刚好我社区有活动,我可以拿出来先练练手。windows用多了会把人搞废,以前学的DOS命令都快忘光了。树莓派系统本质上是Linux系统,虽然有图形化界面,但配置还是命令行方便,又开始看视频,查资料,开始学习树莓派的知识。眼看期限到了,可我的树莓派系统还是出现各种问题,暂时水平不够,还不太好排除。原计划做一个稍微复杂点的项目,看来知识储备不够,还是选个简单的来搞。各个项目都是从点灯开始,那我就做一个警灯。等系统调试顺畅,再开始做其它项目。二、所需物料 所需物料不多,具体如下:
这个项目就是利用树莓派的GPIO接口来控制LED实现的。GPIO也就是通用输入/输出的接口。 GPIO有两种模式:板上模式和BCM模式 中间部分就是板上模式,也就是板子上实际看到的接口排列,共40个接口,是直接从CPU上引出,使用时GPIO接口的电压都不能超过3.3V,否则可能损坏CPU。两边部分就是BCM编码,是CPU分配的引脚功能编码。 硬件连接比较简单,把红蓝两个LED分别串一个1K电阻(电阻起分压限流作用),分别接到GPIO22和GPIO23端口上,当端口高电平,LED点亮,低电平,LED灯熄灭。 不同的LED耐压值不一样,一般红黄绿橙的耐压值是1.8~2.4V,蓝色耐压值为2.8~~3.4V,工作电压15mA。 四、程序编写 程序编写比较简单,用Python编写,让红蓝LED间隔0.1秒依次亮灭并循环。程序如下:import RPI.GPIO as GPIO import time GPIO.setmode(GPIO.BCM) GPIO.setup(22,GPIO.OUT) GPIO.setup(23,GPIO.OUT) while True: GPIO.output(22,GPIO.HIGH) time.sleep(0.1) GPIO.output(22,GPIO.LOW) time.sleep(0.1) GPIO.output(23,GPIO.HIGH) time.sleep(0.1) GPIO.output(23,GPIO.LOW) time.sleep(0.1) GPIO.clearnup() 运行程序,就可以看到红蓝LED灯开始交替闪烁,像极了JC蜀黍的警灯。调整时间间隔,可以控制闪烁的频率。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed