在keil5上创建纯汇编语言的STM32工程

目录

1、新建工程

2、环境准备

3、错误总结

4、测试代码

5、总结


1、新建工程

双击打开Keil5,然后点击菜单栏的projrct选择NEW uVision Project如下图所示:

然后在弹出的窗口设置自己想保存的工程路径和工程名称:

 

2、环境准备

由于本文基于STM32F103ZET6,因此在弹出的窗口选择TM32F103ZET6

 

之后再弹出的窗口在CMSIS下的COREDevice下的Startup下打钩

 

鼠标右键单击Source Group 1,然后选择Add New Item to Group添加源文件,然后选择Asm File(.s)创建汇编文件,自己定一个喜欢的源文件名称点击保存即可。最终如图示:

 3、错误总结

1、如果有不小心把右边的project窗口关闭了,在view里可以选择project Window打开:

 2、在测试代码的时候可能出现错误提示

 错误:未知操作指令MYDATA,预指令或者宏错误.

也就是说R0未识别

1.ARM汇编指令不支持顶格写,否则不能识别

2. 声明变量时不要有空格

可能是缩进造成的问题,就在前面加了一个空格就可以了。

4、测试代码

首先把仿真器设置了,点击小锤子:

然后选择Debug 页面,在“Debug”选项卡中选择“Use Simulator”,表示使用软件仿真;选择“Run to main()”则表示跳过汇编代码,直接跳转到main函数开始仿真。设置下面的“Dialog DLL”项为“DARMSTM.DLL”“TARMSTM.DLL”;parameter项为“-pSTM32F103C8”,用于设置支持STM32F103C8的软硬件仿真。

 然后编译并调试此代码:

 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

 然后点击下一步运行知道叉叉变红,点击叉叉即可:

最后运行结果如下图:

5、总结

对于STM32的学习如果可以更应该结合硬件进行仿真,本文章是单纯软件的仿真。

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值