|
int main(void)
{
。。。。
taskENTER_CRITICAL(); //进入临界区
//创建开始任务
xTaskCreate((TaskFunction_t )start_task, //任务函数
(const char* )"start_task", //任务名称
(uint16_t )START_STK_SIZE, //任务堆栈大小
(void* )NULL, //传递给任务函数的参数
(UBaseType_t )START_TASK_PRIO, //任务优先级
(TaskHandle_t* )&StartTask_Handler); //任务句柄
taskEXIT_CRITICAL(); //退出临界区
vTaskStartScheduler(); //开启任务调度
。。。。
}
void start_task(void *pvParameters)
{
。。。。
xTaskCreate((TaskFunction_t )touch_task,
(const char* )"touch_task",
(uint16_t )TOUCH_STK_SIZE,
(void* )NULL,
(UBaseType_t )TOUCH_TASK_PRIO,
(TaskHandle_t* )&TouchTask_Handler);
//创建EMWIN
xTaskCreate((TaskFunction_t )emwindemo_task,
(const char* )"emwindemo_task",
(uint16_t )EMWINDEMO_STK_SIZE,
(void* )NULL,
(UBaseType_t )EMWINDEMO_TASK_PRIO,
(TaskHandle_t* )&EmwindemoTask_Handler);
。。。。
}
void emwindemo_task(void *pvParameters)
{
MainTask();
while(1)
{
GUI_Delay(1);
}
}
void touch_task(void *pvParameters)
{
while(1)
{
GUI_TOUCH_Exec();
vTaskDelay(10);
}
}
问题:
1.当emwindemo_task 优先级高于touch_task线程
登录窗口密码错误,
弹框提示密码,按OK按钮,死机
2.touch_task 优先级高于当emwindemo_task线程
弹框,按OK按钮,不死机,但是屏幕会抖动
怎么解决??跪谢
|
|