Open yy505149 opened 4 years ago
由于本人使用CubeMX配置生成工程,每次在修改配置重新生成后,注释掉的HardFault_Handler就会被重新生成并启用,又要去重新注释,很麻烦,所以在cm_backtrace.c中增加以下函数,并在cm_backtrace.h中增加对应的函数定义,函数参考了.s汇编文件的写法。这样就可以很方便的直接调用,而且不用考虑cm_backtrace_fault入口参数了。
__asm void cm_backtrace_ErrorDiagnosis(void) { IMPORT cm_backtrace_fault MOV r0, lr; MOV r1, sp; BL cm_backtrace_fault }
挺不错的想法,感谢分享,也可以写个文档,提交到 /doc 目录哈
那你应该修改 cubemx的配置 不启用生成HardFault_Handler
谢谢分享,CubeMX确实还有很多不知道怎么使用。
由于本人使用CubeMX配置生成工程,每次在修改配置重新生成后,注释掉的HardFault_Handler就会被重新生成并启用,又要去重新注释,很麻烦,所以在cm_backtrace.c中增加以下函数,并在cm_backtrace.h中增加对应的函数定义,函数参考了.s汇编文件的写法。这样就可以很方便的直接调用,而且不用考虑cm_backtrace_fault入口参数了。
__asm void cm_backtrace_ErrorDiagnosis(void) { IMPORT cm_backtrace_fault MOV r0, lr; MOV r1, sp; BL cm_backtrace_fault }