- 一.keil环境搭建
- 二.stm32程序
- 三.分析HEX文件
- 四.总结
- MDK软件的安装
MDK(Microcontroller Development Kit)是针对ARM处理器,特别是Cortex-M内核处理器的最佳开发工具。
1.1 MDK5下载
① keil官网网址下载
http://www.keil.com/download/product
② 百度网盘分享下载
https://pan.baidu.com/s/1jeYdDlHKqdtXVheUewpgGg
提取码:pja0
1.2 安装过程
①下载完成后,开始安装,第一步点击安装包MDK_510
-
keil安装
通过以上链接下载mdk和注册器,点击安装mdk,根据提示自行更改软件路径和支持包路径,填写完注册信息后NEXT,等待安装。安装完成,点击Finish。
-
注册
1.点击运行注册器程序。
2.在桌面找到keil软件图标,点击右键,以管理员身份运行。
3.点击File–>Lincense Management–>Single-User Lincense,找到CID,复制CID中的内容填写到注册器的CID空白处,将注册器中Target选择为ARM,点击Generate,得到注册码。
4.将生成的注册码复制粘贴到Keil的New Lincense ID Code空白处,点击Add LIC,点击Close。
支持包安装
点击运行下载的支持包,NEXT开始安装,安装完成,点击Finish。
二.stm32程序
1.新建工程
双击打开keil,点击菜单栏Project–>New μVision Project,新建项目,在弹窗中设置工程项目的名称和路径,在这里,我新建名为TEST的工程文件。2.配置环境
选择设备点击菜单中的Project,找到Options for Target ‘Target 1’并点击,在弹窗中选择相应的目标环境,此处我选的是STM32F103ZE
-
选择运行环境
-
添加源文件
右键单击Source Group 1,选择Add New Item to Group,添加Asm File (.s)文件,命名为TEST并保存。
为其添加如下代码
AREA MYDATA, DATA
AREA MYCODE, CODE
ENTRY
EXPORT __main__main
MOV R0, #10
MOV R1, #11
MOV R2, #12
MOV R3, #13
;LDR R0, =func01BL func01
;LDR R1, =func02
BL func02
BL func03
LDR LR, =func01
LDR PC, =func03
B .
func01
MOV R5, #05
BX LR
func02
MOV R6, #06
BX LR
func03
MOV R7, #07
MOV R8, #08
BX LR
设置仿真器模式点击菜单中的Project,找到Options for Target ‘Target 1’并点击,选择Debug–>Use Simulator,将Dialog DLL以及Parameter处修改为自己选择的设备,OK。
3.编译调试
-
三、分析编译生成的Hex文件
1.最终生成程序的各部分的大小
-
第一行内容分别是0x02,0x00,0x00,0x04,0x08,0x00,0xF2。
0x02
该行数据中有两个数据
0x00 0x00
本行数据的起始地址位
0x04
用来标识扩展线性地址的记录
该字节还可以是其他值,下面是其他值的含义
00:用来记录数据,HEX文件的大部分记录都是数据记录
01:用来标识文件结束,放在文件的最后,标识HEX文件的结尾
02:用来标识扩展段地址的记录
03:开始段地址记录
05:开始线性地址记录
0x08 0x00
该行两个字节的数据
数据类型是 04 ,即该行记录的是一个拓展地址(0x08 0x00 是地址信息,用法是将该地址(0x0800<<16) 后作为基地址
0xF2
校验和,校验和= 0x100 - 累加和四、小结
通过对汇编的初步了解,发现对应汇编理解还不够,还太会使用汇编进行编程。给一段简单的汇编代码,基本能够读懂大部分语句的含义,但是,自己写还不是太会,还需要进一步学习。
-
参考链接:https://blog.csdn.net/qq_43279579/article/details/108880667
stm32的安装和简单程序的编译
最新推荐文章于 2023-09-24 12:20:37 发布