51单片机编程:安装Keil开发工具,配置STM32固件库
- 51单片机开发
- 13天前
- 96热度
- 0评论
安装Keil开发工具
搜索Keil官网,进入Keil官网网站,在Keil官网我们主要下载MDK-Arm和C51两个安装包,C51用于51系列单片机开发,MDK-Arm用于ARM指令架构的系列单片机开发。
分别下载C51和MDK-Arm到本地,先安装C51开发工具,C51安装完成后,再安装MDK-Arm(安装路径选择C51的安装路径)。
安装STC51系列单片机仿真包
Keil安装完成后,并不支持STC51系列单片机的仿真调试,需要单独安装STC51系列单片机仿真包。进入STC(宏晶科技)官网,下载STC-ISP安装包,STC-ISP是宏晶公司提供的单片机下载烧录软件,是针对STC系列单片机而设计的,可下载程序到STC89、12C2052和12C5410等系列的STC单片机ROM内。
下载后解压缩包,运行stc-isp程序,选择“Keil仿真设置”标签页,单击“添加STC仿真器驱动到Keil中”按钮,在弹出的目录选择对话框选择keil的安装目录,单击确定即可完成STC仿真器驱动的安装。
安装STM32芯片支持包
前面已经安装了Keil MDK,但没有安装STM32芯片支持包,需要另外安装STM32芯片支持包。安装步骤以STM32F103R6芯片作为实验芯片为例,若使用其它系列芯片,需要下载对应的芯片支持包。
进入KEIL公司官网:

滑动网页内容,找到下图红色方框标出的项,单击下载按钮。
下载的安装包如下图所示,双击运行文件即可完成STM32芯片支持包的安装。
STM32固件库
在51单片机的程序开发中,开发者需要直接配置51单片机的寄存器,控制芯片的工作方式,如中断、定时器等。开发者需要查阅51单片机寄存器表,看用到哪些配置位,并对寄存器进行配置,这些都是很繁琐的工作。51单片机寄存器资源有限,因此这些繁琐的寄存器配置工作对开发者影响不大。
STM32芯片外设资源丰富,寄存器数量多且复杂,若采用直接配置寄存器的方式开发,会极大增加开发者开发STM32嵌入式程序的难度,因为开发需要掌握STM32芯片所有寄存器的工作方式和配置方式,这对初学STM32开发者来说是一个巨大的技术挑战。另外使用直接配置寄存器的方式开发STM32嵌入式程序,开发效率低下,程序代码可读性性差,不同STM32芯片的程序难以移植。
ST公司为提高STM32芯片程序的开发效率和可移植性,编写了一组配置寄存器的函数,这些函数通过接口的方式提供给开发者,开发者可以通过接口直接调用这些函数来配置STM32的寄存器,使开发人员可以脱离STM32最底层的寄存器操作,专注于嵌入式应用程序的开发。
STM32提供的寄存器配置函数接口称为STM32固件库,采用STM32固件库的开发方式如下图所示:

下载STM32固件库
课程采用型号为STM32F103R6的STM32芯片(Arm Cortex-M3 MCU,带32 KB Clash、72 MHz CPU、电机控制、USB和CAN),下载固件库需要选择该型号的固件库,进入STM32英文官网,进入STM32F103系列页面,页面如下图所示:

选择STM32F103R6型号的芯片,进入STM32F103R6资源下载页面:
选择“Download datasheet”下载STM32F103R6芯片产品说明书,保存该文档到合适的位置,作为开发的参考文档。
选择“Tools & software”,在当前页面列出的内容中下滑网页,找到MCU & MPU Emberdded Software部分:
继续下滑网页,找到STSW-STM32054条目,单击条目名称,进入固件库下载页:
在固件库下载页面,选择3.5.0版本,下载该版本的固件库。
下图是从STM32官网下载的STM32F103R6芯片的产品说明书和固件库: