您好,欢迎访问三七文档
单片机原理与接口应用串行通信接口技术第十章MCS—51串行通信接口技术微机联网:单片机与单片机;单片机与其他微机之间实现信息共享;典型的计算机测量与控制系统构成:一个典型集散式(DCS)控制系统的构成§10.1串行通信基础数据通信方式:并行通信与串行通信并行通信:一次传输8(16、32Bit)8根数据线,1根控制线,1根状态线,地线,共11根;特点:速度快,适合近距离传输计算机并口,打印机,8255串行通信:数据一位一位地发送,一根发送线,一根接受线,地线,共3根特点:硬件方便,适合距离远,速度要求不高的场合分类:同步串行通信和异步串行通信一、异步通信:串行通信就是将并行的数据分开后,一位一位地发送出去,接收方也是一位一位地接收数据,这就需要通信的双方有一个协议,什么时候开始发送,什么时候发送完毕;接收方收到的信息是否正确等,而这些信息只能以电平的高低来表示,构成这些位的数据称为一帧。异步串行通信规定了传输数据的结构即帧格式:起始位数据位奇偶校验位停止位1.起始位:在数据发送线上规定无数据时电平为1,当要发送数据时,首先发送一个低电平0,表示数据传送的开始,这就是起始位。2.数据位:真正要传送的数据,可以是8位、10位等多位,数据位是由低位开始,高位结束;3.奇偶校验:数据发送完后,发送奇偶校验位,以检验数据传送的正确性,这种校验方法是有限的,但是容易实现。4.停止位:表示数据传送的结束,可以是一位或两位。帧格式:二、同步通信同步通信先发送一个字符,作为同步字符,之后便连续发送数据,数据之间不能有间隔,直到数据发送完毕。速度要比异步通信快通用异步接受/发送器(UNIVERSALASYNCHRONOUSRECEIVER/TRANSMITTER):UART:82506850三、单工、半双工、全双工通信方式1.单工方式:一端是发送端,另外一端是接收端:半双工发式每端口由一个发送器和接收器,通过开关连接在线路上,数据可以双方交换,但不能同时发送和接收.3.全双工方式通信双方用两个独立的收发器单独连接,可以同时发送和接收数据,因而提高了速度。4.波特率单位时间内传送的信息量。以每秒传送的位为单位:电传机:10字符/秒,1个字符11位,波特率为:10×11=110(波特)位宽:传送过程中平均每位占用时间Td=9.1ms(1/110)§10.2串行通信总线标准及接口测控系统中,计算机通信主要采用异步串行通信方式,常用的异步串行通信接口标准有三种:●RS-232(RS-232ARS-232BRS-232C)●RS-449(RS422RS423RS485)●20mA电流环一、通信方式的选取1.1.通信速率和通信距离这两个方面是相互制约的,降低通信速率,可以提高通信距离RS-232C:速率:20Kbit/S,最大通信距离:15mRS422:10Mbit/s,:300m90Kbit/s,:1200m1.2.抗干扰能力采用标准的通信接口,本身具有一定的抗干扰能力,但是工业现场的情况往往很恶劣,因而要根据具体情况进行选择。RS232C:一般场合RS422:共模信号比较强光纤:电磁干扰较强二、RS232C简介美国电子工业协会(EIA)公布的一种异步通信标准:RS232C标准:●设备之间通信的距离不大于15米●最大传输速率20KB/S●采用负逻辑:“1”——―5V∽―15V“0”——+5V∽+15V●不带负载时输出电平:―25V∽+25V●输出短路电流:0.5A●最大负载电容:2500pFTTL电平可以由专用集成电路转换成RS232C标准;如:MC1488或75188TTLRS232CMC1489或75189RS232CTTL由于MC1488需要采用±12V电源,一般在单片机通信中大量使用的是只需要+5V电源、具有发送和接收的一体化芯片,如:MAX232、ICL232、ADM202等。MAX232芯片内部有两路接收器和发送器具有电源变换电路MCS—51双机通信(利用MAX232)三、调制与解调RS232C通信距离很短,RS422通信距离不过1200米;更长距离需采用调制与解调。§10.3MCS-51的串行口的结构8051有一个可编程的全双工串行通信接口,它可作UART用,也可作同步移位寄存器,其帧格式可有8位、10位或ll位,并能设置各种波特率,给使用者带来很大的灵活性。一、结构805l通过引脚RXD(P3.0,串行数据接收端)和引脚TXD(P3.l,串行数据发送端)与外界进行通信。图中有两个物理上独立的接收、发送缓冲器SBUF,它们占用同一地址99H,可同时发送、接收数据。发送缓冲器只能写入,不能读出,接收缓冲器只能读出、不能写入。串行发送与接收的速率与移位时钟同步。8051用定时器T1作为串行通信的波特率发生器,T1溢出率经2分频(或不分频)又经16分频作为串行发送或接收的移位脉冲。移位脉冲的速率即是波特率。接收器是双缓冲结构,在前—个字节被从接收缓冲器SBUF读出之前,第二个字节即开始被接收(串行输入至移位寄存器),但是,在第二个字节接收完毕而前—个字节CPU未读取时会丢失前一个字节。串行口的发送和接收都是以特殊功能寄存器SBUF的名义进行读或写的,当向SBUF发“写”命令时(执行MOVSBUF,A指令),即是向发送缓冲器SBUF装载并开始由TXD引脚向外发送一帧数据,发送完便使发送中断标志位TI=1。在满足串行口接收中断标志位RI〔SCON.0〕=0的条件下,置允许接收位REN(SCON.4)=1就会启动接收一帧数据进入输入移位寄存器,并装载到接收SBUF中,同时使RI=l。当发读SBUF命令时(执行MOVA,SBUF指令),即是由接收缓冲器(SBUF)取出信息通过8051内部总线送CPU。对于发送缓冲器,因为发送时CPU是主动的,不会发生重迭错误,所以不需要用双缓冲结构来保持最大传送速率。二、串行口控制字及控制寄存器8051串行口是一个可编程接口,对它的编程只用两个控制字分别写入特殊功能寄存器:串行口控制寄存器SCON(98H)电源控制寄存器PCON(97H)请看下一节
本文标题:串行口
链接地址:https://www.777doc.com/doc-3566597 .html