- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
chap7 MCS-51的串行通信接口
MCS-51的串行通信接口 主要内容 7.1 串行通信概述 7.2 串行口结构及控制寄存器 7.3 串行口工作方式 7.4 串行口的应用设计举例 7.1 串行通信概述 何谓通信:计算机之间、计算机与外设之间的数据交换称为通信。 两种通信方式: 并行通信:数据的各位同时传送。有多少位数据就需要同样数量的传输线 。 串行通信:把二进制数据按位依次传送。只需要两根数据线 。 串行通信应用范围:适合于计算机之间、计算机与外部设备之间的远距离通信 并行通信和串行通信基本连接关系 串行通信的两种基本方式: 异步通信:以字符为单位传送。字符则是按帧进行传送的,一帧表示一个字符。每帧的格式一般包括: 起始位:一个下降沿开始,维持低电平1位宽的时间 数据位:可能是0或1,位数事先约定为5、6、7或8位 奇偶校验位:1位,可事先约定要或不要 停止位:可用1、1.5或2位,也是事先约定的。 其中每一位的位宽是一致的 同步通信:按数据块传送(把要传送的字符组成数据块,字符之间无间隔),每个数据块有一定格式。 异步通信与同步通信的比较:前者比后者速度慢,发送与接收时钟同步要求低。 5 . 串行通信的两项约定 在串行通信中,通信双方必须遵守如下两项约定: 字符格式:编码形式(如ASCII码)、奇偶校验(奇或偶)、起始位、停止位(几位);同步字符、校验字符。 波特率:衡量数据传输速率的单位,用每秒传送数据的位数来表示。通信双方的波特率必须一致,才能可靠交换信息。 例:数据传输的速度为120字符/秒,1字符包含10个数据位。 则波特率为:120×10位/秒=1200位/秒=1200波特 每位数据传输的时间=1/1200=0.833毫秒(ms) 6、串行通信的数据传输方向分3种: 单工方式、半双工方式、全双工方式 7.2、串行口结构及控制寄存器 一、 串行口的结构 二、 串行口的控制寄存器SCON 一、串行口的结构 MCS-51串行口是一个全双工的异步串行通信接口,可同时发送和接收数据。 但CPU不能同时执行“发送”和“接收”两种指令。因此“全双工”是对串行接口而言的。 MCS-51串行口结构 串行口数据缓冲器SBUF,物理上对应2个寄存器,共用同一个地址99H 发送缓冲器:发送数据时,CPU写入数据到SBUF MOV SBUF,A 接收缓冲器:接收数据时,CPU从SBUF读数据。 MOV A,SBUF 二、串行口控制寄存器SCON 串行口控制寄存器SCON 电源控制寄存器PCON 是SFR中的单元,字节地址87H,不能位寻址。PCON中的最高位SMOD(PCON.7)是波特率的选择位。其作用是可把波特率提高一倍。 7.3 串行口的工作方式 一、方式0 方式0:移位寄存器方式,8位数据为一帧,不设起始位和停止位,发送/接收先低位后高位。用来扩展并行输入/输出端,但需要外接移位寄存器。 方式0发送时序 方式0接收时序 二、方式1 方式1:是一个8位异步通信接口,一帧信息是10位,即1位起始位,8位数据位和1位停止位 方式1的时序 三、方式2和3 是9位的异步通信接口。其信息帧长度为11位,即1位起始位,9位数据位和1位停止位。 方式2和3的工作原理相似,唯一的差别是: 方式2的波特率固定: fosc/64(SMOD=0时) fosc/32(SMOD=1时); 方式3的波特率可变:由T1作波特率发生器。 方式2和3的时序 7.4 串行口的应用设计举例 一、波特率的设定 波特率用来衡量数据传输速率。通信双方只有在保证波特率一致的情况下,才能可靠的交换信息。 4种方式的波特率计算方法: 1、方式0波特率固定为:fosc/12 2、方式2波特率基本固定由SMOD(PCON.7)决定: 波特率=(2SMOD/64)× fosc SMOD=1:fosc/32, SMOD=0:fosc/64 3、方式1和方式3的波特率: 波特率=2SMOD×(T1的溢出率)/32 T1定时时间=(28–X)×(12/fosc) T1的溢出率=1/T1定时时间 =fosc/[12×(28–X)] 波特率: 2SMOD×fosc/[32×12×(28-X)] 波特率计算公式 常用的波特率及计算器初值 二、串行口在方式0下的应用 要求:CD4049的每一位都连接一个发光二极管LED,LED共阴极连接,并从左到右以一定的延时循环显示。STB由P1.0控制,用延时子程序DELAY(略)实现延时。 两种编程:查询方式、中断方式 三、串行口在方式1下的应用 串行口的方式1采用8位异步通信,通常应用在点对点的双机通信中。 【例7-3】设有两个8051应用系统相距很近,将它们的串行口直接相连,
文档评论(0)