- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第7章 串行口14串行口
第7章 单片机的串行接口教材第8章 主要内容串行通信的基本概念串行通信接口结构和工作原理串行通信的控制寄存器串行通信的应用编程; 数据通信方式有两种:并行通信与串行通信
并行通信: 所传送数据的各位同时发送或接收,
数据有多少位就需要多少根数据线。
特点: “速度快”,成本高,适合近距离传输
如计算机并口,打印机,8255 。
串行通信:所传送数据的各位按顺序一位一位
地发送或接收。
只需一根数据,一根地线,共2 根
(如双向通信发送和接收各需1根数据线。)
特点: 成本低,硬件方便,适合远距离通信, “ 传输速度低 ”。
;串行通信的分类:同步串行通信 异步串行通信 一、异步通信: ;优点:硬件结构简单。
缺点:传输速度慢。;二、同步通信
在同步通信中,发送方在数据或字符开始处就用同步字符(常约定1~2个字节)指示一帧的开始 ,由时钟来实现发送端和接收端同步,接收方一旦检测到与规定的同步字符符合,下面 就连续按顺序传送若干个数据 ,最后发校验字节。见下图:;三、单工、半双工、全双工通信方式 ;3. 全双工方式 ;1.实现数据格式化 因为CPU发出的数据是并行数据,接口电路应实现不同串行通信方式下的数据格式化任务, 如自动生成起止方式的帧数据格式(异步方式)或在待传送的数据块前加上同步字符等。;2.进行串、并转换
在发送端,接口将CPU送来的并行信号转换成串行数据进行传送;而在接收端,接口要将接 收到串行数据变成并行数据送往CPU,由CPU进行处理。
3.控制数据的传输速率
接口应具备对数据传输率—波特率的控制选择能力,即具有波特率发生器。
4.进行传送错误检测
在发送时,对传送的数据自动生成校验位或校验码,在接收端能检查校验位或校验 码,以确定传送中是否有误码。
; 8xx51系列单片机内有一个全双工的异步通信接口,通过对串行接口写控制字可以选择其数据格 式,同时内部有波特率发生器,提供可选的波特率,可完成双机通信或多机通信。四、 波特率 ;(一)通信线的连接??? 通信速率和通信距离这两个方面是相互制约的,降低通信速率,可以提高通信距离. 不同的通信距离,串行通信电路有不同的连接方法;
RXD
TXD
GND
;微
机;(二)串行通信接口总线标准;1.?2. 抗干扰能力
采用标准的通信接口,本身具有一定的抗干扰能力,但是工业现场的情况往往很恶劣,因而要根据具体情况进行选择。
RS232C:一般场合
RS485, RS422: 共模信号比较强
光纤: 电磁干扰较强
;二、RS-232C; MCS—51之间的双机通信;USB—TTL232;7.2 MCS-51的串行口结构 ;;硬件:
引脚RXD(P3.0)串行数据接收端
引脚TXD(P3.l )串行数据发送端
两个物理上独立的接收、发送缓冲器SBUF,它们占用同一地址99H(支持同时发送、接收数据)
● 发送缓冲器只能写入,不能读出,CPU写SBUF,一方面修改发送寄存器,同时启动数据串行发送;
● 接收缓冲器只能读出、不能写入。读SBUF,就是读接收寄存器。
;●串行控制寄存器SCON
用以存 放串行口的控制和状态信息。8XX51串行口正是通过对上述专用寄存器的设置、检测与读取 来管理串行通信的。
●电源控制寄存器PCON
最高位SMOD为串行口波特率的倍增控制位。
●波特率发生器 可以有两种选择:
1. 定时器T1作波特率发生器,改变计数初值就可以改变串行通信的速率,称为可变波特率。
2. 以内部时钟的分频器作波特率发生器,因内部时钟频率一定,称为固定波特率;shift;TI,该位可作为查询标志(或引起中断),
CPU可再发送下一帧数据 。
接收:缓冲器满,置位接收中断标志RI,该位
可作为查询标志(或引起接收中断),通过
指令:MOV A ,SBUF ;CPU读入数据
由上述可知:
甲、乙方的移位时钟频率应相同,即应具有相同的波特率,否则会造成数据丢失。
发送方是先发数据再查标志,接收方是先查标志再收数据。; 51单片机串行口是一个可编程接口,对它的编程只用两个控制字分别写入
文档评论(0)