test(vd960DBN): Flash/SPI 全禁用实验 — 定位 SPI 操作触发复位
UART2 隔离后(06fb009)依旧 80ms 复位循环+乱码 → 排除 Loop 数据路径
Hex 日志: 乱码紧跟 snap ok 后的 offlog_boot SPI 写, 复位标志全 0
= NRST 毛刺复位特征, 疑似 SPI 总线(PA4-7)串扰 NRST/调试线 或 电源瞬态
本版: #if 1 跳过 storage/offlog/snap/offlog_boot/load_cfg 全部 SPI 调用
判定: 稳定 → SPI 触发实锤, 硬件查电源/NRST/布线
仍复位 → 与 SPI 无关, 纯硬件(电源/晶振/其他)
This commit is contained in:
@@ -306,6 +306,13 @@ int main(void)
|
|||||||
PRINT("RST_REASON: 0x%08lx\n", (unsigned long)OFFLOG_RCC_RSTSCKR);
|
PRINT("RST_REASON: 0x%08lx\n", (unsigned long)OFFLOG_RCC_RSTSCKR);
|
||||||
PRINT("%s\n", VER_LIB);
|
PRINT("%s\n", VER_LIB);
|
||||||
PRINT("SystemCoreClock:%d\n", SystemCoreClock);
|
PRINT("SystemCoreClock:%d\n", SystemCoreClock);
|
||||||
|
/* ===== 实验: 禁用全部 Flash/SPI 操作 (2026-08-12) =====
|
||||||
|
目的: 验证 SPI 操作是否触发复位循环 (UART2 隔离后依旧复位+乱码,
|
||||||
|
乱码紧跟 offlog_boot 的 SPI 写, 疑似 SPI 信号串扰 NRST/调试线)
|
||||||
|
#if 1 = 跳过全部 SPI; 通过后改 0 或删除本块恢复 */
|
||||||
|
#if 1
|
||||||
|
PRINT("ISOLATE: flash/SPI disabled (flash isolation test)\n");
|
||||||
|
#else
|
||||||
GetMacAddr(gMacAddr);
|
GetMacAddr(gMacAddr);
|
||||||
storage_init();
|
storage_init();
|
||||||
PRINT("INIT: storage ok\n");
|
PRINT("INIT: storage ok\n");
|
||||||
@@ -324,6 +331,7 @@ int main(void)
|
|||||||
|
|
||||||
load_cfg_from_flash();
|
load_cfg_from_flash();
|
||||||
output_cfg_from_flash();
|
output_cfg_from_flash();
|
||||||
|
#endif
|
||||||
|
|
||||||
PRINT("MAC: %02X %02X %02X %02X %02X %02X\r\n", gMacAddr[0],gMacAddr[1], gMacAddr[2], gMacAddr[3],gMacAddr[4],gMacAddr[5]);
|
PRINT("MAC: %02X %02X %02X %02X %02X %02X\r\n", gMacAddr[0],gMacAddr[1], gMacAddr[2], gMacAddr[3],gMacAddr[4],gMacAddr[5]);
|
||||||
PRINT("net version:%x\n", WCHNET_GetVer());
|
PRINT("net version:%x\n", WCHNET_GetVer());
|
||||||
|
|||||||
Reference in New Issue
Block a user