搭建并配置Keil嵌入式开发环境,完成一个基于STM32汇编程序的编写。
作者:互联网
[TOC]
# 一、创建一个新工程
1.点击project,选择new uvison project
2.选择对应的芯片,
3.进行环境设置,CMSIS下选择CORE;Device下Startup
# 二、添加文件
1.左侧project下单击Source Group 1,选择Add New Item to Group
2.选择 Asm File (.s) ,设置源文件的名称,点击Add
# 三、汇编程序
1.代码:
AREA MYDATA, DATA
AREA MYCODE, CODE
ENTRY
EXPORT __main
__main
MOV R0, #10
MOV R1, #11
MOV R2, #12
MOV R3, #13
;LDR R0, =func01
BL 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
2.修改设置
点击options for target,点击output,勾选create HEX file
点击debug,勾选use simulator,run to main(),
修改下面数据以便运行
3.点击Rebuild进行编译,无错
4.程序调试
点击start/stop debug session,运行结果
# 三、分析生成的HEX文件
1.分析Hex文件第一行内容
第一行内容分别是0x02,0x00,0x00,0x04,0x08,0x00,0xF2
0×02表示该行数据中有两个数据
0x00 0x00表示本行数据的起始地址位
0x04 表示扩展线性地址记录,对应上述的TT域
0x08 0x00表示数据字节,与**数据长度域(LL)**中对应,即第一个 0x02
0xf2为校验和。
校验和= 0x100 - 累加和
2.文件尾
在文件的最后一排,是一个文件的结束标志:00000001FF
# 四、总结
才开始接触keil uVision5,在安装破解软件上就花费了大量时间和精力。且在创建STM32汇编中也遇到一些难题并在最后解决了。在以后的学习中还需要花费更多的时间精力认真完成。
标签:func01,Keil,0x00,MOV,汇编程序,STM32,LDR,点击,LR 来源: https://www.cnblogs.com/artemisean/p/15349373.html