这里的芯片我们以stm32f407举例
下载地址:
固件库网址:
百度云:包括固件库和FreeRTOS 和已经创建好的工程
链接:https://pan.baidu.com/s/1ubJ2YNTFMfSP1mDlh9tpBQ
提取码:1234
--来自百度网盘超级会员V4的分享
几个必要的文件夹介绍:
_htmresc:st的log
主要是Libraries:
STM32F4xx_StdPeriph_Driver:外设驱动库
进入该文件夹:
inc :外设驱动的头文件
src :外设驱动的.c文件
CMSIS:(一些关于内核的文件)
Documentation:文档
DSP_Lib:数字媒体
Include:内核的相关文件
Device:
arm是keil启动文件位置 还有IAR版的等等
STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm
启动文件:startup_stm32f40_41xxx.s 不同型号的芯片启动文件不一样 这里我们的芯片是stm32f407
模板:
STM32F4xx_DSP_StdPeriph_Lib_V1.8.0\Project\STM32F4xx_StdPeriph_Templates
这里边的.c 和.h都需要
包括中断stm32f4xx_it 还有配置文件system_stm32f4xx
开始创建基础的工程:
选择芯片包:一般大家是都会安装的(哈哈哈,就是基本的keil操作,实在不会就看教程)
https://blog.csdn.net/qq_20017379/article/details/120029186
链接:https://pan.baidu.com/s/1VEeFFE-JTKpJQmP1ks35fw
提取码:1234
这里不进行任何操作:我们用自己提供的就可以了
创建工程结构:
小白通用:创建文件工程目录结构的博客
https://blog.csdn.net/qq_20017379/article/details/120028986?spm=1001.2014.3001.5501
工程目录结构介绍:
CMSIS: 启动文件 和 内核
APP:存放自己以后写的功能文件 比如led.c
LIBRARIES:外设库
剩下的两个在FreeRTOS移植文章中详细说了,看文章最后链接
基本的keil选项:
Use default conpler version 5 //不选择这个的话会出现很多莫名的错误
Use MicroLIB //这是keil自带的一个简易库
生成执行文件
listing也设置在obj文件夹里 当然设置不设置无所谓
使用库函数必须有这个宏
STM32F40_41xxx,USE_STDPERIPH_DRIVER
头文件路径:当然这是我的盘下的路径 根据自己的来
E:\EnglishPath\stm32f407\test\LIBRARIES\CMSIS\include
E:\EnglishPath\stm32f407\test\LIBRARIES\STM32F4xx_StdPeriph_Driver\inc
E:\EnglishPath\stm32f407\test\APP
E:\EnglishPath\stm32f407\test\USER
E:\EnglishPath\stm32f407\test\FreeRTOS\portable\RVDS\ARM_CM4F
E:\EnglishPath\stm32f407\test\FreeRTOS\include
移植FreeRTOS:(如果不需要不添加 或者不使用就好了)
https://blog.csdn.net/qq_20017379/article/details/119508676?spm=1001.2014.3001.5502
可能有很多地方还是不够细节,具体仔细看网盘的项目模仿创建就好了