树莓派3 GPIO初体验
作者 | 时间 |
---|---|
雨中星辰 | 2022-02-19 |
树莓派引脚概述
树莓派引脚图:
image-20220219163724986 rpi-pins-40-0led灯接线
接线要注意亮点:
-
LED的负极要接地。就是上图中
image-20220219164526847GND
引脚。 -
LED的正极要接GPIO口,就是图示中GPIO.xx引脚。
image-20220219164616187
如果正负接反了,LED灯是不会亮的。
我这里实验,正极接的是GPIO18.
shell方式操控GPIO
-
使GPIO18从内核空间暴露到用户空间中(执行该操作之后,/sys/class/gpio目录下会增加一个gpio18文件夹。)
sudo echo 18 > /sys/class/gpio/export
-
进入GOIO18目录
cd /sys/class/gpio/gpio18
-
设置GPIO18为输出模式
sudo echo out > direction
-
向value文件中输入1,GPIO输出高电平,LED点亮
sudo echo 1 > value
-
向value文件中输入0,GPIO输出低电平,LED熄灭
sudo echo 0 > value
-
实验完毕,注销GPIO18接口
sudo echo 18 > /sys/class/gpio/unexport
python交互命令行中操控GPIO
-
进入python交互式命令行中
pi@raspberrypi:~/py $ python Python 3.9.2 (default, Mar 12 2021, 04:06:34) [GCC 10.2.1 20210110] on linux Type "help", "copyright", "credits" or "license" for more information.
-
导入GPIO库,并设置别名
>>> import RPi.GPIO as GPIO
-
设置BOARD编码方式,基于BCM
>>> GPIO.setmode(GPIO.BCM)
-
设置输出模式(这里注意:因为我的led插的是GPIO18的引脚,所以为18,如果你选择了别的GPIO引脚,需要换成对应的引脚GPIO编号)
GPIO.setup(18,GPIO.OUT)
-
将lED灯点亮(GPIO18输出高电平,LED点亮)
GPIO.setup(18,GPIO.HIGHT)
-
将lED灯熄灭(GPIO18输出低电平,LED熄灭)
GPIO.setup(18,GPIO.LOW)
-
实验完毕,进行清理
GPIO.cleanup()
-
退出命令行
Ctrl+D
Python脚本方式控制GPIO
-
创建python脚本:vim led.py
-
脚本内容如下:
import RPi.GPIO as GPIO import time # 设置编码 GPIO.setmode(GPIO.BCM) # 输出模式 GPIO.setup(18,GPIO.OUT) # 将GPIO18设置为高电平,使LED亮起 GPIO.output(18,GPIO.HIGH) # 暂停一下,使常亮3秒 time.sleep(3) # 将GPIO18设置为低电平,使LED熄灭 GPIO.output(18,GPIO.LOW) # 暂停1秒,使led熄灭一秒 time.sleep(1) # 再次使led亮起 GPIO.output(18,GPIO.HIGH) # 暂停一下,使常亮3秒 time.sleep(3) # 清理GPIO GPIO.cleanup()
本文部分内容参考:https://blog.csdn.net/weixin_34567079/article/details/112185595
网友评论