概述
目录
前言
1.下载库
2.创建Keil工程
3.然后开始移值
前言
相较于8位单片机(51单片机)而言,32位单片机的寻址空间会大很多很多,也就是内部的寄存器非常的多;这时候我们再使用寄存器的配置方法就会不利于程序的阅读性,并且配置的过程会比较痛苦(对着寄存器手册找);基于这种情况ST公司给出了很好的解决方案 -- 使用库的方式来配置(标准库,HAL库,LL库)。这里我们先着重了解标准库的移值过程。
水平有限,如有错漏之处,敬请指正
主要过程为:
1.下载库 ---》 2.创建Keil工程 ---》3.开始移值
1.下载库
直达链接:STSW-STM32054 - STM32F10x标准外设库 - STMicroelectronicsSTSW-STM32054 - STM32F10x标准外设库, STSW-STM32054, STMicroelectronicshttps://www.st.com/zh/embedded-software/stsw-stm32054.html这里我们选择3.5.0的版本
然后下载即可
2.创建Keil工程
1.新建项目
2.选择或添加芯片包
如果没有芯片包:
下载地址:MDK5 Software Packshttps://www.keil.com/dd2/pack/
下载完成后安装再重新创建工程就能找到了
创建完成效果如下:
3.然后开始移值
1.创建完项目后找到我们创建的项目所在的文件夹
为了方便我们程序的结构以及对程序的管理,我们在这个项目的上一级创建一些文件夹,用于分开存放不同的程序,比如ST的官方库放一个文件夹,我们自己写的程序放一个文件夹,我创建了以下的文件夹
文件名 | 文件夹内容 |
Project | 用来存放Keil的项目文件 |
User | 用来存放自己写的一些函数 |
Drivers | 用来存放一些库等文件 |
Output | 用来存放keil编译输出的文件比如.bin .hex |
Readme | 用来存项目的一些说明书等 |
然后想要使我们的输出文件输出到指定的Output文件夹需要配置以下的东西
选择我们需要输出的文件夹
同样,我们也可以在keil中添加一些文件夹由于分类存放程序
接下来添加一个启动程序文件 这里命名为main.c
2.解压前面我们下载的库文件
文件名 | 文件夹内容 |
_htmresc | 一些用不上的Loog |
Libraries | 包含两个子目录CMSIS和FWlib |
Project | 官方的一些例程 |
Utilities | 官方的评估板的一些程序 |
stm32f10x_stdperiph_lib_um | 这个库的帮助手册 |
我们主要需要移值的就是Libraries这个文件夹里的一些内容!
然后就是复制粘贴的环节了
1.复制粘贴启动文件
把固件包中的 ..STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3DeviceSupportSTSTM32F10xstartuparm文件夹中的startup_stm32f10x_XX.s复制到我们的Drivers文件夹中
XX表示芯片容量:
大于128k为大容量用hd,大于64k小于128k为中等容量用md,小于64k的为小容量用ld
2.复制粘贴外设库文件
把固件包中的
..STM32F10x_StdPeriph_Lib_V3.5.0Libraries中的STM32F10x_StdPeriph_Driver文件夹直接复制到我们的Drivers文件夹中
3.复制粘贴M3内核文件
把固件包中的
..STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3CoreSupport中的core_cm3.c和core_cm3.h文件直接复制到我们的Drivers文件夹中
4.复制粘贴配置文件
把固件包中的
..STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3DeviceSupportSTSTM32F10x中的stm32f10x.h , system_stm32f10x.c和system_stm32f10x.h文件直接复制到我们的user文件夹中
将
..STM32F10x_StdPeriph_Lib_V3.5.0ProjectSTM32F10x_StdPeriph_Template
中的stm32f10x_conf.h文件复制到User文件夹中
在Keil中添加我们刚才复制挂来的.s , .c和.h文件
将编译器配置为5
添加所有的.h文件所在的目录
开始编译
这里有一个报错出现在misc.o的链接文件中,缺少了assert_param的定义
我们在配置中添加宏定义STM32F10X_HD,USE_STDPERIPH_DRIVER
然后我们的标准库的项目模板就完成啦
最后
以上就是漂亮白猫为你收集整理的2.环境搭建2 --标准库的移值(基于Keil)的全部内容,希望文章能够帮你解决2.环境搭建2 --标准库的移值(基于Keil)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复