|
发表于 2021-8-19 13:44:50
|
显示全部楼层
我这边参考的是V6的例程呢。
对比V6,V7和我这边的版本发现.s文件里的条件编译有差异
V6,V7
IF EF: TX_ENABLE_EXECUTION_CHANGE_NOTIFY
/* Call the thread entry function to indicate the thread is executing. */
PUSH {r0, r1} // Save r0 and r1
BL _tx_execution_thread_enter // Call the thread execution enter function
POP {r0, r1} // Recover r0 and r1
ENDIF
我这边的是
#if (defined(TX_ENABLE_EXECUTION_CHANGE_NOTIFY) || defined(TX_EXECUTION_PROFILE_ENABLE))
/* Call the thread entry function to indicate the thread is executing. */
PUSH {r0, r1} // Save r0 and r1
BL _tx_execution_thread_enter // Call the thread execution enter function
POP {r0, r1} // Recover r0 and r1
#endif
配置工程包含的宏定义不能被.S文件识别到。将#if格式改为IF:后这个功能就正常了。
或者在.S文件中加宏定义#define TX_ENABLE_EXECUTION_CHANGE_NOTIFY。
附图两边的差异,更详细的原因还望有了解过这一块的大佬解惑。
|
|