请教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 );
我怎么觉得正常应该是大于等于,而不是小于等于?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。