请教Freertos移植到STM32F1上优先级分组的问题

2019-12-22 13:47发布

本帖最后由 desertsailor 于 2017-10-2 00:56 编辑

ulMaxPRIGROUPValue在xPortStartScheduler中计算得出:
/* Calculate the maximum acceptable priority group value for the number
                of bits read back. */
                ulMaxPRIGROUPValue = portMAX_PRIGROUP_BITS;
                while( ( ucMaxPriorityValue & portTOP_BIT_OF_BYTE ) == portTOP_BIT_OF_BYTE )
                {
                        ulMaxPRIGROUPValue--;
                        ucMaxPriorityValue <<= ( uint8_t ) 0x01;
                }

                /* Shift the priority group value back to its position within the AIRCR
                register. */
                ulMaxPRIGROUPValue <<= portPRIGROUP_SHIFT;
                ulMaxPRIGROUPValue &= portPRIORITY_GROUP_MASK;

但这句判断优先级组的有效性
configASSERT( ( portAIRCR_REG & portPRIORITY_GROUP_MASK ) <= ulMaxPRIGROUPValue );
我怎么觉得正常应该是大于等于,而不是小于等于?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
亽亼
1楼-- · 2019-12-22 17:50
值越小优先级越高的
desertsailor
2楼-- · 2019-12-22 18:58
 精彩回答 2  元偷偷看……
desertsailor
3楼-- · 2019-12-22 20:16
我知道了,没问题的,确保使用4位抢占优先级。

一周热门 更多>