編譯器是monriver,代碼加進去100多個報錯,現(xiàn)在搞好了,主要有幾個注意點。
下的是這個202406.01 LTS的版本,然后解壓以后文件夾名稱是FreeRTOS-LTS
找到?FreeRTOS-LTS/FreeRTOS/FreeRTOS-Kernel 這個文件夾,這里面就是移植需要的大部分代碼
這些是要用到的文件,include里的CmakeLists.txt不需要,portable中只需要MemMang/heap_4.c和GCC/ARM_CM3中的兩個文件
這時候還缺一個重要文件FreeRTOSConfig.h,這個需要去這里面找https://github.com/FreeRTOS/FreeRTOS/tree/main/FreeRTOS/Demo
使用這里面的?FreeRTOSConfig.h 文件
工程里加上這些以后,主程序里添加相關(guān)頭文件,編兩個任務(wù)測試一下。
這時候編譯還會報錯,需要修改config文件,里面的configCHECK_FOR_STACK_OVERFLOW只能設(shè)置成0,(1,2都會開啟一個函數(shù),但是那個一直找不到參考不知道什么原因,頭文件都引入了),順便改一下時鐘,我設(shè)置的是144M,所以這邊填144000000,最后加上三行定義就好了
#define?vPortSVCHandler?SVC_Handler #define?xPortPendSVHandler?PendSV_Handler #define?xPortSysTickHandler?SysTick_Handler
最后編譯就不報錯了
串口那邊確實能看到兩個任務(wù)執(zhí)行