初级会员
- 积分
- 136
- 金钱
- 136
- 注册时间
- 2017-6-12
- 在线时间
- 36 小时
|
void start_task(void *pdata) //开始任务
{
OS_CPU_SR cpu_sr=0;
pdata=pdata;
OSStatInit(); //初始化统计任务
OS_ENTER_CRITICAL(); //进入临界区,中断无法打断
OSTaskCreate(led_task,(void *)0,(OS_STK *)&LED_TASK_STK[LED_STK_SIZE-1]
,LED_TASK_PRIO);
OSTaskCreate(DHT11_task,(void *)0,(OS_STK *)&DHT11_TASK_STK[DHT11_STK_SIZE-1]
,DHT11_TASK_PRIO);
OSTaskCreate(PM25_task,(void *)0,(OS_STK *)&PM25_TASK_STK[PM25_STK_SIZE-1]
,PM25_TASK_PRIO);
OSTaskCreate(beep_task,(void *)0,(OS_STK *)&BEEP_TASK_STK[BEEP_STK_SIZE-1]
,BEEP_TASK_PRIO);
OSTaskSuspend(START_TASK_PRIO); //挂起起始任务
OS_EXIT_CRITICAL(); //退出临界区,中断可以打断
}
程序下载后,可以运行一段时间,LED闪烁、温湿度、PM2.5的值有波动时LCD的显示会变化,但运行一段时间后,程序卡住,只有PM值能够变化!!!
|
|