关于临界区OS_CPU_SR cpu_sr的定义
[复制链接]
////////////////////////////////////现在的版本//////////////////////////////
#define OS_CRITICAL_METHOD 3u
#if OS_CRITICAL_METHOD == 3u
#define OS_ENTER_CRITICAL() {cpu_sr = OS_CPU_SR_Save();}
#define OS_EXIT_CRITICAL() {OS_CPU_SR_Restore(cpu_sr);}
#endif
普通函数中() {
OS_CPU_SR cpu_sr;
OS_ENTER_CRITICAL() /*临界代码*/ OS_EXIT_CRITICAL() }
/////////////////////////////////////////////////老版本//////////////////////////////////////////////////////////
#define OS_CRITICAL_METHOD 3u
#if OS_CRITICAL_METHOD == 3u
void OS_ENTER_CRITICAL (void); void OS_EXIT_CRITICAL (void);
#endif 普通函数中() {
OS_ENTER_CRITICAL() /*临界代码*/ OS_EXIT_CRITICAL() }相对老版本的来说,此时的临界区每次都要定义一次cpu_sr,相对不是很方便,到底作者是处于什么考虑呢?为什么从简单变的不方便呢?大家有什么意见?
|