用Keil uVision2编写单片机程序时,如何调用已存档的子程序文件

用Keil uVision2编写单片机程序时,如何调用已存档的子程序文件,第1张

如果是mainasm中有这句话$INCLUDE(RESETASM),简单的说就是在编译mainasm前,编译器先把RESETASM这个文件的所有语句放到main文件中,然后再编译main,相当于RESETASM是mainasm的一部分代码。

这样设计的话,要求工程里不能再单独编译连接RESETASM,这样会出现同名的警告。另一点,RESETASM中不能有END的结束符,否则编译器在编译到END后面的代码就不编译了,你的main函数实际就没有被编译,这可能是你烧到开发板上不行的原因。

具体没看到代码,先做如上猜想。不过如果有调试环境的话,单步debug应该能很快发现问题。

了解必要的调试技巧是有效开发的保证,keil提供的调试模式很强大,有软件仿真及硬件仿真,

进入DEBUG模式,有几个快捷键在很多IDE环境都是通用的

如F5 全速运行

F10 单步跟踪

F11 进入子函数内部 ,子函数这里应该你所说的子程序

F9 设置断掉,即运行到此位置,例如用在进入中断服务函数及跳出延时函数是基本的方式

因为在你recieve()函数里有一个while(1)循环处理过程,其实你这程序在用KEIL编译的时候会有警告提示的,即:led1=0这句将永远不会被执行的

从事音频设备开发好多年——VX:xuquanfugui-2020

以上就是关于用Keil uVision2编写单片机程序时,如何调用已存档的子程序文件全部的内容,包括:用Keil uVision2编写单片机程序时,如何调用已存档的子程序文件、keil怎么跟踪子程序代码、51单片机间串口通讯,接收端程序调用完接收子程序,主程序不能继续运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10163420.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存