P2=1<谁能给我说一下这个51单片机程序的执行顺序。
#include “stc.h”
Unsigned char i=0;
Void main(void)
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TMOD=0x01;
ET0=0x01;256;
i++;
EA=1;
TR0=1;
While(1)
{
If(i>
TL0=(65536-50000)%256;}
在执行中断程序时,While(1)
{
If(i>7) i=0;
}
}
Void Timer0IRQ(void) interrupt 1
{
TH0=(65536-50000)/
C51单片机中断程序的问题!
答案:3 悬赏:50 手机版
解决时间 2021-02-24 06:57
- 提问者网友:不要迷恋哥
- 2021-02-23 20:06
最佳答案
- 五星知识达人网友:迷人又混蛋
- 2021-02-23 21:10
当然不执行了啊,
单片机处理任何中断cpu会吧当前指针的内容保存起来,然后就去处理中断。
要等到处理完中断函数里面的程序,才退出中断函数。
跟着取刚才保存的地址,接着从这个地址继续运行程序
单片机处理任何中断cpu会吧当前指针的内容保存起来,然后就去处理中断。
要等到处理完中断函数里面的程序,才退出中断函数。
跟着取刚才保存的地址,接着从这个地址继续运行程序
全部回答
- 1楼网友:酒者煙囻
- 2021-02-23 22:42
在执行中断的时候,
if(i>7)i=0;
是不执行的。
就像你在看书。来了一个电话(发生中断)。你去接电话(处理中断),在这个时候,你就看不了书了。
- 2楼网友:轻雾山林
- 2021-02-23 21:26
在你的程序中当执行到 “tr0=1;”时,定时器0开始启动,此时依然运行主程序中的代码,当定时器0溢出时产生中断信号,此时自动调用定时中断0的服务程序,当中断程序运行完后,就自动返回调用中断程序的地方,继续运行下面的代码,当下个中断信号来的时候继续重复上面的过程。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯