单片微型计算机原理及其应用电子教案2.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《单片微型计算机原理及其应用电子教案2.ppt》由会员分享,可在线阅读,更多相关《单片微型计算机原理及其应用电子教案2.ppt(102页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章 中断、定时/计数器与串行通信2.1 中断系统结构及管理n2.1.1 中断请求与控制外部中断外部中断2个(中断接入)个(中断接入)定时计数中断定时计数中断2个(个(3个)个)串行中断(输入、输出)串行中断(输入、输出)2.1.2 中断系统的结构2.1.3 中断源nINT0:由由P3.2端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。INT1:由由P3.3端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。nT0:定时:定时/计数器计数器0中断,由中断,由T0回零溢出引起。回零溢出引起。T0允许计允许计数后,对数后,对P3.4脚(或机器周期)采样负跳变,从初值开
2、始脚(或机器周期)采样负跳变,从初值开始加加1,直至溢出,直至溢出,TF0=1.向向CPU请求中断,请求中断,CPU相应中断相应中断后,由硬件清后,由硬件清0 TF0。T1:定时:定时/计数器计数器1中断,由中断,由T1回零溢出引起。回零溢出引起。n串行串行I/O中断:通过中断:通过P3.0/P3.1完成一帧字符发送完成一帧字符发送/接收引起接收引起中断。由中断。由TI/RI描述发送描述发送/接收中断标志位。接收中断标志位。CPU相应中断相应中断后,硬件不清后,硬件不清0 TI/RI。2.1.4 中断控制n1中断允许寄存器中断允许寄存器IE(A8H)nIE在特殊功能寄存器中,字节地址在特殊功能
3、寄存器中,字节地址A8H,位地,位地址分别是址分别是A8HAFH。IE控制控制CPU对中断源总对中断源总的开放或禁止以及每个中断源是否允许中断的开放或禁止以及每个中断源是否允许中断。2中断优先寄存器中断优先寄存器IP(B8H)IP在特殊功能寄存器中,字节地址为在特殊功能寄存器中,字节地址为B8H,位地,位地址分别是址分别是B8HBFH,IP用来锁存各中断源用来锁存各中断源优先级的控制位,优先级的控制位,2.1.5 中断响应过程n单片机在每个机器周期的单片机在每个机器周期的S5P2期间,顺序采样每期间,顺序采样每个中断源,个中断源,CPU在下一个机器周期在下一个机器周期S6期间按优先期间按优先级
4、顺序查询中断标志,如查询到某个中断标志为级顺序查询中断标志,如查询到某个中断标志为1,将在再下一个机器周期,将在再下一个机器周期S1期间按优先级进行中期间按优先级进行中断处理。断处理。n中断得到响应后自动清除中断标志,由硬件将程中断得到响应后自动清除中断标志,由硬件将程序计数器序计数器PC内容压入堆栈保护,然后将对应的中内容压入堆栈保护,然后将对应的中断矢量装入程序计数器断矢量装入程序计数器PC,使程序转向中断矢量,使程序转向中断矢量地址单元中去执行相应的中断服务程序。地址单元中去执行相应的中断服务程序。n下列任何一种情况存在中断申请将被封锁:下列任何一种情况存在中断申请将被封锁:n(1)CP
5、U正在执行一个同级或高一级的中断正在执行一个同级或高一级的中断服务程序。服务程序。n(2)当前正在执行的那条指令还未执行完。)当前正在执行的那条指令还未执行完。n(3)当前正在执行的指令是)当前正在执行的指令是RETI或对或对IE,IP寄存器进行读寄存器进行读/写指令,执行这些指令后至少写指令,执行这些指令后至少再执行一条指令才会响应中断再执行一条指令才会响应中断外部中断外部中断由由P3.2端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。由由P3.3端口线引入,低电平或下降沿引起。端口线引入,低电平或下降沿引起。外部中断寄存器外部中断寄存器TCON(88H)IE1:外部中断外部
6、中断1(INT1,P3.3)请求源标志,)请求源标志,IE1=1请求中断。请求中断。当当IE1=1时,外部中断时,外部中断1向向CPU请求中请求中断,断,CPU相应中断后,由硬件清相应中断后,由硬件清0 IE1。IE0:外部中断外部中断0(INT0,P3.2)请求源标志,)请求源标志,IT1:外部中断源外部中断源1触发方式控制位。触发方式控制位。IT1=0时为电平时为电平触发方式,触发方式,当当P3.3脚输出为低电平时,脚输出为低电平时,IE1=1,当当P3.3脚输出为高电平时,脚输出为高电平时,IE1=0。IT1=1时时为边为边沿触发方式,沿触发方式,只有两个采样周期监测到负跳变时只有两个采
7、样周期监测到负跳变时IE1=1。IT0:外部中断源外部中断源0触发方式控制位。同上触发方式控制位。同上例:当外部按键每按例:当外部按键每按1下,下,P1的小灯左移亮。的小灯左移亮。ORG 0000HLJMP MAINORG 0003HRL AMOV P1,A RETIMAIN:SETB EASETB EX0SETB IT0MOV A,#0FEHMOV P1,ASJMP$例:当外部按键每按例:当外部按键每按1下,下,P1.0的小灯亮一秒。的小灯亮一秒。ORG 0000HLJMP MAINORG 0013HSETB PI.1LL:SETB P1.0;LCALL DELAY1SCLR P1.0LCA
8、LL DELAY1SSJMP LLRETIMAIN:SETB EASETB EX1SETB IT1SJMP$n例:当外部例:当外部(P3.3)按键每按按键每按1下,下,P1.0的小灯闪的小灯闪3次。次。n作业:当外部按键每按作业:当外部按键每按1下,把下,把A的内容的内容+1,并,并送送P1口显示。(硬件口显示。(硬件+软件)软件)n问:如何停止中断。问:如何停止中断。n实践:设(实践:设(30H)=0,当外部,当外部(P3.2)按键每按按键每按1下,(下,(30H)=(30H)+1,并将结果送,并将结果送P1口显口显示。当示。当30H计满时计满时,停止显示停止显示,P1口全暗。口全暗。中断程
9、序的其他写法(1)nORG 0000HnSETB IT0nLOP:JNB TF0,LOPnCLR TF0nSETB P1.0nLCALL DELAY1SnCLR P1.0nSJMP LOP中断程序的其他写法(2)nORG 0000HnLOP:JNB P3.2,LOPnLOP1:JB P3.2,LOP1nSETB P1.0nLCALL DELAY1SnCLR P1.0nSJMP LOPn例:当外部有意外操作下,例:当外部有意外操作下,30H的内容的内容+1。nORG 0001HnLJMP MAINnORG 0003HnINC 30HnRETInMAIN:SETB EAnSETB EX0nSETB
10、 IT0nSJMP$多外部中断源设计2.2 定时/计数器结构特点及控制n2.2.1 定时定时/计数器结构计数器结构n定时定时/计数器简称定时器,计数器简称定时器,8031单片机有单片机有2个个16位的定时位的定时/计数器:定时器计数器:定时器0(T0)和定时)和定时器器1(T1)。它们都有定时器或事件计数的功)。它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数能,可用于定时控制、延时、对外部事件计数和检测等场合。和检测等场合。nT0由由2个特殊功能寄存器个特殊功能寄存器TH0和和TL0构成构成nT1则由则由TH1和和TL1构成。构成。n作计数器时,通过引脚作计数器时,通过引
11、脚T0(P3.4)和)和T1(P3.5)对外部脉冲信号计数,当输入脉冲)对外部脉冲信号计数,当输入脉冲信号从信号从1到到0的负跳变时,计数器就自动加的负跳变时,计数器就自动加1。2.2.2 定时/计数器控制寄存器n定时器共有定时器共有2个控制寄存器个控制寄存器TMOD和和TCON,由软件写入由软件写入TMOD和和TCON 两个两个8位寄存器,位寄存器,设置各个定时器的操作模式和控制功能。设置各个定时器的操作模式和控制功能。1工作模式控制寄存器TMOD(89H2定时器控制寄存器TCON(88H)2.2.3 定时/计数器工作方式n每个定时每个定时/计数器还有计数器还有4种工作模式,也就是每种工作模
12、式,也就是每个定时器可构成个定时器可构成4种电路结构模式。种电路结构模式。n在模式在模式0、1和和2,T0和和T1的工作模式相同,在的工作模式相同,在模式模式3,两个定时器的模式不同。下面以,两个定时器的模式不同。下面以T1为为例,分述各种工作模式的特点和用法。例,分述各种工作模式的特点和用法。定时/计数器工作方式0n计数位数计数位数8+5=13n计数范围计数范围08Kn计时时间计时时间08MS(FSOC=12MHZ)n计数初值计算计数初值计算A=(8K-计数值计数值)=1E0CHn例:在例:在P1.0 输出输出1MS的方波的方波计数器初值计数器初值TC的计算的计算n把计数器计满为零所需要的计
13、数值设定为把计数器计满为零所需要的计数值设定为C,计数初,计数初值设定为值设定为TC,由此可得到公式:,由此可得到公式:TC=213-C 定时器初值定时器初值TC的计算的计算n在定时器模式下,计数器由单片机主脉冲经在定时器模式下,计数器由单片机主脉冲经12分频后分频后计数。因此,定时器定时时间计数。因此,定时器定时时间T的公式:的公式:T=(213-TC)*T计数计数 上式也可写成:上式也可写成:TC=213-(T/T计数计数)T计数是单片机振荡周期计数是单片机振荡周期TCLK的的12倍;倍;ORG 0000HLJMP MAINORG 000BHCPL P1.0MOV TH0,#0F0HMOV
14、 TL0,#0CHRETIMAIN:SETB EASETB ET0MOV TMOD,#00HMOV TH0,#0F0HMOV TL0,#0CHSETB TR0SJMP$定时/计数器工作方式1n计数位数计数位数8+8=16n计数范围计数范围064Kn计时时间计时时间064MS(FSOC=12MHZ)n计数初值计算计数初值计算A=(64K-计数值计数值)n例:在例:在P1.0 输出输出1MS的方波的方波ORG 0000HLJMP MAINORG 000BHCPL PI.0MOV TL0,#06HMOV TH0,#0FEHRETIMAIN:MOV TMOD,#01HMOV TL0,#06H MOV
15、TH0,#0FEHSETB EASETB ET0SETB TR0SJMP$定时/计数器工作方式2n计数位数计数位数8n计数范围计数范围0256n计时时间计时时间0250US(FSOC=12MHZ)n计数初值计算计数初值计算A=(256-计数值计数值)n例:在例:在P1.0 输出输出500uS的方波的方波ORG 0000HLJMP MAINORG 000BHCPL P1.0RETIMAIN:SETB EASETB ET0MOV TMOD,#02HMOV TH0,#06HMOV TL0,#06HSETB TR0SJMP$计数100次响一下蜂鸣器ORG 0000HLJMP MAINORG 000BH
16、SETB P1.0LCALL D3SCLR P1.0RETIMAIN:SETB EASETB ET0MOV TMOD,#06HMOV TH0,#09CHMOV TL0,#09CHSETB TR0SJMP$定时/计数器工作方式32.2.4 定时/计数器常数的计算n1计数器初值的计算计数器初值的计算n把计数器计满为零所需要的计数值设定为把计数器计满为零所需要的计数值设定为C,计数初值设定为计数初值设定为TC,由此可得到公式:,由此可得到公式:nTC=M-Cn式中,式中,M为计数器模值,该值和计数器工作方为计数器模值,该值和计数器工作方式有关。在方式式有关。在方式0时时M为为213;在方式;在方式1
17、时时M为为216;在方式;在方式2和方式和方式3时时M为为28。n2定时器初值的计算定时器初值的计算n在定时器模式下,计数器由单片机主脉冲经在定时器模式下,计数器由单片机主脉冲经12分频后计数。因此,定时器定时时间分频后计数。因此,定时器定时时间T的公式:的公式:nT=(M-TC)T计数计数n 上式也可写成:上式也可写成:TC=M-T/T计数计数n式中,式中,M为模值,和定时器的工作方式有关;为模值,和定时器的工作方式有关;T计数是单片机振荡周期计数是单片机振荡周期TCLK的的12倍;倍;TC为为定时器的定时初值定时器的定时初值2.3 定时/计数器及中断系统综合应用n【例】设【例】设MCS-5
18、1单片机系统时钟频率单片机系统时钟频率CLK为为6MHZ,请编出利用定时,请编出利用定时/计数器计数器T0在在P1.0引脚上产生周期为引脚上产生周期为2秒,占空比为秒,占空比为50%的方波的方波信号的程序信号的程序n(1)主程序)主程序任务:任务:1)T0工作方式的设定:工作方式的设定:选择方式选择方式1(16位位方式)(最大定时方式)(最大定时131ms)2)定时常数的设定:)定时常数的设定:TC=216-100ms/2s=15536=3CB0H;即:即:TH0应装应装3CH,TL0应装应装B0H。3)中断管理:)中断管理:允许允许T0中断,开放总中断中断,开放总中断 即:即:IE应装应装1
19、0000010B。4)启动定时器)启动定时器T0:SETB TR0 5)设置软件计数器初值:(如使用)设置软件计数器初值:(如使用R7)即即R7应装应装0AH 6)动态停机:)动态停机:SJMP$主程序如下:主程序如下:MAIN:MOV TMOD,#01H;设定;设定T0为方式为方式1MOVTH0,#3CH;装入定时常数高;装入定时常数高8位位MOVTL0,#0B0H;装入定时常数低;装入定时常数低8位位MOVIE,#82H;开放;开放T0中断中断SETBTR0;启动;启动T0MOVR7,#10;设置软件计数器;设置软件计数器SJMP$(2)中断服务程序任务:任务:1)恢复)恢复T0常数;常数
20、;2)软件计数器减)软件计数器减1;3)判断软件计数器是否为)判断软件计数器是否为0。为。为0时,改变时,改变P1.0状状态,并恢复软件计数器初值;不为态,并恢复软件计数器初值;不为0时中断返回。时中断返回。程序如下:程序如下:TOINT:MOV TL0,#0B0H;恢复定时常数;恢复定时常数MOVTH0,#3CH;DJNZR7,NEXTCPLP1.0 MOVR7,#10NEXT:RETI其他程序n门控位使用:计算某一高电平的持续时间门控位使用:计算某一高电平的持续时间n(30h,秒秒),(31h分分),(32h时时),计算机,计算机1秒后对秒后对时钟处理。时钟处理。n综合应用定时和计数的程序
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片 微型计算机 原理 及其 应用 电子 教案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内