修复 P1-7:MAC 写入顺序改为 INIT_CH395 之前

- 手册 §9.2.1:SET_MAC(步骤①) 必须先于 INIT_CH395(步骤⑤);SET_MAC 写
  芯片 EEPROM,INIT 从中加载 MAC——原顺序反了则本次上电 MAC 不生效
  (回落芯片内置/上次值),UI 显示与设备在线身份不符
- net_socket.c net_init():SET_MAC 移到 ch395f_init() 之前(对齐步骤①)
- ch395f.c:四个 SET(MAC/IP/GWIP/MASK)限定条件注释由"芯片已初始化"
  订正为"必须在 ch395f_init() 之前调用"
- net_socket.h / BSD_Socket_API_函数调用关系.md:同步顺序描述
- CH395F_Trap_Records.md:新增 Trap 24 沉淀根因与修复
- 待处理内容.md:P1-7 销项(§1/§2 阶段 A/§3.1/§4);阶段 A 清空后重编号
- 验证:Keil 构建 0 错 0 警;pre-commit 17/17 全通过
This commit is contained in:
2026-10-04 23:07:00 +08:00
parent 72c0bd2f7c
commit de1b50efe9
6 changed files with 67 additions and 46 deletions
+3 -3
View File
@@ -68,9 +68,9 @@ typedef struct {
* mac - MAC 地址(6 字节,低字节在前),NULL 或全零使用芯片内置
* 返回值:0 成功,-1 失败
* 限定条件:SPI2 已正确初始化
* 函数说明:必须在所有网络操作之前调用;mac 非空且非全零时于协议栈
* 初始化成功后设置(ch395f_set_mac_addr 写芯片 EEPROM,
* 每上电重放同值幂等)
* 函数说明:必须在所有网络操作之前调用;mac 非空且非全零时在协议栈初始化
* (CMD_INIT_CH395)之前下发(手册 §9.2.1 步骤①:SET_MAC 写芯片 EEPROM,
* INIT_CH395 加载 MAC——顺序反了则本次上电不生效,回落芯片内置/上次值)
*/
int net_init(const char *ip, const char *mask, const char *gateway, const uint8_t *mac);