一、搭建keil环境
- MDK软件的安装
1.1 MDLK5的下载
keil官网网址下载http://www.keil.com/download/product
1.2 安装过程
下载完成后,点击安装包
点击“next”
路径自己选。
注册信息也自己填。填好之后,点击“NexT”等待安装完成即可。
1.3 注册
打开keil,点击file,选择“license Management",复制CID号码。
在安装包中,找到kegen_new2032,打开该文件夹,点击运行里面的程序
点击”Generate“,再复制”Generate"生成的号码。复制粘贴至
完成。
2. 安装支持包
支持包下载地址
http://www.keil.com/dd2/pack
下载完成后运行该包:双击“Keil.STM32F1xx_DFP.2.1.0",
再选择”NEXT“等待安装完成即可。
二、STM32汇编程序
1.新建工程
点击Project,new project
2.配置环境
设备选择STM32F103ZE
运行环境
添加源文件
选择Add New Item to…
设置仿真器模式
点击菜单中的Project,找到Options for Target ‘Target 1’并点击,选择Debug–>Use Simulator,将Dialog DLL以及Parameter处修改为自己选择的设备。
编译,调试,发现无法创建Target1,查询资料后知道是编译器的问题。
分析hex文件
hex文件各段大小:
hex前八个字节内容含义:
第一行内容分别是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.youkuaiyun.com/qq_45659777/article/details/120496577
https://blog.youkuaiyun.com/u010632165/article/details/106481146
https://blog.youkuaiyun.com/xwmrqqq/article/details/111824539