简述keil-1/从写程序到跑程序的过程?keilc51程序Debug可以输入中断吗?是的,你可以。keilC51 调试我发现C语言编译的汇编语言不是我需要的,keil-1/Assembly程序-。

1、 keilC51 调试的时候发现c语言编译出来的汇编语言不是我所需要的,怎么修...

C语言编译的汇编很复杂,有很多不必要的东西。因此,您应该直接在汇编中编写具有相同功能的代码。一般都是编到最后。用汇编语言用C语言写的代码长度是很多倍主要是由于C语言函数的模块化。很多东西都没有必要直接看汇编。你用C语言嵌入汇编,否则keil会按照他认为的模式生成汇编代码。这很难。你应该在这方面总结一些经验。

有多余的东西很正常。因为编译器不是针对某个MCU的。所以经常参考INTEL的芯片结构来编写。可以找一些C语言编译优化之类的资料。写程序时,尽量多写几行运算的代码,尤其是IF和其他语句,不要用operation进行判断。少了一跳。尽量少用乘除法。请改用shift。

2、KeilC51 程序查问题

什么类型的单片机把你的代码*。我觉得是它没加的原因。是不是行缓冲最后没输出?可能是ZHAL_SPI_SET()函数中的无限循环。你可以调试跟踪实现,或者在这个功能的出口处放一个灯进行观察。ZHAL_SPI_Set,you 程序都是以Z为前缀的,有意思。

3、简述 keil c51从编写 程序到运行 程序的流程?

step1:新建项目step2:选择芯片类型(因为不同的芯片包含不同的功能)step3:新建一个空白文件,然后添加到项目step4:在空白软件中写入程序PS。其实可以在添加之前写好,但是为了防止忘记保存或者数据丢失,建议在新建空白文件的时候添加到项目中。

4、 keil c51 程序debug能进中断吗

嗯,可以进入中断了。当然,前提是你有中断触发信号。时间到了,计时器就会进入。如果是外部中断,要把数据改到端口at 调试,会形成触发信号,进入中断。只有当有触发信号时,你打开一个中断,你在中断函数前设置一个断点,然后直接运行到断点。可以,前提是你在调试的过程中打开相应的中断源,定义中断服务函数,给出正确的中断信号。

5、 keil c51汇编 程序 调试有的指令不能执行

要么您的PC值已被更改,要么您的程序Logical error assembly将不会被KEILC51(最接近计算机的语言)优化。再看看你的程序逻辑。C和汇编的混合编程从来没有做过,但是对于th0,tl0,p1.0,可以尝试直接用绝对地址代替。c语言会优化去掉一些代码,汇编没用过,但我判断可能性不大。似乎没有对装配进行优化。MOVR0,#00H中光标顶行的PC值是多少?

如果差异被优化了,通过调出反汇编窗口就知道是否被优化了。我看不到图片,我的意思是MOVR0 #00H的最后一行绝对不是跳转指令。PC值如何变化?如果PC值不变,肯定会继续执行,你能把它发送到我的电子邮件吗?T_cl@sohu.com,还有一件事,如果你修改了程序而没有重新编译,当你进入调试窗口时,你会执行前面的代码。如果一整行的增减都很容易找到,如果一行后有增删,就不要去注意什么不容易找到。


文章TAG:keil  c51  调试  仿真  集成  keil c51调试程序  
下一篇