e0b02d397c
待办池 docs/待处理内容.md §3.2 的 10 个 P2 全部闭环;逐项落代码 + 注释说明。 P2-1 cfg_file: 受管键行超 CFG_LINE_TEST_MAX 拒绝保存(防重复键行) P2-2 ch395f: DMA 失败传播状态 + 锁存通道故障 + 读不拷不可信数据 P2-7 net_select: LISTENING 不再恒判可读(消除 select 忙轮询地雷) P2-8 time_sync: 核实 L3 pending 改写已闭环(net_recv_to 分片 + 总预算) P2-9 sys_log: 挂载改幂等 + 卷锁,defaultTask 2s 重试建 /log P2-10 sys_log: s_read_raw 纳入卷锁 try(读者/写者 unlink 互斥) P2-11 net_task: RECONFIG 改 osEventFlagsWait 原子取走 + 清除 P2-12 app_cfg: APP_*_ENABLE 如实标注为未接线占位,删“开关”说法 P2-13 freertos: 产品构建 vTaskDelete(testTask) 回收 8KB CCM 栈 P2-15 download.bat: 先删旧日志 + 增“未产出日志”判定 P2-13 用 USER CODE 区回收而非生成区 #if 门控:生成区改动会被 CubeMX 重生成覆盖,本方案重生成不丢。P2-12 因产品定义 B0 未定、APP_NET_ENABLE 无单一接线点,按修复建议备选(删“开关”说法)处理。 验证:@build 0 错 0 警;主机单测 watchdog 39/39 + sys_clock 100/100 + cfg_file 149/149(新增 TC-CFG-044);pre-commit --all-files 17/17。
48 lines
1.8 KiB
C
48 lines
1.8 KiB
C
/*
|
|
* 模块名称:Application Configuration
|
|
* 模块功能:应用层全局配置宏(**预留占位,当前均未接线**)
|
|
* 适用平台:STM32F407ZGTx
|
|
* 作者:王建锋
|
|
* 创建日期:2026-07-19
|
|
* 修改记录:
|
|
* v1.0 2026-07-19 王建锋 创建初始版本
|
|
* v1.1 2026-10-04 王建锋 P2-12:下列宏此前被表述为"功能模块使能开关",但全库
|
|
* 零代码引用(grep 仅本文件有定义)——"开关名存实亡"会
|
|
* 误导评审者以为模块可裁剪。现如实标注为**预留占位**:
|
|
* 当前**不门控任何代码**,各模块一律编译进产品。是否/
|
|
* 如何接线取决于产品定义(待处理内容.md §2 阶段 B0),
|
|
* 确认后再在真实初始化点(如 app_main.c 的 rs485_init /
|
|
* tpafe5160_init)加门控;在此之前**不要**把它们当开关用。
|
|
*/
|
|
|
|
#ifndef APP_CFG_H
|
|
#define APP_CFG_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/*
|
|
* 系统时钟源选择(**预留占位,未接线**)
|
|
* 0 - DWT CYCCNT(当前实现:console_log.c 直接使用 DWT,未读本宏)
|
|
* 1 - TIM2(未实现)
|
|
* 说明:本宏当前无任何消费点;实际的"与时间源无关硬上界"由 console_log.c 内联
|
|
* 使能 DWT 实现,不经过本宏。
|
|
*/
|
|
#define APP_SYS_TIME_SRC 0
|
|
|
|
/*
|
|
* 功能模块"预留开关"(**当前均未接线,不门控任何代码**)
|
|
* 三个宏一律保持定义(= 模块编译进产品);它们**不产生任何编译期效果**,
|
|
* 仅作为产品定义(B0)落定后接入真实门控的占位锚点。
|
|
*/
|
|
#define APP_NET_ENABLE
|
|
#define APP_ADC_ENABLE
|
|
#define APP_RS485_ENABLE
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* APP_CFG_H */
|