单片机的串行口与应用.ppt

上传人:夺命阿水 文档编号:246795 上传时间:2023-03-22 格式:PPT 页数:61 大小:9.79MB
返回 下载 相关 举报
单片机的串行口与应用.ppt_第1页
第1页 / 共61页
单片机的串行口与应用.ppt_第2页
第2页 / 共61页
单片机的串行口与应用.ppt_第3页
第3页 / 共61页
单片机的串行口与应用.ppt_第4页
第4页 / 共61页
单片机的串行口与应用.ppt_第5页
第5页 / 共61页
点击查看更多>>
资源描述

《单片机的串行口与应用.ppt》由会员分享,可在线阅读,更多相关《单片机的串行口与应用.ppt(61页珍藏版)》请在课桌文档上搜索。

1、第6章单片机的串行口原理及应用,2,问题,2什么叫波特率?它反映的是什么?它与时钟频率是相同的吗?,3.8051单片机的串行口有哪几种工作方式?各有什么特点和功能?,1.8051单片机与串行口相关的特殊功能寄存器有哪几个?说明它们各个位的功能意义。,3,并行通信方式与串行通信方式,并行通信,在数据传输时,如果一个数据编码字符的所有各位都同时发送、并排传输,又同时被接收,则将这种传送方式称为并行传送方式。,特点:传送速度快、效率高。数据线多,成本高。,串行通信,在数据传输时,数据编码字符的所有各位不是同时发送,而是按一定顺序,一位接着一位在信道中被发送和接收,则将这种传送方式称为串行传送方式。,

2、特点:成本低,但速度慢。,6.1串行通信方式,4,2 异步传输和同步传输 异步传输,异步传输以一个字(或称字符)为单位进行数据传输,每个字符都用起始位、停止位包装起来,在字符间允许有长短不一的间隙(空闲位)。,一个字符由四个部分组成:起始位、数据位、奇偶校验位和停止位。起始位为“0”信号,起始位后面紧跟着的是数据位,它一般是8位,奇偶校验位只占一位,停止位用来表征字符的结束,它一定是“1”,停止位可以是1位或2位。,5,3.波特率 波特率表示串行通信时每秒钟传送”位”的数目,比如1s传送1bit,就是1波特。即1波特1bit/s(位/秒),串行通信常用的标准波特率在RS-232C标准中已有规定

3、,如波特率为600、1200、2400、4800、9600、19200等等。,假若数据传送速率为120字符/s,而每一个字符帧已规定为10个数据位,则传输速率为120101200bit/s,即波特率为1200。,同步传输 同步传输用来对数据块进行传输,一个数据块中包含着许多连续的字符,在字符之间没有空闲。,6,4 单工方式、半双工方式、全双工方式,单工方式 信号(不包括联络信号)在信道中只能沿一个方向传送,而不能沿相反方向传送的工作方式称为单工方式。半双工方式 通信的双方均具有发送和接收信息的能力,信道也具有双向传输性能,但是,通信的任何一方都不能同时既发送信息又接收信息,即在指定的时刻,只能

4、沿某一个方向传送信息。这样的传送方式称为半双工方式。半双工方式大多采用双线制。全双工方式 若信号在通信双方之间沿两个方向同时传送,任何一方在同一时刻既能发送又能接收信息,这样的方式称为全双工方式。,7,8051通过RXD(P30)引脚、TXD(P31)引脚输入、输出,与外界通信。内部有一个通用异步接收发送器(UART),及波特率发生器。,UART由同步移位寄存器、接收缓冲器(SBUF)和发送缓冲器(SBUF)组成它主要完成把数据进行串、并行的转换。,8051串行口基本结构主要由两大部分组成。,波特率发生器:,主要由T1及内部的一些控制开关和分频器所组成。它提供串行口的时钟信号为 TXCLOCK

5、(发送时钟)和 XCLOCK(接收时钟)。,串行口的内部,6.2串行口的工作方式与控制,8,8051串行口结构图,UART,9,串行口状态控制寄存器 SCON,寄存器SCON既可字节寻址也可位寻址,字节地址为98H,位地址为98H9FH。其格式如下:,工作方式选择位,允许方式2、3中的多处理机通信位,允许串行接收位,方式2和方式3中要发送、接收的第9位数据,发送、接收中断标志位,10,SM0,SM1串行口工作方式选择位,其功能见表。,SM2(SCON.5)允许方式2、3中的多处理机通信位。,方式0时,SM20。方式1时,若SM21,只有接收到有效的停止位,接收中断RI才置1。方式2和方式3时,

6、若SM21,则只有当接收到的第9位数据(RB8)为1时,才将接收到的前8位数据送入缓冲器SBUF中,并把RI置1、同时向CPU申请中断;如果接收到的第9位数据(RB8)为0,RI置0,将接收到的前8位数据丢弃。而当SM20时,则不论接收到的笫九位数据是0 或1,都将前8位数据装入SBUF中,并申请中断。,11,电源控制寄存器 PCON 其中最高位SMOD与串行口控制有关,其它位与掉电方式有关。其格式如下:,SMOD(PCON.7)串行通信波特率系数控制位。当SMOD1时,使波特率加倍。复位后,SMOD0。,串行数据寄存器SBUF 包含在物理上是隔离的两个8位寄存器:发送数据寄存器和接收数据寄存

7、器,它们共用一个地址99H。其格式如下:,读SBUF(MOVA,SBUF),访问接收数据寄存器;写SBUF(MOV SBUF,A),访问发送数据寄存器。,12,1 串行口方式0 同步移位寄存器方式,当SM00、SM10时,串行口选择方式0。这种工作方式实质上是一种同步移位寄器方式。数据传输波特率固定为(112)fosc。由RXD(P30)引脚输入或输出数据,由TXD(P31)引脚输出同步移位时钟。接收发送的是8位数据,传输时低位在前。帧格式如下:,传输方向,13,串行口工作方式0工作原理图,控制向SBUF输入1或0,14,发送,8位数据写入SBUF,选通D触发器置1,发送启动,8位数据移位输出

8、,左边补0,第9位向左均为 0,零检测器为 0,撤消发送,TI置位,15,接收,当REN1且RI为零,启动接收,1111 1110写入移位寄存器,RXD引脚接收一位信号,移位寄存器左移一位,右边的0移到最左边,移位寄存器的内容送入SBUF,清除接收信号,置位SCON中的RI,发出中断申请,16,当 SM00、SM1l时,串行口选择方式1。数据传输波特率由T1的溢出决定,可用程序设定。由 TXD(P31)引脚发送数据。由 RXD(P30)引脚接收数据。发送或接收一帧信息为10位:1位起始位(0)、8位数据位(低位在前)和l位停止位(1)。帧格式如下:,2.串行口方式1,17,发送:方式1时,发送

9、的工作原理图如上图所示。,数据写 SBUF,计数器溢出,数据为0发送为0,TXD输出0,或门,与门,D将1写入移位寄存器9位,D0发送,计数器第16次溢出,D1发送,发送第9位1,清除发送信号,TI置位,18,接收,REN=1 且RI=0,RXD负跳变,计数器复位,1FFH写 移位寄存器,对RXD采样0,计数器溢出,对RXD采样,计数器第16次溢出,采样最后位,RI=1,请求中断,19,当SM01、SM10时,串行口选择方式2;当SM01、SM11时,串行口选择方式3。由TXD(P3l)引脚发送数据。由RXD(P30)引脚接收数据。,为11位:1位起始位(0)、8位数据位(低位在前)、1位可编

10、程位和1位停止位(1)。发送时可编程位TB8可设置为1或0,接收时可编程位进入SCON寄存器的RB8位。方式2的波特率是固定的,为振荡器频率的1/32或1/64。方式3的波特率则由T1的溢出决定,可用程序设定。,帧格式如下:,3 串行口方式2和3 9位UART,20,串行口工作方式2工作原理图,21,8051单片机串行口四种工作方式对应着三种波特率。,对于方式0,波特率是固定的,为单片机振荡频率fosc的 1/12。,对于方式2,波特率由下式计算:,式中,Smod为PCON寄存器中的D7位,fosc为单片机的振荡频率。,对于方式1和方式3,波特率都由定时器1的溢出率决定,计算公式如下:,式中,

11、Smod为PCON寄存器中的D7位,fosc为单片机的振荡频率,k取决于定时器T1的工作方式:定时器T1工作于方式0时,k=13;定时器T1工作于方式1时,k=16;定时器T1工作于方式2和方式3,k=8。,(6-1),(6-2),22,6.3 串行口应用举例6.3.1 串口/并口转换,例:使用74LS164的并行输出接8只发光二极管,利用它的串入并出功能,把发光二极管从左向右依次点亮,并不断循环之。,串行输入并行输出的移位寄存器,串行输入端,时钟输入端,并行输出端,23,MOVSCON,#00HCLRES;禁止串行口中断MOVA,#80H;先显示最左边发光二极管LED:MOVSBUF,A;串

12、行输出JNBTI,$;输出等待CLRTIACALL DELAY;轮显间隔RRA;发光右移AJMPLED;循环,设串行口为方式0,24,74LS164,串行输入,并行输出,最高位,并行输出,低位,与下一164连,时钟输入,清除端,低电平输出全为0,25,例6-1 在单片机的串行口外接一个串入并出8位移位寄存器74LS164,实现串口到并口的转换。数据从RXD端输出,移位脉冲从TXD端输出。执行如下程序后LED指示灯轮流点亮。,串行输入端,时钟输入端,并行输出端,26,源程序清单如下:ORG 0000H AJMP START ORG 0030HSTART:MOV SCON,#0;设置串行口工作方式

13、0 MOV 30H,#01H;8字节待传输数据 MOV 31H,#02H MOV 32H,#04H MOV 33H,#08H MOV 34H,#16 MOV 35H,#32 MOV 36H,#64 MOV 37H,#128 MOV R0,#30H;R0作数据指针 MOV R2,#8;R2作计数器LOOP:MOV A,R0,MOV SBUF,A;开始发送数据LO:JNB TI,LO;检查发送完标志 CLR TI ACALL DELAY;延时 INC R0;发送下一字节 DJNZ R2;LOOP SJMP STARTDELAY:MOV R7,#3;延时子程序DDl:MOV R6,#0FFHDD2:

14、MOV R5,#0FFH DJNZ R5,DJNZ R6,DD2 DJNZ R7,DDl RET END,27,例6-2在单片机的串行口外接一个并入串出8位移位寄存器74LS165,实现并口到串口的转换。外部8位并行数据通过移位寄存器74LS165进入串行口,然后再送往P0口点亮LED灯。,执行以下程序后,改变拨动开关DIPSWC_8的状态,可以看到LED指示灯会随之变化。,输出,输入,28,ORG 0000HSTART:CLR P1.0 SETB P1.0;发送移位脉冲 MOV SCON,#10H;允许串行口接收数据WAIT:JNB RI,WAIT;等待外部数据 MOV A,SBUF;读取数

15、据 CLR RI;清除接收完标志 MOV P0,A;接收到的数据送P0口显示 ACALL DELAY;延时 SJMP STARTDELAY:MOV R4,#0FFH;延时子程序AA1:MOV R5,#0FFHAA:NOP NOP DJNZ R5,AA DJNZ R4,AA1 RET END,29,6.3.2 单片机之间的通信,例:试确定定时器T1 的初值。甲、乙双机均为串行口方式1,并以定时器T1的方式2为波特率发生器,波特率为2400。,解:使用6MHz晶振,以T1的方式2制定波特率。此时T1相当于一个8位的计数器。,计算定时器T1的计数初值:TH1=28(2SMODfosc)(波特率321

16、2)=256(206106)(24003212)=2566.5=249.5=FAH,30,MOV TMOD,20H;置T1为定时器方式2 MOV TL1,0FAH;置T1定时常数 MOV TH1,0FAH SETB TR1;启动T1 MOV PCON,#00H;波特率不倍增 MOV SCON,40H;置串行口方式1 MOV SBUF,78H;输出首地址,31,例6-4 两台单片机进行串行通信,采用查询方式工作。发送单片机为串行工作方式2,TB 8作为奇偶位。待发数据位于片内40H-4FH单元中。,发送方每发送一个字节后紧接着接收回送字节,只有收到标志数据00H后才继续发送下一个数据,同时将发送

17、的数据送往P1口显示,否则停止发送。,接收方也为工作方式2,每接收到一个数据都要进行校验,接收正确则向发送方回送标志数据00H,同时将收到的数据送往P1口显示;接收错误则向发送方回送标志数据FFH,同时将数据FFH送往Pl口显示。,32,ORG 0000H LJMP TRS ORG 0030HTRS:MOV R7,#10H MOV R0,#40H MOV A,#0TRS1:MOV R0,A INC A INC R0 DJNZ R7,TRS1 MOV SCON,#90H;设置串行口工作方式2 MOV PCON,#80H;波特率为fosc/32 MOV R0,#40H;设置片内数据指针 MOV R

18、2,#10H;数据长度,LOOP:MOV A,R0;取数据送A MOV C,P;奇偶位送TB8 MOV TB8,C MOV SBUF,A;启动发送 MOV P1,A;数据送P1口显示 LCALL DELAY;延时WAIT:JBC TI,CONT;查询发送标志位 SJMP WAITCONT:JBC RI,RE;准备接收回送标志 SJMP CONTRE:MOV A,SBUF;接收回送标志 CJNE A,#00H,L;回送标志错误,结束 INC R0;回送标志正确,继续 DJNZ R2,LOOP;发送16个数据L:SJMP L;结束,发送方源程序清单如下:,33,;复位入口;主程序入口;设置串行口工

19、作方式2,允许接收;波特率为fosc/32;查询接收标志位;读入一帧数据;判接收端奇偶位;判发送端奇偶位;接收正确;送往P1显示;延时;回送正确标志;接收未完,继续;接收出错,显示FF;回送出错标志;结束,ORG 000H LJMP REV ORG 0030HREV:MOV SCON,#90H MOV PCON,#80H MOV R7,#10HLOOP:JBC RI,READ SJMP LOOPREAD:MOV A,SBUF JNB PSW.0,ONE JB RB8,RIGHT SJMP ERRONE:JB RB8,ERRRIGHT:SWAP A MOV P1,A LCALL DELAY MO

20、V SBUF,#00H DJNZ R7,LOOPL:SJMP LERR:MOV P1,#0FFH MOV SBUF,#0FFHLL:SJMP LL,接收方源程序如下:,34,多处理机通信方式,在串行口控制寄存器SCON中,设有多处理机通信位SM2。当串行口以方式2或方式3接收时:,在主机发地址时,置第9位数据(TB8)为1,表示主机发送的是地址帧;当主机呼叫某从机联络正确后,主机发送命令或数据帧时,将第9位数据(TB8)清0。,若SM21,只有当接收到的第9位数据(RB8)为1时,才将数据送入接收缓冲器SBUF,并使RI置1,申请中断,否则数据将丢失;,若SM20,则无论第9位数据(RB8)是

21、1还是0,都能将数据装入SBUF,并且发中断。,35,在主机发地址时,置TB8为1;各从机由于SM2置1,将接受主机发来的信息。,若从机的地址与主机点名的地址相同,该从机将本机的SM2清0,继续接收主机发来的命令或数据,响应中断。,若从机的地址与主机点名的地址不相同,则该从机将继续维持SM2为l,从而拒绝接收主机后面发来的命令或数据信息,等待主机的下一次点名。,36,单片机与PC之间的串行通信又称UART通信。,6.3.3 单片机与PC之间的通信,计算机,单片机,RS-232串行方式,数据从最低有效位开始连续传送,8个数据位后加一位奇偶校验位的传送方式。它的起始位为逻辑“0”电平,停止位为逻辑

22、“1”电平。,37,RS-232串行通信标准,它除了物理指标外,还包括按位串行传送的电气指标。,在计算机中,RS-232的逻辑“0”电平(+5V到+15V),逻辑“1”电平(-5V到-15V)。,8051单片机的串行口为TTL电平,需要外接一个TTL-RS232电平转换器才能够与PC的RS232串行口连接。美国MAXIM公司生产的MAX232芯片是目前应用较为普遍的串行口电平转换器件。,38,MAX232芯片采用“电荷泵”技术,利用4个外接电容C1-C4(通常取值为1uF)就可以在单+5V电源供电的条件下,将输入的+5V电压转换为RS-232输出所需要的12V电压。,39,发送数据TXD:把数

23、据传送给其他设备接收数据RXD:接收其他设备的数据,RXDTXD,RS-232接口有25根线。其中的15根线组成主信道(表中标*号者),另外的一些为未定义和供辅信道使用的线。辅信道为次要串行通道,其运行速度比主信道要低得多。,标准接口中的有些信号是用来表示调制解调器通信链路的状态,例如“请求发送”(RTS),“清除”(CTS),“数据装置就绪”(DSR)和“数据终端就绪(DTR)”等信号就是用来控制调制一解调器(Modem)链路的。,40,数据通信设备,数据终端设备,1数据信号,“发送数据”(TXD)和“接收数据”(RXD)信号线是一对数据传输线,用来传输串行的位数据信息。,2控制信号,3定时

24、信号,4地,“保护地”又称屏蔽地;而“信号地”是RS-232所有信号公共参考点的地。,41,大多数设备仅需使用25根信号线中的3到5根线就可工作。对于标准系统,则需要使用8根信号线。,42,例6-7 8051单片机与PC之间的串行通信。功能:将PC输入的数据发送给单片机,单片机收到数据后以ASCII码形式从P1口显示接收数据,同时再回送给PC,因此只要PC虚拟终端上显示的字符与键盘输入的字符相同,即说明PC与单片机通信正常。,43,单片机源程序清单如下:ORG 0000H LJMP START ORG 0023H;串行中断入口 LJMP SERVE ORG 0030HSTART:MOV SP,

25、#60H MOV SCON,#50H;设定串行方式1接收 MOV TMOD,#20H;设定时器1为方式2 ORL PCON,#80H;波特率加倍 MOV TH1,#0F3H;设定波特率为4800 MOV TL1,#0F3H SETB TR1 SETB EA SETB ES SJMP,SERVE:PUSH ACC CLR EA CLR RI MOV A,SBUF;接收PC发来的数据 MOV P1,A;将数据从P1口显示 MOV SBUF,A;同时回送给PCWAIT:JNB TI,WAIT CLR TI SETB EA POP ACC RETI END,44,课 堂 复 习,45,例6-1 在单片

26、机的串行口外接一个串入并出8位移位寄存器74LS164,实现串口到并口的转换。数据从RXD端输出,移位脉冲从TXD端输出。执行如下程序后LED指示灯轮流点亮。,串行输入端,时钟输入端,并行输出端,46,源程序清单如下:ORG 0000H AJMP START ORG 0030HSTART:MOV SCON,#0;设置串行口工作方式0 MOV 30H,#01H;8字节待传输数据 MOV 31H,#02H MOV 32H,#04H MOV 33H,#08H MOV 34H,#16 MOV 35H,#32 MOV 36H,#64 MOV 37H,#128 MOV R0,#30H;R0作数据指针 MO

27、V R2,#8;R2作计数器LOOP:MOV A,R0,MOV SBUF,A;开始发送数据LO:JNB TI,LO;检查发送完标志 CLR TI ACALL DELAY;延时 INC R0;发送下一字节 DJNZ R2;LOOP SJMP STARTDELAY:MOV R7,#3;延时子程序DDl:MOV R6,#0FFHDD2:MOV R5,#0FFH DJNZ R5,DJNZ R6,DD2 DJNZ R7,DDl RET END,47,6.3.2 单片机之间的通信,例:试确定定时器T1 的初值。甲、乙双机均为串行口方式1,并以定时器T1的方式2为波特率发生器,波特率为2400。,解:使用6

28、MHz晶振,以T1的方式2制定波特率。此时T1相当于一个8位的计数器。,计算定时器T1的计数初值:TH1=28(2SMODfosc)(波特率3212)=256(206106)(24003212)=2566.5=249.5=FAH,48,MOV TMOD,20H;置T1为定时器方式2 MOV TL1,0FAH;置T1定时常数 MOV TH1,0FAH SETB TR1;启动T1 MOV PCON,#00H;波特率不倍增 MOV SCON,40H;置串行口方式1 MOV SBUF,78H;输出首地址,49,例6-4 两台单片机进行串行通信,采用查询方式工作。发送单片机为串行工作方式2,TB 8作为

29、奇偶位。待发数据位于片内40H-4FH单元中。,发送方每发送一个字节后紧接着接收回送字节,只有收到标志数据00H后才继续发送下一个数据,同时将发送的数据送往P1口显示,否则停止发送。,接收方也为工作方式2,每接收到一个数据都要进行校验,接收正确则向发送方回送标志数据00H,同时将收到的数据送往P1口显示;接收错误则向发送方回送标志数据FFH,同时将数据FFH送往Pl口显示。,50,ORG 0000H LJMP TRS ORG 0030HTRS:MOV R7,#10H MOV R0,#40H MOV A,#0TRS1:MOV R0,A INC A INC R0 DJNZ R7,TRS1 MOV

30、SCON,#90H;设置串行口工作方式2 MOV PCON,#80H;波特率为fosc/32 MOV R0,#40H;设置片内数据指针 MOV R2,#10H;数据长度,LOOP:MOV A,R0;取数据送A MOV C,P;奇偶位送TB8 MOV TB8,C MOV SBUF,A;启动发送 MOV P1,A;数据送P1口显示 LCALL DELAY;延时WAIT:JBC TI,CONT;查询发送标志位 SJMP WAITCONT:JBC RI,RE;准备接收回送标志 SJMP CONTRE:MOV A,SBUF;接收回送标志 CJNE A,#00H,L;回送标志错误,结束 INC R0;回送

31、标志正确,继续 DJNZ R2,LOOP;发送16个数据L:SJMP L;结束,发送方源程序清单如下:,51,;复位入口;主程序入口;设置串行口工作方式2,允许接收;波特率为fosc/32;查询接收标志位;读入一帧数据;判接收端奇偶位;判发送端奇偶位;接收正确;送往P1显示;延时;回送正确标志;接收未完,继续;接收出错,显示FF;回送出错标志;结束,ORG 000H LJMP REV ORG 0030HREV:MOV SCON,#90H MOV PCON,#80H MOV R7,#10HLOOP:JBC RI,READ SJMP LOOPREAD:MOV A,SBUF JB PSW.0,ONE

32、 JB RB8,RIGHT SJMP RIGHTONE:JB RB8,ERRRIGHT:SWAP A MOV P1,A LCALL DELAY MOV SBUF,#00H DJNZ R7,LOOPL:SJMP LRRR:MOV P1,#0FFH MOV SBUF,#0FFHLL:SJMP LL,接收方源程序如下:,52,多处理机通信方式,在串行口控制寄存器SCON中,设有多处理机通信位SM2。当串行口以方式2或方式3接收时:,在主机发地址时,置第9位数据(TB8)为1,表示主机发送的是地址帧;当主机呼叫某从机联络正确后,主机发送命令或数据帧时,将第9位数据(TB8)清0。,若SM21,只有当接

33、收到的第9位数据(RB8)为1时,才将数据送入接收缓冲器SBUF,并使RI置1,申请中断,否则数据将丢失;,若SM20,则无论第9位数据(RB8)是1还是0,都能将数据装入SBUF,并且发中断。,53,在主机发地址时,置TB8为1;各从机由于SM2置1,将接受主机发来的信息。,若从机的地址与主机点名的地址相同,该从机将本机的SM2清0,继续接收主机发来的命令或数据,响应中断。,若从机的地址与主机点名的地址不相同,则该从机将继续维持SM2为l,从而拒绝接收主机后面发来的命令或数据信息,等待主机的下一次点名。,54,单片机与PC之间的串行通信又称UART通信。,6.3.3 单片机与PC之间的通信,

34、计算机,单片机,RS-232串行方式,数据从最低有效位开始连续传送,8个数据位后加一位奇偶校验位的传送方式。它的起始位为逻辑“0”电平,停止位为逻辑“1”电平。,55,RS-232串行通信标准,它除了物理指标外,还包括按位串行传送的电气指标。,在计算机中,RS-232的逻辑“0”电平(+5V到+15V),逻辑“1”电平(-5V到-15V)。,8051单片机的串行口为TTL电平,需要外接一个TTL-RS232电平转换器才能够与PC的RS232串行口连接。美国MAXIM公司生产的MAX232芯片是目前应用较为普遍的串行口电平转换器件。,56,MAX232芯片采用“电荷泵”技术,利用4个外接电容C1

35、-C4(通常取值为1uF)就可以在单+5V电源供电的条件下,将输入的+5V电压转换为RS-232输出所需要的12V电压。,57,发送数据TXD:把数据传送给其他设备接收数据RXD:接收其他设备的数据,RXDTXD,RS-232接口有25根线。其中的15根线组成主信道(表中标*号者),另外的一些为未定义和供辅信道使用的线。辅信道为次要串行通道,其运行速度比主信道要低得多。,标准接口中的有些信号是用来表示调制解调器通信链路的状态,例如“请求发送”(RTS),“清除”(CTS),“数据装置就绪”(DSR)和“数据终端就绪(DTR)”等信号就是用来控制调制一解调器(Modem)链路的。,58,数据通信

36、设备,数据终端设备,1数据信号,“发送数据”(TXD)和“接收数据”(RXD)信号线是一对数据传输线,用来传输串行的位数据信息。,2控制信号,3定时信号,4地,“保护地”又称屏蔽地;而“信号地”是RS-232所有信号公共参考点的地。,59,大多数设备仅需使用25根信号线中的3到5根线就可工作。对于标准系统,则需要使用8根信号线。,60,例6-7 8051单片机与PC之间的串行通信。功能:将PC输入的数据发送给单片机,单片机收到数据后以ASCII码形式从P1口显示接收数据,同时再回送给PC,因此只要PC虚拟终端上显示的字符与键盘输入的字符相同,即说明PC与单片机通信正常。,61,单片机源程序清单

37、如下:ORG 0000H LJMP START ORG 0023H;串行中断入口 LJMP SERVE ORG 0030HSTART:MOV SP,#60H MOV SCON,#50H;设定串行方式1接收 MOV TMOD,#20H;设定时器1为方式2 ORL PCON,#80H;波特率加倍 MOV TH1,#0F3H;设定波特率为4800 MOV TL1,#0F3H SETB TR1 SETB EA SETB ES SJMP,SERVE:PUSH ACC CLR EA CLR RI MOV A,SBUF;接收PC发来的数据 MOV P1,A;将数据从P1口显示 MOV SBUF,A;同时回送给PCWAIT:JNB TI,WAIT CLR TI SETB EA POP ACC RETI END,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号