Node.js Raspberry Pi - 组件
什么是组件?
组件是一个更大整体的一部分。在本章中,我们将解释教程中使用的不同组件。
Raspberry Pi 和 GPIO 引脚

这是 Raspberry Pi 3 的示意图。
GPIO 引脚是 Raspberry Pi 右侧两排的小红色方块,在实际的 Raspberry Pi 上,它们是小的金属引脚。
输入引脚就像开关,您可以从外部世界打开或关闭它们(例如,电灯开关)。
输出引脚就像 Raspberry Pi 可以打开或关闭的开关(例如,打开/关闭 LED 灯)。
Raspberry Pi 3 有 26 个 GPIO 引脚,其余引脚是电源、接地或“其他”。
引脚位置对应下表。
Raspberry Pi B+, 2, 3 & Zero
3V3 | 1 | 2 | 5V |
GPIO 2 | 3 | 4 | 5V |
GPIO 3 | 5 | 6 | GND |
GPIO 4 | 7 | 8 | GPIO 14 |
GND | 9 | 10 | GPIO 15 |
GPIO 17 | 11 | 12 | GPIO 18 |
GPIO 27 | 13 | 14 | GND |
GPIO 22 | 15 | 16 | GPIO 23 |
3V3 | 17 | 18 | GPIO 24 |
GPIO 10 | 19 | 20 | GND |
GPIO 9 | 21 | 22 | GPIO 25 |
GPIO 11 | 23 | 24 | GPIO 8 |
GND | 25 | 26 | GPIO 7 |
DNC | 27 | 28 | DNC |
GPIO 5 | 29 | 30 | GND |
GPIO 6 | 31 | 32 | GPIO 12 |
GPIO 13 | 33 | 34 | GND |
GPIO 19 | 35 | 36 | GPIO 16 |
GPIO 26 | 37 | 38 | GPIO 20 |
GND | 39 | 40 | GPIO 21 |
图例
物理引脚编号 |
电源 + |
接地 |
UART |
I2C |
SPI |
GPIO |
请勿连接 |
面包板
面包板用于原型电子产品,它允许您在不进行焊接的情况下创建电路。它基本上是一个塑料板,带有一系列排焦点(孔)。板内有金属条,以特定方式连接不同的排焦点。
在下面的示意图中,我们用不同的颜色高亮显示了一些区域。这是为了向您展示网格是如何连接的。

面包板的不同区域
- 在左侧和右侧,有 2 列排焦点。这些列中的所有排焦点都已连接。
- 电源总线 - 用红色高亮显示的列。它们通常用于为面包板供电。由于整列都已连接,您可以将电源连接到该列中的任何排焦点。
- 接地总线 - 用蓝色高亮显示的列。它们通常用于为面包板提供接地。由于整列都已连接,您可以将接地连接到该列中的任何排焦点。
- 连接的排焦点行 - 用绿色高亮显示的行。这些行的排焦点已连接,但并非整行!左侧排焦点已连接(A-B-C-D-E),右侧排焦点已连接(F-G-H-I-J)。
- 在面包板的中心有一个沟槽,它将左右两行的排焦点分开。沟槽的宽度设计得以便于许多集成电路跨越。
其他电子元件
直插 LED发光二极管 (LED)。LED 是一种在施加电压时会发光的二极管。在我们的示例中,我们使用直插 LED。它们有一个正极(称为阳极)和一个负极(称为阴极)引脚。LED 上较长的引脚应指示正极。 |
![]() |
RGB LED发光二极管 (LED)。LED 是一种在施加电压时会发光的二极管。RGB LED 有 4 个引脚。一个用于每种颜色(R = 红色,G = 绿色,B = 蓝色),以及一个共用阴极/阳极。这种 LED 可以显示纯色,或通过 PWD 调制和混合颜色。 |
![]() |
按钮按钮是一种开关。开关在一个电路中建立或断开连接。 |
![]() |
跳线 - 母对公称为跳线的短导线用于进行连接。母对公跳线可用于从 Raspberry Pi 的 GPIO 连接到面包板。 |
![]() |
跳线 - 公对公称为跳线的短导线用于进行连接。公对公跳线可用于在面包板的不同部分之间进行连接。 |
![]() |
电阻 - 68 欧姆电阻用于降低电流、调整信号电平等。这是一个 68 欧姆的电阻。 |
![]() |
电阻 - 220 欧姆电阻用于降低电流、调整信号电平等。这是一个 220 欧姆的电阻。 |
![]() |
电阻 - 1k 欧姆电阻用于降低电流、调整信号电平等。这是一个 1k 欧姆的电阻。 |
![]() |
Node.js 模块
onoff - 使用 Node.js 进行 GPIO 访问和中断检测 |
|
Socket.IO - 实时双向事件驱动通信 |
|
pigpio - pigpio C 库的包装器。使用 Node.js 实现 GPIO、PWM、伺服控制、状态更改通知和中断处理 |