docs: 调整为7种传感器类型并规划配对时手动按键微调后缀序号逻辑
This commit is contained in:
@@ -45,3 +45,33 @@ u32 Get_Bracelet_Factory_ID(void) {
|
||||
return uid;
|
||||
}
|
||||
```
|
||||
|
||||
### 2.4 传感器自定义名称拼接与写入 (Add_Sensor)
|
||||
在 `Add_Sensor(u32 addr, u8 type, u8 suffix_idx)` 中,系统预设 7 类传感器名前缀:
|
||||
```c
|
||||
char *code sensor_prefixes[7] = {
|
||||
"PORTE", "PIR", "FUMEE", "URGENCE", "GAZ", "INOND.", "VIBRA."
|
||||
};
|
||||
```
|
||||
在写入时,手动拼接前缀和两位数字 `suffix_idx` 后缀:
|
||||
```c
|
||||
void Add_Sensor(u32 addr, u8 type, u8 suffix_idx) {
|
||||
u8 slot = ...; // 检索空槽或匹配历史ID
|
||||
char *prefix = sensor_prefixes[type];
|
||||
u8 len = 0;
|
||||
|
||||
// 拷贝前缀
|
||||
while (prefix[len] != '\0' && len < 11) {
|
||||
sensor_list[slot].name_gbk[len] = prefix[len];
|
||||
len++;
|
||||
}
|
||||
sensor_list[slot].name_gbk[len++] = ' ';
|
||||
sensor_list[slot].name_gbk[len++] = '0' + (suffix_idx / 10);
|
||||
sensor_list[slot].name_gbk[len++] = '0' + (suffix_idx % 10);
|
||||
sensor_list[slot].name_gbk[len] = '\0';
|
||||
|
||||
// 其余变量赋值并保存数据库
|
||||
// ...
|
||||
Save_Database();
|
||||
}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user