7章51单片机串行口概要

上传人:今*** 文档编号:107205245 上传时间:2019-10-18 格式:PPT 页数:49 大小:493.50KB
返回 下载 相关 举报
7章51单片机串行口概要_第1页
第1页 / 共49页
7章51单片机串行口概要_第2页
第2页 / 共49页
7章51单片机串行口概要_第3页
第3页 / 共49页
7章51单片机串行口概要_第4页
第4页 / 共49页
7章51单片机串行口概要_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《7章51单片机串行口概要》由会员分享,可在线阅读,更多相关《7章51单片机串行口概要(49页珍藏版)》请在金锄头文库上搜索。

1、1,微型计算机原理及接口技术,授课专业:自动化 授课学时: 60学时,2,3,4,通信的两种基本方式 串行通信的分类 波特率的概念 串行通信的制式,5,通信:是计算机与外界的信息交换。 两种基本方式 并行通信:所传送数据的各位同时发送或接收,信息传输线的位数与数据的位数相等。 串行通信:所传送数据的各位按顺序一位一位地发送或接收,先传送低位后送高位。,6,速度快,适合近距离传输;但占用数据线多,线路复杂,成本高。,线路简单,成本低,适合远距离通信;但传输速度慢。,7,按照串行数据的时钟控制方式,串行通信可分为: 异步通信 同步通信,异步通信: 接收器和发射器有各自的时钟,它们的工作非同步; 异

2、步通信用一帧来表示一个字符。,8,一帧信息包括起始位、数据位、奇偶校验位和停止 位四部分。,9,同步通信: 接收器和发射器由同一时钟源控制; 同步传输方式去掉了异步传输的起始位和停止位,只在传输数据块时先送出一个同步标志即可。 比较: 同步传输方式比异步传输方式速度快; 同步传输方式必须用一个时钟来协调收发器的工作,所以它的硬件设备复杂。,10,波特率:每秒钟所传送的二进制数码的位数。 单位:位/秒(bps) 波特率反映了串行通信的速率。 在异步串行通信中,波特率为每秒传送的字符数和每个字符的位数的乘积。,11,例7-1:数据传送的速率为120字符/秒,而每个字符又 包含10位二进制数,计算波

3、特率大小和每位传送时间。 解: 波特率=120字符/秒10位/字符 =1200位/秒=1200bps。 每一位的传送时间为波特率的倒数: T=1/12000.833ms。,12,在串行通信中,根据数据在两个站点之间的传送 方向可以分三种制式: 单工 半双工 全双工,13,单工制式,半双工制式,数据可以双向传送,但不能同时发送和接收,要通过换向器转换方向。,14,全双工制式,通信双方用两个独立的收发器单独连接,可以同时发送和接收数据,因而提高了速度。,15,1、MSC-51串行口特点: 功能很强的全双工串行口,可同时接收和发送数据; 接收、发送数据均可工作在查询方式或中断方式; 能方便地与其他计

4、算机或外设实现双机、多机通信。,16,17,2、串行口数据缓冲器SBUF SBUF是两个物理上独立的接收、发送寄存器。 接收SBUF 用于存放接收到的数据,只能读出、不能写入。 发送SBUF 用于存放欲发送的数据,只能写入,不能读出。,18,注意: 串行口可同时发送和接收数据,两个缓冲器公用一个地址99H,通过对SBUF的读/写指令来区别: CPU读SBUF时: MOV A, SBUF ;就是读取接收SBUF的内容; CPU写SBUF时: MOV SBUF, A ;就是修改发送SBUF的内容,同时启动数据串行发送。,19,3、串行口的控制寄存器 MCS-51串行口是一个可编程接口,涉及两个特

5、殊功能寄存器: 串行口控制寄存器SCON 电源控制寄存器PCON,20,SCON(98H,可位寻址) 功能:串行通信的方式选择 ,接受和发送控制及串行口的中断标志; 格式:,21,SM0、SM1: 串行口工作方式控制位。,SM2:多机通信控制位。用于方式2或方式3中。,22,当串行口以方式2或方式3接收时, 如果SM2=1,只有当接收到的第9位数据(RB8)为“1”时,才将接收到的前8位数据送入SBUF,并置“1” RI,产生中断请求;当接收到的第9位数据(RB8)为“0”时,则将接收到的前8位数据丢弃。 如果SM2=0,则不论第9位数据是“1”还是“0”,都将前8位数据送入SBUF中,并置“

6、1” RI,产生中断请求。 方式1时,如果SM2=1,则只有收到停止位时才会激活RI。 方式0时,SM2必须为0。,23,REN:串行接收允许位。 0-禁止接收, 1-允许接收 TB8: 发送数据D8位,一般作为奇偶校验位。 在方式2、3中,可以在多机通信中作为区分地址帧或数据帧的标志位,1为地址,0为数据。,RB8: 接收数据D8位,一般作为奇偶校验位。 在方式2、3中,多机通信中还可根据RB8位的状态对接收数据进行某种控制。,24,TI: 发送中断标志位。 发送前必须用软件清零,发送过程中TI保持零 电平; 发送完一帧数据后,由硬件自动置 “1”。 RI: 接收中断标志位。 接收前必须用软

7、件清零,接收过程中RI保持零 电平; 接收完一帧数据后由片内硬件自动置“1”。,25,SM2: 多机通信控制位,仅用于方式2和方式3,此时, 主机设置SM2=1,以发送第九位TB8为1作为地址帧寻找从机,以TB8为0作为数据帧进行通信。 从机初始化时设置SM2=1,若接收到的第九位数据RB8=0,不置位RI,即不引起接收中断,亦既不接收数据帧,继续监听,如接收到的RB8=1,置位RI,引起接收中断,中断程序中判断所接收的地址帧和本机的地址是否匹配。若不匹配,维持SM2=1,继续监听,若符合,则清SM20,以便接收TB8=0的数据帧。,26,主/从多机通信的过程如下: 1、使所有的从机的SM2=

8、1,以便接收主机发来的地址。 2、主机发出一帧地址信息,其中包括8位需要与之通信的从机地址,第9位为1。 3、所有从机接收到地址帧后,各自将接收到的地址与本机地址相比较,对于地址相同的从机,使SM2位清0以接收主机随后发来的数据信息,对于地址不符合的从机,仍保持SM2=1的状态,对主机随后发来的数据不予理睬,直至发送新的地址帧。 4、主机给已被寻址的从机发送控制指令和数据(数据帧的第9位为0)。 5、确认数据传送结束后,从机把SM2重新置1,恢复初始状态。,27,PCON(97H,不可位寻址),SMOD : 波特率加倍位。 在计算串行方式 1、 2、 3 的波特率时, SMOD0波特率不增倍;

9、 SMOD1波特率增大一倍。,28,29,MCS-51单片机的串行通信有四种工作方式: 1、工作方式0:移位寄存器方式 SM0、SM1=00,同步通信; 数据格式为8位,低位在前,高位在后; RXD为串行数据的发送端或接收端; TXD输出同步脉冲; 每一个机器周期从RXD上发送或接收一位数据,波特率固定。,30,应用:移位寄位器方式多用于接口的扩展。,输出方式 输入方式,通过外接串入并出移位 寄存器扩展输出接口。,通过外接并入串出移位寄存器扩展输入接口。,31,2、工作方式1:8位异步通信接口方式 SM0、SM1=01; RXD为接收端,TXD为发送端; 每帧数据由10位构成:1个起始位 “0

10、”,8个数据位和1个停止位“1”;其中起始位和停止位在发送时是自动插入的; 波特率可变,由T1的溢出率和SMOD决定。,32,3、工作方式2/3:9位异步通信接口方式 SM0、SM1=10/11; RXD为接收端,TXD为发送端; 每帧数据由11位构成:1个起始位 “0”,9个数据位和1个停止位“1”;其中起始位和停止位在发送时是自动插入的; 方式2的波特率固定,方式3的波特率可变。,33,波特率发生器可以有两种选择: 定时器T1作波特率发生器,改变计数初值就可以改变串行通信的速率,称为可变波特率; 以内部时钟的分频器作波特率发生器,因内部时钟频率一定,称为固定波特率。,34,1、方式0和方式

11、2:波特率固定 方式0中,波特率为:fosc/12; 方式2中,波特率为: 注意: 当SMOD=0时,波特率是fosc/64; 当SMOD=1时,波特率是fosc/32。,35,2、方式1和方式3:波特率可变 注意: T1的溢出率为每秒溢出的次数,取决于T1的计数速率和设置的初值。 实际应用中,T1作为波特率发生器时,常用方式2,即自动重载的8位定时器。TL1做计数用,TH1做初值寄存器。,36,设初值为x则每过(28-x)个机器周期,定时器溢出一次。 溢出周期为:(28-x)Tcy=(256-x) 12/fosc 溢出率是溢出周期的倒数: T1溢出率=fosc/(12 (256-x) ) 根

12、据给定的波特率,可以计算T1的计数初值x。,37,常用波特率一览表,38,例7-2:设51单片机串行口工作于方式1,晶振频率为 12MHz,定时器T1工作于模式2作为波特率发生器, 要求波特率为1200bit/s,SMOD=0,试计算T1的初 值和波特率误差。 答案: T1初值: x=2562SMODfosc/(3212波特率)=25626.04 =230=E6H 实际波特率= 2SMODfosc/(3212(256230) =1201.9b/s=1202bps 误差:2bps,39,一、填空题 1、波特率是指: 。 2、串行通信要求互相通信的两机必须保持 波特率。 3、串行通信按照数据传送方

13、向可分为: 、 、 3种制式。 4、多机通信时,主机向从机发送的信息分为地址信息和数据 信息,靠第9位可编程TB8标志来区分,当设置TB81时,表 示将要发出的信息是 ;当设置TB80时,表示将要发 出的信息是 。 5、多机通信开始时,一般都先由主机发送地址,各从机将收 到的地址与本机地址比较,如果相同,则设置 准备接 收数据。,习 题,40,6、从机为了只接收主机发送的地址帧,而对数据帧不予理 睬,则应置 。 二、选择: 1、串行通信特点为(),并行通信特点为() A、传送距离长,传送速度相对快; B、传送距离短,传送速度相对快; C、传送距离长,传送速度相对慢; D、传送距离短,传送速度相

14、对慢;,41,2、串口工作模式中模式0具有()()()属性; 模式1具有()()()属性; 模式2具有()()()属性; 模式3具有()()()属性。 A、异步通信方式; B、同步通信方式; C、帧格式10位; D、帧格式11位; E、帧格式8位; F、帧格式9位 G、波特率固定为fosc/12; H、波特率为fosc/n (n64或32) I、波特率为T1溢出率/n(n32或16) 三、简答: 1、串行通信按照数据传送方向有哪几种方式? 2、解释波特率的含义,串行通信对波特率有什么基本要求? 3、什么叫多机通信?与双机通信有什么区别?,42,4、简述多机通信原理及通信过程? 四、判断对错 1

15、、串行通信数据中,一个字节的比特位发出的顺序是:高 位在前,低位在后。( ) 2、51系列单片机异步串行通信数据的起始位可以是高电平。 () 3、51系列单片机异步串行通信的发送方连续发送数据时可 以不查询TI位状态。( ) 4、51系列单片机异步串行通信的接收方连续接收数据时可 以不查询RI位状态。( ),43,五、计算 1、设8031单片机串行口工作于方式1,晶振频率为12MHz,定时器T1工作于模式2作为波特率发生器,要求波特率为1200b/s,SMOD0,试计算T1的时间常数和波特率误差。 2、51系列单片机的串行口工作在模式3,晶振11.0592MHz,要求波特率选择2400b/s,

16、确定定时器T1的初值及专用寄存器PCON中SMOD的状态。,44,一、填空题 1、波特率是指:每秒传输的数据位数。 2、串行通信要求互相通信的两机必须保持相同的波特率。 3、串行通信按照数据传送方向可分为:单工、半双工、全双工3种制式。 4、多机通信时,主机向从机发送的信息分为地址信息和数据信息,靠第9位可编程TB8标志来区分,当设置TB81时,表示将要发出的信息是 地址 ;当设置TB80时,表示将要发出的信息是 数据 。 5、多机通信开始时,一般都先由主机发送地址,各从机将收到的地址与本机地址比较,如果相同,则设置 SM20,准备接收数据。,答 案,45,6、从机为了只接收主机发送的地址帧,而对数据帧不予理睬,则应置SM21。 二

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号