一起玩转树莓派(2)——从双色LED灯开始(一)

简介: 一起玩转树莓派(2)——从双色LED灯开始

一、从了解GPIO开始

GPIO全称General-purpose input/output,即通用型输入输出,其引脚能够供使用者自由的进行使用,可以对其进行输入,也可以读取其数据进行数据输出,这些引脚的输入或输出都会关联到某个寄存器,寄存器的值控制引脚的电平高低。

以笔者使用树莓派3B+为例,其有40个GPIO引脚,在开始编程之前,我们首先要搞清楚每个引脚的功能意义,从树莓派官网的文档中可以找到GPIO引脚的功能介绍,如下图所示:

image.png

我们并不需要对树莓派的GPIO引脚做深入的记忆,只需要记住当正面摆放树莓派时,其最左上角的一个引脚对应的是5V电压的功能,之后对照此图即可确定每一个引脚的功能。后面我们会通过GPIO扩展板加面包板的方式来使用这些引脚,扩展板上默认会标注一些引脚功能,我们使用起来会更加方便。

笔者使用的扩展板引脚标注示如下:

image.png

使用排线将其与树莓派正向连接,如下图所示:

image.png

可以看到扩展板上的引脚标注与树莓派本身的引脚排布并不一致,下面我会给大家介绍如何定位到要使用的引脚。

二、关于GPIO引脚编码

常用的GPIO引脚编码有3种。

我们也可以在树莓派的终端输入如下指令查看GPIO引脚功能:

pinout

输出效果如下图所示:

{   "src": "",   "originWidth": 1258,   "originHeight": 1444,   "display": "inline",   "align": "left",   "linkTarget": "_blank",   "status": "error",   "style": "none",   "search": "",   "margin": {     "top": false,     "bottom": false   },   "width": 1258,   "height": 1444,   "message": "图片不支持拷贝复制,请单独复制上传",   "size": 0 }

需要注意,上图中的GPIO使用的是逻辑编码,从1开始,实际上BCM编码并不是从1开始的。

第1种:BOARD物理编码

物理编码比较好理解,也很直观,其就是根据树莓派上40个引脚的位置进行排序编码,如博客中第一张图所示,正向放置树莓派时,第2排的第1个引脚编号为1,第1排第1个引脚编号为2,依次类推。后面在编写代码时,我们使用的编码方式也是这种。

第2种:BCM编码

BCM编码是一种更底层的编码方式,与系统中信道编号相对应。在使用一个引脚时,如果使用BCM编码,首先需要查找信道号和物理引脚编号之间的对应规则。对于不同的树莓派版本,可能无法兼容。下图很好的描述了几种编码的信息:

image.png

上面我们扩展板上GPIO引脚的标注,实际上使用的就是BCM编码,这也就是说,如果我们要使用树莓派GPIO2和GPIO3两个功能引脚,指定的是物理引脚需要是13和15。直接将线连接到扩展板的G22和G27一行即可,非常直观。

第3种:WiringPi编码

WiringPi编码对应的引脚号是在wiringPI库中所使用的,网上很容易找到其编码的相关资料,本系列博客我们不会使用到这个编码,这里不再赘述。

现在,我们总结一下如何使用GPIO引脚。

  • 首先在上图中找到自己要使用的功能引脚,如GOIP.2和GPIO.3两个功能引脚。
  • 之后找到其对应的物理引脚,即13和15。
  • 如果不使用扩展板,则直接接线物理引脚,如果要使用,则找到其对应的BCM编码,27和22。
  • 使用扩展板上的G27和G22引脚插槽。


目录
打赏
0
0
0
0
47
分享
相关文章
人体感应太阳能灯原理图详细讲解
三河凡科科技飞讯教学,人体感应太阳能灯是一种利用太阳能源供电,通过人体红外线感应技术实现智能控制灯源开关的照明设备。其原理是利用太阳能板将太阳能转化为电能,通过对电池的储存和管理,将电能存储在电池中,作为灯源使用时的电力供应。同时,通过人体红外线感应技术,能够实现对灯源的智能控制。
人体感应太阳能灯原理图详细讲解
51单片机--点亮LED灯和流水灯
51单片机--点亮LED灯和流水灯
266 0
无人机 LED 灯的闪烁
在 Python 中,可以使用 GPIO 库来控制树莓派(Raspberry Pi)上的 GPIO 引脚,从而实现对 LED 灯的控制。以下是一个简单的 Python 代码示例,可以实现 LED 灯的闪烁、显示文字和数值、循环播放文字等功能:
196 0
|
11月前
|
linux驱动开发-点亮第一个led灯
linux驱动开发-点亮第一个led灯
109 0
【51单片机】点亮LED灯(四种形式)
英文名:Light Emitting Diode。 简称:LED。 应用:LED显示屏、交通信号灯、广告灯、液晶屏背光源等。 特点:节能是LED灯最突出的特点、环保、
889 0
【51单片机】点亮LED灯(四种形式)
【单片机期中测试】6.简单PWM呼吸灯
【单片机期中测试】6.简单PWM呼吸灯
96 0
MSP430F5529学习笔记(3)——实现LED闪烁和呼吸灯
MSP430F5529学习笔记(3)——实现LED闪烁和呼吸灯
598 0
基于单片机的智能循迹避障小车STC89C52红外对管L298N驱动PWM波控制速度
利用红外对管检测黑线与障碍物,并以STC89C52单片机为控制芯片控制电动小汽车的速度及转向,从而实现自动循迹避障的功能。其中小车驱动由L298N驱动电路完成,速度由单片机输出的PWM波控制。