文章目录
- 一、安装keil软件
- 1.下载安装包
- 2.安装keil
- 3.安装stm32 pack
- 二、简单的stm汇编语言的编程
- 1.新建工程项目
- 2、新建main.c文件
- 3.编译
- 4.stm32仿真调试
- 5.hex文件分析解读
一、安装keil软件
1.下载安装包
下载安装mdk5软件和stm32包(链接:https://pan.baidu.com/s/1f0nHjn7sSG8SK3waV_G1Pg
提取码:94xf)
下载完毕后解压安装包然后就可以开始安装MDK。
2.安装keil
解压压缩包并打开mdk

然后点击next继续安装


点击Finsh完成安装
手动安装pack包否则会安装失败

3.安装stm32 pack
双击ARM.CMSIS.3.20.4

点击next继续安装

完成安装
同样在刚刚在解压文件中找到Keil.STM32F1xx_DFP.1.0.4

随后完成安装
二、简单的stm汇编语言的编程
1.新建工程项目

单击上方工具栏Project对文件命名并选择好存储的文件地址

选择好相应芯,这里我们选择STM32F103RB

点击OK完成工程创建
2、新建main.c文件
点击白纸图标并输入以下代码




输入完成后,点击左上角的保存这时候会弹出一个窗口让命名文件名,输入main.c(注意这里一定要输入文件格式.c不然文件将不会被认为是C语言文件,会出错)

点击保存

右键点击 Source Group 1 ,然后点击 Add Existing Files to Group …(在工程下添加main.c文件)

把刚刚的main.c文件添加到工程文件下,之后可以发现Source Group 1文件下多了一个main.c文件
3.编译
点击左上角这个图标编译程序

此框出现时编译成功
4.stm32仿真调试
在调试前需要做好相应设置
找到上方一个像魔法棒的图标点击
弹出一个窗口,单击Debug,勾选 Use Simulator ,再选择 ULINK2/ME Cortex Debugger ,并点击 Settings

之后又是一个弹窗,确定一下Port是JTAG,Reset可以设置为Autodetect或SYSRESEETREQ,然后点击OK返回上一级窗口,再点击OK。

之后就是调试,点击上方像放大镜的图标

左上方是调试进行时可以用到的工具
至此完成编译调试
5.hex文件分析解读
可以在文件中找到刚刚生成的hex文件


分析第一行的内容:020000040800F2,可以看成:0x02,0x00,0x00,0x04,0x08,0x00,0xF2。其中前四个字节和最后一个字节有特殊含义。中间为数据。以下分别解读:
0x02 :表示该行数据中有两个数据。
两个0x00 :表示本行数据的起始地址位。
0x04 :扩展线性地址记录:用来标识扩展线性地址的记录(其他数据表示:
'00’Data Rrecord:用来记录数据,HEX文件的大部分记录都是数据记录
'01’文件结束记录:用来标识文件结束,放在文件的最后,标识HEX文件的结尾
'02’扩展段地址记录:用来标识扩展段地址的记录
'03’开始段地址记录:开始段地址记录
'05’开始线性地址记录:开始线性地址记录
)
0x08,0x00 :该行两个字节的数据,数据类型是 04 ,即该行记录的是一个拓展地址(0x08 0x00 是地址信息,用法是将该地址(0x0800<<16) 后作为基地址。
0xF2 :校验和,校验和= 0x100 - 累加和
















