51单片机课件第9章

上传人:woxinch****an2018 文档编号:56879951 上传时间:2018-10-16 格式:PPT 页数:88 大小:560.50KB
返回 下载 相关 举报
51单片机课件第9章_第1页
第1页 / 共88页
51单片机课件第9章_第2页
第2页 / 共88页
51单片机课件第9章_第3页
第3页 / 共88页
51单片机课件第9章_第4页
第4页 / 共88页
51单片机课件第9章_第5页
第5页 / 共88页
点击查看更多>>
资源描述

《51单片机课件第9章》由会员分享,可在线阅读,更多相关《51单片机课件第9章(88页珍藏版)》请在金锄头文库上搜索。

1、第9章 89C51单片机串行输入/输出,89C51提供一个可编程的全双工串行通信接口UART,可用于双机或多机进行远距离的数据通信。扩展同步串行接口器件的技术,使系统结构大大简化。,9.1串行通信,9.1.1串行通信的传输制式,串行通信是数据各位按顺序沿一条信号线传送。 是计算机间,计算机和外设间常用的通信方式。优点是需用传送线少,适于远距离传送。缺点是数据传送的速度较低。适于远距离数据传送(通过调制解调器,电流环等) 串行通信要有一个发送设备和一个接收设备。串行通信中有三种的数据传送制式:单工(单向), 半双工(半双向), 全双工(全双向), 单工(单向):只允许数据向一个方向传送.一个设备

2、固定发送,另一个固定接收,只需要一条通信通道. 半双工(半双向):允许两个设备间数据双向传送,但只有一条通道,每次只能一个设备发送,另一个接收. 全双工(全双向):两个设备之间具有两个独立的通信通道,允许同时双向传送数据。,9.1.2 异步通信与同步通信,1. 同步通信在同步通信中,将数据组成连续的数据块(帧)。数据以块 (帧) 为单位。传送开始用同步字符指示,由时钟实现同步。连续按顺序传送数据, 直到结束。数据帧格式:同步字符 (1-2个)、数据字符 、校验字符(1-2个)。 同步通信方式传送速度和效率高, 但硬件电路复杂。,2. 异步通信通信双方无统一的时钟控制,代码或一字节数据。异步传送

3、数据帧的格式:由四个部分组成:,起始位(0)+数据位5-8位+奇偶校验位( 可省略) +停止位(1),9.1.3 波特率(Baud rate),波特率是串行数据的传送速率, 表示每秒传送二进制代码的位数,单位是bps(位/秒)又称波特。串行通信发送和接收方必须采用统一的编码方法, 按 同样的波特率来进行通信。异步串行通信波特率为:50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200bps等。异步串行通信中,计算每秒传送的字符数: 例: 每个字符10位(1个起始位+8个数据位+1个终 止位) 传送的波特率为1200波特(b/s) 则:

4、 1200(b/s) 10 b/字符 =120字符/s,即每秒传送120个字符。 这时, 一个字符代码传送时间Td为波特率的倒数,即: Td1b(1200b/s)0.833ms,9.1.4 串行通信协议,串并转换与设备同步 (1)串并转换 将计算机内的并行数据转换成串行数据,通过一根通信线传送;并将接收的串行数据转换成并行数据送到计算机中.,(2)设备同步 一是通信双方必须采用统一的编码方法; 二是通信双方必须能产生相同的传送速率。,串行通信协议 通信协议是对数据传送方式的规定,包括数据格式定义和数据位定义等。 通信双方必须遵守统一的通信协议。 串行通信协议包括同步协议和异步协议两种。,单片机

5、通常采用异步串行通信异步串行通信标准有:。,EIA RS-232C标准 美国电子工业协会 (Electronic Industries Association)正式公布, 在异步串行通信中应用最广的标准总线.包括按位串行传输的电气和机械方面的规定,适用短距离或带调制解调器的通信场合。RS232C标准适用于数据终端设备(DTE)和数据通信设备(DCE)之间串行通信,最高数据速率为 19.2 kb/s, 通信距离最大为15 m。,. RS232C标准的数据帧的格式 RS232C异步串行通信标准,数据帧的格式: .起始位:1位起始位的信号。无数据时为“1”,传送时发一个“0”信号,为起始位。 .数据

6、位:起始位之后,数据位数一般为5-8位。 .奇偶校验位:数据位,可选择奇校验、偶校验或不安排校验位。奇校验数据位与校验位中1的总个数要为奇数。偶校验数据位与校验位中1的总个数要为偶数。 .停止位:一帧的结束标志,一般为1位、11/2位或2位的“1”。,. RS232C标准通信的规定信号采用负逻辑,即规定:+3V15V之间电压表示逻辑 0 ,-3V15V之间电压表示逻辑 1 。通信双方要约定一个相同的波特率。提供专用通信联络(握手)信号。 . RS232C标准的接口 标准接口是25针的D型接插件, 也有采用9针的D型插件(如PC机)。,. RS-232C标准的接口信号,RS-232C标准的信号包

7、括两大类。 基本的数据传送信号: TXD(发送数据),RXD(接收数据),GND(信号地)。 用于控制(握手)的信号: 以计算机和MODEM(调制解调器)的通信为例: 从计算机到MODEM的信号:DTR(数据终端DTE准备好)信号RTS(请求发送)信号 从MODEM到计算机的信号:DSR(数据设备DCE准备好)信号CTS(清除发送)信号DCD(载波检测)信号RI 为振铃指示信号。,. RS-232C标准串行通信应用实例计算机的RS-232C标准串行通信的应用实例。 计算机通过RS-232C接口和MODEM(调制解调器)通信, 通过有线电话网络实现了远距离数据传送。,单片机串行通信中,最简单是只

8、使用3个引脚:TXD、RXD和接地信号GND。其中, 接收和发送两端的TXD与RXD信号线交错相连,接地端GND相连。三线连接的RS-232C接口,采用 MAX232的 89C51与PC机的串行通信接口电路 (MAXIM公司的MAX232芯片,是RS-232C和TTL电平转换电路。它包含两路接收器和驱动器。),2. RS-449、RS-422A,RS-423A和RS-485串行标准,为提高通信的数据传输率,增加距离,改善电气性能,美国电子工业协会E IA制定了新的异步串行通信标准.RS-449标准采用了平衡信号差分电路传输高速的信号,传输距离和速率得到提高。噪声低,抗干扰能力强,而且可以多台设

9、备与RS-449通信电缆并联。RS-422A标准是 “平衡电压数字接口电路的电气特性”标准,使用一对双绞线传送信号. 每个通道要用二相信号线, RS-422A传输信号距离长、速度快,数据传输率最大为 10 Mb/s, 在此速率下,电缆允许长度为 120 m;如采用较低速率,如 90000 b/s时,最大距离达1200m.RS-422标准中规定电路中只允许有一个发送器,可有多个接收器。因此,通常采用点对点通信方式.,RS-423A标准和RS-422A标准一样,采用的是非平衡信号差的标准,规定是单端线,采用单端发送器和差动接收器。它的传输距离和速度同样有很大的提高。当传输距离为10m时,速度可达1

10、00KB/s,若降低速率为1KB/s,传输距离可达到1200m。它也允许在传输线上连接多个接收器。RS-485标准是RS-485是由RS-422A发展而来,RS-422A和RS-423A是全双工的通信方式,而RS-485标准是半双工的方式。用于多站点互连时可以节省信号线,便于高速、远距离的数据传送。RS-485标准的最大传输距离约为1200m,最大传输速率为10Mb/s。,9.2 89C51的串行通信接口,89C51有一个可编程的全双工串行通信接口。可作为通用异步接收/发送器UART,也可作为同步移位寄存器。串行通信数据帧格式有8位,10位和11位。传送速率可设置为固定和可变波特率。,9.2.

11、1 89C51串行接口的基本结构,串行接口通过串行数据接收端RXD(P3.0),和串行数据发送端 TXD(P3.1)进行通信。有两个独立的接收、发送缓冲器SBUF,它们占用同一地址 99H,可同时发送、接收数据。初始化时:将控制字写入串口控制寄存器 SCON(98H)中;根据波特率选择设置电源控制寄存器 PCON(87H);可设置为固定和可变波特率, 根据需要对定时器的有关工作寄存器进行初始化编程。如果通信采用中断方式处理,还需要对中断结构的工作寄存器(如IE、IP等)进行设置。,89C51串行接口内部结构,1. 数据缓冲寄存器SBUFSBUF在物理上是两个独立的寄存器, 分别是发送缓存器和接

12、收缓存器。但是从编程来看, 占用了同一地址,即片内特殊功能寄存器区中的99H地址。发送缓存器只能写入数据, 不能读出。串口在发送数据时, 利用指令 “MOV SBUF,A”,向发送缓存器SBUF装入数据, 由发送数据端TXD来向外发送。接收缓存器只能读出数据, 不能写入。当串口控制寄存器的允许接收位REN置“1”时, 由接收数据端RXD接收串行信息, 送入移位寄存器, 串并转换后装入接收缓存器SBUF中。指令“MOV A,SBUF”, 就可将SBUF的数据读入CPU的累加器A中。,2. 串口控制寄存器SCON ( 地址98H )SCON可以利用直接寻址方式进行字节操作,也可以利用位寻址方式按位

13、操作。,. SM0 (SCON.7)、SM1(SCON.6):串口工作方式选择位有4种工作方式供选择。通过SM0、SM1的设定,可以用作同步移位寄存器或用于作三种不同模式的异步通信接口 UART。 fosc是振荡频率,. SM2(SCON.5):多机通信控制位。该位用在工作方式2、3中。方式0时, 必须置“0”。若设置SM2=1,则用于多机通信。多机通信是一个主机(89C51)和多个从机通过串口进行通信。多机通信过程:主机先发送从机地址码, 其中第9位特征位为“1”。 这时,所有从机都将SCON寄存器中SM2位置“1”,只对读入的第9位为“1”的帧数据(地址码)响应。从机将读入的地址码和自己的

14、地址比对, 如果一致,说明该从机为主机的通信对象。该从机将其SCON中的SM2位置为“0”, 接收主机随后发来的数据信息.其它未选中从机的SM2位仍为“1”,对主机发来的 第9位为“0”的数据信息不予响应。实现多机通信。,. REN(SCON.4):接收控制位。置为“1”,允许接收;置为“0”,禁止接收。用软件置“1”或清“0”,相当于串行接收器的开关。 . TB8 (SCON.3):发送数据帧的第9位(D8)该位可作为奇偶校验位, 多机通信中, 作为地址和数据帧的标志位。主机在发送信息时, 将TB8置“1”, 表明该帧是要通信的从机的地址。若TB8=0,则说明该帧信息为数据。 . RB8 (

15、SCON.2):接收数据位帧的第9位(D8)该位可以是约定的奇/偶校验位,多机通信中是地址帧/数据帧的标志位。多机通信时从机的SM2=1, 若接收到RB8=1,则收到的是地址帧。反之是数据帧。,. TI(SCON.1):发送中断标志位。在每发送完一帧数据后, TI被自动置“1”。表示“发送缓存器SBUF已空”的状态。同时发出中断请求信号,它也可由软件查询。这样,可以使CPU准备发送下一帧的数据。TI位要用软件清“0”。 . RI(SCON.0):接收中断标志位。在每接收完一帧数据后, RI被自动置“1”。表示“接收缓存器SBUF已满”的状态。同时发出中断请求信号,它也可由软件查询。通知CPU准

16、备读取数据。 RI要用软件清“0” 。串行口中断矢量地址为0023H。串口的中断标志有两个:发送中断标志TI和接收中断标志RI,在全双工通信时,用软件可判断出中断来源。,3. 电源控制寄存器 PCON (87H),SMOD(PCON.7)波特率倍增位。 在串行口方式1、2和3时,波特率和SMOD成正比,即当SMOD1时,波特率提高一倍。 复位时,SMOD0。,9.2.3 串行接口通信工作方式,1. 串行口工作方式 08位同步移位寄存器输入/输出方式, 用于扩展I/O口.串口控制寄存器SCON中的 SM0、SM1置为 0 0 。工作时,串行数据位通过RXD(P3.0)输入或输出,TXD (P3.1)输出移位时钟, 作为外部器件同步信号。串行数据8位一帧, 最低位在前。不设起始位、奇偶校验位及停止位。 波特率固定,为主振荡频率的1/12。方式0波特率 fosc / 12,方式0,【例9-1】轮流点亮8个发光二极管的实例用串口扩展一个8位并行输出接口连接发光二极管。要求从左至右轮流点亮LED,反复循环。 解: 扩展8位串行输入/并行输出的移位寄存器74LS164将RXD端连到74LS164的串行输入端A、B, TXD连到74LS164的移位时钟脉冲输入端CLK端 , 用P1.0输出到74LS164的清零端CLR 。Q0Q7端并行输出,连接发光二极管。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 高中教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号