微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 这是关于中断的一个问题,希望大神能帮忙解决

这是关于中断的一个问题,希望大神能帮忙解决

时间:10-02 整理:3721RD 点击:
我的疑问是下面的程序当执行到哪一步的时候终端开始发生?或者是中断在程序中是怎么开始执行的?从哪里能判断出中断开始执行了?谢谢!
#include<reg52.h>
unsigned char num;
sbit led1=P0^0;
void main()
{  num=0;
   TMOD=0X01;
   EA=1;
   ET0=1;
   TR0=1;
   TH0=(65536-15536)/256;
   TL0=(65536-15536)%256;
   while(1)
   {
   unsigned int a = 0;
     if(num==2)
         {
                 num=0;
                 led1=~led1;
         }
   }
}
void zhongduan() interrupt 1
{
   TH0=(65536-15536)/256;
   TL0=(65536-15536)%256;
   num++;
}

你开了定时器中断,设定了定时器时间,当单片机内部定时器计数到设定的时间后就会进入定时器中断;
然后你在中断里又重新设定了定时器时间,并且num++;如此反复进入2次定时器中断,出了中断后就会进入“led1=~led1;”

看你在哪里调用中断函数了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top