diff --git a/V1.4/STM32F103_App1/README.md b/V1.4/STM32F103_App1/README.md index 632e848..cf77674 100644 --- a/V1.4/STM32F103_App1/README.md +++ b/V1.4/STM32F103_App1/README.md @@ -233,6 +233,30 @@ W25Q64 外部 Flash(8MB): - 无秤模式(`PRODUCT_WITH_FEED_SCALE = 0`):**四路全部恢复**(含 SW1) - 投料机模式(`PRODUCT_WITH_FEED_SCALE = 1`):**继电器 1 不恢复且上电强制断开**(防止误投料浪费饲料),继电器 2~4 恢复 +## EEPROM 布局(AT24C02,256 字节) + +上电由 `eepromReadInfo()` 读取并按 Magic 校验;配置损坏/未初始化时回退到 `main.h` 的编译期默认值并重新写入。 + +| 偏移 | 大小 | 内容 | +| --- | --- | --- | +| 0~19 | 20B | `ClientID` MQTT 客户端 ID | +| 20~39 | 20B | `Username` | +| 40~59 | 20B | `Passward` | +| 60~79 | 20B | `ServerIP` | +| 80~99 | 20B | `Topic`(下行主题前缀 `/iot/data/down/`) | +| 100~101 | 2B | `ServerPort` | +| 102~108 | 7B | `Relay_State[7]`:[1..4] 四路继电器掉电记忆状态,[0] 保留,[5][6] 未用 | +| 112~115 | 4B | `Magic`(0xDEADBEEF,检测 EEPROM 是否已初始化;109~111 为对齐填充) | +| 116~117 | 2B | `Ver` OTA 固件版本号(确认后落盘,断电保持) | +| 120~121 | 2B | 秤参数:去皮/空载重量 `zero`(0.1KG 单位,仅称重模式) | +| 122~123 | 2B | 秤参数:单次投喂量 `onceWt`(0.1KG 单位,仅称重模式) | +| 124 | 1B | 秤参数初始化标志 | +| 130 | 1B | 上次成功联网方式:0=4G,1=WiFi固定热点,2=WiFi配网热点(仅变化时写) | +| 250 | 1B | 探测字节(上电写 0xA5 回读,验证 I2C 通信) | + +> 注意:改 `MqttInfo_Str` 结构体会改变上述偏移,秤参数(120+)和联网方式(130)在 +> `feed_scale.c` / `network.c` 里是独立宏定义,需同步避让。 + ## 平台数据字段 | 字段 | 含义 | 说明 |