




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第5章MCS-51单片机典型功能部件结构及应用
5.1中断系统5.2MCS-51单片机定时器/计数器5.3串行口^第5章MCS-51单片机^15.1中断系统5.1.1中断的概念
1.中断及中断源中断是指在CPU正在执行某一段程序的过程中,如果外界或内部发生了紧急事件,要求CPU暂停正在运行的程序转而去处理这个紧急事件,待处理完后再回到原来被停止执行程序的间断点,继续执行原来被打断了的程序的过程。实现这种功能的机构称为中断系统,产生中断的请求源叫中断源。2.中断嵌套及优先级当CPU正在处理一个优先级低的中断请求的时候,如果发生另一个优先级比它高的中断请求,CPU暂停正在处理的中断源的处理程序,转而处理优先级高的中断请求,待处理完之后,再回到原来正在处理的低级中断程序,这种高级中断源能中断低级中断源的中断处理称为中断嵌套。
^5.1中断系统^25.1.2MCS-51中断系统结构及中断控制1.中断源和中断请求标志(1)中断源MSC-51系列单片机的5个中断源,包括2个外部中断源和3个内部中断源。2个外部中断源是外部中断0和外部中断1;3个内部中断源是定时器/计数器0溢出中断、定时器/计数器1溢出中断、串行口的发送和接收中断(TI和RI)。(2)TCON寄存器TCON是定时器/计数器0和1(T0、T1)的控制寄存器,同时也用来锁存T0、T1的溢出中断请求标志和外部中断请求标志。(3)SCON寄存器SCON为串行口控制寄存器,其中的低两位用作串行口中断请求标志。
TI(SCON.1):串行口发送中断请求标志。
RI(SCON.0):串行口接收中断请求标志。
^5.1.2MCS-51中断系统结构及中断控制^3TCON寄存器:IE1(TCON.3):外部中断请求标志位。IT1(TCON.2):外部中断触发方式控制位。由软件来置1或清0IT1=0时,外部中断1为电平触发方式,IT1=1时,外部中断1为边沿触发方式(下降沿有效)IT0(TCON.0):外部中断0()触发方式控制位,由软件置位或复位。IT0=1,外部中断0为边沿触发方式(下降沿有效);IT0=0,外部中断0为电平触发方式。TF0(TCON.5):定时器/计数器0(T0)的溢出中断请求标志。当T0计数产生溢出时,由硬件将TF0置1TF1(TCON.7):定时器/计数器1(T1)的溢出中断请求标志IE0(TCON.1):外部中断请求标志位。当引脚(P3.2)上出现中断请求信号时,由硬件置位IE0,向CPU申请中断。^TCON寄存器:^4
2.中断允许控制
在MCS-51单片机中断系统中,中断的允许或禁止是由片内的中断允许寄存器IE控制的。其引脚定义如下:
EA(IE.7):CPU中断允许标志。EA=0时,表示CPU屏蔽所有中断;EA=1,表示CPU开放中断,但每个中断源的中断请求是允许还是被禁止,还需由各自的允许位来确定。
ES(IE.4):串行口中断允许位。ES=0,禁止串行口中断;ES=1时,允许串行口中断。
ET1(IE.3):定时器/计数器T1溢出中断允许位。ET1=1,允许T1中断;ET1=0,禁止T1中断。
EX1(IE.2):外部中断1中断允许位。EX1=1,允许外部中断1中断;EX1=0,禁止外部中断1中断。
ET0(IE.1):定时器/计数器T0溢出中断允许位,其功能同ET1
EX0(IE.0):外部中断0中断允许位,功能同EX1。
中断允许寄存器IE中各位的状态,可根据要求用软件置位或清零,从而实现对于该中断源允许中断或禁止中断。当CPU复位时,IE被清零。
^2.中断允许控制^53.中断优先级控制MCS-51系列单片机的中断优先级是由中断优先级寄存器IP控制的。MSC-51单片机中的中断系统,应遵循以下基本准则:(1)低优先级中断可被高优先级中断请求所中断,高优先级中断不能被低优先级中断请求所中断。(2)同级的中断请求不能打断已经执行的同级中断。
(3)中断源自然优先级顺序中断源自然优先级由高到低:
外部中断0定时器/计数器0外部中断1定时器/计数器1串行口^3.中断优先级控制^65.1.3MCS-51中断响应过程MCS-51系列单片机的中断响应过程可分为中断响应、中断处理和中断返回三个阶段。1.中断响应CPU响应中断的条件主要有以下几点:(1)有中断源发出中断请求;(2)中断总允许为EA=1,即CPU开中断;(3)请求中断的中断源的中断允许位为1^5.1.3MCS-51中断响应过程^72.中断处理CPU从执行中断处理程序第一条指令开始到返回指令RETI为止,这个过程称为中断处理或中断服务。中断处理一般包括保护现场、处理中断源的请求以及恢复现场三部分内容。3.中断返回中断返回是指执行完中断处理程序的最后指令RETI之后,程序返回到断点,继续执行原来的程序。
^^85.1.4中断响应后中断请求的撤除中断源提出中断申请,在CPU响应此中断请求后,该中断源的中断请求在中断返回之前应当撤除,以免引起重复中断,被再次响应。5.1.5中断系统应用例:单片机读P1.0的状态,把这个状态送到P1.7的指示灯去,当P1.0为高电平,指示灯亮;当P1.0为低电平时,指示灯不亮。要求用中断控制这一输入/输出过程,每请求中断一次,完成一个读写过程。
^^9#include<reg51.h>sbitP1_0=P1^0;sbitP1_7=P1^7;voidmain(){ IE=0x81; /*cpu开中断和外部中断0允许*/ TCON=0x01; /*INT0设置为负边沿触发*/ while(1);}voidex_int0(void)interrupt0{if(P1_0==1) P1_7=1; else P1_7=0;}^#include<reg51.h>^105.2MCS-51单片机定时器/计数器MCS-51单片机内部有两个16位定时器/计数器,简称定时器0(T0)和定时器1(T1)。它们均可用作定时器或事件计数器,为单片机系统提供计数和定时功能,还可作为串行接口的波特率发生器5.2.1定时器/计数器概述定时器/计数器实际上是加1计数器,当它对外部事件进行计数时,由于频率不固定,此时称之为计数器;当它对内部固定频率的机器周期进行计数时,称之为定时器。它们的工作状态及工作方式由两个特殊功能寄存器TMOD和TCON的各位来决定。工作状态有定时和计数两种,由TMOD的第2位(T0)或第6位(T1)决定。工作模式共有0~3四种,也是由TMOD其中的两位(1个定时器)来决定。TMOD和TCON的内容由软件写入。^5.2MCS-51单片机定时器/计数器^11定时器/计数器内部结构框图
定时器/计数器的基本结构:TH1、TL1是T1的计数器,TH0、TL0是T0的计数器。TH1和TL1、TH0和TL0分别构成两个16位加法计数器。^定时器/计数器内部结构框图定时器/计数器的基本结构:^125.2.2定时器/计数器的控制
定时器/计数器有4种工作模式,由TMOD设置并由TCON控制。
1.工作方式控制寄存器TMOD特殊功能寄存器TMOD的地址为89H,它不能位寻址,在设置时一次写入。高4位用于定时器T1,低4位用于定时器T0
M1M0-工作模式控制位M1M0对应4种不同的二进制组合,分别对应4种工作模式。
C/T:定时器方式和计数器方式选择控制位
为1:定时/计数器工作在计数器方式。为0:定时/计数器工作在定时器方式。GATE——定时器/计数器运行控制位(门控位)
2.定时器控制寄存器TCON定时器控制寄存器TCON除可字节寻址外,还可以位寻址。TCON的字节地址为88H,位地址为88H~8FH。^5.2.2定时器/计数器的控制^135.2.3定时器/计数器的工作模式MCS-51系列单片机的定时器/计数器T0和T1可由软件对特殊功能寄存器TMOD中控制位C/进行设置,以选择定时功能或计数功能。对M1和M0位的设置对应于四种工作模式,即模式0、模式1、模式2、模式3。1.工作模式0模式0是选择定时器/计数器(T0或T1)的高8位和低5位组成的一个13位定时器/计数器。其逻辑框图如图5-4所示。
定时器/计数器T0工作模式0逻辑结构框图^5.2.3定时器/计数器的工作模式定时器/计数器T0工142.工作模式1该模式对应的是一个16位的定时器/计数器,其结构与操作几乎与模式0完全相同,惟一的差别是:在模式1中,寄存器TH0和TL0是以全部16位参与操作。用于定时工作方式时,定时时间为
t=(216-T0初值)×振荡周期×12用于计数工作方式时,计数最大长度为216=65535个外部脉冲。定时器/计数器T0工作模式1逻辑结构框图
^2.工作模式1定时器/计数器T0工作模式1逻辑结构153.工作模式2模式2把TL0(或TL1)设置成一个可以自动重装载的8位定时器/计数器。TL0计数溢出时,不仅使溢出中断标志位TF0置1,而且还自动把TH0中的内容重新装载到TL0中。TL0用作8位计数器,TH0用以保存初值。用于定时工作方式时,其定时时间(TF0溢出周期)为
t=(28-TH0初值)×振荡周期×12用于计数工作方式时,最大计数长度为28=256个外部脉冲。
定时器/计数器T0工作模式2逻辑结构框图
^3.工作模式2定时器/计数器T0工作模164.工作模式3工作模式3对T0和T1大不相同。若将T0设置为模式3,TL0和TH0被分成为两个相互独立的8位计数器。
定时器/计数器T0工作模式3逻辑结构框图5.波特率发生器定时器T0和T1可同时工作在不同的工作方式。在定时器T0工作在模式3时,尽管TR1和TF1被T0占用,但T1仍可通过M0M1设置其工作模式为0~2。此时,T1常用作串口的波特率发生器。^4.工作模式3定时器/计数器T0工作模式3逻辑结构框图5175.2.4定时器/计数器的应用举例
设单片机晶振为6MHz,P1.0连接一个发光二极管,利用定时器使发光二极管每1s其状态改变一次。由于定时器最长定时时间是有限的,因此,为实现1s的延时,可以设置定时器T0定时时间为100ms,通过程序设置一个软件计数器,对定时器溢出次数(10次)计数。计数初值的算法:65536-100000/2=15536=(3CB0H)
^5.2.4定时器/计数器的应用举例^18C51程序如下:#include<reg51.h>#defineucharunsignedcharsbitled=P1^0; voidInit(void){TMOD=0x01; //设置T0为方式1TH0=0-50000/256; //对于16位计数器0-50000=15536,
免于计算直接装入初值
TL0=0-50000%256;//装入初值(15536mod256)
TR0=1;led=1;}^^19voidmain(void){uchari=0; Init(); while(1) { TH0=0-50000/256; //重新装入初值
TL0=0-50000%256; while(!TF0); //等待T0溢出
TF0=0; //清除溢出标志位
i++; //软件计数加1 if(i==10) { led=~led; //P1.0取反输出
i=0; //软件计数器清0 } }}^voidmain(void)^205.3串行口CPU与外部设备的基本通信方式有两种:①并行通信,数据的各位同时进行传送。其特点是传送速度快、效率高,数据有多少位,就需要有多少根传输线。②串行通信,数据一位一位地按顺序进行传送。其特点是只需一对传输线就可实现通信,当传输的数据较多、距离较远时,它可以显著减少传输线,降低通信成本,但是串行传送的速度慢。5.3.1串行通信的基本概念串行通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。1.异步通信和同步通信串行通信有两种基本通信方式:异步通信和同步通信。(1)异步通信在异步通信中,数据通常以字符(或字节)为单位组成数据帧传送。^5.3串行口^21异步通信的字符帧格式
^异步通信的字符帧格式^22(2)同步通信在同步通信中,每个数据块传送开始时,采用一个或两个同步字符作为起始标志,数据在同步字符之后,个数不受限制,由所需传送的数据块长度确定。同步传送的数据格式
^(2)同步通信同步传送的数据格式^232.串行通信的制式在串行通信中,数据是在由通信线连接的两个工作站之间传送的。按照数据传送方向,串行通信可分为单工、半双工和全双工三种方式(1)单工制式只允许数据向一个方向传送,即一方只能发送,另一方只能接收。(2)半双工制式允许数据双向传送,但由于只有一根传输线,在同一时刻只能一方发送,另一方接收。(3)全双工制式允许数据同时双向传送,由于有两根传输线,在A站将数据发送到B站的同时,也允许B站将数据发送到A站。^2.串行通信的制式^24
3.波特率和发送/接收时钟(1)波特率串行通信的数据是按位进行传送的,每秒钟传送的二进制数码的位数称为波特率(也称比特数),单位是bps(bitpersecond),即位/秒。(2)发送/接收时钟二进制数据序列在串行传送过程中以数字信号波形的形式出现。无论发送或是接收,都必须有时钟信号对传送的数据进行定位。在发送数据时,发送器在发送时钟的下降沿将移位寄存器中的数据串行移位输出;在接收数据时,接收器在接收时钟的上升沿对数据位采样。^3.波特率和发送/接收时钟^25
4.奇偶校验当串行通信用于远距离传送时,容易受到噪声干扰。为保证通信质量,需要对传送的数据进行校验。对于异步通信,常用的校验方法是奇偶校验法。^4.奇偶校验^265.3.2MCS-51单片机串行口1.串行口结构串行口内部有两个物理上相互独立的数据缓冲器SBUF,一个用于发送数据,另一个用于接收数据。但发送缓冲器只能写入数据,不能读出数据;而接收缓冲器只能读出数据,不能写入数据,所以两个缓冲器共用一个地址(99H)。
串行口结构框图
^串行口结构框图^27发送数据时,执行一条将数据写入SBUF的传送指令(例如
MOVSBUF,A),即可将要发送的数据按事先设置的方式和波特率从引脚TXD串行输出。一个数据发送完毕后,串行口产生中断标志位,向CPU申请中断,请求发送下一个数据。接收数据时,当检测到RXD引脚上出现一帧数据的起始位后,便一位一位地将接下来的数据接收保存到SBUF中,然后产生中断标志位,向CPU申请中断,请求CPU接收这一数据,CPU响应中断后,执行一条读SBUF指令(例如
MOVA,SBUF)就可将接收到的数据送入某个寄存器或存储单元。为避免前后两帧数据重叠,接收器是双缓冲的。^发送数据时,执行一条将数据写入SBUF的传送指令(282.串行口控制(1)串行口控制寄存器SCONSCON是MCS-51的一个SFR,串行数据通信的方式选择、接收和发送控制以及串行口的状态标志都由专用寄存器SCON控制和指示。SCON用于控制串行口的工作方式,同时还包含要发送或接收到的第9位数据位以及串行口中断标志位。该寄存器的字节地址为98H。(2)电源控制寄存器PCONPCON中只有最高位SMOD与串行口工作有关,该位用于控制串行口工作于方式1、2、3时的波特率。当SMOD=1时,波特率加倍。PCON的字节地址为87H,没有位寻址功能。单片机复位时,SMOD=0。
^2.串行口控制^293.串行口的工作方式方式0主要用于扩展并行输入/输出口,方式1、方式2和方式3主要用于串行通信。(1)方式0该方式为同步移位寄存器输入/输出方式,常用于扩展并行I/O口。(2)方式1方式1为波特率可变的10位异步通信方式,由TXD端发送数据,RXD端接收数据。收发一帧数据的格式为1位起始位、8位数据位、一位停止位,共10位。(3)方式2和方式3这两种方式都是11位异步通信,操作方式完全一样,只有波特率不同,适用于多机通信。^3.串行口的工作方式^304.波特率设置(1)方式0的波特率在方式0下,串行口的波特率是固定的,即
波特率=fosc/12(2)方式2的波特率在方式2下,串行口的波特率可由PCON中的SMOD位控制:若使SMOD=0,则所选波特率为fosc/64;若使SMOD=1,则波特率为fosc/32。(3)方式1和方式3的波特率在这两种方式下,串行口波特率由定时器T1的溢出率和SMOD值同时决定。相应公式为:
波特率=2SMOD×T1溢出率/32^^315.3.3串行口应用
1.串行口方式0的应用串行口方式0为同步操作。外接串入—并出或并入—串出器件,可实现I/O的扩展。I/O口扩展有两种不同用途:一是利用串行口扩展并行输出口,此时需外接串行输入/并行输出的同步移位寄存器,如74LS164或CD4094;另一种是利用串行口扩展并行输入口,此时需外接并行输入/串行输出的同步移位寄存器,如74LS165/74HC165或CD4014。^5.3.3串行口应用^322.串行口在其他方式下的应用MCS-51单片机串行口工作在方式1、2、3时,都用于异步通信,它们之间的主要差别是字符帧格式和波特率不同。此时,单片机发送或接收数据可以采用查询方式或中断方式。3.双机通信双机通信也称为点对点的异步串行通信。当两个MCS-51系列单片机应用系统相距很近时,可将它们的串行口直接相连来实现双机通信,双机通信中通信双方处于平等地位,不需要相互之间识别地址,因此串行口工作方式1、2、3都可以实现双机之间的全双工异步串行通信。如果要保持通信的可靠性,还需要在收发数据前规定通信协议,包括对通信双方发送和接收信息的格式、差错校验与处理、波特率设置等事项的明确约定。
^2.串行口在其他方式下的应用^335.3.4常用串行通信总线标准及接口电路常用的标准异步串行通信接口有RS-232C、RS-422/485、USB通用接口等几类。1.RS-232C总线标准及接口电路(1)RS-232C总线标准RS-232C适用于短距离或带调制解调器的通信场合,设备之间的通信距离不大于15m时,可以用RS-232C电缆直接连接;对于距离大于15m以上的长距离通信,需要采用调制解调器才能实现。RS-232C传输速率最大为20Kbps。RS-232C标准总线为25条信号线,采用一个25脚的连接器,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学数学提问教学策略与案例分析
- 工程项目进展报告模板与范例
- 水处理厂操作运行规范流程
- 建筑物资管理考试试题及答案
- 国际贸易实务考试重要知识点
- 自闭症儿童个别化教育计划方案
- 国庆升旗仪式庆典流程及主持范文
- 一年级新生入学仪式教师发言稿
- 山东省诸城市桃林镇桃林2026届数学八年级第一学期期末达标检测试题含解析
- 建筑防雷接地专项施工方案
- 小内容趋势报告2025-碎片化时代下的品牌新叙事
- 扦插吊兰课件
- 2025年铁路线路工技能竞赛考试题库(含答案)
- 2025年事业单位统考《综合应用能力A类》真题和答案及解析
- 2025成人高考政治2024真题及答案
- 食品厂消防安全培训课件
- 2025年Adobe中国认证设计师考试设计规范试题及答案
- 《电子商务网站建设与维护(第二版)》课件-第5章 电子商务网站首页和购物车功能的实现
- 2025中国银行考试试题及答案
- 2025年金融科技行业全球市场发展趋势研究报告
- 人教版三年级上册语文配套练习与检测(参考答案)
评论
0/150
提交评论