定时器中断和外部中断

2019-03-24 17:55发布

void init()
{
        TMOD=0x01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        EA=1;
        IT0=1;
        EX0=1;
        IT1=1;
        EX1=1;
        ET0=1;
        TR0=1;
}
void main()
{。。。}
void time0() interrupt 1
{
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        num++;
       
}
void extern0() interrupt 0
{
       
          TR0=0;
}
void extern1()interrupt 2
{
        TR0=1;
}
这是一个按K1停止秒表  按K2继续秒表的结构,可为什么在运行的时候回经常自动停止呢  自后我也只能按K2让它继续了  可是不久之后它又自动中断停止了  我很疑惑哎。。希望有好心人来秒一眼给解惑。。谢谢

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
huaiqiao
1楼-- · 2019-03-24 22:25
1. 我觉得你应该先搞清楚外部中断和中断的优先级;
2. K1按下是什么中断,K2按下又是什么中断;
3. 不要着急去编写程序,最好有个流程图,这样你变成起来更加清晰一些。否则乱糟糟的一团,没有可读性。
她green
2楼-- · 2019-03-25 00:37
是不是定时程序有问题,定时太短或者是中断的优先级的原因,你给的程序不够完整不知道主函数里面是啥,好好找找原因吧
清~~
3楼-- · 2019-03-25 05:06
 精彩回答 2  元偷偷看……

一周热门 更多>