F407+UCOS2.9.2问题
本帖最后由 dy22511825 于 2018-6-5 15:03 编辑... 发现个问题
void AppLedTask(void *para)
{
while(1)
{
GPIO_ToggleBits(GPIOA, GPIO_Pin_4); (1)
OSTimeDlyHMSM(0, 0, 0, 200);
GPIO_ToggleBits(GPIOA, GPIO_Pin_5);(2)
}
}
在1,2分别打断点,全速执行,每次都停到2处,1断点没停过,此时程序不进入OS_IDLE这个任务,实验效果1,2灯都亮灭(明明没执行1语句,不知道为啥1的灯还会正常效果),如果删除2语句,
程序进入OS_IDLE,但是效果正常(1的灯亮灭),不知道是不是编译器问题。。。。
而且,把1,2放在延时函数上面,还是进入IDLE,试验效果还是正常,真不知道为啥。。。。
解决方法: NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); 是不是开优化了?优化设置为-O0试试。 正点原子 发表于 2018-6-6 00:53
是不是开优化了?优化设置为-O0试试。
没配置中断组,即没加NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
页:
[1]