标题: 关于keil5 mdk汇编语言编译错误问题 [打印本页]

作者: lyonkon    时间: 2023-4-29 20:15
标题: 关于keil5 mdk汇编语言编译错误问题
因为关于stm32汇编教程很少,翻遍网页也只找到两个例程。而且无法编译。所以劳烦大家,好不容易找到一个程序样板如图,还是编译无法通过!!

作者: Hephaestus    时间: 2023-4-30 15:50
又想着要搞汇编,怎么写汇编的书也不看,项目里面现成的汇编文件不去看,没个一百年你这汇编是学不会的。
作者: lyonkon    时间: 2023-4-30 18:45
Hephaestus 发表于 2023-4-30 15:50
又想着要搞汇编,怎么写汇编的书也不看,项目里面现成的汇编文件不去看,没个一百年你这汇编是学不会的。

看视频推荐,买了一本cortx-m3权威指南,但上面没有例程,汇编只是一带而过。其他书籍也没敢买。上面这个问题我解决了,接下来准备汇编点灯,看了下《指南》发现EQU指令和51单片机不一样,mov指令只针对核心寄存器,外设寄存器赋值现在不会,如果你有这方面书籍,请推荐一本
作者: Hephaestus    时间: 2023-4-30 19:40
lyonkon 发表于 2023-4-30 18:45
看视频推荐,买了一本cortx-m3权威指南,但上面没有例程,汇编只是一带而过。其他书籍也没敢买。上面这个 ...

看过权威指南进阶就不用看书了,打开库例程,编译选择生成s文件,看s文件里面怎么写的就知道了。

看看你发的这个帖子:关于STM32单片机点亮c13口led灯程序 端口寄存器理解 主贴贴出来的汇编代码
再看看这本权威指南:



打红叉那部分你可以不看



这半张纸的内容已经足以说明你写的汇编文件就没有一句话是对的,你根本就没看过书,就敢写文件?

作者: lyonkon    时间: 2023-5-1 00:10
Hephaestus 发表于 2023-4-30 19:40
看过权威指南进阶就不用看书了,打开库例程,编译选择生成s文件,看s文件里面怎么写的就知道了。

看看 ...

我的书是中文译版,看作者是同一个人应该就是了。感谢!亮灯成功.    for stm32f103c8t6

作者: Hephaestus    时间: 2023-5-1 20:01
你对EQU这种非常不规范的写法的热爱,也太深沉了。
LDR R0,=RCC
这实际上是个伪指令,真实指令是:
LDR R0,RCC
RCC DCD 0x40021018

你这个代码还有优化空间,17行可以删除,19行改成:
STR R1,[R0,#12]

c编译器生成的代码比你自己瞎写的效率高多了。
作者: pdwdzz    时间: 2023-5-2 23:27
咱们还是老老实实用C,说什么汇编效率比C高的,那说的是大神写的。大部分人写的汇编都是又臭又长。编译器不开优化效率都比他高。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1