- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
串行口与串行通信 串行通信的基本特征是数据逐位顺序进行传送 串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平……等)不同,形成了多种串行通信的协议与接口标准。 常见的有: ?通用异步收发器(UART)——本讲介绍的串口 ?通用串行总线(USB) ?I2C总线 ?CAN总线 ?SPI总线 ?RS-232C, RS-485 , RS422A标准……等等 并行、串行通信示意图 并行是数据的各位同时收发 串行是数据一位一位次序发送或接收 全双工串行接口(UART) ?单工:单向的(或者是收或者是发) 半双工:(串行通信)收/发不可同时进行 全双工:(串行通信)收/发可同时进行 ?异步串行通信:以字符为单位进行传送 同步串行通信:以数据块为单位进行传送 波特率(bps.): 单位时间传送二进制的位数 (bit/秒) 他是衡量串口传输速度快慢的重要指标 【例】 波特率是9600 那么1秒传输的 二进制位数就是9600个 异步通信的数据格式 简单的RS-232C数据通讯 51单片机的串行接口 SBUF是两个数据缓冲寄存器 公用地址99H SM0 SM1 SM2 REN TB8 RB8 TI R1 SCON ? SM0,SM1:串行口4种工作方式的选择位。 0 0 方式0:8位移位寄存器,波特率固定为 fosc/12 0 1 方式1:10位异步收发(1+8+1位), 波特率可变,按公式计算 1 0 方式2:11位异步收发(1+8+1+1位), 波特率固定=fosc x1/32或1/64 1 1 方式3:11位异步收发(1+8+1+1位), 波特率可变,按公式计算 ? SM2:串行口多机通信控制位 (作为方式2、方式3的附加控制位) 串行口控制寄存器SCON(98H) ? RI,TI:串行口收/发数据申请中断标志位 =1 申请中断; =0 不申请中断 在方式0中,第8位发送结束时,由硬件置位。在其他方式的发送停止位之前,由硬件置位。TI置位既表示一帧信息发送结束,同时也是申请中断,可根据需要,用软件查询方法获得数据已发送完毕的信息,或者也可由中断的方式来发送下一个数据。TI必须由软件清0 RI和TI道理相同 也需要由软件清0 SM0 SM1 SM2 REN TB8 RB8 TI R1 SCON n+1 n-1 … P 1 0 D0 D1 D2 D3 D4 D5 D6 D7 P 1 0 D0 … ? 起始位 数 据 位 校验位/ 停止位 ? 串行数据帧 ? RI,TI:串行口收/发数据申请中断标志位 =1 申请中断; =0 不申请中断 ? TB8:方式2、3中,是要发送的第9位数据。 多机通信中,TB8=0 表示发送的是数据; TB8=1 表示发送的是地址。(奇偶校验) ? RB8:在方式2、3中,是收到的第9位数据。 在多机通信中,用作区别地址帧/数据帧的 标志。(奇偶校验) SM0 SM1 SM2 REN TB8 RB8 TI RI ? REN:串行口接收允许控制位 = 1 表示允许接收; = 0 禁止接收。 SCON SMOD — — — GF1 GF0 PD 1DL 电源控制寄存器 PCON(97H) ——特殊功能寄存器PCON不能按位寻址—— ? SMOD:在串行口工作方式 1、2、3 中, 是波特率加倍位 (产生高波特率时启用平时不用,比如用11.0592晶振产生57600波特率时就要设置成SMOD=1) =1 时,波特率加倍(PCON=0x80;) =0 时,波特率不加倍。(PCON=0x00;) (在PCON中只有这一个位与串口有关) PCON ? PD:掉电方式控制位 =0:常规工作方式。 =1:进入掉电方式: ?振荡器停振 ?片内RAM和SRF的值保持不变
文档评论(0)