单片机串行通信单片机原理及其接口技术单片机在某些情况下,需要和其他设备进行通信。单片机将数据传回计算机或者其他设备进行处理。或者接受计算机或其他设备传过来的数据而进行相应的动作。51单片机提供了串行通信接口。MCS-51单片机的串行口具有两条独立的数据线——发送端TXD和接收端RXD,它允许数据同时往两个相反的方向传输。一般通信时发送数据由TXD端输出,接收数据由RXD端输入。通信的基本概念单片机原理及其接口技术串行通信和并行通信并行通信:数据各位同时进行传送的通信方式。其优点是传递速度快;缺点是数据有多少位,就需要多少根传送线。因传输线的造价昂贵,所以并行通信在位数多、传送距离又远时就不太适宜。并行通信:数据是一位一位按顺序传送的通信方式,它的突出优点是只需一对传送线,还可利用电话线作为传送线,这样就大大降低了传送成本,特别适用于远距离的通信;其缺点是传送速度较低。通信的基本概念单片机原理及其接口技术串行通信的传送方向单工,只允许数据向一个方向传送;半双工,允许数据向两个方向中的任一方向传送,但每次只能有一个站发送;全双工,允许同时双向传送数据,实际上,全双工配置是一对单向配置,它要求两端的通信设备具有完整和独立的发送和接收能力。通信的基本概念接收器发送器AB单工通信单片机原理及其接口技术通信的基本概念接收器发送器接收器发送器AB半双工方式单片机原理及其接口技术通信的基本概念接收器发送器接收器发送器AB半双工方式单片机原理及其接口技术通信的基本概念单片机原理及其接口技术数据通信的同步方式用一个起始位表示一个字符的开始,用停止位表示字符的结束,数据位则在起始位之后、停止位之前。通信时,数据从低位开始传送。为了保证数据传输的正确性,在数据位之后紧跟一位奇偶校验位,用于有限差错检测。当数据不需进行奇偶校验时,此位可省略。。D0D1D2D3D4D5D6D70/1起始位停止位校验位数据数据帧异步方式的一帧数据格式异步方式通信的基本概念单片机原理及其接口技术数据通信的同步方式异步方式D0D1D2D3D4D5D6D70/1起始位停止位校验位数据数据帧D0D1D2D3D4D5D6D70/1起始位1111校验位停止位空闲位数据1111空闲位1数据帧异步通信中数据传送格式在异步通信时,通信的双方必须遵守以下基本约定:字符格式必须相同;通信速率必须相同。通信的基本概念单片机原理及其接口技术数据通信的同步方式–异步方式通信的基本概念在串行通信的速率也称为波特率,波特率是指每秒传送二进制代码的位数,单位为位/秒(bit/s)。假设一台设备的数据传送速率为240字符/秒,异步通信方式时,字符格式位为:1位起始位,8位数据位,1位停止位,则波特率为:240×10=2400bit/s每一个二进制代码位的传送时间为波特率的倒数单片机原理及其接口技术数据通信的同步方式–异步方式异步通信的波特率一般在50~19200bit/s之间。10.417ms2400dT通信的基本概念每个数据位占用的时间都相等,发送器按照一个基本相同的时间单位发送一个数据位,接收器必须与传输符号同步,使采样的定时脉冲周期与码元相匹配,即发送时钟与接收时钟必须同步。在同步方式时,是以块的形式传送,数据块中的数据之间没有间隔。传送数据块时,在数据块之前加上同步字符(SYN),紧接着连续传送数据,并用准确的时钟来保证发送端与接收端的同步,当线路空闲不断地发送同步字符。一个大的数据块可以分解成若干个小的数据块,每个小数据块之间依靠同步字符来区别。单片机原理及其接口技术数据通信的同步方式–同步方式常用的串行通信协议-RS232单片机原理及其接口技术电气特性RS-232C上传送的数字量采用负逻辑,且与地对称。逻辑“1”:-3~-15V逻辑“0”:+3~+15V。RS-232C标准的信号传输的最大电缆长度为30米,最高数传速率为20kbit/s。51单片机的串行通信信号的电平是TTL。由于TTL电平和RS-232C电平互不兼容,所以两者对接时,必须进行电平转换。常用的电平转换芯片MAX232MC1488、MC1489常用的串行通信协议-RS485单片机原理及其接口技术RS-232C虽然应用很广泛,但其推出较早,在现代网络通讯中已暴出明显的缺点:传输速率低、通讯距离短、接口处信号容易产生串扰等。RS-485为半双工,收发双方的信号地不再共地,采用一对平衡差分信号线。RS-485对于多站互连是十分方便的。RS-485标准允许最多并联32台驱动器和32台接收器。RS-485的信号传输采用两线间的电压来表示逻辑“1”和逻辑“0”,由于收发方需要两根传输线。数据采用差分传输,所以干扰抑制性好。又因无接地问题,所以传输距离可达1200米,传输速率可达10Mbit/s。普通的PC机一般不带RS-485接口,因此要使用RS-232/RS-485转换器。对于单片机可以通过芯片MAX485来完成TTL/RS-485的电平转换。RS232协议单片机原理及其接口技术EIARS-232C是异步串行通信中应用最广泛的标准总线,是美国EIA(ElectronicIndustriesAssociation,电子工业联合会)开发公布的通信协议。适合于数据传输速率在0~20kb/s范围内的通信,包括了按位串行传输的电气和机械方面的规定电气特性(1)采取不平衡传输方式,是为点对点(即只用一对收、发设备)通信而设计的;(2)采用负逻辑。(3)适用于传送距离不大于15m,速度不高于20kb/s的本地设备之间通信的场合。机械特性连接器DB-25DB-15RS232协议单片机原理及其接口技术RS232协议单片机原理及其接口技术RS232单片机原理及其接口技术接口信号RS-232C标准接口有25条线,其中常用的有如下几条:DSR:数据装置准备好;DTR:数据终端准备好;RTS:请求发送;CTS:允许发送;DCD:接收线信号检出;RI:振铃指示;TXD:发送数据;RXD:接收数据;SGND(信号地)、PGND(保护地)。电平转换芯片单片机原理及其接口技术MAX202单片机原理及其接口技术MAX232单片机原理及其接口技术与PC机串口通信接口单片机原理及其接口技术MAX232外围的4个电解电容Cl,C2,C3,C4,是内部电源转换所需电容,其取值均为1F/25V,C5为0.1F的去耦电容。MAX232的引脚T1IN,T2IN,R1OUT,R2OUT为接TTL/CMOS电平的引脚,引脚T1OUT,T2OUT,R1IN,R2IN为接RS-232C电平的引脚。所以,T1IN,T2IN引脚应与MCS-51的串行发送引脚TXD相连接。R1OUT,R2OUT应与MCS-51的串行接收引脚RXD相连接。T1OUT,T2OUT应与PC机的接收端RD相连接。R1IN,R2IN应与PC的发送端TD相连接。由于市面上的连接线在内部都不交叉,因此在设计时在电路板上进行交叉。单片机原理及其接口技术MCS-51单片机的串行口结构串行口的工作有多种方式,由串行口控制寄存器(SCON)、波特率控制寄存器(PCON)及SBUF实现数据的接收和发送,在工作过程中,需要提供接收和发送的频率信号。在接收方式下,串行数据通过RXD(P3.0)进入单片机。当接收控制器检测到接收端RXD的负跳变时,启动接收过程,则串行口按照程序设定的格式、以一定的频率(波特率)接收一帧数据,接收完毕,数据存入接收缓冲器SBUF中,并置RI为1。在发送方式下,通过CPU执行MOVSBUF,A指令启动发送过程,数据由TXD(P3.1)一位一位的发出,发送完最后一位,将TI置1。MCS-51单片机的串行口单片机原理及其接口技术串行口控制寄存器(SCON,98H):用来设置串行口的工作方式和指示串行口的工作状态。SM0SM1SM2RENTB8RB8TIRID7D6D5D4D3D2D1D0串行口工作方式多机通信选择位允许接收选择位发送数据的第8位接收数据的第8位接收中断标志发送中断标志串行口的控制MCS-51单片机的串行口单片机原理及其接口技术SCON各位的定义:串行口的控制(1)SM0、SM1:串行口操作方式选择位。(2)SM2:方式2和3的多机通信控制位。方式2或3中,SM2=1,只有当RB8=1,才会将接收到的数据送入SBUF,并置RI为1。否则,将接收到的数据丢弃。而SM2=0,不论RB8是否为1,都将前8位数据存入SBUF,并置RI为1。MCS-51单片机的串行口单片机原理及其接口技术SCON各位的定义:串行口的控制(3)REN:允许串行接收位。REN=1允许接收,REN=1禁止接收。(4)TB8:方式2和3时要发送的第9位数据。TB8可作为奇偶校验位。在多机通信中作为发送地址帧或数据帧的标志。TB8=1,表示该发送帧为地址帧,TB8=0,表示该发送帧为数据帧。(5)RB8:方式2或3中接收的第9位数据可能是奇偶校验位或地址/数据标识位;方式1中,如果SM2=0,RB8是接收到的停止位,在方式0中,不使用RB8。(6)TI、RI:中断标志位RI=1标志着接收到一帧数据。RI必须由软件清零。TI=1标志着发送完一帧数据。TI必须由软件清零。MCS-51单片机的串行口单片机原理及其接口技术(二)电源控制寄存器(PCON,87H)串行口的控制SMOD:波特率倍增选择位。串行口工作在方式1、方式2、方式3时,如果采用定时/计数器T1产生波特率,则SMOD设置为1,波特率提高一倍;SMOD=0,波特率不会提高波特率选择位PCONSMOD---GF1GF0PDIDLD7D6D5D4D3D2D1D0单元地址:87HMCS-51单片机的串行口单片机原理及其接口技术(一)串行口工作方式0串行口的工作方式在方式0时,串行口作为同步移位寄存器使用,此时,RXD作为移位寄存器的出口和入口,TXD提供移位时钟脉冲,频率为振荡器频率的1/12。移位数据的发送和接收以8位为一组,低位在前,高位在后。MCS-51单片机的串行口单片机原理及其接口技术(一)串行口工作方式0串行口的工作方式串行口方式0的时序MCS-51单片机的串行口单片机原理及其接口技术(二)串行口工作方式1串行口的工作方式10位为一帧的异步串行通信方式,1位起始位,8位数据,1位停止位。发送和接收频率可设定。TXD为发送端,RXD为接收端,数据以一定的频率发送,由定时/计数器提供。MCS-51单片机的串行口单片机原理及其接口技术(二)串行口工作方式1串行口的工作方式串行口方式1的时序MCS-51单片机的串行口发送和接收频率(波特率BaudRate)的设定SMOD2BaudRate(TimerOverflowRate)32单片机原理及其接口技术串行口的工作方式通常采用定时/计数器的方式2产生波特率,以避免计数初始常数的重新装入。定时/计数器的溢出率(TimerOverflowRate)的倒数为定时/计数器的溢出周期,即定时时间。设计数初始值为X,定时时间为812(2X)DosctfMCS-51单片机的串行口波特率单片机原理及其接口技术串行口的工作方式定时器的时间常数为SMOD82BaudRate3212(2X)oscfSMOD82X23212BaudRateoscfMCS-51单片机的串行口(三)串行口工作方式2单片机原理及其接口技术串行口的工作方式11位为一帧的异步串行通信方式,1位起始位,9位数据,1位停止位。发送和接收频率是固定的:SMOD2BaudRate64oscf有两种情况,SMOD=1,波特率为晶体振荡器频率的1/32;SMOD=0,波特率为晶体振荡器频率的1/64。发送时,数据的第8位由TB8设置,而接收时,数据的第8位被放置在RB8中。接收和发送原理过程与方式1相同。支持多机通信方式。MCS-51单片机的串行口单片机原理及其接口技术(三)串行口工作方式2串行口的工作方式串行口方式2、3的