一、新建工程
1、打开keil软件新建一个工程,选择project—>New uVision Project ?:
?2、选择存储路径,并给工程命名,最后点击保存
?
?二、配置环境
1、设置工程的目标环境,本文基于STM32F103VE,因此在弹出的窗口选择相应的选项,点击ok即可;具体如下图所示;
?2、在CMSIS ?下选择?CORE ;Device ?下?Startup (其中包含了启动文件),选完后点击OK
?3、添加源文件右击?Source Group 1 ?,点击?Add New Item to Group 'Source Group 1'...
?
4、选择?Asm File (.s) ?,创建汇编文件;设置源文件的名称;点击add;?
?
三、程序编译
1、在?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
2、仿真器设置先点击下图红圈的图标?
3、在Output界面下,勾选?Create HEX File ,才能生成 hex 文件?
?4、在?Debug界面下,勾选?Use Simulator ,因为在后面我们要进行虚拟调试,后OK ?保存设置?
5、Debug界面下修改Dialog和右侧Parameter如下图
?
6、点击Rebuild进行编译
?
7、编译成功,没有错误?
?8、再次调试运行,结果符合预期,寄存器?R5 ,R6 ,R7 ,R8 ?的值和程序设置一致,具体如下图所示:
?
?
?四、总结
虽然Keil环境下创建STM32汇编语言工程是相对简单的,在调试的过程中依然会遇到一些问题,通过不断的查阅资料和询问同学,最终问题还是得到了解决。
五、参考文献
Keil环境下创建STM32汇编语言工程并分析HEX文件内容_m0_58414679的博客-CSDN博客
|