- 1、本文档共35页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS51串行通信
10 MCS-51的串行通信 通信的概念 MCS-51的串行通信控制器 通信及其应用 基本概念 通信方式 串行与并行 单工、半双工、全双工 波特率 异步通信的字符编码 同步与异步 串行与并行 并行通信:字符各位同时传输 串行通信:同一字符的各位依次传输 字符与字符之间总是串行传输 优缺点比较 同等技术条件下的速度 成本(硬件成本、传输协议的兼容性) 单工通信 单工(Simplex) 特点:仅能进行一个方向的数据传送 半双工通信 全双工通信 通信速率 比特率——每秒传输的二进制位数,单位为bps(bit per second )。 波特率——每秒传输的离散状态数(也称离散状态)。 在一个信道上,如果只有高、低电平两种离散状态(分别代表“1”和“0”),则波特率与比特率刚好一致。 如果在某个信道中可以传输多种不同的离散状态,则每个状态可以携带两位或两位以上的二进制数,此时,波特率就不等于比特率。 波特率有标准值 异步(Asynchronous)通信字符编码 以字符为单位传输 帧的组成: “起止同步式” 效率、时钟的准确性要求 [例10-1] 某异步通信的波特率为4800,8个数据位,无校验位,一个停止位。试估算每个字符传输所需要的时间。 解:起始位1位,8位数据位,无校验位,一个停止位,则一个字符的编码为1+8+0+1=10位。波特率为4800,即4800位/秒,传输10位所需要的时间是10/4800≈0.002083秒,即2.083毫秒。 同步方式(Synchronous) 实现原理:数据线、时钟线 具体实现:增加导线、增加信道、锁相环提取同步时钟、数据与时钟编码(曼切斯特) 面向位的传输(相对于字符) 效率高,成本高 异步串行通信的常用物理标准 异步串行通信控制器仍然是TTL兼容电平 逻辑“1”和逻辑“0”的电压区分度只有2~3V,这不适于稍长距离的传输 RS-232电平标准(EIA??RS-232-C) 信号线为负逻辑。即:逻?辑“1”(-3~?-15V);逻辑“0”(+3~+15V)? 波特率9600时,可靠的通信距离15m左右 9针接口线的信号说明(DB9) 串行通信控制器 Intel 8250 16C50 16C550 16C552 16C554 Intel 8251 Z80-PIO MCS-51片上串行通信接口 TXD RXD 引脚 SBUF SCON PCON寄存器 T1(or T2)波特率发生器 MCS-51串行口工作方式 方式0——串行移位I/O 方式1——8位异步串行通信(波特率可变) 方式2——9位异步串行通信(波特率固定) 方式3——9位异步串行通信(波特率可变) 串行口控制字寄存器 SCON(98H),可位寻址。 方式0——移位寄存器输入输出方式 串行同步方式,多作移位寄存器扩展之用。 RXD作串行数据线I/O(输入或输出)。 TXD作串行时钟(输出)。 8位数据输入或输出的顺序是低位在前,高位在后。下图为方式0的时序图。 静态数码显示技术 74LS164 方式1——8位异步串行通信方式 传送8位数据位 按异步编码格式,自动插入起始位、停止位 TXD为发送引脚 RXD为接收引脚 CPU写SBUF激活一个字符的发送过程 发送完成后硬件置TI为1,需软件将TI清0 异步接收需设置REN=1。接收到的字符保存在SBUF ,并置RI=1。RI需软件清0。 异步串行通信的编程参考图 例10-4 T1作为波特率发送器 取常用波特率9600,CPU时钟为11.0592MHz,试初始化T1。 一般CPU时钟接近于其工作上限,同时兼顾标准的波特率值。允许差最大为7~8%, 常用11.0592MHz的时钟频率,12分频以后为0.9216MHz = 921600Hz; 波特率为9600时,波特率时钟为9600×16=153600Hz; 如果选SMOD=0,则中间多出一个2分频,所以T1的输出时钟频率需要达到波特率时钟的2倍,即153600×2 = 307200Hz。T1的分频数为 921600Hz÷307200Hz = 3; 如果选SMOD=1,T1的输出时钟频率就是波特率时钟,即153600Hz。T1的分频数为 921600Hz÷153600Hz = 6 两种初始化方法 查询方式数据通信举例 串行通信的初始化 查询方式的发送 查询方式的接收 初始化子程序 发送数据 接收数据 ;接收子程序,无参数,有返回值在R7 Get_Char: JNB RI,$ CLR RI MOV A,SBUF MOV R7,A RET END 简单应用主程序(首部) EXTRN CODE(Init_SPORT,_Send_Char,Get_Char) ?STACK SEG
您可能关注的文档
最近下载
- 《新疆工程勘察设计计费导则(2022版)》.docx VIP
- 小学道德与法治_团团圆圆过中秋教学设计学情分析教材分析课后反思.doc
- 大概念单元教学视野下的实践探索:辽宋夏金元——从“小中国”到“大中国”的演变之课时2+制度创新——因俗而治与统治效力的磨合说课高中历史统编版(2019)必修中外历史纲要上册.pptx VIP
- 邮政储蓄银行城市零售信贷示范行建设活动实施总结.doc VIP
- 宪法卫士2024第九届学宪法讲宪法活动高一学习练习答案 .pdf
- 厂房机电安装工程施工组织设计方案.doc
- 5.智能钻完井技术研究进展与前景展望v2.pptx
- 2024年三年级劳动与技术全册教案.doc
- 小学科学新教科版一年级上册全册教案2(2024秋).doc
- 最优化方法教案课程.doc
文档评论(0)