系列文章目录
前言
在大三时,学了一段时间Freertos,当时没养成好习惯,没有写成文章当成笔记发到CSDN上,也不至于换电脑时,删掉了很多资料笔记。再加上工作中没用到Freertos,直接跑的裸机,我想再不整理下,就废了。长时间不用,真的会忘记呀!开发板是STM32F103
一、移植过程
打开下载的源码库,有这些文件夹 在自己的程序文件夹Freertos里创建文件夹 这个是官方源码库文件
二、修改添加部分程序
添加一些定义 下面这部分程序就是添加的内容
#define configUSE_TIME_SLICING 1
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
#define configUSE_TICKLESS_IDLE 0
#define configUSE_QUEUE_SETS 1
#define configUSE_TASK_NOTIFICATIONS 1
#define configUSE_MUTEXES 1
#define configUSE_RECURSIVE_MUTEXES 1
#define configUSE_COUNTING_SEMAPHORES 1
#define configQUEUE_REGISTRY_SIZE 10
#define configUSE_APPLICATION_TASK_TAG 0
#define configSUPPORT_DYNAMIC_ALLOCATION 1
#define configUSE_MALLOC_FAILED_HOOK 0
#define configCHECK_FOR_STACK_OVERFLOW 1
#define configGENERATE_RUN_TIME_STATS 0
#define configUSE_STATS_FORMATTING_FUNCTIONS 1
#define configUSE_TIMERS 1
#define configTIMER_TASK_PRIORITY (configMAX_PRIORITIES-1)
#define configTIMER_QUEUE_LENGTH 10
#define configTIMER_TASK_STACK_DEPTH (configMINIMAL_STACK_SIZE*2)
#define INCLUDE_xTaskGetSchedulerState 1
#define INCLUDE_eTaskGetState 1
#define INCLUDE_xTimerPendFunctionCall 1
#define vPortSVCHandler SVC_Handler
#define xPortPendSVHandler PendSV_Handler
#define xPortSysTickHandler SysTick_Handler
修改部分内容 到此为止,编译一下。会出现三个错误。
三、修改错误
我也想加个声音呢!电脑声卡驱动坏了,凑合看吧!
总结
大部分文字都在图片上标注好了,如果你正在学FreeRTOS,你可以向我要移植好的程序,或者官方的源代码,自己可以移植一遍玩玩!当然为什么这么移植?想要搞明白原理的,就去看看野火移植的文档(介绍的很详细),我有点懒,不想再去找,文字太多,看着都烦死了。
|