参考代码:Embedded/stm32/assembly_project1 · guorong/study - 码云 - 开源中国 (gitee.com)
之前做汇编比较少,再想深入学习rtos的时候,需要先熟悉一下汇编,方便后续在rtos中写一部分任务切换的代码,也可以深入了解单片机的底层运行原理
新建汇编工程
-
第一步新建工程
由于我的开发板是如下的型号,所以选择对应的芯片
-
第二步选择启动文件
keil官方给芯片提供了启动文件,按照如下选择,启动文件是汇编语言实现的,主要的功能是定义了堆栈空间,定义了中断向量表,定义了reset函数,即上电后执行的第一个函数,里边具体的内容回头有时间再详细讲解,由于reset函数中调用了系统时钟初始化,所以需要选中固件中的core部分,见下图,如果不选中CORE,则看到select列中为黄色,即有问题,选中CORE之后就显示为绿色
-
第三步新增一个汇编文件
如下
-
第四步,汇编文件中增加汇编代码
main.s中的汇编代码
-
第五步,编译运行
编译完成,调整下载器之后开始调试
在main.s中的B .行打一个断点,点击开始运行后,会发现会运行到此处,实现了汇编语言的main函数,至此,最简单的汇编工程就搭建好了