[信息与通信]第7章串行口.ppt
《[信息与通信]第7章串行口.ppt》由会员分享,可在线阅读,更多相关《[信息与通信]第7章串行口.ppt(62页珍藏版)》请在三一办公上搜索。
1、1,第7章 AT89S51单片机的 串行口,1,2,2,第7章 目录7.1 串行口的结构 7.1.1 串行口控制寄存器SCON 7.1.2 特殊功能寄存器PCON7.2 串行口的4种工作方式 7.2.1 方式0 7.2.2 方式1 7.2.3 方式2 7.2.4 方式37.3 多机通信,3,7.4 波特率的制定方法 7.4.1 波特率的定义 7.4.2 定时器T1产生波特率的计算7.5 串行口的应用 7.5.1 双机串行通信的硬件连接 7.5.2 串行通信设计需要考虑的问题 7.5.3 双机串行通信软件编程 7.5.4 PC机与单片机的点对点串行通信接口设计 7.5.5 PC机与多个单片机的串
2、行通信接口设计,4,串行口的基本概念1)串行口为全双工的通用异步收发(UART)接口。2)全双工就是两个单片机之间串行数据可同时双 向传输。3)异步通信,就是收、发双方使用各自的时钟控 制发送和接收过程,这样可省去收、发双方的 一条同步时钟信号线,连接简单且易实现。思考题:若要发送数据55H.试比较并行发送、异 步串行发送和同步串行发送的区别。,5,图7-1 串行口的内部结构图,5,为串行口提供发送、接收的基准时钟信号,发送缓冲器只写,接收缓冲器只读,对串口实现集中控制:选择工作模式多机通信控制,7.1 串行口的结构,数据的拼装发送中断产生,数据的拆包串并转换接收使能接收中断产生,6,7.1.
3、1 串行口控制寄存器SCON字节地址98H,可位寻址,位地址为98H9FH。SCON的所有位都可进行位操作清“0”或置“1”。图7-2 串行口控制寄存器SCON的格式(1)SM0、SM1串行口4种工作方式选择位,6,7,(2)SM2多机通信控制位方式0:SM2必须为0。方式1:SM2=1,只有收到有效的停止位时才会激活RI;SM2=0,只要收到8位数据则激活RI;方式2及方式3:SM2=1 只接收地址帧,即接收到的第9位数据(RB8)为“1”时,才使RI置“1”,产生中 断请求,并将接收到的前8位数据送入 SBUF。对于数据帧(RB8=0)则直接丢弃。SM2=0 数据帧、地址帧均可接收,并产生
4、中断。,7,8,(3)REN允许串行接收位。由软件置“1”或清“0”。REN=1,允许串行口接收数据。REN=0,禁止串行口接收数据。,8,(4)TB8发送的第9位数据 方式0、方式1:不使用 方式2、方式3:TB8是要发送的第9位数据,其值由软件 置“1”或清“0”。在双机串行通信时,一般作为奇偶校验位 使用;在多机串行通信中用来表示主机发送的 是地址帧还是数据帧,TB8=1为地址帧,TB8=0为数据帧。,9,(5)RB8接收的第9位数据 方式0:不用;方式1:存接收到的停止位;方式2和方式3:RB8存放接收到的第9位数据。(6)TI发送中断标志位,9,TI=1,表示一帧数据发送结束。TI必
5、须由软件清“0”。,RI接收中断标志位 RI=1,表示一帧数据接收完毕。RI必须由软件清“0”。方式0:接收完第8位数据时,RI由硬件置“1”。其他工作方式:串行接收到停止位时,该位置“1”。,方式0:串行发送的第8位数据结束时TI由硬件置“1”;其他方式:串行口发送停止位开始时置TI 为“1”。,10,7.1.2 特殊功能寄存器PCON字节地址为87H,不能位寻址。格式如图7-3所示。,10,图7-3 特殊功能寄存器PCON的格式,11,SMOD:波特率选择位。例如:方式1的波特率计算公式为方式1波特率=定时器T1的溢出率当SMOD=1时,要比SMOD=0时的波特率加倍,所以也称SMOD位为
6、波特率倍增位。,11,12,7.2 串行口的4种工作方式7.2.1 方式0方式0:同步移位寄存器输入/输出方式。用途:该方式并不用于两个AT89S51单片机之间的异步串 行通信,而是用于串行口外接移位寄存器,扩展并 行I/O口。数据帧格式:8位数据为一帧,无起始位和停止位,先发送 或接收最低位。速率:波特率固定,为fosc/12。图7-4 方式0的帧格式,12,13,1方式0发送(1)方式0发送过程,13,CPU执行一条将数据写入发送缓冲器SBUF的指令,产生一个正脉冲,触发串行数据的发送(fosc/12的固定波特率)(低位在前)(RXD输出数据)(TXD输出同步移位脉冲),8位数据发送完成,
7、TI置1,14,14,图7-5 方式0发送时序,15,图7-6 外接串入并出移位寄存器74LS164扩展的并行输出口 即串到并的转换,15,2,1,1,1,2,3,1,2,3,4,5,6,7,(2)方式0发送应用举例,8,16,2方式0接收(1)方式0接收过程,16,向SCON寄存器写入控制字(方式0,REN=1,RI=0),产生一个正脉冲,触发串行口开始接收数据(fosc/12的固定波特率采样)(低位在前)(RXD为数据输入端)(TXD输出同步移位脉冲),8位数据接收完成,RI置1,17,图7-7 方式0接收时序,18,(2)方式0接收应用举例图7-8为串行口外接两片8位并行输入串行输出的寄
8、存器74LS165扩展两个8位并行输入口的电路。当74LS165的S/端由高到低跳变时,并行输入端的数据被置入寄存器;当S/=1,且时钟禁止端(第15脚)为低电平时,允许TXD(P3.1)串行移位脉冲输入,这时在移位脉冲作用下,数据由右向左方向移动,以串行方式进入串行口的接收缓冲器中。,18,19,19,图7-8 扩展74LS165作为并行输入口,1 0 1 0 1 0 1 0,1 0 1 0 1 0 1 0,1 0 1 0 1 0 1 0,1 0 1 0 1 0 1 0,时钟禁止端:0,上升沿,串行输出端,串行输入端,20,7.2.2 方式1方式1为双机串行通信方式,如图7-9所示。当SM0
9、、SM1=01时,串行口设为方式1的双机串行通信。TXD脚和RXD脚分别用于发送和接收数据。图7-9 方式1双机串行通信的连接电路,20,21,数据帧格式:一帧数据为10位,1个起始位(0),8个 数据位,1个停止位(1),先发送或接收 最低位。图7-10 方式1的帧格式速率:波特率可变。波特率由下式确定:方式1波特率=定时器T1的溢出率 式中,SMOD为PCON寄存器的最高位的值(0或1)。,21,22,图7-11 方式1发送时序,22,1方式1发送时序 发送过程的开始是由CPU执行一条写SBUF的指令启动的。,内部信号,TI在发送停止位开始时置1,注意:1)TX时钟的频率就是发送的波特率。
10、2)发送开始时,内部发送控制信号SEND 变为有效,将起始位向TXD脚(P3.0)输出,此后每经过一 个TX时钟周期,便产生一个移位脉冲,并由TXD 引脚输出一个数据位。,23,图7-12 方式1接收时序,23,接收开始:当检测到起始位的负跳变,则开始接收。接收定时信号:接收移位时钟(RX时钟):完成串口内部的移位寄存 器的移位,完成串并转换。位检测器采样脉冲:采样RXD,确定串行位的数值。,2方式1接收,24,位检测器采样的原理:1)采样频率:频率是RX时钟的16倍,即以波特率的16倍速 率采样RXD 脚状态。2)起始位的采样和确定:当采样到RXD端从1到0的负跳变时就启动检测器。接收的值是
11、3次连续采样(第7、8、9个脉冲时采样)取两 次相同的值,以确认起始位(负跳变)的开始,较好地消 除干扰引起的影响。3)数据位的采样和确定:每一位数据,也都进行3次连续采样(第7、8、9个脉冲 采样),接收的值是3次采样中至少两次相同的值。,25,一帧数据接收后,确认接收有效的条件:(1)RI=0,即上一帧数据接收完成时,RI=1发出的中 断请求已被响应,SBUF中的数据已被取走,说明“接收SBUF”已空。(2)SM2=0或SM2=1且收到的停止位=1(方式1时)满足上述两个条件,则将接收到的数据装入SBUF 和RB8(装入的是停止位),且中断标志RI置“1”。若不同时满足两个条件,收的数据不
12、能装入SBUF,该帧数据将丢弃。,25,26,7.2.3 方式2方式2:为9位异步通信接口。数据格式:每帧数据为11位,1位起始位0,8位数据位(先低位),1位可程控为1或0的第9位数据 和1位停止位。图7-13 方式2、方式3的帧格式方式2波特率=fosc,26,发送帧:该位来自TB8接收帧:该位存RB8,27,1方式2发送1)先根据通信协议由软件设置TB8(如奇偶校验位或多机通 信的地址/数据标志位);2)然后将要发送的数据写入SBUF,即启动发送。TB8自动 装入第9位数据位,逐一发送。3)发送完毕,使TI位置“1”。图7-14 方式2和方式3发送时序,27,28,【例7-1】方式2发送
13、在双机串行通信中的应用 双机通讯,以TB8作为奇偶校验位,偶校验发送。数据写入SBUF之前,先将数据的偶校验位写入TB8 第2组的工作寄存器区的R0作为发送数据区地址指针。PIPTI:PUSHPSW;现场保护 PUSHAcc SETBRS1;选择第2组 CLRRS0;工作寄存器区 CLRTI;发送中断标志清“0”MOVA,R0;取数据 MOVC,P;校验位送TB8,采用偶校验 MOVTB8,C;P=1,校验位TB8=1,;P=0,校验位TB8=0,28,29,MOV SBUF,A;A数据发送,同时发TB8 INC R0;数据指针加1 POP Acc;恢复现场 POP PSW RETI;中断返回
14、2方式2接收SM0、SM1=10,且REN=1时,以方式2接收数据。1)数据由RXD端输入,接收11位信息。2)当位检测逻辑采样到RXD的负跳变,判断起始位有效,便开始接收一帧信息。3)在接收完第9位数据后,需满足以下两个条件,才能将接 收到的数据送入SBUF(接收缓冲器):,29,30,(1)RI=0,意味着接收缓冲器为空。(2)SM2=0或SM2=1且接收到的第9位数据位RB8=1。,当满足上述两个条件时,收到的数据送SBUF(接收缓冲器),第9位数据送入RB8,且RI置“1”。若不满足这两个条件,接收的信息将被丢弃。,图7-15 方式2和方式3接收时序,31,【例7-2】方式2接收在双机
15、通信中的应用。双机通信发送的数据进行偶校验接收 1组寄存器区的R0为数据缓冲区指针)。PIRI:PUSHPSW;保护现场PUSHAccSETBRS0;选择1组CLRRS1;寄存器区CLRRI;清除中断接收标志 MOVA,SBUF;将接收到数据送到累加器A,31,32,JNCL1;C=0,收的字节1的个数为偶数跳L1处JNBRB8,ERP;C=1(前提),如RB8=0,;则出错,跳ERP出错处理AJMPL2 L1:JBRB8,ERP;C=0(前提),再判RB8=1;则出错,跳ERP出错处理 L2:MOVR0,A;C=0,RB8=0或C=1,RB8=1,;接收数据正确,存入数据缓冲区INC R0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息与通信 信息与通信第7章 串行口 信息 通信

链接地址:https://www.31ppt.com/p-5615517.html