外部中断初始化的流程

外部中断初始化的流程,第1张

51?1、先初始化,设置外部中断、串口工作模式,开中断;2、写中断服务程序;//--------------------------------------------*///初始化//--------------------------------------------*/voidinit(void){TMOD|=0x20//工作模式SCON=0x50TH1=0xfd//定时器1初值,设置波特率TL1=0xfd//波特率为9600TR1=1//启动定时器1ES=1//串口中断允许工作于方式1IT0=1//外部中断0下降沿触发方式IT1=1//外部中断1下降沿触发方式EX0=1//开外部中断0EX1=1//开外部中断1EA=1//开总中断}//***************************************************//中断服务程序//***************************************************voidint0(void)interrupt0//外部0中断服务{}//--------------------------------------------//复位中断//--------------------------------------------voidint1(void)interrupt2//外部1中断服务{}//--------------------------------------------*/voiduart(void)interrupt4//串口中断{ucharif(RI)//接收{RI=0ud=SBUF//取收到的字节}elseTI=0//发送完成}

初始化设置:

1、将中断向量表(IVT)中定时器0的中断地址指向对应的中断服务程序。

2、设置相应的中断控制寄存器,使能定时器0和外部中断0两个中断。

3、设置定时器0的定时时间。

4、启动定时器0。

SETB IT0;set INT0 int type (1:Falling 0:Low level)

SETB EX0;enable INT0 interrupt

SETB EA;open global interrupt switch

五个中断有指定的IO口,一般51单片机是P3.2是INT0,zhiP3.3是INT1,P3.4是T0,P3.5是T1,INT0和INT1是外部中断,T0和T1是定时器,daoES是串行口中断允许位,ET1是定时器1中断允许位,EX1是外部中断允许位,ET0和EX0类似。

扩展资料

单片机在自主运行时一般是在执行一个死循环程序,在没有外界干预(输入信号)时它基本处于一个封闭状态。比如一个电子时钟,它会按时、分、秒的规律自主运行并通过输出设备(如液晶显示屏)把时间显示出来。

在不需要对它进行调校时它不需要外部干预,自主封闭地运行。如果这个时钟足够准确而又不掉电的话,它可能一直处于这种封闭运行状态。

参考资料来源:百度百科-外部中断


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

原文地址: http://outofmemory.cn/yw/7789134.html

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

发表评论

登录后才能评论

评论列表(0条)

保存