中断系统、定时器、计数器及串行通信.ppt

上传人:牧羊曲112 文档编号:6534102 上传时间:2023-11-10 格式:PPT 页数:38 大小:410.50KB
返回 下载 相关 举报
中断系统、定时器、计数器及串行通信.ppt_第1页
第1页 / 共38页
中断系统、定时器、计数器及串行通信.ppt_第2页
第2页 / 共38页
中断系统、定时器、计数器及串行通信.ppt_第3页
第3页 / 共38页
中断系统、定时器、计数器及串行通信.ppt_第4页
第4页 / 共38页
中断系统、定时器、计数器及串行通信.ppt_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《中断系统、定时器、计数器及串行通信.ppt》由会员分享,可在线阅读,更多相关《中断系统、定时器、计数器及串行通信.ppt(38页珍藏版)》请在三一办公上搜索。

1、第五章 中断系统、定时器、计数器及串行通信,5.1 单片机中断系统5.2 定时器/计数器5.3 串行通讯技术,5.1.1 中断的概念,图5-1 中断流程,返回本节,5.1.2 中断源,1、外部中断源:由P3.2端口线引入,低电平或下降沿引起。:由P3.3端口线引入,低电平或下降沿引起。2、内部中断源T0:定时/计数器0中断,由T0回零溢出引起。T1:定时/计数器1中断,由T1回零溢出引起。3、串行中断TI/RI:串行I/O中断,完成一帧字符发送/接收引起。,图5-2 中断系统的结构框图,返回本节,5.1.3 中断的控制,1中断允许寄存器IE(A8H)IE在特殊功能寄存器中,字节地址A8H,位地

2、址分别是A8HAFH。IE控制CPU对中断源总的开放或禁止以及每个中断源是否允许中断。其格式如图5-3所示。2中断优先寄存器IP(B8H)IP在特殊功能寄存器中,字节地址为B8H,位地址分别是B8HBFH,IP用来锁存各中断源优先级的控制位,其格式如图5-4所示。,图5-3 中断允许寄存器IE,图5-4 中断优先寄存器IP,返回本节,5.1.4 中断处理过程,单片机在每个机器周期的S5P2期间,顺序采样每个中断源,CPU在下一个机器周期S6期间按优先级顺序查询中断标志,如查询到某个中断标志为1,将在再下一个机器周期S1期间按优先级进行中断处理。中断得到响应后自动清除中断标志,由硬件将程序计数器

3、PC内容压入堆栈保护,然后将对应的中断矢量装入程序计数器PC,使程序转向中断矢量地址单元中去执行相应的中断服务程序。,下列任何一种情况存在中断申请将被封锁:,(1)CPU正在执行一个同级或高一级的中断服务程序。(2)当前正在执行的那条指令还未执行完。(3)当前正在执行的指令是RETI或对IE,IP寄存器进行读/写指令,执行这些指令后至少再执行一条指令才会响应中断。,返回本节,5.1.5 中断系统的应用,例 5-1 若规定外部中断源0为边沿触发方式,高优先级,试写出有关初始化程序。STEB EA;CPU 开中断SETB EX0;允许外部中断0申请中断SETB PX0;将外部中断0定为高优先级中断

4、SETB IT0;边沿触发,5.2.1 定时/计数器结构,定时/计数器简称定时器,8051单片机有2个16位的定时/计数器:定时器0(T0)和定时器1(T1)。它们都有定时器或事件计数的功能,可用于定时控制、延时、对外部事件计数和检测等场合。T0由2个特殊功能寄存器TH0和TL0构成,T1则由TH1和TL1构成。作计数器时,通过引脚T0(P3.4)和T1(P3.5)对外部脉冲信号计数,当输入脉冲信号从1到0的负跳变时,计数器就自动加1。计数的最高频率一般为振荡频率的1/24。,返回本节,5.2.1 定时/计数器结构,定时器共有2个控制寄存器TMOD和TCON,由软件写入TMOD和TCON 两个

5、8位寄存器,设置各个定时器的操作模式和控制功能。,8051 定时、计数器内部结构,1工作模式控制寄存器TMOD(89H),图5-5 定时器工作模式寄存器TMOD,2定时器控制寄存器TCON(88H),图5-6 定时器工作模式寄存器TCON,返回本节,2定时器控制寄存器TCON(88H),IT0(TCON.0)为外部中断0的触发控制位,当IT0=0时采用电平触发方式,低电平有效;当当IT0=1时采用边沿触发方式,下降沿有效,可由软件置位或清零。IE0(TCON.1)为外部中断0中断请求标志位,当CPU检测到中断请求有效时,IE0由硬件自动置位;CPU响应中断后,IE0由硬件自动复位。IT1、IE

6、1功能相似,5.2.3 定时/计数器工作方式,每个定时/计数器还有4种工作模式,也就是每个定时器可构成4种电路结构模式。在模式0、1和2,T0和T1的工作模式相同,在模式3,两个定时器的模式不同。下面以T1为例,分述各种工作模式的特点和用法。,1模式0,图5-5 定时/计数器T1(T0)工作模式0,2模式1,图5-6 定时/计数器T1(T0)工作模式1,3模式2,图5-7 定时/计数器T1(T0)工作模式2,4模式3,图5-8 定时/计数器T1(T0)工作模式3,返回本节,5.2.4 定时/计数器初始化,1计数器初值的计算把计数器计满为零所需要的计数值设定为C,计数初值设定为TC,由此可得到公

7、式:TC=M-C式中,M为计数器模值,该值和计数器工作方式有关。在方式0时M为213;在方式1时M为216;在方式2和方式3时M为28。,5.2.4 定时/计数器初始化,2定时器初值的计算在定时器模式下,计数器由单片机主脉冲经12分频后计数。因此,定时器定时时间T的公式:T=(M-TC)T计数 上式也可写成:TC=M-T/T计数式中,M为模值,和定时器的工作方式有关;T计数是单片机振荡周期TCLK的12倍;TC为定时器的定时初值。,返回本节,5.2.5 定时/计数器应用举例,例5-4用定时器T1,工作方式0实现定时,并在P1.0引脚输出周期为10ms的方波,设晶振fosc=12MHz。1)确定

8、工作方式设置TMOD初始值。使用定时器1 TMOD=00H2)预置定时器初值分析:周期为10ms,高电平为5ms 一个周期时间为6*2*1/12M=1us;5ms/1us=5000次X0=M 计数值=213-5000=8192 5000=3192=C78H=01100011 11000 BX=01100011 00011000 B=6318HTH1=63H TL1=18H,返回本章首页,5.2.5 定时/计数器应用举例-中断法,采用中断法程序如下:ORG 0000H LJMP MAIN;转主程序 MAIN ORG 001BH LJMP PT1;转T1中断处理程序PT1 ORG 0050HMAI

9、N:MOV SP,#50H;设置堆栈指针 MOV TMOD,#00H;设置T1为方式0,定时器方式 MOV TL1,#18H;设置计数器初值 MOV TH1,#63H,5.2.5 定时/计数器应用举例-中断法,SETB EA;开中断 SETB ET1;允许T1中断 SETB TR1;启动定时器T1 HERE:JIMP HERE;等待中断中断服务程序清单:ORG 0200H PT1:MOV TL1,#18H;重置定时器初值 MOV TH1,#63H CPL P1.0;P1.0取反 RETI;中断返回 END,5.2.5 定时/计数器应用举例 查询法,程序如下:MOV TMOD,00H MOV T

10、L1,#18H MOV TH1,#63H SETB TR1HERE:JBC TF1,DOWN SJMP HEREDOWN:MOV TL1,#18H MOV TH1,#63H CPL P1.0 SJMP HERE,5.3.1 串行通信,MCS-51单片机内部有一个全双工的串行通信口,即串行接收和发送缓冲器(SBUF),这两个在物理上独立的接收发送器,既可以接收数据也可以发送数据。但接收缓冲器只能读出不能写入,而发送缓冲器则只能写入不能读出,它们的地址为99H。这个通信口既可以用于网络通信,亦可实现串行异步通信,还可以构成同步移位寄存器使用。如果在传行口的输入输出引脚上加上电平转换器,就可方便地构

11、成标准的RS-232接口。下面我们分别介绍。,数据通信的传输方式,常用于数据通信的传输方式有单工、半双工、全双工和多工方式。单工方式:数据仅按一个固定方向传送。因而这种传输方式的用途有限,常用于串行口的打印数据传输与简单系统间的数据采集。半双工方式:数据可实现双向传送,但不能同时进行,实际的应用采用某种协议实现收/发开关转换。全双工方式:允许双方同时进行数据双向传送,但一般全双工传输方式的线路和设备较复杂。多工方式:以上三种传输方式都是用同一线路传输一种频率信号,为了充分地利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分或码分复用技术,即可实现在同一线路上资源共享功能,我们盛之为

12、多工传输方式。,串行数据通信两种形式,异步通信在这种通信方式中,接收器和发送器有各自的时钟,它们的工作是非同步的,异步通信用一帧来表示一个字符,其内容如下:一个起始位,仅接着是若干个数据位。,同步通信同步通信格式中,发送器和接收器由同一个时钟源控制,为了克服在异步通信中,每传输一帧字符都必须加上起始位和停止位,占用了传输时间,在要求传送数据量较大的场合,速度就慢得多。同步传输方式去掉了这些起始位和停止位,只在传输数据块时先送出一个同步头(字符)标志即可。,串行数据通信的传输速率串行数据传输速率有两个概念,即每秒转送的位数bps和每秒符号数波特率。,串行口控制寄存器,此外,从图中可看出,接收缓冲

13、器前还加上一级输入移位寄存器,MCS-51这种结构目的在于接收数据时避免发生数据帧重叠现象,以免出错,部分文献称这种结构为双缓冲器结构。而发送数据时就不需要这样设置,因为发送时,CPU是主动的,不可能出现这种现象。,MCS-51单片机串行口寄存器结构如图3所示。SBUF为串行口的收发缓冲器,它是一个可寻址的专用寄存器,其中包含了接收器和发送器寄存器,可以实现全双工通信。但这两个寄存器具有同一地址(99H)。MCS-51的串行数据传输很简单,只要向发送缓冲器写入数据即可发送数据。而从接收缓冲器读出数据即可接收数据。,串行通信控制寄存器,在上一节我们已经分析了SCON控制寄存器,它是一个可寻址的专

14、用寄存器,用于串行数据的通信控制,单元地址是98H,其结构格式如下:,下面我们对各控制位功能介绍如下:(1).SM0、SM1:串行口工作方式控制位。SM0,SM1工作方式00方式001方式110方式211方式3,串行通信控制寄存器,(2).SM2:多机通信控制位。多机通信是工作于方式2和方式3,SM2位主要用于方式2和方式3。接收状态,当串行口工作于方式2或3,以及SM2=1时,只有当接收到第9位数据(RB8)为1时,才把接收到的前8位数据送入SBUF,且置位RI发出中断申请,否则会将接受到的数据放弃。当SM2=0时,就不管第位数据是0还是1,都难得数据送入SBUF,并发出中断申请。工作于方式

15、0时,SM2必须为0。(3).REN:允许接收位。REN用于控制数据接收的允许和禁止,REN=1时,允许接收,REN=0时,禁止接收。(4).TB8:发送接收数据位8。在方式2和方式3中,TB8是要发送的即第9位数据位。在多机通信中同样亦要传输这一位,并且它代表传输的地址还是数据,TB8=0为数据,TB8=1时为地址。,串行通信控制寄存器,(5).RB8:接收数据位8。在方式2和方式3中,RB8存放接收到的第9位数据,用以识别接收到的数据特征。(6).TI:发送中断标志位。可寻址标志位。方式0时,发送完第8位数据后,由硬件置位,其它方式下,在发送或停止位之前由硬件置位,因此,TI=1表示帧发送

16、结束,TI可由软件清“0”。(7).RI:接收中断标志位。可寻址标志位。接收完第8位数据后,该位由硬件置位,在其他工作方式下,该位由硬件置位,RI=1表示帧接收完成。,串行通信控制寄存器,电源管理寄存器PCONPCON主要是为CHMOS型单片机的电源控制而设置的专用寄存器,单元地址是87H,其结构格式如下:在CHMOS型单片机中,除SMOD位外,其他位均为虚设的,SMOD是串行口波特率倍增位,当SMOD=1时,串行口波特率加倍。系统复位默认为SMOD=0。,串行口的工作方式,1)方式0 方式0是外接串行移位寄存器方式。工作时,数据从RXD串行地输入/输出,TXD输出移位脉冲,使外部的移位寄存器

17、移位。波特率固定为fosc/12(即,TXD每机器周期输出一个同位脉冲时,RXD接收或发送一位数据)。每当发送或接收完一个字节,硬件置TI=1或RI=1,申请中断,但必须用软件清除中断标志。实际应用在串行I/O口与并行I/O口之间的转换。,方式1 方式1是点对点的通信方式。8位异步串行通信口,TXD为发送端,RXD为 接收端。一帧为10位,1位起始位、8位数据位(先低后高)、1位停止位。波特率由T1或T2的溢出率确定。在发送或接收到一帧数据后,硬件置TI=1或RI=1,向CPU申请中断;但必须用软件清除中断标志,否则,下一帧数据无法发送或接收。方式2、方式3 方式2和方式3是9位异步串行通信,一般用在多机通信系统中或奇偶校验的通信过程。在通讯中,TB8和RB8位作为数据的第9位,位SM2也起作用。方式2与方式3的区别只是波特率的设置方式不同。,串行通信波特率的计算,串行口有3种工作方式:方式0、方式1、方式2、方式3;有3种帧格式,方式2和3具有相同的帧格式;方式0的发送和接收都以fosc/12为固定波特率,方式1的波特率=2SMOD/32定时器T1的溢出率 方式2的波特率=2SMOD/64fosc 方式3的波特率=2SMOD/32定时器T1的溢出率,THANK YOU VERY MUCH!,本章到此结束,结束放映,返回本章首页,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号