树莓派3 GPIO初体验

树莓派3 GPIO初体验

作者 时间
雨中星辰 2022-02-19

树莓派引脚概述

树莓派引脚图:

image-20220219163724986
rpi-pins-40-0

led灯接线

接线要注意亮点:

  1. LED的负极要接地。就是上图中GND引脚。

    image-20220219164526847
  2. LED的正极要接GPIO口,就是图示中GPIO.xx引脚。

    image-20220219164616187

如果正负接反了,LED灯是不会亮的。

我这里实验,正极接的是GPIO18.

shell方式操控GPIO

  1. 使GPIO18从内核空间暴露到用户空间中(执行该操作之后,/sys/class/gpio目录下会增加一个gpio18文件夹。)

    sudo echo 18 > /sys/class/gpio/export
    
  2. 进入GOIO18目录

    cd /sys/class/gpio/gpio18
    
  3. 设置GPIO18为输出模式

    sudo echo out > direction
    
  4. 向value文件中输入1,GPIO输出高电平,LED点亮

    sudo echo 1 > value
    
  5. 向value文件中输入0,GPIO输出低电平,LED熄灭

    sudo echo 0 > value
    
  6. 实验完毕,注销GPIO18接口

    sudo echo 18 > /sys/class/gpio/unexport
    

python交互命令行中操控GPIO

  1. 进入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.
    
  2. 导入GPIO库,并设置别名

    >>> import RPi.GPIO as GPIO
    
  3. 设置BOARD编码方式,基于BCM

    >>> GPIO.setmode(GPIO.BCM)
    
  4. 设置输出模式(这里注意:因为我的led插的是GPIO18的引脚,所以为18,如果你选择了别的GPIO引脚,需要换成对应的引脚GPIO编号)

    GPIO.setup(18,GPIO.OUT)
    
  5. 将lED灯点亮(GPIO18输出高电平,LED点亮)

    GPIO.setup(18,GPIO.HIGHT)
    
  6. 将lED灯熄灭(GPIO18输出低电平,LED熄灭)

    GPIO.setup(18,GPIO.LOW)
    
  7. 实验完毕,进行清理

    GPIO.cleanup()
    
  8. 退出命令行

    Ctrl+D

Python脚本方式控制GPIO

  1. 创建python脚本:vim led.py

  2. 脚本内容如下:

    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

你可能感兴趣的:(树莓派3 GPIO初体验)