单片机原理及应用教程(c语言版)第7章 mcs51单片机的串行口

上传人:e****s 文档编号:243460267 上传时间:2024-09-23 格式:PPT 页数:79 大小:1.01MB
返回 下载 相关 举报
单片机原理及应用教程(c语言版)第7章 mcs51单片机的串行口_第1页
第1页 / 共79页
单片机原理及应用教程(c语言版)第7章 mcs51单片机的串行口_第2页
第2页 / 共79页
单片机原理及应用教程(c语言版)第7章 mcs51单片机的串行口_第3页
第3页 / 共79页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单片机原理及应用教程,(,C,语言版),第,7,章,MCS-51,单片机的串行口,主 编:,周国运,中国水利水电出版社,第,7,章,MCS-51,单片机串行口,目 录,7.1,串行通信基本知识,7.2,串行口结构及控制,7.3,串行口工作方式,7.4,串行口应用举例,7.5,单片机与,PC,机通信接口电路,本章要点,本章主要讲述,MCS-51,单片机串行口的结构、工作原理以及应用,。,主要内容包括串行通信基本知识、,MCS-51,单片机串行口结构、串行口工作方式以及单片机与,PC,机通信的接口电路。,7.1,串行通信基本知识,主要内容,7.1.1,数据通信,7.1.2,异步通信和同步通信,7.1.3,波特率,7.1.4,通信方向,7.1.5,串行通信接口种类,7.1.1,数据通信,计算机与外界的信息交换称为通信,。基本的通信方式有并行通信和串行通信两种。,1,并行通信,单位信息(通常指一个字节)的各位数据,同时传送,的通信方法称为并行通信。,2,串行通信,单位信息的各位数据被分时,一位一位依次顺序传送,的通信方式称为串行通信。,7.1.1,数据通信,图,7-1,并行通信示意图,两种通信特点,:,并行通信连线多,速度快,适合,近距离,通信;,串行通信连线少,速度慢,适合,远距离,通信。,图,7-1,并行通信示意图,图,7-2,串行通信示意图,RXD,TXD,89,C,52,GND,TXD,RXD,GND,外,部,设,备,1,异步通信,(时钟不同,甚至频率不同),异步通信中,传送的数据可以是一个,字符,代码或一个,字节,数据,数据以,帧,的形式一帧一帧传送。,7.1.2,异步通信和同步通信,图,7-3,异步通信的一帧数据格式,1,0,/,1,0,/,1,0,/,1,0,0,/,1,0,/,1,0,/,1,0,/,1,0,/,1,0,/,1,1,8,位数据,第,n,帧,0,0,/,1,.,空闲位,或,停止位,起始位,停止位,校验位,空闲位,起始位,2,同步通信,(用同一个时钟),在同步通信中,每一数据块发送开始时,先发送,一个或两个同步字符,,使发送与接收取得同步,然后再顺序发送数据。数据块的各个字符间,取消起始位和停止位,,所以通信速度得以提高,。,7.1.2,异步通信和同步通信,图,7-4,同步通信数据帧格式,7.1.3,波特率,在串行通信中,对数据传送速度有一定要求。,波特率表示每秒传送的位数,,单位为,b/s,(记作波特)。,例如:数据传送速率为每秒钟,10,个字符,若每个字符的一帧为,11,位,则传送波持率为:,11b/,字符,10,字符,/s,110b/s,异步通信的传送速率一般在,5019 200b/s,之间,。,7.1.4,通信方向,单工方式:,一对传输线只允许,单方向,传送数据;,半双工方式:,一对传输线允许向两个方向中的任一方向传送数据,但,不能同时,进行;,全双工方式:,用两对传输线连接在发送器和接收器上,发送和接收,能同时,进行。,7.1.4,通信方向,图,7-5,串行通信传输方式,发送器,发送器,数据流,(,b,)半双工方式,接,收,器,接,收,器,接,收,器,发,送,器,发送器,发送器,数据流,(,a,)单工方式,(,c,)全双工方式,接,收,器,接,收,器,7.1.5,串行通信接口种类,根据串行通信格式及约定(如同步方式、通信速率、数据块格式等)不同,形成了许多串行通信接口标准,如常见的:,UART,(通用异步串行通信接口),USB,(通用串行总线接口),I2C,(集成电路间的串行总线),SPI,(同步串行外设总线),485,总线、,CAN,总线接口等,7.2,串行口,结构及控制,主要内容,7.2.1 MCS-51,串行口结构,7.2.2,特殊功能寄存器,7.2.3,波特率设计,7.2.1 MCS-51,串行口结构,图,7-6,串行口方式,1,、,3,内部结构示意简图,分为三个部分:时钟、发送部分、接收部分,16,发送,SBUF,(99H),16,输入移位寄存器,TXD,写,SBUF:,发送,(,程序,),读,SBUF:,接收,(,程序,),RI,TI,移位时钟,RXD,装载,SBUF(,自动,),12,TH1,TL1,fosc,2,SMOD,=1,SMOD,=0,T1,溢出率,接收,SBUF,(99H),(P3.0),(P3.1),2,TH2,TL2,fosc,T2,溢出率,7.2.2,与串行口有关的特殊功能寄存器,1,控制状态寄存器,SCON,功能:,设置串行口的工作方式和标识串行口状态,。,字节地址:,98H,,,可位寻址,。,复位值:,0000 0000B,。格式如下:,D7,D6,D5,D4,D3,D2,D1,D0,SM0,SM1,SM2,REN,TB8,RB8,TI,RI,SM0,和,SM1,(,、,):串行口工作方式选择位。,7.2.2,与串行口有关的特殊功能寄存器,SM0,SM1,工作方式,功能说明,波特率,0,0,方式,0,同步移位寄存器,fosc/12,0,1,方式,1,10,位异步通信,可变,,T1,或,T2,提供,1,0,方式,2,11,位,UART,、可多机,fosc/64,或,fosc/32,1,1,方式,3,11,位,UART,、可多机,可变,,T1,或,T2,提供,SM2,(,):多机通信控制位,,在方式,2,或,3,中使用。,REN,(,):允许接收控制位。,设置,1,,允许接收;清,0,:禁止接收。,TB8,(,):发送数据的第,9,位。,RB8,(,):接收数据的第,9,位。,TI,(,):发送中断标志。,RI,(,):接收中断标志。,7.2.2,与串行口有关的特殊功能寄存器,关于,TI,和,RI,:,串行发送中断标志,TI,和接收中断,RI,是同一个中断源,,CPU,不知道是发送中断标志,TI,还是接收中断标志,RI,产生的中断请求,所以,在全双工通信时,必须由,软件来判别,。,多机通信实现的原理:,各个从机的,SM2,设置为,1,;主机,TB8,发送,1,表明是地址,选择接收机;主机,TB8,发送,0,为数据。,(,1,)实现的条件:,各个从机的,SM2,设置为,1,。,当,SM2=1,时:,RB8=1,,则保留接收到的数据;,RB8=0,则丢弃。,(,2,)实现的方法,主机先发送从机地址,并且,TB8,为,1,。,这时各个从机均可接收此地址,目标从机,则对自己的,SM2,清,0,;其它从机保留,SM2=1,。,主机再发送数据,并且,TB8,为,0,这时目标从机正常接收数据,其它从机均丢弃。,7.2.2,与串行口有关的特殊功能寄存器,地址,2,电源控制寄存器,PCON,电源控制寄存器,PCON (,地址为,87H),中,只有,SMOD,位与串行口工作有关,。,D7,D6,D5,D4,D3,D2,D1,D0,SMOD,-,-,-,GF1,GF0,PD,IDL,7.2.2,与串行口有关的特殊功能寄存器,SMOD,():,波特率倍增位。,串行口工作于方式,1,、方式,2,和方式,3,时,,SMOD,1,,串行口波特率加倍,。,复位值:,0000 0000B,。,不能进行位寻址,。,7.2.3,波特率设计,方式,0,和方式,2,的波特率是,固定的,,方式,1,和方式,3,的波特率是由定时器,T1,的溢出率,来决定的。在增强型单片机中,也可以使用,T2,作波特率发生器,。,1,方式,0,的波特率,方式,0,为,同步移位寄存器,方式。,固定为振荡频率的,1/12,。并不受,PCON,寄存器中,SMOD,位的影响。,方式,0,的波特率,=fosc/12,2,方式,2,的波特率,方式,2,是,波特率只有两种,(,fosc/64,或,fosc/32,)、,11,位的异步通信 ,可多机通信。,时钟:,接收与发送的时钟直接来自振荡频率,fosc,,是,fosc/2,,并且还与,PCON,中,SMOD,位有关。,其波特率为:,当,SMOD=0,时,波特率为,fosc,的,1/64,;若,SMOD=1,,则波特率为,fosc,的,1/32,。即,方式,2,的波特率,=,2,SMOD,fosc/64,7.2.3,波特率设计,3,方式,1,和方式,3,的波特率,(,1,),T1,作波特率发生器,在最典型应用中,定时器,T1,选用模式,2,定时,此时,n=8,,设定时器的初值为,X,:,于是,,X=256,-,方式,1,、,3,的波特率,=,(,T1,溢出速率),即波特率,=,/,(,2,n,-,初值),7.2.3,波特率设计,(,2,),T2,作波特率发生器,设寄存器,T2CON,的位,TCLK=1,和(或),RCLK=1,时,允许串行口从,T2,获得发送和(或)接收的波特率。,串行口方式,1,、,3,的波特率,=,T2,溢出率,/16,定时器,2,作波特率发生器时,计数在每个,状态周期,递增。这样:,方式,1,、,3,的波特率,f,b,=,(RCAP2H,、,RCAP2L)=65536-fosc/,f,b,/32,控制字、模式字:,T2CON=0011 0100B=34H,T2MOD=00H,7.2.3,波特率设计,主要内容,7.3.1,串行口方式,07.3.2,串行口方式,17.3.3,串行口方式,2,和方式,3,7.3,串行口工作方式,7.3.1,串行口方式,0,方式,0,为,同步移位寄存器输入,/,输出方式,常用于扩展,I/O,口,。,RXD,为数据输入或输出,,,TXD,输出移位时钟,,作为外接部件的同步信号。,方式,0,下,收,/,发的仅,8,位数据,,无起始位、奇偶校验位及停止位,低位在前、高位在后;,波特率是固定的,为,fosc/12,,即机器周期频率,。,启动发送:,TI=0,、写,SBUF,启动接收:,RI=0,、,REN,置,1,7.3.1,串行口方式,0,方式,方式,0,发送,方式,0,接收,7.3.1,串行口方式,0,1 16,2 15,3 14,4 13,5 12,6 11,7 10,8 9,SH/LD,CLK,E,并,F,入,G,H,串出,Q,GND,74LS165,V,CC,时钟禁止,D,C,并,B,入,A,串入,Q,H,串出,并入,/,串出,1 16,2 15,3 14,4 13,5 12,6 11,7 10,8 9,Q1,Q2,Q3,Q4,Q5,Q6,Q7,GND,74Hc595,串入,/,并出,串入,Q0,DS,OE,ST_CP,SH_CP,MR,Q7,7.3.1,串行口方式,0,串,A,入,B,Q,A,Q,B,Q,C,Q,D,GND,V,CC,Q,H,Q,G,Q,F,Q,E,CLR,CLK,1 14,2 13,3 12,4 11,5 10,6 9,7 8,74LS164,1 16,2 15,3 14,4 13,5 12,6 11,7 10,8 9,Q1,Q2,Q3,Q4,Q5,Q6,Q7,GND,74Hc595,V,CC,Q0,DS,OE,ST_CP,SH_CP,MR,Q7,并,出,串入,/,并出,串入,/,并出,串入,用串行口方式,0,扩展并行输出,/,输入口,7.3.1,串行口方式,0,发送电路,接收电路,7,SH/LD,扩,展,并,行,输,出,扩,展,并,行,输,入,7.3.2,串行口方式,1,方式,1,真正用于串行发送或接收,。,TXD,与,RXD,分别用于发送、接收数据。,帧格式:,1,位起始位,、,8,位数据位,(低位在前)、,1,位停止位,,共,10,位。,在接收时,停止位进入,SCON,的,RB8,此方式的,波特率可调,由,T1,或,T2,控制,。,SCON=0101 0000b=0x50,1,、方式,1,发送,TI=0,、写,SBUF,启动发送,7.3.1,串行口方式,0,方式,方式,1,接收,方式,1,发送,7.3.2,串行口方式,1,2,、方式,1,接收,1,)接收条件:,SCON,中的,REN,置,1,2,)接收过程:,REN,置,1,后,串行口对接收引脚,RXD,检测,当,RXD,由高变低时开始移位接收;接收完后将,停止位装入,RB8,中,。,3,)接收的数据有效的条件,(,两条,),:,a,、,RI=0,;,b,、,SM2=0,,或者,SM2=1,并且,RB8=1,满足以上,2,条,,则将,8,位数据装入,SBUF,,且,RI,置,1,。,有以下情况之一则数据无效:,a,),RI=1,;,b,),SM2=1,并且,RB8=0,注意:除了方式,2,、,3,的多机通信之外,,SM2,应清,0,7.3.3,串行口方式,2,和方式,3,串行口工作在方式,2,和方式,3,均为,每帧,11,位异步通信格式,,由,TXD,和,RXD,发送与接收。 方式,2,和,3,的操作是完全一样的,不同的只是特波率。,每帧,11,位:,即,1,位起始位,、,8,位数据位,(低位在前)、,1,位可编程的第,9,数据位,和,1,位停止位,。,发送时,,第,9,数据位(,TB8,)可以设置为,1,或,0,,在校验时可将奇偶位装入,TB8,;,接收时,,第,9,数据位进入,SCON,的,RB8,。,SCON=1001 0000b=0x90,方式,2,接收,SCON=1101 0000b=0xD0,方式,3,接收,7.4,串行口应用举例,主要内容,7.4.1,同步方式应用,7.4.2,异步方式应用,7.4.1,同步方式应用,MSC-51,单片机的串行口在方式,0,时,以,同步方式操作,。外接串入,/,并出或并入,/,串出器件,可,实现,I/O,口的扩展,。,例,7-2,用,89C52,串行口外接,74HC,595,串入,/,并出移位寄存器扩展,8,位并行输出口,,8,位并行输出口的每位都接一个发光二极管,要求,8,位发光二极管循环点亮。,数据的输出通过,RXD,发送,,移位,时钟,通过,TXD,送出,,74HC,595,用于串,/,并转换。,7.4.1,同步方式应用,图,7-13,方式,0,扩展输出电路,89,C,52,RXD,TXD,P3.6,DS,OE,74HC595,SH_CP,MR,Q7,ST_CP,级联输出,输出清,0,C,语言程序清单:,#include,#include,intrins,.h,sbit P,3,_,6,=P,3,6,;,void delay10xms(unsigned char x),/,设晶振为,12MHz,unsignedint i;,while(x-),for(i=0;i830;i+);,7.4.1,同步方式应用,void main(),unsigned char dd=0x0,1,;,SCON=0x0;,/设置串口方式0,while(1),TI=0,; /清除发送结束标志,SBUF=dd,; /发送,dd=_crol_(dd,1);,/,左移,1,位,while(TI=0);,/等待发送结束,P3_6=0;,P3_6=1;/输出数据,delay10xms(100);,/,延时,1s,7.4.1,同步方式应用,7.4.1,同步方式应用,MSC-51,单片机的串行口在方式,0,时,以,同步方式操作,。外接串入,/,并出或并入,/,串出器件,可,实现,I/O,口的扩展,。,例,7-2,用,89C52,串行口外接,74HC164,串入,/,并出移位寄存器扩展,8,位并行输出口,,8,位并行输出口的每位都接一个发光二极管,要求,8,位发光二极管循环点亮。,数据的输出通过,RXD,发送,,移位,时钟,通过,TXD,送出,,74HC164,用于串,/,并转换。,7.4.1,同步方式应用,图,7-13,方式,0,扩展输出电路,C,语言程序清单:,#include,sbit P1_0=P10;,void main(),unsigned char i;,SCON=0x00;/,串行口方式,0,初始化,ES=1;EA=1;,while(1),for(i=0;i8;i+),P1_0=0;/,关闭并行输出,SBUF=1i;,delay();/,延时函数,读者自行添加,7.4.1,同步方式应用,void s_srv() interrupt 4 /,中断服务程序,TI=0;,P1_0=1;/,打开并行输出,汇编语言程序清单:,ORG0000H,LJMPMAIN,ORG0023H,LJMPS_SRV ;,串行口中断服务程序,7.4.1,同步方式应用,7.4.1,同步方式应用,MAIN:,MOVSCON,#00H;,串行口方式,0,初始化,SETBES,SETBEA,MOV A,#1,LOOP:,CLRP1.0;,关闭并行输出,MOVSBUF,A;,开始串行输出,ACALLDELAY,RLA,SJMPLOOP;,等待中断,S_SRV:,CLRTI,;,中断服务程序,RETI,END,7.4.1,同步方式应用,例,7-3,用,89C52,串行口外接,74HC165,并出,/,串入,移位寄存器扩展,8,位并行输入口,,8,位并行输入口的每位都接一个拨动开关,要求,读入,开关量的值。,7.4.1,同步方式应用,图,7-14,方式,0,扩展输入电路,89C52,RXD,TXD,P,1,.,0,P,1,.,1,Q,H,74,HC,165,CLK,SH/LO,INH,时钟禁止,7.4.1,同步方式应用,解:,数据的输入通过,RXD,接收,移位时钟通过,TXD,送出,时钟禁止端接地,使时钟有效,接一按键,当按键按下时输入一次数据,数据接收采用,查询方式,。,C,语言程序清单:,#include,sbit LOAD165=P10;,sbit KEY=P11;,C,语言程序清单:,#include,sbit LOAD165=P10;,sbit KEY=P11;,void delay10xms(unsigned char x),/,设晶振为,12MHz,unsignedint i;,while(x-),for(i=0;i14) /,发送完毕,,ES=0;/,禁止串口中断, ,7.4.2,异步方式应用,汇编语言程序清单:,ORG0000H,SJMPMAIN;,上电,转主程序,ORG0023H,SJMPSERVER;,转中断服务程序,MAIN:,MOV,SP,#0DFH,;,设置堆栈指针,MOV,SCON,#0C0H,;,设置串口方式,3,发送,MOV,TMOD,#20H,; T1,以模式,2,定时,MOVTL1,#0F4H,MOVTH1,#0F4H,SETBTR1,SETBES;,允许串行口中断,SETBEA;CPU,开中断,MOVR0,#50H,MOVR7,#15,7.4.2,异步方式应用,MOVA,R0,MOVC,P,MOVTB8,C ;,送奇偶标志位到,TB8,MOVSBUF,A ;,发送第一个数据,SJMP$,SERVER:,JBCRI, ENDT ;,清除发送中断标志,CLRTI,INCR0,;,修改数据地址,MOVA,R0,MOVC,P,MOVTB8,C,MOVSBUF,A ;,发送下一个数据,DJNZR7,ENDT,;,判断数据块是否发送完,CLRES ;,否则,禁止串行口中断,ENDT:RETI ;,中断返回,7.4.2,异步方式应用,例,7-5,编写一单片机程序,将从串行口接收的,16,字节数据送入片内,RAM,的,50H,5FH,单元中。要求,波特率为,2400b/s,,作奇偶校验,设单片机的晶振频率为,11.0592 MHz,。,解:,RB8,作奇偶校验位,,接收时,将接收到的数据的奇偶校验位与,RB8,对比,以判断正确与否。将串行口设置为,方式,3,工作,。用中断方式接收。,7.4.2,异步方式应用,C,语言程序清单:,#include,unsigned char;,unsigned char i=0, array16,_at_,0x50;/,定义数据,void main(),SCON=0xd0,; /,设置串口方式,3,,允许接收,TMOD=0x20,;/T1,模式,2,定时,TH1=0xf4;TL1=0xf4;,TR1=1;,ES=1;EA=1;,while(1);,7.4.2,异步方式应用,void int_ser(),interrupt 4,if(TI)TI=0; /,循环接收,16,个数据,else,RI=0;,ACC=SBUF;,if(RB8=P) /,校验正确,arrayi+=ACC;,if(i15),ES=0;,else /,校验不正确,F0=1;err();, ,7.4.2,异步方式应用,C,语言程序清单:,#include,unsigned char i;,unsigned char array16,_at_,0x50; /,接收缓冲区,void main(),SCON=0xd0,; /,设置串口方式,3,,允许接收,TMOD=0x20,;/T1,模式,2,定时,TH1=0xf4;,TL1=0xf4;,TR1=1;,7.4.2,异步方式应用,for(i=0;i16;i+) /,循环接收,16,个数据,while(!RI); /,等待一次接收完成,RI=0;,ACC=SBUF;,if(RB8=P) /,校验正确,arrayi=ACC;,else /,校验不正确,F0=1;,break;, ,while(1);,7.4.2,异步方式应用,汇编语言程序清单:,MAIN:,MOV,SCON,#0D0H,;,串口方式,3,,允许接收,MOV,TMOD,#20H,; T1,以方式,2,定时,MOV TL1,#0F4H,MOV TH1,#0F4H,SETB TR1,MOV R0,#50H;,首地址送,R0,MOV R7,#10H;,数据长度送,R7,WAIT:,JNB RI,$;,等待接收完成,CLR RI;,清中断接收标志,RI,MOV A,SBUF;,从串口读数送累加器,7.4.2,异步方式应用,JNBP,PNP;P=0,,转,PNP,JNBRB8,ERROR;P=1,、,RB8=0,,转出错,SJMP RIGHT,PNP:JBRB8,ERROR;P=0,、,RB8=1,,转出错,RIGHT:MOV R0,A;,存数,INCR0;,修改地址指针,DJNZ R7,WAIT,;,未接收完,继续,CLRF0;,置正确接收标志,F0=0,SJMP$,ERROR:SETB F0;,置错误接收标志,F0=1,SJMP$,7.4.2,异步方式应用,例,7-6,用第,9,个数据位作奇偶校验位,,编写串行口方式,3,的全双工通信程序,,设双机将各自键盘的按键键值发送给对方,接收正确后放入缓冲区(显示及做其它处理),设晶振为,11.059 2 MHz,,波特率为,9 600b/s,。,解:,因为是全双工方式,通信双方的程序一样。发送和接收都采用中断方式。,T1,初值,x,=0xfd,SCON,=11010000b=0xd0,7.4.2,异步方式应用,C,语言程序清单:,#include,unsigned char buffer, k;,void main(),SCON=0xd0,;,/,置串口方式,3,允许接收,TMOD=0x20,;,/T1,以模式,2,定时,TL1=0xfd;,TH1=0xfd;,TR1=1;,ES=1;,/,开串行口中断,EA=1;,/,开总中断,7.4.2,异步方式应用,while(1),k=key();,/,读取按键值,if(k!=0xff),/,无键按下返回,0xff,ACC=k;,/,将键值送累加器,取,P,位,TB8=P;,/,送,TB8,SBUF=ACC;,/,发送,display();,/,显示程序,7.4.2,异步方式应用,void serial_server() interrupt 4,if(TI),/,发送引起,清,TI,TI=0;,else,/,否则,接收引起,RI=0;,ACC=SBUF;,/,读取接收数据,if(RB8=P),/,校验正确,,buffer=ACC;,/,存入缓冲区,7.4.2,异步方式应用,汇编语言程序清单:,ORG 0000H,SJMP MAIN ;,跳转到主程序,ORG 23H,LJMP S_SERV ;,跳转到串口中断服务程序,MAIN:,MOV SP,#0DFH ;,设置堆栈指针,MOV SCON,#0D0H,;,串口初始化,MOV TMOD,#20H,;,T1,以模式,2,定时,MOV TL1,#0FDH,MOV TH1,#0FDH ;,定时器,1,赋初值,7.4.2,异步方式应用,SETB TR1 ;,启动定时器,1,SETB ES ;,开中断,SETB EA,LOOP:,LCALL KEY;,读取按键,(,存于,A,中,), ;,有键按下返回键值,,CJNE A,#0FFH,SEND ;,无键按下返回,0FFH,;,有键按下转发送,NEXT:,LCALL DISPLAY ;,调用显示,SJMP,LOOP,;,主程序循环,7.4.2,异步方式应用,SEND:,MOV C,P,MOV TB8,C,MOV SBUF,A;,带校验位发送,LJMP NEXT;,循环,S_SERV:,;中断服务程序,JBC RI,RECV ;,是接收中断转接收处理,CLR TI;,是发送中断,清,TI,RETI,7.4.2,异步方式应用,RECV: ;,接收处理程序,MOV A,SBUF;,取接收值送,A,JB P,ONE;,校验位为,1,,转,JB RB8,I_END;,校验错,转中断返回,SJMP RIGHT;,校验正确,正确处理,ONE:,JNB RB8,I_END;,校验错,转中断返回,RIGHT:,MOV BUFFER,A;,接收数据送缓冲区,I_END:,RETI ;,中断返回,7.4.2,异步方式应用,7.5,单片机与,PC,机通信的接口电路,主要内容,7.6.1 MAX232,芯片简介,7.6.2 PC,机与,89C52,串行通,信的接口电路,利用,PC,机配置的异步通信适配器,可以很方便地完成,PC,机与单片机的数据通信。,PC,机与,89C52,单片机最简单的连接是,零调制,3,线经济型,,这是进行全双工通信所必须的最少数目的线路。,7.5,单片机与,PC,机通信的接口电路,串行通信电平:,89C52,单片机为,TTL,电平,PC,机串行接口是,RS-232C,标准,数字值:,1 0,TTL,电平:,+5V 0V,232,电平:,-5V,-15V +5V,+15V,串行通信电平转换:,用,MAX232,等,芯片,7.5,单片机与,PC,机通信的接口电路,7.5.1 MAX232,芯片简介,MAX232,芯片:,是,MAXIM,公司产品、包含两路接收器和两路驱动发送器,适用于各种,EIA-232C,和的通信接口。,MAX232,功能:,内部有电源电压变换器,可以把输入的,+5V,电源电压变换成为,RS-232C,输出电平所需的,10V,电压。,MAX232,芯片适用于数字电路的,单一,+5V,电源,。,7.5.1 MAX232,芯片简介,图,7-15 MAX232,芯片引脚,7.5.1 MAX232,芯片简介,MAX,2,3,2,原理结构路图,C1,C4:1F,7.5.2 PC,机与,89C52,串行通信的接口电路,图,7-17,采用,MAX232,接口的串行通信电路,PC,机,串口,MAX232,1,2,3,4,6,5,7,8,9,16,15,14,13,12,11,10,C,1,+,V,+,C,1,+,V,+,C,1,-,C,2,+,C,2,-,V,-,T,2,OUT,R,2,IN,R,2,OUT,T,2,IN,T,1,IN,R,1,OUT,T,1,OUT,R,1,IN,GND,V,CC,89C52,TXD,RXD,+,+,+,+,V,CC,C,2,C,1,C,3,C,4,C,5,5,4,3,2,1,9,8,7,6,9,8,7,6,5,4,3,2,1,本章小结,本章介绍了数据通信的,一般概念,和单片机串行口,基本组成,与,应用,。,通信是计算机与外设之间的数据传送,。通信方式有,串行通信,和,并行通信,,串行通信又分为,同步通信,和,异步通信,。,MCS-51,单片机有一个全双工,UART,,工作方式有,4,中,,方式,0,为移位寄存器方式,主要用来进行,串行与并行数据的转换,,,方式,1,、,2,、,3,为通用的,异步传送,方式。,本章完,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!