|
void led0_task(void *p_arg) //led0任务的优先级是5
{
OS_ERR err;
p_arg = p_arg;
while(1)
{
LED2_TOGGLE; //LED2闪烁
OSTimeDlyHMSM(0,0,0,500,OS_OPT_TIME_HMSM_STRICT,&err); //延时500ms
}
}
void led1_task(void *p_arg) //led1任务的优先级是4
{
OS_ERR err;
p_arg = p_arg;
while(1)
{
calibrate_IMU(); //校验
ANO_DT_Data_Exchange(); //更新上位机的数据
OSTimeDlyHMSM(0,0,0,2,OS_OPT_TIME_HMSM_STRICT,&err); //延时2ms
}
}
更新上位机数据的任务能正常运行,但是LED闪烁的任务不能运行,我以为是更新上位机的数据任务优先级太高,延时很短,就把任务优先级调换,两个任务就能正常运行。求各位大佬们解释下,为什么LED闪烁不能正常运呢 |
|