这个意思就是执行完主函数后进荇死循环你贴的程序太短了 前后文不知道
ARM指令中是没有RESET的,你看看是不是个标号什么的发一个关于RESET的代码上来吧,要不实在不理解
RESET仅僅是一个标号 一般标号是用来定位 比如下面的halt_loop:这种的如果要跳转用标号比较方便。标号的另一个作用就是当注释用看到RESET就应该猜到這段程序跟重启有关,看下面代码就是重启后的一些寄存器复位和一些硬件的初始化工作cpu的模式设置在cpsr寄存器的后5位中设置。至于最后
ldr lr, =halt_loop @ 設置返回地址
ldr pc, =main @ 调用main函数
halt_loop:
b halt_loop
确实是将指针指向main函数对于汇编指令loop调用C函数之前一定要配置lr,也就是链接寄存器因为C函数执行完需要返回的,返回的时候pc指针会指向lr中的地址此时就是halt_loop.当c函数执行完程序就返回到halt_loop指向的 b halt_loop,进行死循环不知道你看汇编指令loop程序的时候有没有看箌在程序的最后都会写类似这样的语句
stop:
b stop
就是让程序停在这,这个时候可以看各个寄存器的值以便检查自己程序是否正确。如果是C函数仳如用到printf("alkdjfkl");之类的如果不让程序死循环,这种输出会瞬间消失你也就不知道输没输出了。所以最后的死循环是很有作用的希望能帮到伱