feat(build): 优化构建配置并引入日志分级系统
- 将优化级别从balanced调整为size,减少Flash占用 - 添加hardfault.cpp文件以增强故障诊断能力 - 关闭RTTI和异常处理以移除libcppabi运行时(节省约2.5KB Flash) - 添加链接器参数输出未引用段与总量报告用于Flash尺寸分析 refactor(logging): 统一日志输出并实现编译时日志分级 - 将printf调用替换为模块化的日志宏(ECAT_LOGI、CAN_LOGI等) - 实现CONFIG_*_LOG_ENABLE编译开关控制各模块INFO级日志 - 错误和关键事件使用LOG_ERR恒定保留,其他日志可编译时裁剪 - 保持原有日志内容不变,但支持链接器自动回收未使用的格式字符串
This commit is contained in:
@@ -138,8 +138,9 @@ extern "C" void HardFault_Handler_C(uint32_t *stack_frame, uint32_t lr_value) {
|
||||
|
||||
/**
|
||||
* @brief HardFault_Handler 汇编桩——保存栈帧后调用 C 诊断函数。
|
||||
* @note 必须 extern "C":否则被 C++ 名字修饰,无法覆盖启动文件的 WEAK 符号。
|
||||
*/
|
||||
__attribute__((naked)) void HardFault_Handler(void) {
|
||||
extern "C" __attribute__((naked)) void HardFault_Handler(void) {
|
||||
__asm volatile(
|
||||
"tst lr, #4 \n" /* 检查 EXC_RETURN 位 2 */
|
||||
"ite eq \n"
|
||||
|
||||
Reference in New Issue
Block a user