freertos

    0熱度

    3回答

    我嘗試使用ST作爲底板STM32F4DIS_BB + STM32F4-discovery的示例。 我想使用RTOS示例httpserver_socket。在我使用獨立(NO RTOS)httpserver示例之前,沒有問題。但在RTOS示例中,服務器在每個Web連接上都凍結。這意味着LED切換任務可以,DHCP可以等。從CMD ping可以。但是當我從網絡客戶端連接時,電路板被凍結,並且去Hard

    2熱度

    1回答

    我在STM32F103上運行FreeRTOS並使用IAR工作臺。我想了解'鏈接器設置的一般堆棧大小'和'FreeRTOS中每個任務的堆棧大小'之間的關係。例如,當FreeRTOS創建任務時,它是使用由鏈接器定義的堆棧還是在自由RAM中定義它自己的堆棧?我正在嘗試確定項目的堆棧大小。我明白我可以使用waterMark函數調用來確定每個任務的堆棧。思考?

    0熱度

    1回答

    我是FreeRTOS的新手。我寫了一個使用隊列在任務之間傳輸數據的例子。儘管如此,結果顯示是錯誤的。任何人都可以幫我解決這個問題嗎? 謝謝!要被顯示 變量: unsigned int temperatureRaw = 25; unsigned int flowRateRaw = 30; unsigned int carbonLevelRaw = 250; unsigned int salin

    0熱度

    2回答

    我在KEIL編譯器下有一個FreeRTOS代碼,一切正常。當我將相同的代碼轉換爲GCC下的CooCox時,port.c中只有asm代碼的更改等。它不起作用。它在功能xPortStartScheduler()其中prvPortStartFirstTask()去Svc_Handler,並再次到xPortStartScheduler()等功能調試循環。我認爲這個問題可以在向量或啓動文件的某處。 在Coo

    2熱度

    1回答

    我遇到FreeRTOS的問題,它似乎systick()率是1/2的預期率。所有定時器或任務延遲功能大約需要2X的時間。這在版本8.2.0和8.2.3中使用STM32F100處理器進行了驗證。 還有另一個帖子looks very similar。這位開發人員正在使用MSP430,並聲稱在預計1000Hz的節拍速率時,節拍率爲400Hz。 RCC寄存器配置看起來是正確的。如果我創建了一個非FreeRT

    0熱度

    1回答

    嘗試在FreeRTOS上使用STM32F4發現板上的二進制信號量會產生一些奇怪的(甚至是錯誤的)結果。 首先,對FreeRTOS的文件說: SemaphoreHandle_t xSemaphoreCreateBinary(無效); 創建二進制信號量的函數。二進制信號量可以是 ,或者不可用,因此是二進制的。 信號量是在'空'狀態下創建的,這意味着信號量 必須先使用xSemaphoreTake()函數

    0熱度

    1回答

    我正在學習freertos。我怎樣才能讓任務在運行2秒後進入睡眠狀態?我嘗試使用vTaskSuspend(),但立即停止任務 ,我也試圖把v taskDelay(2000)之前,它沒有多大的不同。 我想在被調用2秒後讓快速閃爍的任務進入休眠狀態,並運行正常的閃爍任務。 void resourse(const TickType_t xFrequency) { TickType_t xLa

    0熱度

    1回答

    計算機要求是否有計算機硬件(CPU /主板/內存/等)運行的RTOS方面的任何特殊要求?是否有可能在所有的x86 CPU這麼做還是需要特定的功能?我讀的例子FreeRTOS操作系統支持「any x86 compatible running in Real mode only」 - 什麼是真正的模式下,CPU需要能夠在運行?

    0熱度

    1回答

    我可以接收和發送沒有問題的TCP幀。但是在隨機時間(從1分鐘到1小時)之後,程序失敗,陷入vListInsert的for循環中。 在tcpip線程中,代碼等待一個幀。這是用 sys_mbox_fetch(mbox, (void *)&msg); 它是在sys_arch.c中定義的當被調用時我得到一個異常。 我已經檢查了MBOX已經被初始化並且可以跟蹤故障在vListInsert列表迭代(稱爲v

    0熱度

    1回答

    我寫了一個簡單的例子,其中包括兩個任務:任務1和任務2.任務1的優先級高於任務2.在任務1的功能中,我增加了任務2的優先級,其優先級等於(任務1的優先級+ 1)。此外,在任務2功能中,我將優先級降低爲2,以使其優先級低於任務1. 因此,執行順序爲任務1→任務2→任務1→任務2。 但是,當我運行我的代碼時,任務2首先運行。任何人都可以幫我解決這個問題嗎?我有我的代碼,結果如下: /* Standar