51单片机外部中断1和0都被使用了,但是还需要使用一个定时器中断,请问该怎么设置呢?

51单片机外部中断1和0都被使用了,但是还需要使用一个定时器中断,请问该怎么设置呢?,第1张

没这么写程序的,中断初始化后就不要变了,放到while(1) 外边,中断处理程序也劲量简短,避免中断程序中使用延时。可以改成这样:

void main()

{

EA=1; //开放总中断

EX0=1; //允许使用外中断

IT0=1; //选择负跳变来触发外中断

while(1)

{

//这里指循环等待

}

}

void int0(void) interrupt 0 using 0 //外中断0的中断编号为0

{

JDQ=0;//假设 0 状态位继电器吸合, 一次中断后,继电器一直处于吸合状态

}

不知道是不是你想要的结果

void init()

{

EX0=1;

EX1=1;

IT0=1;

IT1=1

ET0=1;

TR0=1;

ES=1;

EA=1;

}

外部中断和定时器中断互补干涉,你的51单片机外部中断1和外部中断0都被使用了,不会对你使用定时器中断产生影响的,设置很简单,程序代码附后,要想是定时器中断1的优先级低于外部中断,你可以将外部中断优先级设置为高优先级,而定时器中断设置为低优先级。这样就可以了。初始化程序为:

init()

{

    TMOD=0x10;

    EX0=1;

    EX1=1;

    IT0=1;

    IT1=1;

    PX0=1;

    PX1=1;

    PT1=0;

    TR1=1;

    ET1=1;

    TH1=xxxxx;

    TL1=xxxxx;

    EA=1;

}

以上就是关于单片机中的继电器吸合问题 谢谢全部的内容,包括:单片机中的继电器吸合问题 谢谢、单片机编写一段对中断系统初始化程序,使之允许INt0、INt1、t0串行口中、51单片机外部中断1和0都被使用了,但是还需要使用一个定时器中断,请问该怎么设置呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/langs/8829363.html

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

发表评论

登录后才能评论

评论列表(0条)

保存