怎么给自己的公司建立网站,推广发布任务平台app下载,网站商品展示页怎么做,秘密直播概述 本文主要描述了STM32F407移植FreeRTOS的简要步骤。移植描述过程中#xff0c;忽略了Keil软件的部分使用技巧。默认读者熟练使用Keil软件。本文的描述是基于OpenMCU_FreeRTOS这个工程#xff0c;该工程已经下载放好了移植stm32f407 FreeRTOS的所有文件 OpenMCU_FreeRTOS工…概述 本文主要描述了STM32F407移植FreeRTOS的简要步骤。移植描述过程中忽略了Keil软件的部分使用技巧。默认读者熟练使用Keil软件。本文的描述是基于OpenMCU_FreeRTOS这个工程该工程已经下载放好了移植stm32f407 FreeRTOS的所有文件 OpenMCU_FreeRTOS工程的愿景主要有 1.、能移植支持主流mcu的freeRTOS 2、深入分析FreeRTOS代码和第三方库代码让嵌入式学习变得非常容易 3、集成一些嵌入式产品中常用的第三方库文件并且该工程会开发做一些产品原型所有的技术方案就像它的名字一样全部开源。
移植步骤
1、keil创建stm32F407的工程 2、工程创建完毕后在keil中建立分组管理如下所示 创建完成后的效果 3、下载FreeRTOS代码
从 GitHub - FreeRTOS/FreeRTOS: Classic FreeRTOS distribution. Started as Git clone of FreeRTOS SourceForge SVN repo. Submodules the kernel.下载最新的内核代码
4、解压下载的源码并找到CORTEX_M4F_STM32F407ZG-SK的demo工程模板 5、在刚才新创建的keil STM32F407ZGT6工程目录下创建Appication文件夹 6、将demo工程中的如下文件拷贝到Application文件夹下面. 拷贝后的效果 7、Application分组添加c文件 8、CMSIS添加system_stm32f4xx.cC文件文件存放的路径为 9、添加STM32F4 BSP驱动文件文件路径为 10、添加启动文件startup_stm32f407xx.s 11、添加freeRTOS内核C文件文件路径为 12、添加内核移植中的与STM32F4相关的代码
代码路径在kernel/portable部分 13、所有分组添加完后如下图所示 14、添加编译时的头文件路径 15、编译器选项设置
a. target选项 b. c/c选项
加入STM32F407xx定义 17、修改stm32f4xx_it.c文件中的如下函数定义
__weak void SVC_Handler(void)
{ vPortSVCHandler();
} __weak void PendSV_Handler(void)
{xPortPendSVHandler();
}__weak void SysTick_Handler(void)
{ if (xTaskGetSchedulerState() ! taskSCHEDULER_NOT_STARTED) { xPortSysTickHandler(); }
} 删除: __weak void EXTI9_5_IRQHandler(void)和 __weak void EXTI15_10_IRQHandler(void)
17、编译输出 工程连接
yanl1229/OpenMCU_FreeRTOS