创建并运行项目
打开MDk后选择project->New uVision Project
设置好项目名称和存储位置,然后选择芯片,本人选择的是STM32F103C8
选择运行环境后点击ok
添加源文件:鼠标右键单击Source Group 1,选择Add New Item to Group:
设置好文件类型,名称和路径后点击add:
测试代码
在test.s中编译并调试如下代码:
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
设置硬件仿真器为J-LINK
在debug中勾选use simulator,并选择J-link/J-TRACE Cortex,在output中勾选create HEX file
点击build,再进行仿真调试,出现下列画面则表示调试成功
hex文件格式记录
生成的hex文件如图:
hex 文件记录格式如下:
:AABBBBCCDD…DDEE
: 表示行起始标志 AA:表示本条记录中的数据字节数
BBBB:本条记录中的数据在存储区中的起始地址
CC:记录类型,含义如下:
‘00’ Data Record
‘01’ End of File Record
‘02’ Extended Segment Address Record
‘03’ Start Segment Address Record
‘04’ Extended Linear Address Record
‘05’ Start Linear Address Record
DD…DD:表示数据字节
EE:表示校验和,具体算法为 0x100-((0xAA+0xBB+0xBB+0xCC+0xDD+…+0xDD)%256)