树莓派GPIO控制外部LED灯闪烁
创作时间:
作者:
@小白创作中心
树莓派GPIO控制外部LED灯闪烁
引用
1
来源
1.
https://developer.aliyun.com/article/1592130
树莓派GPIO控制外部LED灯闪烁
实验目的
- 了解树莓派的基本知识及其作为微型控制计算机的功能。
- 学习树莓派GPIO的读写控制。
- 通过控制外部LED灯的亮灭,熟悉树莓派对外界信号的读取与输出。
实验要求
使用Python语言编程,通过树莓派上GPIO的控制,周期性地改变外部LED灯的亮灭状态,使之发生周期为一秒的持续明暗闪烁。
实验知识
1. 什么是树莓派?
树莓派(Raspberry Pi)是英国树莓派基金会开发的低成本微型单板计算机,硬件上配置有SoC (片上系统),具有 GPU和RAM并支持有线、无线连接方案。树莓派有着完善的社区与软件支持,这极大地方便了机器人开发初学者的入门学习。
树莓派在具备计算机基本功能的同时,保持着一张卡片的大小,这意味着你可以简单便捷地搭建自己的机器人编程平台。
图片1:树莓派4B
2. 什么是GPIO?
树莓派上有丰富的接口,这些接口使得树莓派能够方便地与外部设备进行通信及控制,例如USB、CAMERA、GPIO等。
其中的GPIO接口,全称为General Purpose Input Output,意为通用型输入输出口,树莓派上的GPIO接口可以用于输入、输出或其他特殊功能。
通过GPIO,可以让树莓派和不同的外部模块组件进行交互,例如按钮、蜂鸣器、舵机等。
图片2:GPIO接口图
3. 树莓派GPIO引脚图
在命令行中查看树莓派GPIO引脚图。
pinout
# 如果你希望学习在命令行中对GPIO口进行更复杂的操作,可查看课程的进阶参考文档中实例2部分
你将会看到
图片3:pinout指令的输出结果
4. RPi.GPIO库的基本用法
GPIO.setmode(GPIO.BOARD) # 初始化GPIO引脚编码方式,需放在代码正式开始处
# GPIO引脚有多种编码方式,比如BCM、wiringPi、BOARD等,方便起见,课程均采用BOARD编码模式
GPIO.setup(12, GPIO.OUT) # 初始化GPIO引脚设置,需放在代码正式开始处
GPIO.setup(12, GPIO.IN) # 12为引脚号 GPIO.IN或者GPIO.OU为输入输出模式
print(GPIO.input(12)) # GPIO.input查看GPIO输入的电平信号
# GPIO.HIGH为高电平 ,GPIO.LOW为低电平 也可用于条件判断作其他操作
# GPIO.output向端口发送高低电平信号
GPIO.output(12, GPIO.HIGH) # 此处以12号端口为例
GPIO.output(12, GPIO.LOW)
GPIO.cleanup() # 在使用完GPIO后要作清理,避免后续引脚被占用
实验步骤
1.硬件连接
- 将灯的任一正极(R/G/B/Y)接入树莓派上的PWM端口(例如33号端口)
树莓派的GPIO中仅有部分为PWM口,你可以通过查看树莓派GPIO的引脚图来确认哪个端口是PWM端。 - 将灯的GND端接入树莓派上的GND端口(例如34号端口)
你可以通过查看树莓派GPIO的引脚图来确认哪个端口是GND端。
2. 编写Python程序 led_blink_GPIO.py
#!/usr/bin/python
# coding:utf-8
# led_blink_GPIO.py
# 使树莓派GPIO外接的LED灯的亮灭状态周期性地改变,发生周期为两秒的持续明暗闪烁。
import RPi.GPIO as GPIO
import time
# GPIO初始化
LED = 33
period = 2
GPIO.setmode(GPIO.BOARD) # 初始化GPIO引脚编码方式
GPIO.setup(LED, GPIO.OUT)
# 如果你需要忽视引脚复用警告,请调用GPIO.setwarnings(False)
# GPIO.setwarnings(False)
print('预设置完成,开始闪烁,端口为%d,周期为%d秒。' % (LED, period))
while True:
GPIO.output(LED, GPIO.HIGH)
time.sleep(period/2)
GPIO.output(LED, GPIO.LOW)
time.sleep(period/2)
GPIO.cleanup()
3. 运行程序,观察效果
在led_blink_GPIO.py的目录下执行以下命令:
sudo python led_blink_GPIO.py
此时应观察到树莓派状态指示灯的亮灭状态周期性地改变,发生周期为一秒的持续明暗闪烁。
图片3:gif图片 LED闪烁实验效果
实验总结
经过本知识点的学习和实验操作,你应该能达到以下水平:
知识点 内容 了解 熟悉 掌握
树莓派 树莓派的来历、用途及基本硬件性能 ✔
树莓派 树莓派的GPIO ✔
GPIO RPi.GPIO库的用法 ✔
硬件 LED模块的使用 ✔
热门推荐
孔子的《春秋》,原来这么有料!
《左传》:揭秘春秋笔法的奥秘
欧洲霸主,罗马帝国为何衰败?君士坦丁大帝做了一个错误决定
港股股息税全解析:不同类型投资者的税收待遇
奥匈帝国原来也是欧洲大国,为什么分裂为无数小国,消失在历史长河中?
大乐透春节休市安排出炉!最新一期5注头奖966万,下期奖池累积11.83亿
帝王蟹怎么保存时间长?
房屋租赁管理费纠纷:案例解析与法律建议
客家春祈秋报:千年传承的文化瑰宝
抖音文字游戏:玩法创新与社交互动的完美结合
婚礼情感急救:如何应对现场突发状况
异丙嗪的功效与作用
《长安十二时辰》道具细节获赞:古装剧新标杆
清宫剧带火乾隆爷的老物件市场
《长安十二时辰》:古装剧物件设计的艺术魅力
鸡蛋的多样做法:从早餐到甜点的烹饪指南
朱茵林依晨李一桐三代黄蓉合体封面
9本已完结炼丹流仙侠小说,夺得造化炼大药,金丹九转证仙途
"低头族"的心理健康隐患:如何自救?
摆脱“智能手机强迫症”,这些小妙招你get了吗?
远离“短信脖”,拯救你的颈椎!
港股分红税的起源、方式和影响
陈小春家庭温馨瞬间:二胎儿子首曝光!
金庸+陈静仪+陈小春:1998版《鹿鼎记》为何成经典?
中国传统年节习俗,很乡土,很中国
夏威夷果真的可以炒熟食用吗?
南非夏威夷果:开壳技巧大揭秘!
9款小户型玄关设计案例,既美观又实用,让人心动不已,照着装修
玄关风水布局指南:打造完美入户体验!
2024最全玄关设计攻略,各种户型都适用!