欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    增强型8051单片机的串行口.ppt

    • 资源ID:5696936       资源大小:3.54MB        全文页数:59页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    增强型8051单片机的串行口.ppt

    增强型8051单片机的串行口,目 录,1 串行通信基础2 STC11F08XE单片机的串行接口 3 STC11F08XE单片机与PC机的通信4 STC11F08XE单片机串行口的扩展功能,1 串行通信基础,通信是人们传递信息的方式。计算机通信是将计算机计术和通信技术相结合,完成计算机与外部设备或计算机与计算机之间的信息交换。这种信息交换可分为两种方式:并行通信与串行通信。并行通信是将数据字节的各位用多条数据限同时进行传送,如图1(a)所示。并行通信的特点是:控制简单,传送速度快。但由于传输线较多,长距离传送时成本较高,因此仅适用于短距离传送。串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送,如图8.1(b)所示。并行通信的特点是:传送速度慢。但传输线少,长距离传送时成本较低,因此,串行通信适用于长距离传送。,1 串行通信基础,1.串行通信的分类(1)异步通信(Asynchronous Communication)在异步通信中,数据通常是以字符(或字节)为单位组成字符帧传送的。字符帧由发送端一帧一帧地发送,通过传输线为接收设备一帧一帧地接收。发送端和接收端可以有各自的时钟来控制数据的发送和接收,这两个时钟源彼此独立,互不同步。在异步通信中,两个字符之间的传输间隔是任意的,所以,每个字符的前后都要用一些数位来作为分隔位。1)字符帧(Character Frame)字符帧也叫数据帧,由起始位、数据位(纯数据或数据加校验位)和停止位等三部分组成,1 串行通信基础,2)波特率(baud rate)异步通信的另一个重要指标为波特率。波特率为每秒钟传送二进制数码的位数,也叫比特数,单位为bit/s,即位/秒。波特率用于表征数据传输的速度,波特率越高,数据传输速度越快。但波特率和字符的实际传输速率不同,字符的实际传输速率是每秒内所传字符帧的帧数,而波特率和字符帧格式有关。例如,波特率为1200bps的通信系统,若采用图8.2(a)的字符帧(每一字符帧包含数据位11位),则字符的实际传输速率为 120011=109.09帧秒;若改用图8.2(b)的字符帧(每一字符帧包含数据位14位),则字符的实际传输速率为120014=85.71帧秒。,1 串行通信基础,(2)同步通信(Synchronous Communication)同步通信是一种连续串行传送数据的通信方式,一次通信传输一组数据(包含若干个字符数据)。同步通信时要建立发送方时钟对接收方时钟的直接控制,使双方达到完全同步。在发送数据前先要发送同步字符,再连续地发送数据。有单同步字符和双同步字符字符帧之分,如图8.3(a)和图8.3(b)所示。同步通信的字符帧结构,是由同步字符、数据字符和校验字符CRC三部分组成。在同步通信中,同步字符可以采用统一的标准格式,也可以由用户约定。,1 串行通信基础,1.串行通信的分类2.串行通信的传输方向在串行通信中数据是在两个站之间进行传送的,按照数据传送方向及时间关系,串行通信可分为单工(simplex)、半双工(half duplex)和全双工(full duplex)三种制式,如图8.4所示。,2 STC11F08XE单片机的串行接口,2.1 串行口结构2.2 串行口的控制寄存器2.3 串行口的工作方式2.4 串行口的波特率2.5 串行口的应用举例,2.1 串行口结构,STC11F08XE单片机内部有两个独立的接收、发送缓冲器SBUF,SBUF属于特殊功能寄存器。发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,二者共用一个字节地址(99H)。串行口的结构如图8.5所示。,2.2 串行口的控制寄存器,1.串行控制寄存器SCON串行控制寄存器SCON用于设定串行口的工作方式、接收控制以及设置状态标志。字节地址为98H,可进行位寻址,单片机复位时,所有位全为0。,2.2 串行口的控制寄存器,2.电源及波特率选择寄存器PCONPCON主要是单片机的电源控制而设置的专用寄存器,不可以位寻址,字节地址为87H,复位值为30H。其中SMOD、SMOD0与串口控制有关。,2.2 串行口的控制寄存器,3.辅助寄存器AUXR的UART_M0 x6 辅助寄存器AUXR的格式如下所示,其中只有UART_M0 x6、T1x12与串口有关。,2.3 串行口的工作方式,1.方式0在方式0下,串行口作同步移位寄存器用,其波特率为fosc/12(UART_M0 x6为0时)或fosc/2(UART_M0 x6为1时)。串行数据从RXD(P3.0)端输入或输出,同步移位脉冲由TXD(P3.1)送出。这种方式常用于扩展I/O口。1)发送当TI=0,一个数据写入串行口发送缓冲器SBUF时,串行口将8位数据以fosc/12或fosc/2的波特率从RXD引脚输出(低位在前),发送完毕置位中断标志TI,并向CPU请求中断。在再次发送数据之前,必须由软件清零TI标志。方式0发送时序如图8.6所示。,2.3 串行口的工作方式,1.方式01)发送方式0发送时,串行口可以外接串行输入并行输出的移位寄存器,如74LS164、CD4094等芯片,用来扩展并行输出口,其逻辑电路如图8.7所示。,2.3 串行口的工作方式,1.方式02)接收当RI=0时,置位REN,串行口即开始从RXD端以fosc/12或fosc/2的波特率输入数据(低位在前),当接收完8位数据后,置位中断标志RI,并向CPU请求中断。在再次接收数据之前,必须由软件清零RI标志。方式0接收时序如图8.8所示。,2.3 串行口的工作方式,1.方式02)接收方式0接收时,串行口可以外接并行输入串行输出的移位寄存器,如74LS165芯片,用来扩展并行输入口,其逻辑电路如图9.9所示。,2.3 串行口的工作方式,2 方式1串行口工作在方式1下时,串行口为波特率可调的10位通用异步接口UART,发送或接收一帧信息,包括1位起始位(0),8位数据位和1位停止位(1)。其帧格式如图8.10所示,2.3 串行口的工作方式,2 方式11)发送 当(TI)=0时,数据写入发送缓冲器SBUF后,就启动了串行口发送过程。在发送移位时钟的同步下,从TXD引脚先送出起始位,然后是8位数据位,最后是停止位。一帧10位数据发送完后,中断标志TI置1。方式1的发送时序如图8.11所示。方式1数据传输的波特率取决于定时器T1的溢出率和PCON中的SMOD位。,2.3 串行口的工作方式,2 方式12)接收 当RI0时,置位REN,启动串行口接收过程。当检测到RXD引脚输入电平发生负跳变时,接收器以所选择波特率的16倍速率采样RXD引脚电平,以16个脉冲中的7、8、9三个脉冲为采样点,取两个或两个以上相同值为采样电平,若检测电平为低电平,则说明起始位有效,并以同样的检测方法接收这一帧信息的其余位。接收过程中,8位数据装入接收SBUF,接收到停止位时,置位RI,向CPU请求中断。方式1的接收时序如图8.12所示。,2.3 串行口的工作方式,(3)方式2和方式3串行口工作在方式2和方式3时,串行口为11位UART。一帧数据包括1位起始位(0),8位数据位,1位可编程位(如用于奇偶校验)和1位停止位(1),其帧格式如图8.13所示。方式2与方式3的区别在于波特率的设置方法不同,方式2的波特率为fosc/64(SMOD为0)或fosc/32(SMOD为1);方式3数据传输的波特率取决于定时器T1的溢出率和SMOD控制位。,2.3 串行口的工作方式,(3)方式2和方式31)发送发送前,先根据通信协议由软件设置好TB8。当(TI)0时,用指令将要发送的数据写入SBUF,则启动发送器的发送过程。在发送移位时钟的同步下,从TXD引脚先送出起始位,依次是8位数据位和TB8,最后是停止位。一帧11位数据发送完毕后,置位中断标志TI,并向CPU发出中断请求。在发送下一帧信息之前,TI必须由中断服务程序或查询程序清0。方式2和方式3的发送时序如图8.14所示。,2.3 串行口的工作方式,(3)方式2和方式32)接收 当RI0时,置位REN,启动串行口接收过程。当检测到RXD引脚输入电平发生负跳变时,接收器以所选择波特率的16倍速率采样RXD引脚电平,以16个脉冲中的7、8、9三个脉冲为采样点,取两个或两个以上相同值为采样电平,若检测电平为低电平,则说明起始位有效,并以同样的检测方法接收这一帧信息的其余位。接收过程中,8位数据装入接收SBUF,第9位数据装入RB8,接收到停止位时,若SM20或SM2、且接收到的RB81,则置位RI,向CPU请求中断;否则不置位RI标志,接收数据丢失。方式2和方式3的接收时序如图8.15所示。,2.4 串行口的波特率,(1)方式0和方式2在方式0中,波特率为fSYS/12(UART_M0 x6为0时)或fSYS/2(UART_M0 x6为1时)。在方式2中,波特率取决于PCON中的SMOD值,当(SMOD)=0时,波特率为fSYS/64;当(SMOD)=1时,波特率为fSYS/32。即波特率=,2.4 串行口的波特率,(2)方式1和方式3 在方式1和方式3下,波特率由定时器T1的溢出率和SMOD共同决定。即波特率=溢出率,2.5 串行口的应用举例,1.方式0的编程和应用 例8.2 使用2块7474HC595芯片扩展16位并行口,外接16只发光二极管,电路连接图见图8.16所示。利用它的串入并出功能,把发光二极管从右向左依次点亮,并不断循环之(16位流水灯),2.5 串行口的应用举例,1.方式0的编程和应用 设16位流水灯数据存放在R2和R3中,汇编参考程序如下:MOV SCON,#00H;设置串行口为同步移位寄存器方式 CLR ES;禁止串口中断 CLR P1.0 SETB C MOV R2,#0FFH;设置流水灯初始数据 MOV R3,#0FEH;设置最右边的LED灯亮 MOV R4,#16,2.5 串行口的应用举例,LOOP:MOV A,R3 MOV SBUF,A;启动串行发送 JNB TI,$;等待发送结束信号 CLR TI;清除TI标志,为下一字节发送做准备 MOV A,R2 MOV SBUF,A;启动串行发送 JNB TI,$;等待发送结束信号 CLR TI;清除TI标志,为下一次发送做准备 SETB P1.0;移位寄存器数据送存储锁存器,2.5 串行口的应用举例,NOP CLR P1.0 MOV A,R3;16位流水灯数据 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A LCALL DELAY;插入轮显间隔 DJNZ R4,LOOP1 SETB C MOV R2,#0FFH;设置流水灯初始数据 MOV R3,#0FEH;设置最右边的LED灯亮 MOV R4,#16LOOP1:SJMP LOOP;循环,2.5 串行口的应用举例,1.方式0的编程和应用 例8.2 使用2块7474HC595芯片扩展16位并行口,外接16只发光二极管,电路连接图见图8.16所示。利用它的串入并出功能,把发光二极管从右向左依次点亮,并不断循环之(16位流水灯),2.5 串行口的应用举例,2.双机通信例8.3 编制程序,使甲、乙双方单片机能够进行通信。要求:将甲机内部RAM20H27H单元的数据依次发送给乙机,并实时显示发送数据;乙机接收后存放在内部RAM70H77H中,并实时显示接收到的数据。发送、接收双方均采用LED灯显示,低电平驱动。(1)甲机发送程序 汇编语言参考程序如下:ORG 0000H MOV TMOD,#20H;设置定时器T1,设置串行口的波特率 MOV TL1,#0F4H MOV TH1,#0F4H SETB TR1,2.5 串行口的应用举例,MOV SCON,#40H;设置串行口工作在方式1 MOV R0,#20H;设置串行发送缓冲区首址 MOV R7,#08H;设置串行发送的字节数START:MOV A,R0;取发送数据 MOV SBUF,A;启动串行发送 MOV P1,A;实时显示发送数据Check_TI:JBC TI,UART_Byte_Send_End;查询串行发送结束标志 AJMP Check_TI UART_Byte_Send_End:INC R0;数据指针指向下一个发送数据 MOV R3,#05H;设置串行发送间隔 LCALL DELAY DJNZ R7,START;判断串行发送是否结束 SJMP$,2.5 串行口的应用举例,DELAY:MOV R4,#100;延时子程序,延时时间(R3)10msDELAY1:MOV R5,#200DELAY2:NOP NOP DJNZ R5,DELAY2 DJNZ R4,DELAY1 DJNZ R3,DELAY RET END,2.5 串行口的应用举例,C51参考程序如下:#include unsigned char bdata inter_ram8=0,1,2,3,4,5,6,7;设置发送数据/*-延时子函数-*/void delay(unsigned char i)unsigned char x,y,z;/延时函数,大约1ms for(z=i;z0;z-)for(y=11;y0;y-)for(x=195;x0;x-);,2.5 串行口的应用举例,/*-主函数-*/void main(void)unsigned char count;serial_initial();for(count=0;count8;count+)/把指定片内RAM数值发送到目标单片机 Send_Byte(inter_ramcount);delay(200);/发送间隔,以便看清楚数据while(1);,2.5 串行口的应用举例,2.双机通信(2)乙机接收程序 汇编语言参考程序如下:ORG 0000H MOV TMOD,#20H;设置定时器T1,设置串行口的波特率 MOV TL1,#0F4H MOV TH1,#0F4H SETB TR1 MOV SCON,#40H;设置串行口的工作的工作方式 MOV R0,#70H;设置串行接收缓冲区首址 MOV R7,#08H;设置串行接收的字节数 SETB REN;启动串行接收,2.5 串行口的应用举例,Check_RI:JBC RI,UART_Byte_Receive_End;查询串行接收结束标志 AJMP Check_RI UART_Byte_Receive_End:MOV A,SBUF;取串行接收数据 MOV R0,A;存串行接收数据 CPL A MOV P0,A;串行接收数据送显示 INC R0 DJNZ R7,Check_RI;判断串行发送是否结束 SJMP$END,2.5 串行口的应用举例,C51参考程序如下:#include#include unsigned char xdata recdata8;/定义接收存储数组unsigned char*mydata;/*-串行口中断子函数-*/void serial_initial(void)/串口初始化程序TMOD=0 x20;/实用8位定时器,自动重装计数值TH1=0 xf4;TL1=0 xf4;/设置TH1和TL1为0 xf4,波特率是2400TR1=1;SCON=0 x40;/设定串口为方式1REN=1;/允许串行接收数据,2.5 串行口的应用举例,/*-主函数-*/void main(void)unsigned char i;serial_initial();/调用串口初始化函数 mydata=recdata;for(i=0;i8;i+)while(RI=0);RI=0;/清空接收标志*mydata=SBUF;/存储接收数据 P1=SBUF;/送往P1口显示 mydata+/指向下一个存储单元,2.5 串行口的应用举例,_nop_();_nop_();_nop_();while(1);,2.5 串行口的应用举例,3.多机通信MCS-51串行口的方式2和方式3有一个专门的应用领域,即多机通信。这一功能通常采用主从式多机通信方式,在这种方式中,用一台主机和多台从机。主机发送的信息可以传送到各个从机或指定的从机,各从机发送的信息只能被主机接收,从机与从机之间不能进行通信。图8.19是多机通信的连接示意图。,2.5 串行口的应用举例,3.多机通信多机通信的实现,主要依靠主、从机之间正确地设置与判断SM2和发送或接收的第9位数据来(TB8或RB8)完成的。在单片机串行口以方式2或方式3接收时,有两种情况:(1)若SM2=1,表示置多机通信功能位,当接收到的第9位数据(RB8)为1时,会置位RI=1标志,向CPU发中断请求;当接收到第9位数据为0,即不会置位RI=1标志,不产生中断,信息将被丢失,即不能接收数据。(2)若SM2=0,则接收到的第9位信息无论是1还是0,都会置位RI中断标志,即接收数据。,2.5 串行口的应用举例,3.多机通信多机通信的过程简述如下:(1)主机发送一帧地址信息,与所需的从机联络。主机应置TB8为1,表示发送的是地址帧。例如:MOV SCON,#0D8H;设串行口为方式3,TB8=1,允许接收。(2)所有从机的SM2=1,处于准备接收一帧地址信息的状态。例如:MOV SCON,#0F0H;设串行口为方式3,SM2=1,允许接收。,2.5 串行口的应用举例,3.多机通信(3)各从机接收到地址信息,因为RB8=1,则置中断标志RI。中断后,首先判断主机送过来的地址信息与自己的地址是否相符。对于地址相符的从机,置SM2=0,以接收主机随后发来的所有信息。对于地址不相符的从机,保持SM2=1的状态,对主机随后发来的信息不理睬,直到发送新的一帧地址信息。(4)主机发送控制指令和数据信息给被寻址的从机。其中主机置TB8为0,表示发送的是数据或控制指令。对于没选中的从机,因为SM2=1,RB8=0,所以不会产生中断,对主机发送的信息不接收。,3 STC11F08XE单片机与PC机的通信,3.1 串行通信总线标准及其接口 3.2 单片机与PC机串行通信的接口设计3.3 单片机与PC机串行通信的程序设计,3.1 串行通信总线标准及其接口,1.RS-232C接口 RS-232C是使用最早、应用最多的一种异步串行通信总线标准。它是美国电子工业协会(EIA)1962年公布、1969年最后修定而成的。其中RS表示Recommended Standard,232是该标准的标识号,C表示最后一次修定。(1)RS-232C信息格式标准RS-232C采用串行格式,如图8.21所示。该标准规定:信息的开始为起始位,信息的结束为停止位;信息本身可以是5、6、7、8位再加一位奇偶位。如果两个信息之间无信息,则写“1”,表示空。,3.1 串行通信总线标准及其接口,1.RS-232C接口(2)RS-232C电平转换器RS-232C规定了自己的电气标准,由于它是在TTL电路之前研制的,所以它的电平不是+5V和地,而是采用负逻辑,即:逻辑“0”:+5V+15V逻辑“1”:-5V-15V因此,RS-232C不能和TTL电平直接相连,使用时必须进行电平转换,否则将使TTL电路烧坏,实际应用时必须注意!,3.1 串行通信总线标准及其接口,1.RS-232C接口(3)RS-232C总线规定RS-232C标准总线为25根,使用25个引脚的连接器,各信号引脚的定义如表8.3所示。,3.1 串行通信总线标准及其接口,2.RS-449、RS-422A、RS-423A、RS-485标准接口(1)RS-449标准接口RS-449是1977年公布的标准接口,在很多方面可以代替RS-232C使用,两者的主要差别在于信号在导线上的传输方法不同。RS-232C是利用传输信号与公共地的电压差,RS-449是利用信号导线之间的信号电压差,可在1219.2m的24-AWG双铰线上进行数字通信。RS-449规定了两种接口标准连接器,一种为37脚,一种为脚。RS-449可以不使用调制解调器,它比RS-232C传输速率高,通信距离长,且由于RS-449系统用平衡信号差传输高速信号,所以噪声低,又可以多点或者使用公共线通信,故RS-449通信电缆可与多个设备并联。,3.1 串行通信总线标准及其接口,2.RS-449、RS-422A、RS-423A、RS-485标准接口(2)RS-422A、RS-423A标准接口RS-422A文本给出了RS-449中对于通信电缆、驱动器和接收器的要求,规定双端电气接口形式,其标准是双端线传送信号。它具体通过传输线驱动器,将逻辑电平变换成电位差,完成发送端的信息传递;通过传输线接收器,把电位差变换成逻辑电平,完成接收端的信息接收。RS-422A比RS-232C传输距离长、速度快,传输速率最大可达10Mbit/s,在此速率下电缆的允许长度为12m,如果采用低速率传输,最大距离可达1200m。RS-422A和TTL进行电平转换最常用的芯片是传输线驱动器SN75174和传输线接收器SN75175,这两种芯片的设计都符合EIA标准RS-422A,采用+5V电源供电。,3.1 串行通信总线标准及其接口,2.RS-449、RS-422A、RS-423A、RS-485标准接口(3)RS-485接口 RS-485接口是RS-422A的变形:RS-422A用于全双工,而RS-485用于半双工。RS-485是一种多发送器标准,在通信线路最多可以使用32对差分驱动器/接收器。RS-485的信号传输采用两线间的电压来表示逻辑1和逻辑0,RS485采用差分信号负逻辑,2V6V表示“0”,-6V-2V表示“1”。传输线采用差动信道,抗干扰性好,又因为它的阻抗低,无接地问题,所以传输距离可达1200m,传输距离可达1Mbps。,3.2 单片机与PC机串行通信的接口设计,PC机和单片机进行串行通信的硬件连接,最简单的连接是零调制三线经济型,这是进行全双工通信所必须的最少线路,计算机的9针串口只连接其中的三根线:第5脚的GND,第5脚的RXD,第5脚的TXD,如图8.26所示。这也是STC11F08E单片机的程序下载电路。,3.3 单片机与PC机串行通信的程序设计,通信程序设计分为计算机(上位机)程序设计与单片机(下位机)程序设计。为了实现单片机与PC机的串口通信,PC机端需要开发相应的串口通信程序,这些程序通常是用各种高级语言来开发,比如VC、VB等。在实际开发调试单片机端的串口通信程序时,我们也可以使用STC系列单片机下载程序中内嵌的串口调试程序或其它串口调试软件(如串口调试精灵软件)来模拟PC机端的串口通信程序。这也是在实际工程开发中,特别是团队开发时常用的办法。串口调试程序,无需任何编程,既可实现RS-232C的串口通信,能有效提高工作效率,使串口调试能够方便透明的进行。它可以在线设置各种通讯速率、奇偶校验、通讯口而无需重新启动程序。发送数据可发送十六进制(HEX)格式和ASCII码,可以设置定时发送的数据以及时间间隔。可以自动显示接收到的数据,支持HEX或ASCII码显示。是工程技术人员监视、调试串口程序的必备工具,3.3 单片机与PC机串行通信的程序设计,单片机程序设计:例8.6 将PC机键盘的输入发送给单片机,单片机收到PC机发来的数据后,回送同一数据给PC机,并在屏幕上显示出来。PC端采用串口调试程序进行数据发送与接收数据并显示,请编写单片机通信程序。汇编语言参考程序如下:ORG 0000H LJMP MAIN;转初始化程序 ORG 0023H LJMP Sirial_ISR;转串行口中断程序 ORG 0050H,3.3 单片机与PC机串行通信的程序设计,MAIN:MOV TMOD,#20H;设置定时器1为方式2定时模式 MOV TL1,#0F4H;设置预置值 MOV TH1,#0F4H SETB TR1;启动定时器1 MOV SCON#50H;设定串行口为方式1,并启动 SETB ES SETB EA;开放串行口中断 SJMP$;模拟主程序;串口中断服务子程序Sirial_ISR:CLR EA;关中断 CLR RI;清串行口中断标志 PUSH DPL;保护现场 PUSH DPH PUSH A;,3.3 单片机与PC机串行通信的程序设计,MOV A,SBUF;接收PC机发送的数据 MOV SBUF,A;将数据回送给PC机Check_TI:JNB TI,Check_TI;等待发送结束 CLR TI POP A;发送完,恢复现场 POP DPH POP DPL SETB EA;开中断 RETI;返回 END,3.3 单片机与PC机串行通信的程序设计,C51参考程序如下:#include unsigned char temp;/*-串口初始化子函数-*/void serial_initial(void)TMOD=0 x20;/T1方式2定时,SCON=0 x50;/串行口为方式1,允许接收(REN=1)TH1=0 xf4;TL1=0 xf4;/设置产生2400bit/s的波特率信号的初始值ES=1;/开串口中断EA=1;TR1=1;/开启定时计数器1,产生波特率信号,3.3 单片机与PC机串行通信的程序设计,/*-中断服务子函数-*/Void Serial_ISR(void)interrupt 4 RI=0;/清串行接收标志 Temp=SBUF;/接收数据 SBUF=temp;/发送接收到的数据 While(TI=0);/等待发送结束 TI=0;/清零TI/*-主函数-*/void main(void)serial_initial();/调用串口初始化函数while(1);,4 STC11F08XE单片机串行口的扩展功能,4.1 STC11F08XE单片机串行口数据通道的切换 通过对特殊功能寄存器AUXR1中的UART_P1位的控制,STC11F08XE单片机的串行口可分时复用为2个串行口。,4 STC11F08XE单片机串行口的扩展功能,4.2 STC11F08XE单片机的独立波特率发生器 STC11F08XE单片机内部有1个独立的波特率发生器(简称BRT),通过对特殊功能寄存器BRT进行计数器初始值的设置,可调整独立波特率发生器的输出频率,BRT的地址是90H。通过对AUXR寄存器中的S1BRS置位,串行口选择独立波特率发生器为波特率发生器。此时,定时/计数器1可以释放出来,作为定时器、计数器或时钟输出使用。,

    注意事项

    本文(增强型8051单片机的串行口.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开