P1H1291-O 反射式 PPG 信号采集芯片 & 模块说明书
文档版本: v1.1 | 适用范围: P1H1291-O1 透射/反射式光电脉搏血氧模块(P1H1291-O1 PCB Rev. V260701)本说明书包含两部分:① P1H1291 芯片级规格说明,② P1H1291-O1 模块使用说明(含 AT 指令集)。

P1H1291-O1
第一部分:P1H1291 芯片规格说明
1.1 概述
P1H1291 是深圳加一健康科技定制的集成 双波长 LED 驱动 + 光电二极管模拟前端 (AFE) 的 PPG 信号采集芯片,专为可穿戴血氧监测(SpO2)、心率(HR)应用设计。芯片同时支持 反射式与透射式两种光电测量拓扑,适用于指尖、耳垂、腕部、额头等多部位采集场景。芯片采用 QFN-24 (VQFN-24 4×4 mm) 封装,与外部主控仅需 3 线 UART 接口(RX / TX / GND)即可完成通信与控制。
| 项目 | 规格 |
|---|---|
| 封装 | VQFN-24(RGE)4×4 mm |
| 工作电压 | 1.8V – 3.3V ±5% (DVDD_3V) |
| 典型功耗(工作) | < 2 mA(不包含LED功耗) |
| 典型功耗(STANDBY) | < 2 μA |
| 通信接口 | UART (TTL 3.3V) — 3 线(RX/TX/GND) |
| 默认波特率 | 115200 bps(可通过 AT 指令修改) |
| 工作温度 | -20℃ ~ +70℃ |
1.2 芯片特性
P1H1291 为定制化 ASIC(Application Specific Integrated Circuit),芯片内部集成 PPG 信号采集、数字滤波、状态检测与 SpO2/HR 解算等完整算法链路。算法已固化于片上非易失性存储器中,不对外提供可编程接口,用户无需进行寄存器配置或算法标定。芯片上电后即自动完成传感器初始化、信号采集与数据输出,通过标准 UART 接口以 AT 指令集进行查询与控制。
注意:本芯片为固化型定制器件,不可重新编程。所有信号处理参数(滤波器系数、检测阈值、标定曲线等)已在出厂前完成校准与烧录,用户端无法修改。
第二部分:P1H1291-O1 模块使用说明

2.1 模块概述
P1H1291-O1 是一款基于 P1H1291 芯片的反射式血氧饱和度 + 心率监测模块,集成 LED 光源、光电二极管、模拟前端与算法,柔性 PCB 设计可直接贴合人体佩戴使用。
| 项目 | 规格 |
|---|---|
| 模块型号 | P1H1291-O1 |
| PCB 版本 | V260701 |
| 接口 | 4 线(VBAT / GND / UART_TX / UART_RX) |
| 供电 | 1.8V – 3.3V ±5% (DVDD_3V)(建议 LDO 稳压) |
| 工作电流 | 约 1.2 mA(不包括LED),2 μA(STANDBY) |
| 测量参数 | 心率(HR)、血氧饱和度(SpO2)、灌注指数(PI)、在位状态 |
| HR 范围 | 30 ~ 240 bpm |
| SpO2 范围 | 80% ~ 100% |
| PI 范围 | 0.0 ~ 20.0(无量纲) |
| 采样率 | 20 Hz(每 50 ms) |
| 响应时间 | 检测放入 1~3 秒出数据 |
2.2 模块引脚定义
| 引脚 | 名称 | 说明 |
|---|---|---|
| 1 | VBAT | 电源正(3.3V) |
| 2 | GND | 电源地 |
| 3 | UART_TX | 模块数据发送(TTL 3.3V) |
| 4 | UART_RX | 模块数据接收(同时作为 STANDBY 唤醒源) |
注意:UART 接口为 TTL 3.3V 电平,连接到 5V MCU 时必须加电平转换器。
2.3 UART 默认参数
| 参数 | 值 |
|---|---|
| 波特率 | 115200 bps |
| 数据位 | 8 |
| 停止位 | 1 |
| 校验位 | 无 |
| 流控 | 无 |
| 指令/响应结尾 | \r\n |
2.4 上电行为
- 上电后模块自动进入 正常工作模式,开始采样并通过 UART 周期性输出数据
- LED(红/红外)开始周期性闪烁(每 50ms 切换)
- UART 默认每秒输出一行:
status,hr,spo2,PI\r\n
第三部分:AT 指令集
3.1 通用格式
- 所有指令以
\r\n结尾(CR+LF) - 所有响应以
\r\n结尾 - 参数值用
=分隔指令名与参数
3.2 自动输出格式
模块上电后默认每秒输出一行数据:
<status>,<hr>,<spo2>,<PI>\r\n
| 字段 | 范围 | 说明 |
|---|---|---|
| status | 0~2 | 0=空载, 1=在位, 2=干扰 |
| hr | 0~240 | 心率 bpm(空载时输出 0) |
| spo2 | 0~100 | 血氧 %(空载时输出 0) |
| PI | 0.0~20.0 | 灌注指数(空载时输出 0.0) |
示例输出(空载):
0,0,0,0.0
0,0,0,0.0
...
示例输出(在位):
1,68,97,3.5
1,69,97,3.4
...
3.3 PI(灌注指数)说明
| PI 范围 | 等级 | 说明 |
|---|---|---|
| < 0.2 | 极弱 | 信号差,数据仅供参考 |
| 0.2 ~ 1.0 | 弱 | 低灌注,保持手指稳定 |
| 1.0 ~ 5.0 | 正常 | 信号良好 |
| > 5.0 | 强 | 信号优秀 |
3.4 指令列表
① AT — 测试通信
发送: AT\r\n
响应: OK\r\n
检测模块是否在线,验证 UART 通信是否正常。
② AT+RAW=<0|1> — 开启/关闭波形数据
发送: AT+RAW=1\r\n
响应: OK\r\n
输出: 1,68,97,3.5,32768,32770 ← 每 50ms 一行 (20Hz)
1,68,97,3.4,32766,32772
...
发送: AT+RAW=0\r\n
响应: OK\r\n
输出: 1,68,97,3.5 ← 每 1s 一行 (1Hz)
1,69,97,3.4
...

P1H1291-O1
RAW 模式输出格式:
<status>,<hr>,<spo2>,<PI>,<red>,<ir>\r\n
red:RED 通道滤波后采样值(经 HP+LP 滤波)ir:IR 通道滤波后采样值(经 HP+LP 滤波)
③ AT+STOP=<0|1> — 暂停/恢复数据输出
发送: AT+STOP=1\r\n 暂停输出
响应: OK\r\n
(模块停止发送数据,但仍在采样和接收指令)
发送: AT+STOP=0\r\n 恢复输出
响应: OK\r\n
暂停后模块仍可接收 AT 指令,但不主动发送数据。
④ AT+MODE=<0|1> — 成人/婴儿模式
发送: AT+MODE=0\r\n 成人模式(默认)
响应: OK\r\n
发送: AT+MODE=1\r\n 婴儿模式
响应: OK\r\n
⑤ AT+SENS=<0~100> — 查询/设置灵敏度
发送: AT+SENS\r\n 查询当前灵敏度
响应: +SENS:50\r\n
OK\r\n
发送: AT+SENS=80\r\n 设置灵敏度为 80
响应: OK\r\n
| 参数 | 说明 |
|---|---|
| 0 | 最低灵敏度(需极强信号才判定在位,适合高信噪比场景) |
| 50 | 默认,平衡 |
| 100 | 最高灵敏度(微弱信号也判定在位,适合弱信号/仿真场景) |
⑥ AT+SLEEP — 进入休眠
发送: AT+SLEEP\r\n
响应: OK\r\n
(模块关闭 LED,停止采样,进入 STANDBY 低功耗模式,功耗 ~2μA)
进入休眠后模块关闭所有外设,UART RX 引脚下降沿触发唤醒。发送任意字节即可唤醒。
⑦ 错误反馈
未识别的指令或无效参数返回:
发送: AT+UNKNOWN\r\n
响应: ERROR:1\r\n
发送: AT+SENS=200\r\n
响应: ERROR:2\r\n
| 错误码 | 含义 |
|---|---|
| 1 | 无法识别的指令 |
| 2 | 参数超出范围 |
| 3 | 当前状态不允许此操作 |
3.5 自动休眠机制
除主动发送 AT+SLEEP 外,模块还会在以下条件下自动进入 STANDBY:
- 无手指超时:连续 30 秒未检测到手指 → 自动休眠
- UART 唤醒:收到任意 AT 指令 → 立即清零计时器,保持活跃
实测验证示例(串口调试截图):1,100,99,3.5 — 在位状态下输出2,100,99,0.8 — 干扰状态下输出OK — 指令响应
3.6 响应时间
| 阶段 | 典型时间 |
|---|---|
| 手指放入 → 检测在位 | 0.5 ~ 2 秒 |
| 检测在位 → HR/SpO2 有效 | 1 ~ 5 秒 |
| 手指拔出 → 检测空载 | 0.5 ~ 2 秒 |
| 休眠唤醒 → 恢复数据输出 | ~1 秒 |
| 指令响应时间 | < 5 ms |
3.7 使用流程示例
// 1. 连接并测试
发送: AT
响应: OK
// 2. 查看当前灵敏度
发送: AT+SENS
响应: +SENS:50
OK
// 3. 调整为高灵敏度
发送: AT+SENS=80
响应: OK
// 4. 开启波形数据,绘制 PPG 波形
发送: AT+RAW=1
响应: OK
(每 50ms 输出一行波形数据)
// 5. 切换为婴儿模式
发送: AT+MODE=1
响应: OK
// 6. 暂停数据输出,节约流量
发送: AT+STOP=1
响应: OK
// 7. 让模块进入休眠
发送: AT+SLEEP
响应: OK
(模块进入 ~2μA 低功耗)
// 8. 任意字节唤醒
发送: AT
(模块被唤醒,自动恢复数据输出)
响应: OK
上位机集成建议:
- 用串口助手打开对应 COM 口,波特率 115200
- 勾选”加回车换行”发送 AT 指令
- 解析返回的
status,hr,spo2,PI四元组用于 GUI 显示 - 绘制 PPG 波形需开启
AT+RAW=1,使用 20Hz 实时绘图 - 根据 PI 值显示信号质量指示条(绿/黄/红)
© 2026 P1H1291 / P1H1291-O1 模块 | 文档版本 v1.1 | PLUS1HEALTH
