开发环境搭建
1. 硬件开发环境
FreeRTOS系列所使用的硬件为STM32F103ZET6开发板
2. 软件开发环境
2.1 Keil MDK-ARM软件简介及安装
2.1.1 Keil MDK-ARM简介
Keil MDK,也称MDK-ARM,Realview MDK(Microcontroller Development Kit),目前由三家国内代理商提供技术支持和相关服务。
MDK-ARM软件为基于Cortex-M、Cortex-R4、ARM7、ARM9处理器设备提供了一个完整的开发环境。 MDK-ARM专为微控制器应用而设计,不仅易学易用,而且功能强大,能够满足大多数苛刻的嵌入式应用。
MDK-ARM有四个可用版本,分别是MDK-Lite、MDK-Basic、MDK-Standard、 MDK-Professional。所有版本均提供一个完善的C / C++开发环境,其中MDK-Professional还包含大量的中间库。
2.1.2 Keil MDK-ARM获取
Keil MDK-ARM获取
https://www.keil.com/demo/eval/arm.htm#/DOWNLOAD
2.1.3 Keil MDK-ARM安装
MDK-ARM软件安装:下载好MDK软件和STM32设备安装包后,开始安装软件(注意不要有中文路径)

ST-LINK烧写工具安装:ST_LINK 是 STM32 芯片的仿真器,通过这个软件操作ST_LINK 将.hex 文件烧写到芯片上。此软件用于为内核烧写 bootloader 文件。我们在 keil中编译好的代码可以使用它们本身进行下载。

2.2 STM32CubeMX软件简介及安装
2.2.1 STM32CubeMX简介
直观的选择STM32微控制器
微控制器图形化配置
-自动处理引脚冲突
-动态设置确定的时钟树
-可以动态确定参数设置的外围和中间件模式和初始化
-功耗预测
C代码工程生成器覆盖了STM32微控制器初始化编译软件,如IAR,KEIL,GCC可以独立使用,作为Eclipse插件使用
2.2.2 STM32CubeMX获取
STM32CubeMX获取
http://www.st.com/en/development-tools/stm32cubemx.html
2.2.3 STM32CubeMX安装

安装JAVA运行环境;解压后安装STM32CubeMX(不要有中文路径);安装好后在软件里下载相应的STM32设备安装包

2.2.4 STM32CubeMX使用
新建工程,选择对应开发MCU

激活FREERTOS,并根据需要配置相应参数

时钟配置,STM32F103最高时钟为72M

生成工程报告,输入工程名,选择工程路径(不要有中文),Toolchain/IDE选择MDK-ARM V5,可设置堆栈大小一般默认即可;在Code Generator中找到Generated files框,勾选Generated periphera initialization as a pair of ‘.c/.h’ files per IP 外设初始化为独立的C文件和头文件

点击GENERATE CODE,生成工程代码

点击Open Project打开工程,可以看到FreeRTOS已经由STM32CubeMX自动移植完成;至此用户可以根据自已的需求编写应用程序
 |