STM32 FreeRtos Lwip移植筆記

2022-05-06 16:54:09 字數 589 閱讀 9582

現在,遇到了串列埠除錯的問題。

串列埠傳輸有兩種方案:1)中斷函式接收完完整的frame之後用二值訊號量觸發阻塞的解析資料程序;2)新建佇列,中斷中將接收的資料send到佇列,解析程序讀佇列  。

但是在中斷裡傳送佇列這種行為想想都覺得危險,實時性再好、主頻再高也經不起這麼折騰。在同事小文的建議下,我果斷讓串列埠收完一幀資料報後才觸發事件。但不知道為什麼,我用freertos時不時會遇到串列埠的第一byte沒有讀到的問題,另外第一次xsemaphoretake()的時候總是可以讀到東西,難道預設就是有二值訊號量的??

下圖應該是眾jrs們經常遇到的問題,也是動不動就跪求大神的問題:exception.

我遇到的幾次hardfault_handler的情況是:陣列越界,堆疊溢位,任務不是乙個死迴圈,任務還沒建立,訊號量還沒建立。  還是比較好解決的。至於跟蹤彙編**、sp/pc指標之類的事,我還不會,跪求大神解答

。此外,硬體上有個小現象:usb->232是0~5v的電平;3.3ttl->max3232則是±5.5v左右,似乎接在一起也可以相容。

STM32 STM32啟動方式

在復位時,會按照boot的狀態判斷進入哪種模式,boot腳不用保持長狀態。模式1 boot0拉低,使用使用者快閃儲存器區,這是最正常啟動的模式,即,在正常啟動時,boot0應該下拉為低電平 模式3 從sram執行,由於stm32的flash擦寫的次數是有限的,所以為了保護我們的flash,延長mcu...

STM32 STM32 GPIO模式理解

stm32的gpio的配置模式有好幾種,包括 模擬輸入 浮空輸入 上拉輸入 下拉輸入 開漏輸出 推挽輸出 復用開漏輸出 復用推挽輸出 如圖是gpio的結構原理圖 1.模擬輸入 從上圖我們可以看到,我覺得模擬輸入最重要的一點就是,他不經過輸入資料暫存器,所以我們無法通過讀取輸入資料暫存器來獲取模擬輸入...

STM32 STM32學習記錄3 按鍵輸入

1 io配置 上拉輸入模式 區別在於沒有輸入訊號的時候預設輸入高電平 因為 有弱上拉 下拉輸入模式 區別在於沒有輸入訊號的時候預設輸入低電平 因為有弱下拉 對於浮空輸入模式顧名思義也就 是輸入什麼訊號才是什麼訊號,對於浮空輸入要保證有明確的輸入訊號。2 stm32的gpio既可以設定為輸出也可以設定...