docs: optimize SOS button behavior, add 2-step pairing wizard, and IPC exit action
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
# 编码实现 - 自适应 RF 解码与发射 (Docs/60_coding/mod-rf.md)
|
||||
|
||||
本文件对应自适应射频解码与主动发射的具体编码实现细节。已验证无变动。
|
||||
本文件对应自适应射频解码与主动发射的具体编码实现细节。
|
||||
|
||||
## 1. 对应代码源文件
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
解码时,软件轮询检测接收管脚状态。
|
||||
1. **抓取同步头**:检测到一个大于 `1500us` 且小于 `60000us` 的低电平。
|
||||
2. **计算基准 T**:`T = low_time / 31`。
|
||||
3. **采集 24 个数据位**:对于每一位,检测它的高电平持续时间 `h_val` 和低电平持续时间 `l_val`:
|
||||
3. **采集 24 个数据位**:对于每一位,检测它的高电平持续时间 `h_val` and 低电平持续时间 `l_val`:
|
||||
```c
|
||||
// 解码一位数据
|
||||
if (h_val > l_val) {
|
||||
@@ -22,7 +22,7 @@
|
||||
res = (res << 1) | 0;
|
||||
}
|
||||
```
|
||||
4. **极速解析与 CPU 效率**:去除了之前在主循环中阻塞多帧解析的详细日志串口打印,仅在解析整帧成功后发送一行 Summary。单帧处理耗时控制在 **2ms** 以内,彻底避免了连续波形导致的丢包现象。
|
||||
4. 正常解码成功将 20 位地址存入 `out_addr`,后 4 位数据存入 `out_type` 并返回 `1`。
|
||||
|
||||
### 2.2 主动广播发射 (EV1527_Transmit)
|
||||
手环通过 LT4455 发送对码广播或主动 SOS 警报,在 `rf.c` 中实现:
|
||||
@@ -37,4 +37,4 @@ void EV1527_Transmit(u32 addr, u8 data_code) {
|
||||
* **绑定对码**:当用户触发对码绑定时,传入 `addr = bracelet_factory_id`,`data_code = 0x01`。
|
||||
* **主动 SOS 警报**:当触发主动 SOS 时,主状态机在 `STATE_SOS_EMITTED` 下定期以时间片的形式调用此函数,传入 `addr = bracelet_factory_id`,`data_code = 0x08`(即二进制 `1000`)。
|
||||
|
||||
<!-- Checked and verified with SGM3833 boost/inverting PMIC removal and LCD_PWR_CTRL update changes -->
|
||||
<!-- Checked and verified with SGM3833 boost/inverting PMIC removal and LCD_PWR_CTRL update changes V2 -->
|
||||
|
||||
Reference in New Issue
Block a user