定时器初始化如下:
timx_init(T1, 83, 999, 0, 1);
其中0为prePriority
在TIMER1_IRQHandler中调用
xSemaphoreGiveFromISR时
Keil仿真后程序卡在configASSERT( ucCurrentPriority >= ucMaxSysCallPriority )
排查原因:定时器的中断优先级大于系统能够管理的优先级。
解决办法:将定时器的优先级降低,即修改定时器初始化的prePriority
timx_init(T1, 83, 999, 9, 1);
完美解决!!!
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/baidu_38324026/article/details/136621243
|