第4章:IO 扩展板与传感器接线规范
本章介绍 Keyes Raspberry Pi Pico IO 扩展板的功能、接口定义以及传感器模块的标准接线规范。
4.1 IO 扩展板概述
4.1.1 设计目的
Keyes Raspberry Pi Pico IO 扩展板专为 Pico 开发设计:
- 免焊接:直接插拔 Pico 主板
- 标准接口:2.54mm 排针/排母,适配各种传感器
- 丝印标注:清晰的引脚标识
- 电源扩展:支持 6.5-12V DC 输入
4.1.2 规格参数
| 参数 | 数值 |
|---|---|
| 输入电压 | 6.5 - 12V DC |
| 输出电压 | 3.3V / 5V |
| 最大输出电流 | 500mA |
| 尺寸 | 45.3mm × 83.6mm |
| 排针间距 | 2.54mm |
4.2 扩展板接口分布
4.2.1 接口布局图
DC 电源输入
│
┌──────┴──────────────────────────────────────┐
│ [DC 6.5-12V] [PWR LED] [RST BTN] │
│ │
│ ┌─────────────────────────────────────┐ │
│ │ │ │
│ │ Pico 插槽区域 │ │
│ │ │ │
│ └─────────────────────────────────────┘ │
│ │
│ [3Pin 数字接口区] │
│ G V S G V S G V S G V S G V S G V S │
│ GP0 GP1 GP2 GP3 GP4 GP5 │
│ │
│ [3Pin/4Pin 模拟接口区] │
│ G V S G V D S │
│ ADC0 ADC1/ADC2 │
│ │
│ [I2C 接口] [SPI 接口] [UART 接口] │
│ G V SDA SCL │
│ │
└──────────────────────────────────────────────┘
4.2.2 接口类型说明
| 接口类型 | 引脚数 | 标识 | 用途 |
|---|---|---|---|
| 数字接口 | 3 Pin | G V S | LED、按键、数字传感器 |
| 模拟接口 | 3 Pin | G V S | 模拟传感器 |
| 复合接口 | 4 Pin | G V D S | 数字+模拟传感器 |
| I2C 接口 | 4 Pin | G V SDA SCL | I2C 设备 |
| SPI 接口 | 6 Pin | G V SCK MOSI MISO CS | SPI 设备 |
| UART 接口 | 4 Pin | G V TX RX | 串口设备 |
4.3 接口丝印含义
4.3.1 3Pin 接口
┌─────────┐
│ G V S │
└─────────┘
│ │ │
│ │ └── S (Signal): 信号线,连接 GPIO
│ └───── V (VCC): 电源正极,3.3V
└──────── G (GND): 电源负极,地线
4.3.2 4Pin 接口
┌───────────┐
│ G V D S │ (数字+模拟复合)
└───────────┘
│ │ │ │
│ │ │ └── S (Signal): 模拟信号
│ │ └───── D (Digital): 数字信号
│ └──────── V (VCC): 电源
└─────────── G (GND): 地线
4.3.3 I2C 接口
┌───────────────┐
│ G V SDA SCL │
└───────────────┘
│ │ │ │
│ │ │ └── SCL: I2C 时钟线
│ │ └─────── SDA: I2C 数据线
│ └─────────── V: 电源
└────────────── G: 地线
4.4 防反插连接线
4.4.1 设计特点
套件中的杜邦线采用防反插设计:
- 色彩编码:红色=VCC,黑色=GND,其他=信号
- 插头方向:只能按正确方向插入
- 错位防护:插槽有物理限位
4.4.2 常见线缆
| 线缆类型 | 用途 |
|---|---|
| 3Pin 防反插线 | 数字/模拟传感器 |
| 4Pin 防反插线 | 复合传感器、I2C 设备 |
| 5Pin 防反插线 | 摇杆、交通灯模块 |
| 6Pin 防反插线 | SPI 设备 |
4.5 传感器模块分类
4.5.1 按输出类型分类
数字输出传感器(开关量):
| 模块 | 输出逻辑 |
|---|---|
| 按键模块 | 按下=低电平,松开=高电平 |
| 触摸模块 | 触摸=高电平,松开=低电平 |
| 避障传感器 | 检测到=低电平,未检测=高电平 |
| 霍尔传感器 | 南极=低电平,北极/无=高电平 |
模拟输出传感器(连续量):
| 模块 | 输出范围 |
|---|---|
| 光敏传感器 | 0-65535(亮度越高值越小) |
| 声音传感器 | 0-65535 |
| 电位器 | 0-65535 |
| 温度传感器 | 与温度成比例 |
4.5.2 按通信协议分类
| 协议 | 传感器示例 |
|---|---|
| 数字 IO | LED、按键、蜂鸣器 |
| ADC | 光敏、烟雾、温度传感器 |
| PWM | 舵机、RGB LED |
| I2C | ADXL345、DS1307、LCD |
| 单总线 | DS18B20、DHT11 |
| 红外 | 红外接收模块 |
4.6 接线注意事项
4.6.1 基本原则
- 确认电源极性:VCC 和 GND 绝不能接反
- 确认电压等级:3.3V 传感器不能接 5V
- 确认信号线:对照原理图接线
- 带电操作谨慎:建议断电接线
4.6.2 常见错误
❌ 错误 1:电源接反
症状:传感器发热、不工作、可能损坏
❌ 错误 2:信号线接错
症状:无输出或输出异常
❌ 错误 3:多个设备共用 ADC
症状:读数相互干扰
❌ 错误 4:I2C 地址冲突
症状:只有一个设备工作
4.6.3 调试建议
# 1. 检查接线
import machine
i2c = machine.I2C(0, sda=machine.Pin(20), scl=machine.Pin(21))
print("I2C 设备:", [hex(d) for d in i2c.scan()])
# 2. 测试单个引脚
from machine import Pin
pin = Pin(0, Pin.IN)
print(f"GP0 状态: {pin.value()}")
# 3. 测试 ADC
from machine import ADC
adc = ADC(26)
print(f"ADC0 值: {adc.read_u16()}")
4.7 电源管理
4.7.1 电源来源
| 来源 | 电压 | 电流能力 |
|---|---|---|
| USB | 5V | 500mA |
| DC 输入 | 6.5-12V | 取决于电源 |
4.7.2 功耗计算
总功耗 = Pico 功耗 + 传感器功耗
典型值:
- Pico 运行: ~50mA
- LED 模块: ~20mA
- 舵机: ~100-500mA
- 电机: ~100-300mA
4.7.3 外部供电
当连接多个功耗较大的模块(如舵机、电机)时,建议:
- 使用 DC 输入供电
- 或为大功率模块单独供电
4.8 模块编号对照
4.8.1 套件模块清单
| 编号 | 模块名称 | 类型 | 接口 |
|---|---|---|---|
| 1 | 白色 LED 模块 | 数字输出 | 3Pin |
| 2 | 交通灯模块 | 数字输出 | 5Pin |
| 3 | 激光模块 | 数字输出 | 3Pin |
| 4 | 按键传感器 | 数字输入 | 3Pin |
| 5 | 电容触摸模块 | 数字输入 | 3Pin |
| 6 | 避障传感器 | 数字输入 | 3Pin |
| 7 | 循线传感器 | 数字输入 | 3Pin |
| 8 | 光折断模块 | 数字输入 | 3Pin |
| 9 | 倾斜传感器 | 数字输入 | 3Pin |
| 10 | 碰撞传感器 | 数字输入 | 3Pin |
| … | … | … | … |
4.8.2 引脚分配建议
# 推荐引脚分配
PINS = {
# 数字输出
'LED_WHITE': 0,
'LASER': 2,
'BUZZER_ACTIVE': 20,
# 数字输入
'BUTTON': 15,
'TOUCH': 3,
'OBSTACLE': 16,
# 模拟输入
'LIGHT': 26, # ADC0
'SOUND': 27, # ADC1
'POTENTIOMETER': 28, # ADC2
# I2C
'I2C_SDA': 20,
'I2C_SCL': 21,
# PWM
'SERVO': 16,
'RGB': 17,
}
4.9 安全须知
4.9.1 电气安全
- 避免短路:金属物品远离电路板
- 防止静电:触摸前先释放静电
- 正确供电:使用标称电压电源
4.9.2 使用安全
- 激光模块:勿对眼睛照射
- 蜂鸣器:避免长时间大音量
- 电机:小心旋转部件
- 加热元件:避免烫伤
4.10 本章小结
本章介绍了 IO 扩展板的使用方法:
- 扩展板提供标准化接口,简化接线
- 3Pin/4Pin/6Pin 接口分别用于不同类型传感器
- 防反插线缆减少接线错误
- 注意电源极性和电压等级
- 大功率设备需要外部供电
下一章将开始学习 LED 模块与数字输出控制。