完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
请问下为什么一旦把uC/OS-II里面第一次调用的起始任务优先级设置的低一些,程序就一直死在空闲任务中?
main.c代码[C] 纯文本查看 复制代码 #include "includes.h" OS_STK Task_Start_STK[Task_Start_SIZE];int main(void){ STM32_Init();OSInit();OSTaskCreate(Task_Start,(void *)0,(OS_STK *)&Task_Start_STK[Task_Start_SIZE-1],Task_Start_PRIO);OSStart();return 0;}APP.C代码 [C] 纯文本查看 复制代码 /*************************************************************************************************************任务的堆栈声明***********************************************************************************************************/OS_STK Task_Touch_STK[Task_Touch_SIZE];OS_STK Task_Main_STK[Task_Main_SIZE];OS_STK Task_Calibrate_STK[Task_Calibrate_SIZE]; /* ********************************************************************************************************* *函 数 名: Stm32_Init *功能说明: 系统初始化 *形 参:void *返 回 值: 无 ********************************************************************************************************* */void Stm32_Init(void){delay_init(); /* Systick初始化 */LED_Init(); /* LED初始化 */TP_Init(); /* 触摸屏初始化 */ KEY_Init();} /* ********************************************************************************************************* *函 数 名: Task_Start *功能说明: 起始任务 *形 参:void *pdata *返 回 值: 无 ********************************************************************************************************* */void Task_Start(void *pdata){OSTaskCreate(Task_Main,(void *)0,(OS_STK *)&Task_Main_STK[Task_Main_SIZE-1],Task_Main_PRIO);OSTaskCreate(Task_Touch,(void *)0,(OS_STK *)&Task_Touch_STK[Task_Touch_SIZE-1],Task_Touch_PRIO);OSTaskDel(OS_PRIO_SELF);//删除起始任务.}APP.H代码 [C] 纯文本查看 复制代码 /**************************************************************************************************任务的优先级声明************************************************************************************************/#define Task_Start_PRIO3#define Task_Touch_PRIO4#define Task_Main_PRIO 5#define Task_Calibrate_PRIO 6/**************************************************************************************************任务的堆栈容量声明************************************************************************************************/#define Task_Start_SIZE 64#define Task_Touch_SIZE 64#define Task_Main_SIZE 256#define Task_Calibrate_SIZE 128/**************************************************************************************************任务的声明************************************************************************************************/void Task_Start(void *pdata);void Task_Main(void *pdata);void Task_Touch(void *pdata);void Task_Calibrate(void *pdata);/**************************************************************************************************函数的声明************************************************************************************************/void Stm32_Init(void);void Start_Page(void);void Home_Page(void);void Touch_Calibrate(void);上面的代码正常运行,但是一旦把Task_Start_PRIO 这个起始任务的优先级设置的低一些。。。程序就一直死在空闲任务里面了 |
|
相关推荐
1个回答
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
698 浏览 0 评论
1109 浏览 1 评论
2476 浏览 5 评论
2810 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2653 浏览 6 评论
使用eim外接fpga可是端口一点反应都没有有没有大哥指点一下啊
656浏览 9评论
651浏览 7评论
请教大神怎样去解决iMX6Q在linux3.0.35内核上做AP失败的问题呢
784浏览 6评论
632浏览 5评论
672浏览 5评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-23 21:17 , Processed in 0.960356 second(s), Total 78, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号