树莓派3B+ GPIO输入输出使用

下图中的40个引脚就是 GPIO ,可以参考官方文档

image.png

python3 程序控制GPIO

GPIO (General Purpose Input/Output) 的意思就是通用型输入输出,可以使用 python 的第三方库 RPi.GPIO 进行控制。一般都预安装了,如果没装就自己装一下:

sudo apt-get install python3-rpi.gpio
# pyhton2 : sudo apt-get install python-rpi.gpio

GPIO编号有两种编号模式(BOARD)和(BCM),下面是找的画的很好看的BCM模式管脚示意图(一般都常用这个)

image.png

上图中,3.3v 就是 3.3v输出,5v 就是 5v输出 ,地就是地。我们没办法通过软件编程的方法对它们进行设置,这也是为什么它们没有编号。

每个管脚可以设置两种模式:

  • 设置为输出,输出高电平(3.3v)或输出低电平(0v);

  • 设置为输入,这时可以接收信号,这一信号不光可以来自机械开关,还可以是各式各样的传感器或其他设备。

!!注意!!

将 GPIO 连接到超过 3.3v 的电压上,可能会烧毁 GPIO 模块。


下面是找的画的很好看的BOARD模式管脚示意图(physical numbers)

image.png

示例代码

import RPi.GPIO as GPIO   #先要导入模块

##BCM 对应 GPIO numbers , BOARD 对应 physical numbers。 
GPIO.setmod(GPIO.BCM)     #选择 GPIO numbers 编号系统

GPIO.setmode(2,GPIO.OUT)    #把引脚 2  设置为输出模式
GPIO.setmode(3,GPIO.IN)     #把引脚 3 设置为输入模式

GPIO.output(2,True)       #让引脚 2 输出高电平
GPIO.output(2,False)      #让引脚 2 输出低电平

print(GPIO.input(3))      #打印引脚3的输入状态 1/0

利用QT开发GUI,控制GPIO引脚

在QT中控制GPIO主要是使用wiringPi库,树莓派已自带,查询树莓派的物理引脚与wiringPi库的编号对应表,如下图



如果我们要操作GPIO2,对应的物理引脚为3,操作引脚的时候,引脚序号就为8(wPI),当前模式为输出,V代表的是当前的输入电压,1-3.3V,0-0V。

主要参考下面的大神们:

https://www.jianshu.com/p/1db0b3e4fd56
https://blog.csdn.net/qq21497936/article/details/79758560
https://blog.csdn.net/lucifly/article/details/80480959

你可能感兴趣的:(树莓派3B+ GPIO输入输出使用)