1、第第7章章 串行通信及其接口串行通信及其接口概述概述89S51的串行口的串行口串行口的控制串行口的控制7.1 概述概述并行通信并行通信 数据的各位同时传送数据的各位同时传送串行通信串行通信 数据的各位一位一位地依次传送。适数据的各位一位一位地依次传送。适合于计算机之间、计算机与外部设备之间的远距合于计算机之间、计算机与外部设备之间的远距离通信。离通信。串行传输方式:串行传输方式:单工方式(如图单工方式(如图7-1所示)、半双工方式(如图所示)、半双工方式(如图7-2所示)、全双工方式(如图所示)、全双工方式(如图7-3所示)。所示)。串行接收方式:串行接收方式:异步通信方式(如图异步通信方式(
2、如图7-4所示)、同步通信方式所示)、同步通信方式(如图(如图7-5所示)。所示)。返回本章首页波特率波特率 串行通信的数据传输速率串行通信的数据传输速率bps(b/s)接收器图7-1 单工方式发送器 接收器接收器 发送器发送器 数据流 图7-2 半双工方式发送器接收器数据流接收器发送器图7-3 全双工方式7.2 89S51的串行口的串行口7.2.1 串行口的结构串行口的结构7.2.2 串行口的工作方式串行口的工作方式7.2.3 波特率的计算波特率的计算返回本章首页串行口寄存器串行口寄存器结构结构7.2.1 串行口的结构串行口的结构1串行口控制寄存器串行口控制寄存器SCON该寄存器的字节地址为
3、该寄存器的字节地址为98H,可位寻址。,可位寻址。SCON格式如图格式如图7-6所示。所示。SCON位位地址地址SM0SM1SM2RENTB8RB8TIRI9F9E9D9C9B9A9998图图7-6 SCON格式格式 D7D6D5D4D3D2D1D0REN =1:允许接收;:允许接收;=0:禁止接收:禁止接收 TI 发送中断标志位。发送完一帧数据硬件置发送中断标志位。发送完一帧数据硬件置1,软件清,软件清0RI 接收中断标志位。接收完一帧数据硬件置接收中断标志位。接收完一帧数据硬件置1,软件清,软件清0SM2 多机通信(方式多机通信(方式2、3)控制位。)控制位。=1:允许:允许TB8 方式方
4、式2、3要发送的第要发送的第9位位RB8 方式方式2、3接收的第接收的第9位位1011112特殊功能寄存器特殊功能寄存器PCON其字节地址为其字节地址为87H,没有位寻址功能。,没有位寻址功能。PCON的的格式如图格式如图7-7所示,其中与串行接口有关的只有所示,其中与串行接口有关的只有D7位。位。PCONSMOD D7D6D5D4D3D2D1D0 图7-7 PCON格式返回本节数据缓冲寄存器数据缓冲寄存器SBUF 存发送或接收的数据存发送或接收的数据中断允许寄存器中断允许寄存器IE 其中的其中的ES=1:允许串行口中断:允许串行口中断中断优先级别寄存器中断优先级别寄存器IP 其中的其中的PS
5、=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 同步移位寄存器输入同步移位寄存器输入/输出方
6、式,作输出方式,作I/O扩展扩展 1)输出)输出 执行:执行:MOV SBUF,A 低位先出,发完低位先出,发完后硬件置中断标志后硬件置中断标志TI=1,必须由软件清,必须由软件清02)输入)输入 执行:执行:MOV A,SBUF 低位先入,收完低位先入,收完后硬件置中断标志后硬件置中断标志RI=1,必须由软件清,必须由软件清0返回本章首页方式方式1 10位异步传送,双机通信位异步传送,双机通信1)发送)发送 执行:执行:MOV SBUF,A ,发完一帧后,发完一帧后硬件置中断标志硬件置中断标志TI=1,必须由软件清,必须由软件清02)接收)接收 执行:执行:MOV SBUF,A ,收完一帧后
7、,收完一帧后硬件置中断标志硬件置中断标志RI=1,必须由软件清,必须由软件清0RXDTXDTXDRXD89S5189S51两台89S51互传数据89S51单片机和PC机通过RS232C总线通信接口图RS-232接口接口89S51方式方式2、3 11位异步传送,多机通信位异步传送,多机通信7.3.4 多机通信接口多机通信接口多机通信原理多机通信原理 串行口控制寄存器串行口控制寄存器SCON中的中的SM2为多机通信为多机通信接口控制位。串行口以方式接口控制位。串行口以方式2或或3接收时,若接收时,若SM2为为1,则仅当接收到的第,则仅当接收到的第9位数据位数据RB8为为1时,数据时,数据才装入才装
8、入SBUF,置位,置位RI,请求,请求CPU对数据进行处对数据进行处理;当理;当SM2为为0时,则接收到一个数据后,不管第时,则接收到一个数据后,不管第9位数据位数据RB8是是0还是还是1,都将数据装入接收缓冲器,都将数据装入接收缓冲器SBUF并置位中断标志并置位中断标志RI,请求,请求CPU处理。处理。74 串行口的应用串行口的应用 扩展扩展I/O口口 MOVSCON,#00H;串行口方式;串行口方式0初始化初始化 MOVA,#07FH;最左一位发光二极管先亮;最左一位发光二极管先亮 CLRP1.0;清串行输出;清串行输出START1:MOVSBUF,A;开始串行输出;开始串行输出LOOP:
9、JNBTI,LOOP;查询;查询TI SETBP1.0;允许串行输出;允许串行输出 ACALLDELAY;显示延时;显示延时1秒秒 CLRTI;清发送中断标志;清发送中断标志 RRA;准备右边一位显示;准备右边一位显示 SJMPSTART1;再一次串行输出;再一次串行输出l 单片机与RS232C接口(1)分离元件电平转换电路,如图)分离元件电平转换电路,如图7-19所示。所示。(2)集成电路电平转换电路)集成电路电平转换电路MC1488,1489这两种芯片的引脚如图这两种芯片的引脚如图7-20所示。(所示。(3)集成电)集成电路电平转换器路电平转换器MC145407。如图如图7-21所示。所示
10、。起 始位D0D1D2D4D3D5D6D7X标志停止位检验位图7-18 RS232C总线上传输的异步通信典型数据格式分类符号名称引脚说明地线 机架保护地(屏蔽地)1 信号地(公共地)7 数据信号线TXD数据发送线2在无数据信息传输或收/发信息间隔期,RXD/TXD电平为1。辅助信道传输速率较主信道低。其余同RXD数据接收线3TXD辅助信道数据发送线14RXD辅助信道数据接收线16定时信号线 DCE发送信号定时15指示被传输的每个bit信息的中心位置 DCE接收信号定时17 DTE发送信号定时24 控制线RTS请求发送4DTE发给DCECTS允许发送5DCE发给DTEDSRDCE装置就绪6 DT
11、RDTE装置就绪20DTE发给DCEDCD接收信号(载波)检测8DTE收到满足标准的信号时置位 振铃指示22由DCE收到振铃时置位 信号质量检测21由DCE根据数据信息是否有错而置位/复位 数据信号速率选择23指定两种传输速率中的一种RTS辅助信道请求发送19 CTS辅助信道允许发送13RCD辅助信道接收检测12备用线 9未定义,保留供DCE装置测试使用 10 11 18 25表表7-4 RS232C信号线及其在信号线及其在DB-25的针脚号的针脚号图7-19 分离元件电平转换电路(a)MC1488 (b)MC1489图7-20 MC1488,MC1489引脚图7-21 MC145407引脚(
12、a)(b)图7-22 终端/计算机与终端/计算机简化连接形式返回本节2多机通信程序设计多机通信程序设计l l MCS-51多机通信程序设计多机通信程序设计以典型的以典型的PC机和机和MCS-51构成的主从式多机系统构成的主从式多机系统为例,如图为例,如图7-23所示,阐述多机通信的程序设计。所示,阐述多机通信的程序设计。l l PC机多机通信机多机通信编程编程格式如表格式如表7-5所示其中所示其中WLS1,WLS0两位用于两位用于设置新发送或接收的字长,详见表设置新发送或接收的字长,详见表7-6;奇偶校验;奇偶校验允许位允许位PEN及及ESP、跟随校验位的组合见表、跟随校验位的组合见表7-7。
13、l l 多机通信实例多机通信实例图7-23 PC机与MCS-51单片机多机通信Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0DLAB断线设定跟随检测EPSPENSTBWLS1WLS0表7-5 LCR端口地址WLS1(bit1)WLS0(bit0)数据字长005位016位107位118位表7-6 WLS1,WLS0两位设置的字长跟随校验位(bit5)EPS(bit4)PEN(bit3)校验位001奇校验011偶校验101校验值为“1”111校验值为“0”表7-7 PEN及ESP跟随校验位的组合返回本节THANK YOU VERY MUCH!本章到此结束,本章到此结束,谢谢您的光临!谢谢您的光临!结束放映返回本章首页