C51单片机的中断体系结构


80C51的中断系统有5个中断源(8052有 6个) ,2个优先级,可实现二级中断嵌套 。MCS-51系列单片机中断系统的机构如下:


与中断系统相关的特殊寄存器:

1)中断允许控制寄存器(IE)------ 控制各中断的开放和屏蔽

2)中断优先级控制寄存器(IP)------设置各中断的优先级

3)定时器/计数器控制寄存器(TCON)----定时器和外部中断的控制

4)串行口控制寄存器(SCON)------串行中断的控制


中断类型分为三类:

1)T0、T1是2个定时器/计数器中断,由片内定时器提供;

2)INT0、INT1是2个外部中断,由引脚P3.2和P3.2提供;

3)RX、TX为串行口中断所用,由片内串口提供。


1、(P3.2)/(P3.3)可由IT0(TCON.0)/IT1(TCON.2)选择其为低电平有效还是下降沿有效。当CPU检测到P3.2/P3.3引脚上出现有效的中断信号时,中断标志IE0(TCON.1)/IE1(TCON.3)置1,向CPU申请中断。

2、TF0(TCON.5)/TF1(TCON.7),片内定时/计数器T0/T1溢出中断请求标志。当定时/计数器T0/T1发生溢出时,置位TF0/TF1,并向CPU申请中断。

3、RI(SCON.0)或TI(SCON.1),串行口中断请求标志。当串行口接收完一帧串行数据时置位RI或当串行口发送完一帧串行数据时置位TI,向CPU申请中断。

上述只是向CPU申请中断,如果要得到CPU的相应,还要设置相应的中断允许IE和优先级IP,中断方能的到响应。


1)定时器中断的使用(以定时器0为例)

 ……

 TMOD |= 0x01 | 0x04;  //使用模式1,16位计数器,使用"|"符号可以在使用多个定时器时不受影响     

这是一个18年初的创业项目的核心功能要求,我们当时打算做一个共享类的项目,项目的主题是共享图书,线下的形式租借图书,我们当时是考虑做一个借书柜的形式,然后线下生产投放借书柜,这些借书柜本身能存放24本书,大约24个柜子,且均有单片机控制。

 TH0=0xFF;      //给定初值

 TL0=245;         //从245计数到255 

 EA=1;            //总中断打开

 ET0=1;           //定时器中断打开

 TR0=1;           //定时器开关打开

void Timer0_isr(void) interrupt 1 using 1    //中断服务程序

{

 TH0=0xFF;      //重新给定初值

 TL0=245; 

 ……

}

2)外部中断的使用(以外部中断0为例)

  …………

  EA=1;          //全局中断开

  EX0=1;         //外部中断0开

  IT0=0;         //电平触发

void ISR_Key(void) interrupt 0 using 1 //中断服务程序

{

…………

}

3)串行口中断的使用

……

> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >

电子锁具它是以51系列单片机为核心,配以相应硬件电路,完成密码的设置、存贮、识别和显示、驱动电磁执行器并检测其驱动电流值、接收传感器送来的报警信号、发送数据等功能。单片机接收键入的代码,并与存贮在EEPROM中的密码进行比较,如果密码正确,则驱动电磁执行器开·锁;如果密码不正确,则允许操作人员重新输入密码,·多可输入三次;如果三次都不正确,则单片机通过通信线路向智能监控器报警。

生成海报
点赞 0

Abin

我还没有学会写个人说明!

相关推荐

88E1111配置及使用

目录 1 88E1111PHY芯片简介 1.1 Media Interface 1.1.1 Copper 1.1.2 Fiber 1.2 MAC Interface 2 PHY寄存器描述及配置 2.1 R27寄存器Extended

硬件断点还能这么玩?

上一篇文章我们介绍了inlinehook(修改代码的hook方式),接下来准备介绍硬件断点veh hook(无需修改代码的hook方式)。作为铺垫,本文先介绍硬