第四章MCS-51系列单片机的中断系统及计数定时器ppt课件.ppt
《第四章MCS-51系列单片机的中断系统及计数定时器ppt课件.ppt》由会员分享,可在线阅读,更多相关《第四章MCS-51系列单片机的中断系统及计数定时器ppt课件.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、在此输入您的封面副标题第四章第四章MCS-51系列单片机的中断系统系列单片机的中断系统及计数定时器及计数定时器MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器4.1 项目引入:项目引入:LED点阵屏的动态显示点阵屏的动态显示项目说明项目说明 利用MCS-51系列单片机的P1口和P2口连接88 LED点阵屏,其中,P2口通过限流电阻器再接到点阵屏。P1口输出显示信号,P2口输出扫描信号,参考电路如图所示。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断
2、系统及计数定时器的中断系统及计数定时器-; 程序定义部分;-SJJS EQU 30HHJS EQU 31HPYL EQU 32H;-; 程序开始及主程序跳转;-ORG 0000H LJMP START;-; 中断及中断服务程序T0跳转;-ORG 000BH LJMP TIME_INT;-; 程序初始化部分;- ORG 0100H START: MOV TMOD,#01H MOV TH0,#0F0H MOV TL0,#60H SETB ET0 CLR PT0 SETB EA SETB TR0 ;-; 主程序循环体部分;- SJMP $ 参考源程序参考源程序MCS-51系列单片机及汇编编程系列单片
3、机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器;-; T0中断服务程序;- ORG 0200H TIME_INT:MOV TH0,#0F0H MOV TL0,#60HMOV DPTR,#TAB1 MOV A,HJSMOVCA,A+DPTR MOV P2,A MOV A,PYL MOV B,#8MULABADD A,HJS MOV DPTR,#TAB MOVC A,A+DPTR MOV P1, AINC HJSMOV A,HJS CJNE A,#8,NEXT MOV HJS,#00HNEXT: INC SJJSMOV A,SJJSCJNE A
4、,#250,LPMOV SJJS,#00HINC PYLMOV A, PYLCJNE A,#16,LPMOV PYL,#00H LP: RETI MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器ORG 0300H TAB1: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH; TAB: DB 00H,00H,00H,00H,00H,00H,00H,18H DB 00H,00H,00H,00H,00H,00H,18H,3CH DB 00H,00H,00H,00H,00H
5、,18H,3CH,7EH DB 00H,00H,00H,00H,18H,3CH,7EH,0DBH DB 00H,00H,00H,18H,3CH,7EH,0DBH,99H DB 00H,00H,18H,3CH,7EH,0DBH,99H,18H DB 00H,18H,3CH,7EH,0DBH,99H,18H,18H DB 18H,3CH,7EH,0DBH,99H,18H,18H,18H DB 3CH,7EH,0DBH,99H,18H,18H,18H,00H DB 7EH,0DBH,99H,18H,18H,18H,00H,00H DB 0DBH,99H,18H,18H,18H,00H,00H,00H
6、 DB 99H,18H,18H,18H,00H,00H,00H,00H DB 18H,18H,18H,00H,00H,00H,00H,00H DB 18H,18H,00H,00H,00H,00H,00H,00H DB 18H,00H,00H,00H,00H,00H,00H,00H DB 00H,00H,00H,00H,00H,00H,00H,00HMCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器4.2 单片机中断系统的相关知识单片机中断系统的相关知识4.2.1 中断系统中断系统1中断中断 当单片机正在顺
7、序执行程序时,外部发生的某一异常请求单片机迅速去处理,于是,单片机暂时中断现行的程序,转去处理异常事件。处理完该事件以后,再回到被中断的地方继续执行原来的程序。这一处理过程称为中断。中断过程如图所示。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器2MCS-51系列单片机中断系统结构系列单片机中断系统结构 MCS-51系列单片机中断系统有5个中断源,2级中断优先级,可实现2级中断服务嵌套。整个中断系统由定时器/计数器控制寄存器(TCON)、中断允许控制寄存器(IE)、中断优先级控制寄存器(IP)及内部硬
8、件查询电路组成,如图所示。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器3MCS-51系列单片机中断源系列单片机中断源 引起单片机中断的根源(事件),称为中断源。8051单片机共有5个中断源,2个外部中断源 、 ,2个片内定时器/计数器T0、T1,溢出中断TF0、TF1,一个串行口发送与接收中断TI(RI)。 外部中断0请求信号输入引脚,即P3.2引脚。可由IT0选择其为低电平有效还是下降沿有效。当单片机检测到P3.2引脚上出现有效的中断信号时,中断标志位IE0置1,表示有一个中断请求,向单片机申请中
9、断。 外部中断1请求信号输入引脚,即P3.3引脚。可由IT1选择其为低电平有效还是下降沿有效。当单片机检测到P3.3引脚上出现有效的中断信号时,中断标志位IE1置1,表示有一个中断请求,向单片机申请中断。 TF0定时器/计数器T0溢出中断请求标志。当定时器/计数器T0发生溢出时,置位TF0,并向单片机申请中断。 TF1定时器/计数器T1溢出中断请求标志。当定时器/计数器T1发生溢出时,置位TF1,并向单片机申请中断。 TI(RI)串行口中断请求标志。当串行口发送完或接收完一帧数据时,则置位TI(RI),并向单片机申请中断。INT0INT1INT1INT0MCS-51系列单片机及汇编编程系列单片
10、机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器4MCS-51系列单片机中断控制系列单片机中断控制(1)定时器)定时器/计数器控制寄存器计数器控制寄存器TCON位76543210TCONTF1TR1TF0TR0IE1IT1IEIT0(2)串行口控制寄存器)串行口控制寄存器SCON位76543210SCONTIRI 在中断系统中,允许哪些中断源产生中断,采用哪种触发方式,中断优先级如何确定等,主要由几个与中断有关的SFR规定。它们包括:定时器/计数器控制寄存器TCON、串行口控制寄存器SCON、中断允许控制寄存器IE、中断优先级控制寄存器IP。
11、MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器(3)中断允许控制寄存器)中断允许控制寄存器IE位76543210IEEAESET1EX1ET0EX0(4)中断优先级控制寄存器)中断优先级控制寄存器IP位76543210IPPSPT1PX1PT0PX0MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器 系统复位后,IP=00H,即所有的中断源设置都为低优先级中断。 由于MCS-51系列单片机具有2级中断优先级,因此
12、它具备2级中断服务嵌套的功能。其中断优先级的控制规则如下: 低优先级中断请求不能打断高优先级的中断服务,但高优先级中断请求可以打断低优先级的中断服务,从而实现中断嵌套。 如果一个中断请求已被响应,则同级的其他中断服务将被禁止,即同级中断不能嵌套。 如果同一优先级的多个中断请求同时出现,则有中断优先权排队问题,单片机将按自然优先级顺序确定响应哪个中断。其自然优先级排列顺序见表。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器5 5中断处理过程中断处理过程(1)中断响应 中断响应条件。单片机响应中断的条件如
13、下:a有中断源发出中断请求;bEA=1,即CPU开中断; c此中断源的中断允许控制位为1。 同时满足上述3个条件,单片机才会响应中断。 中断响应过程。在响应条件满足的情况下,单片机首先置位优先级状态触发器,以阻断同级和低级的中断,接着再执行由硬件产生的长调用指令LCALL。该指令将程序计数器PC的内容压入堆栈保护起来,然后将对应的中断入口地址装入程序计数器PC,使单片机转去执行从该中断入口地址开始的中断服务程序。与中断源相对应的中断入口地址。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器(2)中断服务
14、 CPU响应中断后,即转至中断服务程序的入口,从中断服务程序的第一条指令开始到中断返回指令为止,这个过程称为中断处理程序或中断服务。中断服务主要对中断源的具体要求进行处理,执行用户编制的中断服务程序。用户在编制中断服务程序时应注意以下几点: 各个中断源的中断入口地址之间,只相隔8字节单元,难以容纳中断服务程序,通常是在中断入口地址单元存放一条长跳转指令LJMP,这样可以将中断服务程序灵活地安排在其他程序存储空间。 若要执行当前中断服务程序时禁止更高优先级中断(避免中断嵌套),则需要通过软件关闭CPU中断,屏蔽更高级中断源的中断请求,在中断返回之前再开放中断。 在中断服务程序中,首先要用软件保护
15、现场。在中断服务之后、中断返回之前恢复现场,以防止中断返回后丢失原寄存器的内容。保护现场的功能主要是通过入栈操作与工作寄存器组切换来实现。(3)中断返回 中断服务程序的最后一条指令必须是中断返回指令RETI。这条指令的功能是:将对应中断的优先级触发器清0,结束中断服务程序执行,返回到曾经被中断过的断点处继续执行主程序。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器 6中断系统应用的初始化 当单片机系统复位后,与中断控制有关寄存器的值基本上均为零。因此,在利用中断系统之前,必须通过软件编程对中断有关的寄
16、存器进行初始化。中断系统初始化编程主要包括如下几个方面: 确定允许哪些中断源产生中断(给IE赋初值); 确定中断优先级(给IP赋初值); 若允许外部中断,须确定外部中断触发方式(给IT0、IT1赋初值); 开启总中断运行控制位(EA=1)。下面通过一个例子来说明中断系统应用的初始化编程方法。MCS-51系列单片机及汇编编程系列单片机及汇编编程第四章第四章MCS-51系列单片机系列单片机的中断系统及计数定时器的中断系统及计数定时器 例4-1 要求外部中断 中断允许,中断优先级为高,下降沿触发方式,外部中断 禁止中断,试编写中断初始化程序。解: 中断初始化编程思路如下: 确定允许哪些中断源产生中断
17、。由题意,外部中断 中断允许,则EX0=1;外部中断 中断禁止,则EX1=0。由于中断允许控制寄存器IE可以位寻址,既可以用字节寻址方式给IE赋值,也可以通过位寻址方式给相应中断运行控制位赋值。一般来说,用位寻址方式更为有效。 确定中断优先级。外部中断 中断优先级为高,故PX0=1。 确定外部中断触发方式。外部中断 为下降沿触发方式,故IT0=1。 开启总中断允许控制位。开启总中断允许控制位,EA=1。完成上述功能的中断初始化程序如下:INT_INIT:SETB EX0 ; 中断允许,EX0=1CLR EX1 ; 禁止中断,EX1=0SETB PX0 ;INT0中断优先级为高,PX0=lSET
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第四 MCS 51 系列 单片机 中断 系统 计数 定时器 ppt 课件
限制150内