第7章串行通信及其接口•7.1概述•7.2MCS-51的串行口•7.3串行口的控制7.1概述•串行通信是将数据的各位一位一位地依次传送。适合于计算机之间、计算机与外部设备之间的远距离通信。•串行通信从传输方式分为:单工方式(如图7-1所示)、半双工方式(如图7-2所示)、全双工方式(如图7-3所示)。•从接收方式来说,串行通信有两种方式:异步通信方式(如图7-4所示)、同步通信方式(如图7-5所示)。返回本章首页接收器图7-1单工方式发送器接收器接收器发送器发送器数据流图7-2半双工方式发送器接收器数据流接收器发送器图7-3全双工方式图7-4异步串行通信数据格式同步字符CRC字符开始终止数据块图7-5同步通信数据格式返回本节7.2MCS-51的串行口•7.2.1串行口的结构•7.2.2串行口的工作方式•7.2.3波特率的计算返回本章首页7.2.1串行口的结构1.串行口控制寄存器SCON•该寄存器的字节地址为98H,可位寻址。SCON格式如图7-6所示。SCON位地址SM0SM1SM2RENTB8RB8TIRI9F9E9D9C9B9A9998图7-6SCON格式D7D6D5D4D3D2D1D02.特殊功能寄存器PCON•其字节地址为87H,没有位寻址功能。PCON的格式如图7-7所示,其中与串行接口有关的只有D7位。PCONSMODD7D6D5D4D3D2D1D0图7-7PCON格式返回本节7.2.2串行口的工作方式表7-1串行口工作方式图7-8方式0发送时序1.方式0图7-9方式0接收时序2.方式1图7-10方式1发送时序图7-11方式1接收时序3.方式2图7-12方式2发送时序图7-13方式2的接收时序4.方式3•当SM0SM1=11时,串行口工作在方式3。方式3为波特率可变的9位异步通信方式,除了波特率外,方式3和方式2相同。•方式3的波特率由下式确定:方式3波特率=(2SMOD/32)×定时器T1的溢出率返回本节7.2.3波特率的计算表7-2波特率计算公式表7-3常用的波特率及计算器初值返回本节7.3串行口的控制•7.3.1主从机间的通信•7.3.2多机通信接口返回本章首页7.3.1主从机间的通信1.双机串行异步通信l单片机与单片机间的串行异步通信接口设计(如图7-14~7-16所示)l单片机与PC系列微机间的异步串行通信接口设计(如图7-17所示)图7-14两台8031直接通信图7-15两台8031采用RS232C总线通信图7-16两台8751互传数据图7-178031单片机和PC机通过RS232C总线通信接口图l单片机与RS232C接口(1)分离元件电平转换电路,如图7-19所示。(2)集成电路电平转换电路MC1488,1489•这两种芯片的引脚如图7-20所示。(3)集成电路电平转换器MC145407。•如图7-21所示。起始位D0D1D2D4D3D5D6D7X标志停止位检验位图7-18RS232C总线上传输的异步通信典型数据格式分类符号名称引脚说明地线机架保护地(屏蔽地)1信号地(公共地)7数据信号线TXD数据发送线2在无数据信息传输或收/发信息间隔期,RXD/TXD电平为1。辅助信道传输速率较主信道低。其余同RXD数据接收线3TXD辅助信道数据发送线14RXD辅助信道数据接收线16定时信号线DCE发送信号定时15指示被传输的每个bit信息的中心位置DCE接收信号定时17DTE发送信号定时24控制线RTS请求发送4DTE发给DCECTS允许发送5DCE发给DTEDSRDCE装置就绪6DTRDTE装置就绪20DTE发给DCEDCD接收信号(载波)检测8DTE收到满足标准的信号时置位振铃指示22由DCE收到振铃时置位信号质量检测21由DCE根据数据信息是否有错而置位/复位数据信号速率选择23指定两种传输速率中的一种RTS辅助信道请求发送19CTS辅助信道允许发送13RCD辅助信道接收检测12备用线9未定义,保留供DCE装置测试使用10111825表7-4RS232C信号线及其在DB-25的针脚号图7-19分离元件电平转换电路(a)MC1488(b)MC1489图7-20MC1488,MC1489引脚图7-21MC145407引脚(a)(b)图7-22终端/计算机与终端/计算机简化连接形式返回本节7.3.2多机通信接口1.多机通信原理•串行口控制寄存器SCON中的SM2为多机通信接口控制位。串行口以方式2或3接收时,若SM2为1,则仅当接收到的第9位数据RB8为1时,数据才装入SBUF,置位RI,请求CPU对数据进行处理;当SM2为0时,则接收到一个数据后,不管第9位数据RB8是0还是1,都将数据装入接收缓冲器SBUF并置位中断标志RI,请求CPU处理。2.多机通信程序设计lMCS-51多机通信程序设计以典型的PC机和MCS-51构成的主从式多机系统为例,如图7-23所示,阐述多机通信的程序设计。lPC机多机通信编程格式如表7-5所示其中WLS1,WLS0两位用于设置新发送或接收的字长,详见表7-6;奇偶校验允许位PEN及ESP、跟随校验位的组合见表7-7。l多机通信实例……图7-23PC机与MCS-51单片机多机通信Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0DLAB断线设定跟随检测EPSPENSTBWLS1WLS0表7-5LCR端口地址WLS1(bit1)WLS0(bit0)数据字长005位016位107位118位表7-6WLS1,WLS0两位设置的字长跟随校验位(bit5)EPS(bit4)PEN(bit3)校验位001奇校验011偶校验101校验值为“1”111校验值为“0”表7-7PEN及ESP跟随校验位的组合返回本节THANKYOUVERYMUCH!•本章到此结束,•谢谢您的光临!结束放映返回本章首页