电子说
Raspberry Pi是一种廉价的微型计算机,能够执行许多任务,包括复古游戏和成为家庭媒体中心。 Pi也非常重视教育,Scratch和Minecraft Pi版本均致力于帮助年轻人学习编码,而GPIO引脚(通用输入/输出)打开了一个完整的世界。 DIY电子修补和发明。
什么是Raspberry Pi GPIO引脚?
在本文中,我们将告诉您一切需要了解Pi的GPIO引脚:它们可以做什么,如何使用它们以及在使用它们时应避免的错误。
开始之前的注意事项: Pi的不同版本可能会有所不同!在将任何东西连接到板上之前,请确保您使用的是正确的。一种快速的检查方法是在Raspberry Pi的终端中键入 pinout ,这将弹出您当前的设置图。
GPIO引脚集成到了电脑。用户可以控制它们的行为,以允许他们从传感器读取数据,并控制LED,电动机和显示器等组件。 Pi的较旧型号具有26个GPIO引脚,而较新的型号均具有40个GPIO引脚。此图显示了每个引脚的功能:
在标记的图中上图,您会看到有不同类型的GPIO引脚可用于不同目的。您可以在pinout.xyz上找到此图表的交互式版本。它还概述了您首先要解决的令人困惑的事情之一。每个针脚都有两个数字。其 BOARD 号(圆圈中的数字)及其 BCM (Broadcom SOC频道)号。您可以选择在编写Python代码时使用的约定:
# 1 - GPIO/BCM Numbering
GPIO.setmode(GPIO.BCM)
# 2 - Board Numbering
GPIO.setmode(GPIO.BOARD)
在每个项目中只能使用一种约定,因此请选择一种并坚持使用。两种约定都不是“正确的”,因此请选择对您最有意义的一种。但是,值得注意的是,某些外设依赖于GPIO/BCM编号。
在本文中,我们将坚持使用 BOARD 编号。那么,插针实际上是做什么的?
电源插针
让我们从电源插针开始。 Raspberry Pi可以提供5v(引脚2和4)和3.3v(引脚1和17)电源。它还为引脚6、9、14、20、25、30、34和39上的电路提供了接地(GND)。
不幸的是,没有一个答案。 5v电源引脚可以消耗多少电流,这取决于您使用的是什么电源以及与Pi相连的其他组件。 Raspberry Pi 3仅从其电源汲取2.5A的电流,并且需要约750mA的电流才能启动和正常运行。这意味着,如果您使用的是2.5A电源,则5v引脚可提供的最大总电流约为1.7A。令人讨厌的是,这在Pi的模型之间有所不同,如下表所示:
《图id =“ attachment_760425” aria- describeby =“ caption-attachment-760425” class =“ wp-caption aligncenter”》
图片来源:raspberrypi.org
对于大多数用户只是从Pi开始,这不会有问题,但是当您花费更多的时间使用GPIO引脚时,要牢记这一点。
3.3v引脚在最近的Raspberry上更简单一些Pi版本(自B +起)提供的总电流最多为 500mA ,而较旧的型号仅提供了 50mA 。请注意,该电流也将在所有其他GPIO引脚之间共享!
因此这些引脚可以为您的组件提供电源,但这仅是它们的功能。真正有趣的东西来自其余的引脚。
标准GPIO
在上表中,忽略了电源引脚,您会看到其中的一些标记为不同的颜色。绿色引脚是标准GPIO引脚,这些是大多数初学者项目将使用的引脚。这些引脚具有3.3v 输出的能力,在代码中也称为设置引脚 HIGH 。当输出引脚为 LOW 时,这意味着它仅提供0v。
它们也可以采用《最高3.3v的strong》输入,该引脚读为 HIGH 。
请勿提供大于3.3v的引脚:这是油炸Pi的快速方法!
有关在一个简单项目中开始使用GPIO引脚的出色指南,请尝试我们的Raspberry Pi GPIO入门项目。
尽管我们将在本文中介绍一些特殊用途的引脚,但您可以将除电源引脚以及引脚27和28 以外的任何引脚用作常规GPIO引脚。
PWM
PWM(脉冲宽度调制)通过发送短脉冲来控制其接收的功率,从而与电动机,伺服器和LED等组件一起使用。在我们的LED灯带终极指南教程中,我们将它与Arduino一起使用。
在Pi上也可以使用PWM。引脚12(GPIO 18)和引脚35(GPIO 35)具有硬件PWM功能,尽管Pi还可以通过诸如Pigpio之类的库提供软件PWM。
有关PWM所需代码的简介。 ,这个简单的LED亮度教程应该可以帮助您入门。
UART
引脚8和10(GPIO 14和15)是UART引脚,旨在通过串行与Pi进行通信。港口。在某些情况下,您可能需要执行此操作,但是对于大多数初学者而言,通过SSH或使用VNC无头连接到Pi可能会更容易。
如果您对如何串行引脚可以工作,这是一个很棒的入门书。
SPI
SPI(串行外围设备接口总线)是一种与RFID读取器等设备进行通信的方法我们在带有Arduino和RFID的DIY智能锁项目中使用了它。
它允许设备与Raspberry Pi同步通信,这意味着更多数据可以在 master 和从设备设备。如果您曾经为Pi使用过小的触摸屏,那么这就是他们的交流方式。
《图id =“ attachment_761109” aria- describeby =“ caption-attachment-761109” class =“ wp-caption aligncenter“》
图片来源:Gareth Halfacree/flickr.com
Raspberry Pi有多种使用SPI的设备和扩展HAT,它可以为您的项目提供比常规GPIO引脚所能承受的硬件更多的硬件。但是,它确实需要大量的布线才能运行。 Raspberry Pi Foundation网站上有SPI的深入概述。
引脚19、21、23、24、25 和 26 (GPIO 10、9、11、8,GND和GPIO 26)用于连接到SPI器件,它们都是平稳运行所必需的。避免所有意大利面的好方法是购买一个预制扩展,例如Sense HAT,它可以装在您的板上,并为LED矩阵和传感器上的各种阵列提供扩展。几年来一直是它的最爱,甚至在国际空间站上也用于做一些实验!
SPI在Raspbian上没有作为标准启用,但可以在raspi-中启用。
I2C
I2C(内部集成电路)与SPI类似,但通常认为它更易于设置和使用。它异步通信,并且能够支持所需的任意数量的不同设备,只要它们各自在I2C总线上具有唯一的地址位置即可。由于采用了这种寻址系统,Pi只需要两个I2C引脚-引脚3(GPIO 2)和引脚5(GPIO 3),比SPI使用起来简单得多。
I2C的占地面积小有很多可能性。使用标准的GPIO引脚,设置LCD屏幕和一些按钮几乎可以占用每个引脚,使用I2C设备(例如Adafruit Negative LCD控制器)可以将其降低到只有两个引脚!
Sparkfun有完整的SPI和I2C的概要以及使您入门的示例。
引脚27和28(标记为ID_SD和ID_SC)也是I2C。 Pi用于内部功能,还有一些HAT板。通常,除非您真的知道自己在做什么,否则不要惹他们!
Raspberry Pi:适用于一切的GPIO引脚!
Raspberry Pi是现代计算的瑞士军刀。除了大量的日常使用外,它还使任何人都可以进行自己的出色创作。
责任编辑:wv
全部0条评论
快来发表一下你的评论吧 !