09年01月
Raspberry Pi的引脚介绍
术语'GPIO'(通用输入输出)不是Raspberry Pi独有的。 输入和输出引脚可以在大多数微控制器上找到,比如Arduino,Beaglebone等等。
当我们与Raspberry Pi谈论GPIO时,我们指的是电路板左上角的长引脚。 老款车型有26个引脚,但是我们大多数人将使用40的当前车型。
您可以将组件和其他硬件设备连接到这些引脚,并使用代码来控制它们的功能。 这是Raspberry Pi的重要组成部分,也是学习电子学的绝佳方式。
经过几个软件项目之后,您可能会发现自己正在尝试使用这些引脚,渴望将您的代码与硬件混合在一起,使事情在“现实生活”中发生。
如果你是新手,这个过程可能会令人感到恐惧,并且考虑到一次错误的行为会损坏你的树莓派,这对于初学者来说是一个紧张的领域是可以理解的。
本文将解释每种GPIO引脚的作用及其局限性。
09年02月
GPIO
首先,我们来看看整个GPIO。 这些引脚可能看起来相同,但它们都有不同的功能。 上面的图像以不同的颜色显示了这些功能,我们将在以下步骤中解释这些功能。
每个引脚从左下方开始编号从1到40。 这些是物理引脚号,但是,还有编号/标签惯例,例如在编写代码时使用的'BCM'。
09年3月
电源和接地
突出显示为红色,3.3V或5V电源引脚标记为“3”或“5”。
这些引脚允许您直接向设备发送电源,而无需任何代码。 也无法将这些关闭。
有2个电源轨 - 3.3伏和5伏。 根据这篇文章,3.3V电源轨限制为50mA电流消耗,而5V电源轨可以在电源满足需求后提供电源剩余的电流容量。
突出显示的棕色是接地引脚(GND)。 这些引脚正是他们所说的 - 接地引脚 - 这是任何电子项目的重要组成部分。
(5V GPIO引脚是物理编号2和4. 3.3V GPIO引脚是物理编号1和17.接地GPIO引脚是物理编号6,9,14,20,25,30,34和39)
09年9月4日
输入/输出引脚
绿色引脚就是我所说的'通用'输入/输出引脚。 这些可以很容易地用作输入或输出,而不用担心与其他功能(如I2C,SPI或UART)发生冲突。
这些是可以向LED,蜂鸣器或其他组件供电的引脚,或者可以用作读取传感器,开关或其他输入设备的输入。
这些引脚的输出功率为3.3V。 每个引脚的电流不应超过16mA,无论是灌电流还是源电流,并且整个GPIO引脚在任何时候都不应超过50mA。 这可能是限制性的,因此您可能必须在某些项目中获得创意。
(通用GPIO引脚是物理编号7,11,12,13,15,16,18,22,29,31,32,33,35,36,37,38和40)
09年05月05日
I2C引脚
黄色,我们有I2C引脚。 I2C是一种简单的通信协议,允许设备与Raspberry Pi进行通信。 这些引脚也可以用作'通用'GPIO引脚。
使用I2C的一个很好的例子是非常流行的MCP23017端口扩展器芯片,它可以通过这个I2C协议为您提供更多的输入/输出引脚。
(I2C GPIO引脚是物理引脚号3和5)
09年06月
UART(串行)引脚
灰色的是UART引脚。 这些引脚是另一种提供串行连接的通信协议,也可以用作'通用'GPIO输入/输出。
我最喜欢使用的UART是通过USB从我的Pi到笔记本电脑的串行连接。 这可以通过使用附加板或简单电缆来实现,并且不需要通过屏幕或互联网连接来访问您的Pi。
(UART GPIO引脚是物理引脚号8和10)
09年7月
SPI引脚
粉红色,我们有SPI引脚。 SPI是在Pi和其他硬件/外设之间发送数据的接口总线。 它通常用于链接诸如LED矩阵或显示器之类的设备。
像其他一样,这些引脚也可以用作'通用'GPIO输入/输出。
(SPI GPIO引脚是物理引脚号19,21,23,24和26)
09年08月08日
DNC引脚
最后是蓝色的两个引脚,目前标记为代表'不连接'的DNC。 如果Raspberry Pi Foundation改变了电路板/软件,未来可能会发生变化。
(DNC GPIO引脚是物理引脚号27和28)
09年9月9日
GPIO编号约定
使用GPIO进行编码时,可以选择以两种方式之一导入GPIO库 - BCM或BOARD。
我更喜欢的选择是GPIO BCM。 这是Broadcom编号惯例,我发现它更常用于各种项目和硬件附件。
第二个选项是GPIO板。 此方法使用实际引脚编号,这在计数引脚时非常方便,但您会发现它在项目示例中使用较少。
导入GPIO库时设置GPIO模式:
作为BCM导入:
将RPi.GPIO导入为GPIO GPIO.setmode(GPIO.BCM)要导入为BOARD:
将RPi.GPIO导入为GPIO GPIO.setmode(GPIO.BOARD)这两种方法都完成相同的工作,这只是编号偏好的问题。
我经常使用方便的GPIO标签板,例如RasPiO Portsplus(如图)来检查我连接电线的针脚。 一面显示BCM编号约定,另一面显示BOARD - 因此您可以找到任何项目。