我想为ARM Cortex M4架构编写一个快速汇编程序,每2秒打印一个连续整数。因此,每2秒打印1、2,依此类推。由于该架构为32 MHz,我知道2秒将有64,000,000个周期。我想使用延迟环路,尽管我知道这不是很有效率。我有一个C文件,它将打印结果,而不是在汇编文件中打印,这个函数被称为fprint。我想如果我看到了解决方案(我只是不知道如何得到),它将在我的汇编之旅中帮助我。谢谢你的帮助!
mwngjboj1#
请尝试以下操作:
delay_2s: ldr r0, =32000000 loop: subs r0, r0, #1 bnz loop bx lr
注意,一次迭代的持续时间可能因所使用的微体系结构而异。我在这里将其设置为每次迭代两个周期,但也可以是每次迭代三个周期。
1条答案
按热度按时间mwngjboj1#
请尝试以下操作:
注意,一次迭代的持续时间可能因所使用的微体系结构而异。我在这里将其设置为每次迭代两个周期,但也可以是每次迭代三个周期。