单片机串行通信1.ppt
文本预览下载声明
第五章 串行口及多机通信 计算机间的通信大多通过串行通信实现 第五章 串行口及多机通信 串行通信是一种能把二进制数据按位传送的通信,所需传输线路少,特别适合分级、分层和分布式控制系统及远程通讯之中。 MSC-51单片机内部有一个串行口,属P3口的第二功能。 5章1节 串行通信基础 一、串行通信的分类 按照串行数据的同步方式,串行通信可以分为同步通信和异步通信。 A、异步通信是利用字符的再同步技术的通信方式。 B、同步通信按照软件识别同步字符来实现数据发送和接收的。 5章1节 串行通信基础 1、异步通信 在异步通信中,数据通常是以字符(或字节)为单位组成字符帧传送。字符帧由发送端一帧一帧地发送,通过传输线接收端一帧一帧地接收。对两端单片机的频率同步要求不高。 5章1节 串行通信基础 异步通信中字符帧的格式和波特率是两个重要的指标。 (1)字符帧(character frame) 字符帧也叫数据帧,由起始位、数据位、奇偶校验位和停止位等四部分组成。 起始位:位于字符帧开头,占一位,为低电平。表示发送端开始发送信息。 5章1节 串行通信基础 数据位:紧跟起始位之后,用户根据情况可取5到8位,低位先发出,高位后发出。传送ASCII字符常取7位。 奇偶校验位:位于数据位后,用于校验接收到的该帧数据的正确性。 停止位:位于数据位后,为逻辑“1”,高电平,通常可取1到2位。 5章1节 串行通信基础 异步通信的字帧格式 5章1节 串行通信基础 (2)波特率(baud rate) 定义:波特率是每秒传送二进制数码的位数。(bps 即 bit/s) 一般说的传输速率指波特率,它比传输字节速率高8到10倍。 2、同步通信 同步通信是一种连续串行传送数据的通信方式。一帧信息通常含有若干个数据字符。 5章1节 串行通信基础 同步通信中的字符帧的结构 5章1节 串行通信基础 同步通信要求发送时钟和接收时钟保持严格同步。 二、串行通信的制式 1、半双工 任一时刻,只能向1个方向传送数据。 2、全双工 两端能同时发送和接收数据。 5章2节 MCS-51的串行接口 一、串行口的结构 MCS-51的串行口由:串行口控制寄存器SCON、发送和接收电路等三部分组成。 1、发送和接收电路 串行口的发送电路由“串行数据缓冲器SBUF(发送)”、 “零检测器”和“发送控制器”等电路组成。 5章2节 MCS-51的串行接口 串行口的接收电路由“SBUF(接收)”、 “接收移位寄存器”和“接收控制器”等电路组成。 MOV SBUF, A 指令产生写“SBUF”脉冲,以便把累加器A中的数据送入SBUF(发送)寄存器。 MOV A , SBUF 指令产生读“SBUF”脉冲,把“SBUF(接收)”中接收到的字符传送到累加器A。 5章2节 MCS-51的串行接口 串行口的发送过程: MOV SBUF , A 累加器A中欲发送字符送到SBUF(发送)寄存器,发送控制器在发送时钟TxC作用下自动再发送字符前后添加起始位、停止位和其他控制位,然后在SHIFT(移位)脉冲控制下一位一位地从TxD数据线上串行发送字符。 5章2节 MCS-51的串行接口 串行口的接收过程: MOV A, SBUF 串行口的接收过程基于采样脉冲对RxD线的监视,(采样脉冲的频率是波特率的16倍,即一个字位采样16个点),当连续采样到8个低电平(0)时,便认为RxD线上出现了起始位。此后接收控制器就从下一个数据位开始该为对7、8、9三个脉冲对RxD线 5章2节 MCS-51的串行接口 采样,并遵守3中取2的原则,来决定所检测的值是0还是1,从而提高传输的可靠性。接收电路连续接收到一帧字符后,自动去掉起始位并使RI=1,并向CPU提出中断请求。CPU响应中断可以通过MOV A ,SBUF 指令把接收到的字符送入累加器A。 5章2节 MCS-51的串行接口 串行口接收数据过程 5章2节 MCS-51的串行接口 2、串行口控制寄存器 SCON和PCON MCS-51对串行口的控制是通过串行口控制寄存器SCON实现的,其工作波特率还和电源控制寄存器PCON的SMOD位有关。 5章2节 MCS-51的串行接口 (1)SCON中各位含义 5章2节 MCS-51的串行接口 串行口的工作方式 5章2节 MCS-51的串行接口 (2)PCON各位的含义 PCON的最高位,SMOD与串行通信有关,SMOD=1则,串行口工作在方式1、2、3时,波特率加倍。 PCON的其他位用于电源控制。 SCON可以按位寻址,PCON只能按字节寻址。 5章2节 MCS-51的串行接口 二、串行口的工作方式 1、方式0 在方式0下,串行
显示全部