基于STM32测试了ucOSII的禁止任务调度方式:
针对ucOSII: OSSchedLock();和 OSSchedUnlock();
针对ucOSIII: OSSchedLock(&err); OSSchedUnlock(&err); 其中 OS_ERR err;
编写两个任务
void IO_read_test_Tool_Task(void *pdata)
{
u8 i=0;
while(1)
{
readInputStatus();
i++;
LED_Operate(i%10);
Log(0x1111,LOG_NOTICE,(u8*)&i,2);
delay_ms(1000);
}
}
void IO_output_test_Tool_Task(void *pdata)
{
u8 i=0;
while(1)
{
updatDigIO_Status();
i++;
LED_Operate(i%10);
Log(0x1111,LOG_NOTICE,(u8*)&i,2);
delay_ms(1000);
}
}
延时函数
void delay_ms(u16 nms)
{
if(delay_osrunning&&delay_osintnesting=