第4章中断系统定时器计数器和串行口新版Word格式.docx

上传人:b****6 文档编号:8350301 上传时间:2023-05-11 格式:DOCX 页数:22 大小:179.06KB
下载 相关 举报
第4章中断系统定时器计数器和串行口新版Word格式.docx_第1页
第1页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第2页
第2页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第3页
第3页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第4页
第4页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第5页
第5页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第6页
第6页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第7页
第7页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第8页
第8页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第9页
第9页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第10页
第10页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第11页
第11页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第12页
第12页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第13页
第13页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第14页
第14页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第15页
第15页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第16页
第16页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第17页
第17页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第18页
第18页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第19页
第19页 / 共22页
第4章中断系统定时器计数器和串行口新版Word格式.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

第4章中断系统定时器计数器和串行口新版Word格式.docx

《第4章中断系统定时器计数器和串行口新版Word格式.docx》由会员分享,可在线阅读,更多相关《第4章中断系统定时器计数器和串行口新版Word格式.docx(22页珍藏版)》请在冰点文库上搜索。

第4章中断系统定时器计数器和串行口新版Word格式.docx

其执行过程如图4.1:

(a)无条件传送方式(b)查询传送方式(c)中断传送方式

图4.1输入/输出方式示意图

2.中断的概念

·

中断

CPU正在执行程序的过程中,由于CPU之外的某种原因,有必要暂停该程序的执行,转而去执行相应的处理程序,待处理程序结束之后,再返回原程序断点处继续运行的

过程。

中断系统

实现中断过程的软、硬件系统。

中断源

提出中断申请的来源。

中断源一般有外设、定时时钟、故障源等。

主程序与中断服务程序

CPU执行的当前程序称为主程序。

CPU转去对突发事件的处理程序,称为中断服务程序。

·

中断优先级

当多个中断源同时申请中断时,为了使CPU能够按照用户的规定先处

理最紧急的,然后再处理其他事件,中断系统设置有中断优先权排队电路,通过用户的设置,排在前面的中断源称为高级中断,排在后面的称为低级中断。

中断嵌套

当CPU响应某一中断源请求而进入中断处理时,若更高级别的中断源发

出申请,则CPU暂停现行的中断服务程序,去响应优先级更高的中断,待更高级别的中断处理完毕后,再返回低级中断服务程序,继续原先的处理,这个过程称为中断嵌套。

低级中断不能中断优先级高的中断,同级中断不能中断优先级相同的中断。

二、89S51中断系统结构

1.中断源

89S51的5个中断源分别为:

2个外部中断(由INT0、INT1引脚输入中断请求信号)、2个片内定时器/计数器溢出中断(T0、T1)、1个片内串行口中断(TX—发送、RX—接收)。

2.中断请求标志寄存器

中断系统设置有中断请求标志寄存器,它由定时器控制寄存器(TCON)和串行口控制寄存器(SCON)的若干位构成,如图所示:

(a)TCON中断标志(b)SCON中断标志

当某一中断源发出有效的请求信号时,相应的标志位置1,否则为0。

3.中断允许控制寄存器IE

为了有效地控制中断过程,中断系统设置有中断允许控制寄存器IE,它控制着中断的允许与禁止。

IE结构如图所示。

4.中断优先级控制寄存器IP

89S51有2级中断优先级,每一个中断源都可以软件设置为高级中断或低级中断,由中断优先级控制寄存器IP控制。

IP寄存器结构如图所示。

5.中断硬件查询电路

若CPU同时接收到两个不同优先级的中断时,则先处理高级中断。

若CPU同时接收的是多个同级中断时,则通过内部硬件查询逻辑电路,按查询顺序确定应先响应哪一个中断请求。

在同级中断中,查询顺序(由高到低)是:

外部中断0、定时器T0中断、外部中断1、定时器T1中断、串行口中断。

注意,这种同级中断的查询顺序只在同时申请中断时确定先后次序,但不能引起中断嵌套。

三、中断的处理过程

89S51中断的处理过程如图:

1.中断查询

CPU在每个机器周期结束时查询中断源是否有中断申请,若没有,则继续当前任务;

若有,则自动设置相应中断请求标志位。

各中断源的申请信号如下表。

有效的申请信号

设置的标志位

外部中断0

IT0位=0时,

引脚为低电平申请中断;

IT0位=1时,

引脚有1到0的负跳变信号申请中断

IE0=1

定时器T0中断

当T0计满溢出时申请中断

TF0=1

外部中断1

IT1位=0时,

IT1位=1时,

IE1=1

定时器T1中断

当T1计满溢出时申请中断

TF1=1

串行口中断

当发送完一帧数据时申请中断

TI=1

当接收完一帧数据时申请中断

RI=1

2.中断的响应条件

只有同时满足以下条件时,才会响应中断。

中断请求标志为1。

CPU中断开放,即EA=1且相应中断允许位=1。

无同级或更高优先级中断正在被服务。

若现行指令为中断返回RETI或访问IE、IP寄存器指令,必须执行完该指令和紧接着的下一条指令后才能响应中断。

3.响应中断

设置相应的优先级状态触发器。

保护现行程序断电地址。

进入指定的中断服务程序入口地址。

89S51规定各中断源有相应的服务程序入口地址,见下表。

中断服务程序入口地址

0003H

000BH

0013H

001BH

0023H

4.执行中断服务程序

在中断服务程序中不仅要完成相应的服务任务,而且要考虑现场保护与现场恢复,以便保护主程序中不应破坏的数据。

5.中断返回

在中断服务程序的结尾必须有一条中断返回指令RETI。

作用:

清除响应时设置的优先级状态触发器

恢复主程序断点地址,即把堆栈的内容送给PC

6.中断请求的撤除

CPU响应某中断请求后,在返回之前必须撤除中断请求。

89S51的中断系统在响应中断后,能够自动清除两个定时器的中断请求标志TF1、TF0;

对边沿触发下的两个外部中断请求标志IE1、IE0,必须撤除引脚上的请求信号,才能根本上对请求标志清0。

四、任务演示

见动画十二——单片机与打印机数据传送。

总结

中断系统在单片机中极为重要,通过本节的学习,我们全面了解了8051中断系统的结构、处理过程及其应用。

思考题

知识扩展:

外部中断源的扩展链接到PPT的相关内容

4.2定时器/计数器

掌握定时器/计数器结构及四种工作方式;

学会使用定时器/计数器的计数功能,并编写相应控制程序;

学会使用定时器/计数器的定时功能,并编写相应控制程序;

1.89S51定时器/计数器T0、T1。

单片机的一个重要作用是工业控制,在此领域中,时常用到定时控制、延时或计件操作,这些都要涉及到单片机内部集成的定时器/计数器。

掌握

定时器/计数器T0、T1的结构

掌握寄存器TMOD和寄存器TCON,并会根据系统连接来写出寄存器地址

定时器/计数器T0、T1的四种工作方式的工作原理

熟记计算公式,会写初始化程序

结合任务掌握定时器/计数器T0、T1的定时和计数功能及其应用

89S51单片机内部集成有两个16位定时器/计数器T0、T1。

一、定时器/计数器T0、T1的结构

1.定时器的总体结构

定时器/计数器T0、T1的结构如图所示。

各部分的组成及功能?

2.定时器方式寄存器TMOD

特殊功能寄存器TMOD用于控制定时器/计数器的启动方式、计数脉冲源的选择、工作方式的选择。

此寄存器只能字节寻址,复位时,TMOD=00H。

其各位含义如图所示。

3.定时器控制寄存器TCON

此寄存器复位时,TCON=00H。

二、定时器/计数器T0、T1的工作方式

定时器/计数器的工作过程如下图所示。

定时器/计数器有四种工作方式。

1.方式0

方式0的原理图如图所示。

工作原理:

在方式0下,T0和T1工作在13位的定时/计数器方式,由TH0的高8位和TL0的低5位组成。

TL0的低5位进位时,TH0加1,TH0最高位进位(即溢出)时,设置TF0=1,申请中断。

若CPU响应中断,系统自动对TF0复位。

C/

=0,为定时功能;

=1,为计数功能。

定时器T0的启动控制由门控位GATE、启动位TR0、引脚INT0的逻辑组合确定。

定时时间t与计数器的位数、设置的计数处置、时钟频率有关,计算公式如下:

t=(计数最大值-x初值)×

机器周期=(

-x初值)×

12/fosc

其中x初值:

时间常数;

fosc:

时钟频率

若fosc=12MHz,则方式0的最大定时时间

T=(

-0)×

12/fosc=8.192ms

例1:

若设置定时器T1工作在方式0、定时功能,定时时间t=5ms,启动由TR1控制。

写出初始化程序。

分析:

方式0:

设置M1、M0=00;

定时功能:

设置C/

=0;

TR1启动:

设置GATE=0;

利用计算公式可设置TH1=63H,TL1=18H。

初始化程序:

START:

MOVTMOD,#00H;

设置T1方式0,定时功能

MOVTH1,#63H;

送时间常数

MOVTL1,#18H

SETBTR1;

启动T1工作

2.方式1

方式1的原理图如图所示。

T0、T1定时器/计数器的方式1相同,为16位计数器结构。

方式1与方式0基本工作过程相同。

定时时间计算公式:

若fosc=12MHZ,则方式1的最大定时时间

12/fosc=65.536ms

例2若设置定时器T0工作在方式1、计数功能,计数数目为10000次,启动由INT0引脚控制。

方式1:

设置M1、M0=01;

计数功能:

=1;

控制启动:

设置GATE=1;

利用计算公式可设置TH0=0D8H,TL0=0F0H。

MOVTMOD,#0DH;

设置T0方式1,计数功能

MOVTH0,#0D8H;

送计数初值

MOVTL0,#0F0H

SETBTR0;

置TR0=1,T0启动由INT0引脚控制

3.方式2

方式2的原理图如图所示。

T0、T1定时器/计数器的方式2相同,为可重载时间常数的8位计数器结构。

在方式2下,TL0作为8位计数器,TH0作为重载时间常数寄存器,当TL0计满溢出后,设置TF0=1申请中断,同时将TH0中的数据自动装载到TL0中重新工作。

若fosc=12MHZ,则方式2的最大定时时间

12/fosc=0.256ms

4.方式3

T0方式3原理图如图所示。

定时器/计数器T0、T1方式3的工作情况差别很大,T1设置为方式3时,停止工作;

T0设置为方式3时,分成两个独立的8位定时器/计数器TL0和TH0。

TL0既可以作计数器使用,也可以作为定时器使用,定时/计数器T0的各控制位和引脚信号全归它使用。

其功能和操作与方式0或方式1完全相同。

TH0只能作为定时器使用,它的启动仅由原来T1的启动位TR1控制,当TH0溢出时,置位TF1标志申请中断,中断服务程序入口为001BH。

当T0工作在方式3时,T1可以工作在方式0,1,2三种方式,原理图如图。

三、任务演示

见动画十三——生产线零件打包机控制。

掌握了89S51定时器/计数器T0、T1的结构、工作方式及其在实际工作中的应用,就会更好地应用于实际。

定时器/计数器T2链接到PPT上的相关内容。

4.3串行口

了解串行通信的基本概念;

掌握串行口的基本结构及工作方式。

1.89S51串行口的结构。

2.89S51串行口的四种工作方式的工作过程。

微机的串行接口应用非常广泛,本节着重介绍89S51单片机内部的串行口结构及其应用。

了解串行通信的基本概念

同步通信与异步通信

8051串行口的结构介绍

掌握串行口SCON和PCON各位的含义,并能够根据具体情况写出寄存器的地址

掌握8051串行口四种工作方式的工作过程

结合实例理解方式0的应用

结合任务演示理解串行口的工作过程

一、串行通信的基本概念

1.并行通信与串行通信

计算机与外界的信息交换称为通信。

基本的通信方法有并行通信和串行通信两种。

·

并行通信

是指单位信息(通常为一个字节)的各位数据同时传送。

它是依靠并行I/O口实现的。

串行通信

是指单位信息的各位一位一位地按顺序依次传送,它是靠串行接口实现数据传送的。

串行通信是以帧为单位传送。

2.同步通信与异步通信

串行通信有两种基本通信方式,即同步通信与异步通信。

同步通信

是指发送和接收同步进行,从而实现数据的不间断传送。

同步通信的数据帧格式如图所示。

发送设备与接收设备之间不仅连有数据线,还连接有同步时钟信号线,由主控设备发出同步时钟信号,以达到发送与接收同步进行。

同步字符是由用户约定的字符,放在一帧数据的开始和数据之间的间隔,起到提示发送开始和等待的作用。

异步通信

是指发送与接收没有用同步时钟同步,传送过程中数据之间有隔。

异步通信的数据帧格式如图所示。

一帧数据一般由一位起始位、若干数据位、一位停止位构成,传送中数据帧之间的空闲时间插入停止位。

发送设备与接收设备之间没有同步时钟信号线,只有数据信号线,当接收设备检测到数据信号线有起始位到来,才开始接收数据。

3.串行通信的传送方式

单工发送设备和接受设备之间之间连接的信号线传送方向是单向的。

半双工两设备之间连接的信号线传送方向是双向的,但两方向的数据传送不能同时进行。

全双工两设备之间连接的信号线传送方向是双向的,并且两方向的数据传送能同时进行。

4.波特率的概念

每秒传送数据的位数称为波特率(BaudRate),单位为波特,即位/秒(b/s)。

波特率的倒数称为位传送时间,用Td表示,单位为秒(s)。

例如,传送速率每秒10帧数据,每一帧数据11位,则传送波特率为:

10帧/秒×

11位/帧=110b/s位

传送时间Td=9.1ms。

二、89S51串行口的结构

1.串行口的总体结构

89S51串行口是一个可程控、全双工的串行口,结构框图如图所示。

串行口缓冲器SBUF(99H),在物理上它对应着两个独立的寄存器,发送缓冲器和接受缓冲器。

发送时,即CPU写SBUF;

接收时,即CPU读取SBUF。

2.串行口控制寄存器SCON

包含串行口工作方式选择位、接收与发送控制位、串口状态标志位。

其数据格式如下:

各位功能如下:

SM0、SM1:

串行口工作方式选择位。

可设置4种工作方式。

SM2:

允许方式2、3多机通信控制位,其功能见下表。

REN:

串行接收允许位。

由软件设置1允许接收,设为0禁止接收。

TB8、RB8:

在9位异步通信方式下,由于缓冲器只有8位,故用TB8作为发送的第9位,RB8作为接收的第9位。

TI、RI:

发送中断标志与接收中断标志。

当发送完一帧数据后硬件自动置位TI;

当接收完一帧数据后,若数据满足保留条件,硬件自动置位RI。

若CPU响应中断,系统不会自动复位TI、RI,必须由软件清0。

复位后,SCON=00H。

3.电源控制寄存器PCON

用来控制串行口的波特率倍增,以及在CHMOS系列单片机中实现电源控制,其格式如下:

复位后,PCON寄存器的所有使用位为0。

SMOD:

波特率倍增位。

当SMOD=1时,使串行口波特率加倍。

三、串行口方式0

1.方式0的工作过程

数据帧格式如图所示,没有起始位与停止位,只有8位数据位,传送时低位在前,高位在后。

发送过程

CPU将数据送入发送缓冲器SBUF后,自动启动串行口发送。

8位数据以固定的波特率(fosc/12),低位在前,从RXD引脚串行输出,TXD引脚发送移位时钟信号(频率为fosc/12),每个移位时钟的有效期间,对应一个输出的数据位。

8位数据发送完毕,置位TI=1,申请中断,通知CPU再发送下一个数据。

接收过程

软件设置REN=1时,启动接收过程。

串行口以fosc/12固定的波特率,从RXD引脚串行输入数据(低位在前),TXD引脚输出移位时钟信号。

当8位数据接收完毕,将数据送入接收缓冲器SBUF,并置位RI=1,申请中断,通知CPU取走数据。

2.利用方式0扩展并行I/O口

扩展并行输出口的硬件连接图如下图所示。

74LS164的工作过程是,在移位时钟(由CK引脚进入)作用下,数据由A、B引脚串行输入,在Q7~Q0得到并行输出的数据(Q7为高位)。

引脚为异步清0端。

输出指令:

MOVSCON,#00H;

设置串口方式0

MOVSBUF,R0;

输出数据

扩展并行输入口的硬件连接图如下图所示。

74LS165的工作过程是,在移位时钟(由CK引脚进入)作用下,数据由D7~D0引脚并行输入,在QH端得到串行输出的数据。

输入指令:

MOVSCON,#00H;

MOVR0,SBUF;

输入数据

四、串行口方式1、2、3

1.方式1的工作过程。

数据帧格式如下图所示。

CPU将数据送入发送缓冲器SBUF后,自动启动串行口发送。

以指定的波特率,串行发送一位起始位、8位数据位(低位在前)、一位停止位。

一帧数据发送完毕,置位TI=1,申请中断,通知CPU再发送下一个数据。

在未发送下一帧数据时,TXD引脚始终为高电平。

软件设置REN=1时,启动接收过程,串行口检测RXD引脚,当检测到有1到0的负跳变(起始位到来)时,开始接收数据。

串行口以指定的波特率,从RXD引脚串行输入8位数据(低位在前)、一位停止位。

当数据接收完毕,必须同时满足条件RI=0和SM2=0或接收到有效的停止位,才将8位数据送入接收缓冲器SBUF保存,并置位RI=1,申请中断,通知CPU取走数据;

若条件有一个不满足,则接收的数据丢失,不能恢复,也不置位RI标志。

2.方式2、3的工作过程

方式2、3为9位异步通信方式,方式2的波特率为时钟频率的32或64分频,方式3的波特率和方式1相同,由波特率倍增位SMOD确定分频。

其数据帧格式如图所示。

发送过程与方式1类似,只是数据帧格式不同,即启动发送后,串行发送一位起始位、8位数据位、TB8提供的第9位、一位停止位。

一帧数据发送完毕,置位TI=1。

接收过程与方式1类似。

在方式2、3的应用中,可以利用传送的第9位,作为各种意义的标志,如作为奇偶校验位,或作为地址与数据信息标志等。

SM2位的功能,提供了一种人为控制接收是否有效的可能性,在多机通信方面,起到重要的作用。

五、任务演示

见动画十六——单片机双机通讯。

串行通信是工业控制网络的基础,是构成复杂控制系统的关键,通过本节89S51串行口的学习,为以后深入学习串行口的扩展及通信接口做基础。

利用方式2、3进行多机通信链接到PPT的相关内容。

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

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2