欢迎来到天天文库
浏览记录
ID:56973961
大小:121.00 KB
页数:19页
时间:2020-07-25
《单片机原理及应用 第5章 MCS-51单片机的中断系统课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第5章MCS-51单片机的中断系统5.1中断的概念中断中断源中断服务程序中断入口地址中断嵌套中断系统图中断系统的结构框图5.28051中断系统结构及中断控制MCS-51系列单片机有5个中断源和其相应的控制寄存器。1.中断源MSC-51系列单片机的5个中断源,包括2个外部中断源和3个内部中断源。2个外部中断源是外部中断0和外部中断1,相应的中断请求信号输入端是INT0和INT1。3个内部中断源是定时器/计数器0溢出中断,定时器/计数器1溢出中断,串行口的发送和接收中断(TI和RI)。1.定时器控制寄存器—TCON2.串行口控制寄存器S
2、CON该寄存器的字节地址为98H,可位寻址SM0SM1SM2RENTB8RB8TIRI9F9E9D9C9B9A9998D7D6D5D4D3D2D1D03.中断允许寄存器IE中断优先级的顺序:或低高入口地址0003H000BH0013H001BH0023H4.中断优先寄存器IP5.3中断响应时间在不同的情况下CPU响应中断的时间是不同的。以外部中断为例,INT0和INT1引脚的电平在每个机器周期的S5P2时刻经反相锁存到TCON的IE0和IE1标志位,CPU在下一个机器周期才会查询到新置入的IE0和IE1,如果满足响应条件,CPU响应中
3、断时要用两个机器周期执行一条硬件长调用指令“LCALL”,由硬件完成将中断矢量地址装入程序指针PC中,使程序转入中断矢量入口。因此,从产生外部中断到开始执行中断程序至少需要三个完整的机器周期。5.4中断响应后中断请求的撤除对于边沿触发的外部中断,CPU在响应中断后由硬件自动清除相应的中断请求标志IE0和IE1。对于定时器溢出中断,CPU在响应中断后就由硬件消除了相应的中断请求标志TF0、TF1。对于串行口中断,CPU在响应中断后并不自动清除中断请求标志RI或TI,因此必须在中断服务程序中用软件来清除。下列任何一种情况存在中断申请将被封
4、锁:(1)CPU正在执行一个同级或高一级的中断服务程序。(2)当前正在执行的那条指令还未执行完。(3)当前正在执行的指令是RETI或对IE,IP寄存器进行读/写指令,执行这些指令后至少再执行一条指令才会响应中断。定时/计数器及中断系统综合应用【例】设MCS-51单片机系统时钟频率ФCLK为6MHZ,请编出利用定时/计数器T0在P1.0引脚上产生周期为2秒,占空比为50%的方波信号的程序(1)主程序任务:1)T0工作方式的设定:选择方式1(16位方式)(最大定时131ms)2)定时常数的设定:TC=216-100ms/2μs=15536
5、=3CB0H即:TH0应装3CH,TL0应装B0H。3)中断管理:允许T0中断,开放总中断即:IE应装10000010B。4)启动定时器T0:SETBTR05)设置软件计数器初值:(如使用R7)即R7应装0AH6)动态停机:SJMP$主程序如下:MAIN:MOVTMOD,#01H;设定T0为方式1MOVTH0,#3CH;装入定时常数高8位MOVTL0,#0B0H;装入定时常数低8位MOVIE,#82H;开放T0中断SETBTR0;启动T0MOVR7,#0AH;设置软件计数器SJMP$(2)中断服务程序任务:1)恢复T0常数;2)软件计
6、数器减1;3)判断软件计数器是否为0。为0时,改变P1.0状态,并恢复软件计数器初值;不为0时中断返回。程序如下:TOINT:MOVTL0,#0B0H;恢复定时常数MOVTH0,#3CH;DJNZR7,NEXTCPLP1.0MOVR7,#0AHNEXT:RETI完整程序如下:ORG0000HAJMPMAINORG000BHAJMPTOINTORG0030HMAIN:MOVTMOD,#01HMOVTH0,#3CHMOVTL0,#0B0HMOVIE,#82HSETBTR0MOVR7,#0AHSJMP$TOINT:MOVTL0,#0B0HM
7、OVTH0,#3CHDJNZR7,NEXTCPLP1.0MOVR7,#0AHNEXT:RETIEND返回本节
此文档下载收益归作者所有