第7章串行通信及其接口•概述•89S51的串行口•串行口的控制7.1概述•并行通信数据的各位同时传送•串行通信数据的各位一位一位地依次传送。适合于计算机之间、计算机与外部设备之间的远距离通信。•串行传输方式:单工方式(如图7-1所示)、半双工方式(如图7-2所示)、全双工方式(如图7-3所示)。•串行接收方式:异步通信方式(如图7-4所示)、同步通信方式(如图7-5所示)。返回本章首页•波特率串行通信的数据传输速率bps(b/s)接收器图7-1单工方式发送器接收器接收器发送器发送器数据流图7-2半双工方式发送器接收器数据流接收器发送器图7-3全双工方式7.289S51的串行口•7.2.1串行口的结构•7.2.2串行口的工作方式•7.2.3波特率的计算返回本章首页串行口寄存器结构7.2.1串行口的结构1.串行口控制寄存器SCON•该寄存器的字节地址为98H,可位寻址。SCON格式如图7-6所示。SCON位地址SM0SM1SM2RENTB8RB8TIRI9F9E9D9C9B9A9998图7-6SCON格式D7D6D5D4D3D2D1D0REN=1:允许接收;=0:禁止接收TI发送中断标志位。发送完一帧数据硬件置1,软件清0RI接收中断标志位。接收完一帧数据硬件置1,软件清0SM2多机通信(方式2、3)控制位。=1:允许TB8方式2、3要发送的第9位RB8方式2、3接收的第9位1011112.特殊功能寄存器PCON•其字节地址为87H,没有位寻址功能。PCON的格式如图7-7所示,其中与串行接口有关的只有D7位。PCONSMODD7D6D5D4D3D2D1D0图7-7PCON格式返回本节•数据缓冲寄存器SBUF存发送或接收的数据•中断允许寄存器IE其中的ES=1:允许串行口中断•中断优先级别寄存器IP其中的PS=1:串行口为高优先级中断7.2.2串行口的工作方式表7-1串行口工作方式7.2.4波特率的设置方式0每个机器周期发送/接收1位方式2波特率=(2SMOD/64)×fOSC方式1、3波特率=(2SMOD/32)×T1溢出率T1溢出率=T1溢出周期T的倒数T1设方式2定时T=(256-X)×机器周期X为初值表7-3常用的波特率及计算器初值返回本节7.3串行口的工作方式•方式0同步移位寄存器输入/输出方式,作I/O扩展•1)输出执行:MOVSBUF,A低位先出,发完后硬件置中断标志TI=1,必须由软件清0•2)输入执行:MOVA,SBUF低位先入,收完后硬件置中断标志RI=1,必须由软件清0返回本章首页•方式110位异步传送,双机通信•1)发送执行:MOVSBUF,A,发完一帧后硬件置中断标志TI=1,必须由软件清0•2)接收执行:MOVSBUF,A,收完一帧后硬件置中断标志RI=1,必须由软件清0RXDTXDTXDRXD89S5189S51两台89S51互传数据89S51单片机和PC机通过RS232C总线通信接口图RS-232接口89S51•方式2、311位异步传送,多机通信7.3.4多机通信接口多机通信原理•串行口控制寄存器SCON中的SM2为多机通信接口控制位。串行口以方式2或3接收时,若SM2为1,则仅当接收到的第9位数据RB8为1时,数据才装入SBUF,置位RI,请求CPU对数据进行处理;当SM2为0时,则接收到一个数据后,不管第9位数据RB8是0还是1,都将数据装入接收缓冲器SBUF并置位中断标志RI,请求CPU处理。7.4串行口的应用•扩展I/O口MOVSCON,#00H;串行口方式0初始化MOVA,#07FH;最左一位发光二极管先亮CLRP1.0;清串行输出START1:MOVSBUF,A;开始串行输出LOOP:JNBTI,LOOP;查询TISETBP1.0;允许串行输出ACALLDELAY;显示延时1秒CLRTI;清发送中断标志RRA;准备右边一位显示SJMPSTART1;再一次串行输出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终端/计算机与终端/计算机简化连接形式返回本节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!•本章到此结束,•谢谢您的光临!结束放映返回本章首页