標(biāo)題: 新手貼之一個(gè)關(guān)于RTOS系統(tǒng) vTaskDelay在task1中無(wú)法延時(shí)的問(wèn)題 [打印本頁(yè)]

作者: 1778911045    時(shí)間: 2018-11-18 20:41
標(biāo)題: 新手貼之一個(gè)關(guān)于RTOS系統(tǒng) vTaskDelay在task1中無(wú)法延時(shí)的問(wèn)題
void task1_task( void * pvParameters )
{
        
        while(1)
        {
                LED_BLUE = !LED_BLUE;
                LED_RED = !LED_RED;
                vTaskDelay(1000);
        }
}
這個(gè)task1任務(wù)能夠執(zhí)行到讓兩個(gè)燈亮,就是無(wú)法翻轉(zhuǎn),就是無(wú)法閃爍,請(qǐng)問(wèn)是移植RTOS系統(tǒng)時(shí)出現(xiàn)問(wèn)題還是哪里沒(méi)有配置好?
還有就是當(dāng)改為
LED_BLUE = !LED_BLUE;
vTaskDelay(1000);
LED_RED = !LED_RED;
的時(shí)候,LED_RED會(huì)不亮,好像在延時(shí)函數(shù)哪里卡死一樣
作者: ccccccssssssss    時(shí)間: 2020-10-29 16:58
請(qǐng)問(wèn)問(wèn)題解決了嗎?我也遇到了同樣的問(wèn)題,任務(wù)進(jìn)入vtaskdelay之后就卡住了
作者: zy_soul    時(shí)間: 2020-11-6 17:29
ccccccssssssss 發(fā)表于 2020-10-29 16:58
請(qǐng)問(wèn)問(wèn)題解決了嗎?我也遇到了同樣的問(wèn)題,任務(wù)進(jìn)入vtaskdelay之后就卡住了

請(qǐng)問(wèn)問(wèn)題解決了嗎?我也遇到了類似的問(wèn)題。任務(wù)進(jìn)入vTaskDelayUntil之后就卡死了,看門(mén)狗重啟。但是調(diào)試的時(shí)候單步執(zhí)行就一切正常。嘗試用自己寫(xiě)的延時(shí)函數(shù)代替vTaskDelayUntil后,程序也可以正常運(yùn)行。
作者: ~何去何從    時(shí)間: 2021-3-9 17:53
求大神解答,我也是按照原子哥的教學(xué)視頻做一個(gè)簡(jiǎn)單測(cè)試任務(wù)框架的代碼。最后發(fā)現(xiàn)程序走到vTaskDelay就會(huì)卡死。請(qǐng)大神幫忙解答下
作者: 2571881829    時(shí)間: 2021-3-25 15:40
void task1_task(void * pvParameters) {         while(1)         {                 LED0=!LED0;                 vTaskDelay(500);         } }  void task2_task(void * pvParameters) { while(1)    {                  LED1=0;                 vTaskDelay(500);                  LED1=1;                 vTaskDelay(800);    } }我是這里燈一個(gè)都不亮的
作者: a474997335    時(shí)間: 2021-4-13 15:48
本帖最后由 a474997335 于 2021-4-13 16:23 編輯

我也遇到這個(gè)問(wèn)題了,我是這2種問(wèn)題導(dǎo)致的:
1.是在vTaskDelay延時(shí)的時(shí)候,進(jìn)入了中斷,或者在中斷中使用了vTaskDelay,而vTaskDelay是不能在中斷中調(diào)用的。
2.在臨界內(nèi)使用了這個(gè)延時(shí)
作者: a474997335    時(shí)間: 2021-4-13 16:09
2571881829 發(fā)表于 2021-3-25 15:40
void task1_task(void * pvParameters) {         while(1)         {                 LED0=!LED0;                 vTaskDelay(500);         } }  void task ...

你這個(gè)應(yīng)該就是2個(gè)任務(wù)重復(fù)調(diào)用vTaskDelay,產(chǎn)生的死循環(huán)。
作者: 南洋牧牛人    時(shí)間: 2021-4-14 17:28
我也是在vTaskDelay中卡死,有哪位大佬知道是怎么回事嗎?請(qǐng)教一下。謝謝!
作者: acma    時(shí)間: 2021-12-19 13:11
同上,但是vTaskDelay(這里改為<1000)就不會(huì)報(bào)錯(cuò),但不清楚為什么不能是1000以及以上。求解
作者: 曉戴阿文    時(shí)間: 2022-1-19 15:47
我也遇到了,我是靜態(tài)創(chuàng)建任務(wù),我發(fā)現(xiàn)我的空閑任務(wù)給小了




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1