OpenEdv-开源电子网
标题:
有关FreeRtos的临阶段代码保护问题
[打印本页]
作者:
WolfkinqJQk9
时间:
2020-3-27 11:07
标题:
有关FreeRtos的临阶段代码保护问题
在FreeRTOS系统中,在中断里使用临界段代码保护 taskENTER_CRITICAL_FROM_ISR,中断的优先级必须小于设定值configMAX_SYSCALL_INTREEUPT_PRIORITY,才能在中断使用中断级临界段代码保护,但是中断级临界段代码保护的
作用不是吧优先级小于设定值configMAX_SYSCALL_INTREEUPT_PRIORITY的中断都屏蔽了吗,那这样的话这个中断也不是改被屏蔽吗,那就不起作用了。感觉这个点没有想明白,这个是原子哥给出的事例代码
作者:
zyx818102
时间:
2020-3-27 11:22
临界段的目的就是屏蔽其它中断触发而打断操作的。防止你在数据存取过程中被打断而发生异常情况。
作者:
ultraelec
时间:
2020-3-27 15:48
进门之后再锁门,你已经在屋里了。
这例子可以改进一下:
1. printf放在中断外边
2. printf仍放在中断里边,但放到临界段外边。在临界段中操作total_num后赋值给另外一个临时变量,然后printf操作临时变量
欢迎光临 OpenEdv-开源电子网 (http://47.111.11.73/)
Powered by Discuz! X3.4