单片机第6章MCS51单片机的串行口.ppt
《单片机第6章MCS51单片机的串行口.ppt》由会员分享,可在线阅读,更多相关《单片机第6章MCS51单片机的串行口.ppt(63页珍藏版)》请在课桌文档上搜索。
1、第六章 MCS-51单片机的串行口,内容提要:,6.1 计算机串行通信基础,6.2 MCS-51单片机的串行口,6.3 单片机串行口应用举例,6.1 计算机串行通信基础,6.1.1 基本概念6.1.2 串行通信的标准接口,6.1.1 基本概念,一、串行通信方式 什么叫串行通信?,在生活中同学们排横队行走 并行;排纵队行走 串行。计算机中在传输信息、数据时也有并行、串行的问题。,1、异步通讯方式,以字符为传送单位用起始位和停止位标识每个字符的 开始和结束字符间隔不固定,只需字符传送时同步。异步通讯常用格式:一个字符帧,异步 发送时钟与接收时钟不一定相等。,2、同步通讯,以一串字符为一个传送单位,
2、字符间不加标识位,在一串字符开始用同步字符标识,硬件要求高,通讯双方须严格同步。,接收设备,发送设备,同步发送设备时钟与接收设备时钟严格一致。,单工,A 发,B 收,半双工,A 发 收,B 收 发,例如:广播电台 收音机,例如:对讲机,二、数据传送模式,单工,单工通讯:数据单向传送。,半双工通讯:数据可分时双向传送。,全双工,A 发 收,B 收 发,例如:电话机,全双工通讯:可同时进行发送和接收。,三、信号的调制于解调,调制器:数字信号转换成模拟信号解调器:模拟信号转换成数字信号,四、串行通信的校验,奇偶校验和校验循环冗余码校验,五、传输速率与传输距离,1、波特率即串行通信速率。b/s、bps
3、 在异步通信中,单位时间内所传送的有效二进制位数波特率。举例、设有一帧信息,1个起始位、8个数据位、1个停止位,传输速率为每秒240个字符。求波特率。解:(181)240=2400 b/s=2400波特。2、传输距离与传输速率的关系:反比关系,6.1.2 串行通信的标准接口,一、RS-232C接口电气特性机械特性功能特性过程特性二、RS-422A接口三、RS-485接口四、20mA电流环接口,6.2.1 MCS-51串行口的结构6.2.2 MCS-51串行口的控制寄存器6.2.3 MCS-51串行口的工作方式,6.2 MCS-51单片机的串行口,6.2.1 MCS-51串行口的结构,单片机内有
4、通用异步接收/发送器 UART。全双工,4种工作方式,波特率可编程设置,可中断,1个全双工串行接口,可同时进行发送和接收。串行接口输入/输出引脚:TXD(P3.1)、RXD(P3.0)数据格式(P.237图):按不同方式,一帧位数 8/10/11 发送/接收时,数据皆低位在前。,一帧字符发送/接收结束,置位标志位(TI/RI)并申请SIO中断。中断控制:中断允许位ES 中断入口:0023H,串行通信接口,发送:,CPU,发送寄存器SBUF,发送时钟:,SBUF 串行发送/接收数据缓冲器 是两个物理单元,共用一个地址(99H),接收:,CPU,接收时钟,接收数据寄存器SBUF,2、PCON 电源
5、管理寄存器,6.2.2 MCS-51串行口的控制寄存器,1、数据缓冲器SBUF发送SBUF和接收SBUF共用一个地址99H。(1)发送SBUF存放待发送的8位数据,写入SBUF将同时启动发送。发送指令:MOVSBUF,A(2)接收SBUF存放已接收成功的8位数据,供CPU读取。读取串行口接收数据指令:MOV A,SBUF,3、串行口控制/状态寄存器SCON(98H),SM0,SM1:选择串行口4种工作方式。SM2:多机控制位,用于多机通讯。REN:允许接收控制位,REN=1,允许接收;REN=0,禁止接 收。TB8:发送的第9位数据位,可用作校验位和地址/数据标识位RB8:接收的第9位数据位或
6、停止位TI:发送中断标志,发送一帧结束,TI=1,必须软件清零RI:接收中断标志,接收一帧结束,RI=1,必须软件清零,串行口的工作方式,表7-1 串行口工作方式,6.2.3 MCS-51串行口的工作方式,一、方式0二、方式1三、方式2和方式3四、波特率的计算,同步移位寄存器方式 波特率固定为fosc/12 RXD 接收发送数据 TXD 产生同步移位脉冲 接收/发送完,置位RI/TI,(要求SM2=0),发送,接收,无起始位,无停止位。可用于并口的扩展。,一、方式0,1.一帧8位,无起始位和停止位。2.RXD:数据输入/输出端。TXD:同步脉冲输出端,每个脉冲对应一个数据位。3.波特率B=fo
7、sc/12 如:fosc=12MHz,B=1MHz,每位数据占1s。,4.发送过程:写入SBUF,启动发送,一帧发送结束,TI=1。接收过程:REN=1且RI=0,启动接收,一帧接收完毕,RI=1。,5.移位寄存器方式举例,数据从RXD(P3.0)引脚串行输出,低位在先,高位在后;TXD(P3.1)引脚输出移位脉冲,其频率为foc/12;发送完毕后,中断标志位TI为1。如要发送数据,如下所示:MOV SCON,#00H;串行口方式0 MOV SBUF,A;将数据送出 JNB TI,$;等待数据发送完毕,8位UART 波特率为(2SMODT1的溢出率)/32,可变。一帧信息10位。,发送,接收,
8、送 RB8,发送完置位TI。,当接收到数据后,置位RI是有条件的。即:REN=1,RI=0 且SM2=0或SM2=1但是接收到的停止位为1。此时,数据装载SBUF,RI置1,停止位进入RB8。,二、方式1,8位数据异步通讯方式。1.一帧10位:8位数据位,1个起始位(0),1个停止位(1)。2.RXD:接收数据端。TXD:发送数据端。3.波特率:用T1作为波特率发生器,B=(2SMOD/32)T1溢出率。4.发送:写入SBUF,同时启动发送,一帧发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且停止位为1(或SM2=0),将接收数据装入SBUF,停止位装入RB8,并使RI
9、=1;否则丢弃接收数据,不置位RI。,当REN=1,CPU开始采样RXD引脚负跳变信号,若出现负跳变,才进入数据接收状态,先检测起始位,若第一位为0,继续接收其余位;否则,停止接收,重新采样负跳变。数据采样速率为波特率16倍频,在数据位中间,用第7、8、9个脉冲采样3次数据位,并3中取2保留采样值。,9位UART一般用于多机通信。一帧信息11位。,发送,发送完数据置位TI。,接收,接收到有效数据完毕,置位RI的条件:REN=1,RI=0 且SM2=0或接收到第9位数据为1,此时,数据装载SBUF,RI置1,第9位数据(TB8)RB8。,送RB8,三、方式2和方式3,9位数据异步通讯方式。1.一
10、帧为11位:9位数据位,1个起始位(0),1个停止位(1)。第9位数据位在TB8/RB8中,常用作校验位和多机通讯标识位。2.RXD:接收数据端,TXD:发送数据端。3.波特率:方式2:B=(2SMOD/64)fosc。方式3:B=(2SMOD/32)T1溢出率。,4.发送:先装入TB8,写入SBUF并启动发送,发送结束,TI=1。接收:REN=1,允许接收。接收完一帧,若RI=0且第9位 为1(或SM2=0),将接收数据装入接收SBUF,第9 位装入RB8,使RI=1;否则丢弃接收数据,不置 位RI。,方式0、方式2固定。方式0为固定波特率:B=fosc/12方式2波特率:(固定)2SMOD
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 MCS51 串行口
链接地址:https://www.desk33.com/p-246732.html