《第6章80C51单片机的串行口课件.ppt》由会员分享,可在线阅读,更多相关《第6章80C51单片机的串行口课件.ppt(57页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第6章 80C51单片机的串行口计算机串行通信基础 6.180C51单片机的串行口 6.280C51单片机的串行口应用6.32023/6/716.1 计算机串行通信基础通信:并行通信与串行通信 并行通信特点:传送控制简单、速度快,但传输线较多,成本高。2023/6/72 串行通信特点:传送控制复杂、速度慢,传输线少,成本低 2023/6/73 异步通信与同步通信收、发设备时钟独立,以字符(帧)为单位传输 6.1.1 串行通信的基本概念异步通信 2023/6/74 异步通信帧格式起始位(位);数据位(位);奇偶校验位(位,可无校验位);停止位(位)。特点v 易于实现v 效率不高 同步通信(发、收
2、时钟直接连接,效率高。板内元件间的SPI接口)2023/6/75 串行通信的传输方向单工 半双工 全双工 80C51有1个全双工串行口 2023/6/76 信号的调制与解调DTE:数据终端设备DCE:数据通信设备 调制解调器v调制v解调 2023/6/77 串行通信的错误校验奇偶校验 发送字符时,数据位尾随1位奇偶校验位(1或0)。奇校验时,数据中“1”的个数与校验位“1”的个数之和应为奇数;偶校验时,数据中“1”的个数与校验位“1”的个数之和应为偶数。接收字符时,对“1”的个数进行校验,若发现不一致,则说明传输数据过程中出现了差错。2023/6/78代码和校验 发送方将所发数据块求和(或各字
3、节异或),产生的校验和字节附加到数据块的末尾。接收方在接收数据时要对数据块(除校验字节外)求和(或各字节异或),将所得的结果与收到的“校验和”进行比较,相符则无差错,否则就认为传送过程出现了差错。2023/6/79 传输速率与传输距离传输速率比特率:每秒钟传送的信息量。单位:位秒(bps)波特率:每秒钟传送码元数目,单位:波特(Baud)基带传输(每个码元带有“1”或“0”这1 bit信息,传码率与传信率相同),波特率和比特率是相同的。常用波特率为:2400、4800、9600、14.4K、19.2K等 传输距离与传输速率的关系传输距离随波特率的增加而减小。2023/6/7106.1.2 串行
4、通信接口标准RS-232C定义的是DTE与DCE间的接口标准。机械特性DB-25(阳头)连接器 DB-9(阳头)连接器 阳头通常用于计算机侧,阴头用于连接线侧 2023/6/711 功能特性插针序号 信号名称 功能 信号方向1 PGND保护接地 2(3)TXD发送数据(串行输出)DTEDCE 3(2)RXD接收数据(串行输入)DTEDCE 4(7)RTS请求发送DTEDCE 5(8)CTS允许发送DTEDCE 6(6)DSR DCE就绪(数据建立就绪)DTEDCE 7(5)SGND信号接地 8(1)DCD载波检测DTEDCE 20(4)DTR DTE就绪(数据终端准备就绪)DTEDCE 22(
5、9)RI振铃指示DTEDCE2023/6/712 电气特性RS-232C采用负逻辑电平,规定(-3-25V)为逻辑“1”,(+3+25V)为逻辑“0”。-3V+3V是未定义的过渡区。试比较:电平转换电路(如MAX232)。2023/6/713 过程特性远程通信,需要调制解调器 2023/6/714近程通信,不需要调制解调器 无联络线方式 联络线短接(伪连接)方式 2023/6/715 RS-232C电平与TTL电平转换驱动电路早期常用MC1488、MC1489 近期常用MAXM232:片内带有自升压电路 仅需+5V电源 内含2个发送器,2个接收器 2023/6/716 采用RS-232C接口存
6、在的问题 传输距离短、速率低 通常不超过15米,速率20Kbps 有电平偏移 RS-232收发共地,地电流会使电平偏移出现逻辑错误。抗干扰能力差 RS-232常用单端输入,易混入干扰。(故用大摆幅)新标准RS-485改善了传输特性,应用广泛!2023/6/7176.2 80C51单片机的串行口6.2.1 80C51串行口的结构 1个全双工串口:通信或接口扩展 接收发送缓冲器逻辑同名、物理分开;接收双缓冲。2023/6/7186.2.2 80C51串行口的控制寄存器 串行口控制寄存器SCONSM0和SM1:工作方式选择位7 6 5 4 3 2 1 0SCON SM0 SM1 SM2 REN TB
7、8 RB8 TI RI 字节地址:98HSM0 SM1方 式 说 明 波特率0 0 0移位寄存器fosc/120 1 1 10位UART(8位数据)可变1 0 2 11位UART(9位数据)fosc/64或fosc/321 1 3 11位UART(9位数据)可变2023/6/719SM2:多机通信控制位SM2=1时,接收机处于地址帧筛选状态。若RB81,该地址帧信息可进入SBUF,并使RI为1,进而在中断服务中再进行地址号比较;若RB80,该帧不是地址帧,应丢掉,且保持RI=0。SM2=0时,接收机处于地址帧筛选被禁止状态。不论收到的RB8为0或1,均可以使收到的信息进入SBUF,并使RI=1
8、。此时的RB8通常为校验位。REN:串行接收使能位,软件置1时,启动接收过程2023/6/720TB8:多机方式发送的第9位多机方式的地址/数据帧标志。也可作为奇偶校验位。RB8:多机方式接收的第9位多机方式的地址/数据帧标志。也可作为奇偶校验位。TI:发送中断标志位,要由软件清0RI:接收中断标志位,要由软件清02023/6/721 电源控制寄存器PCON SMOD:波特率倍增位。在串行口方式1、方式2、方式3时,波特率与SMOD有关,当SMOD=1时,波特率提高一倍。复位时,SMOD=0。7 6 5 4 3 2 1 0PCON SMOD 字节地址:97H2023/6/7226.2.3 80
9、C51串行口的工作方式 方式0:同步移位寄存器,用于扩展并行口 RXD:输入或输出引脚 TXD:移位脉冲输出接收和方式都是8位波特率固定为:fosc/122023/6/723数据输出:CLR用于对74LS164清0 2023/6/724数据输入:S/L负脉冲将并行数据装入,高电平时启动单片机进行数据输入。2023/6/725【例】用8051 串行口外接4094 扩展8 位并行输出口,驱动所连接的8 只LED 管循环点亮。接口扩展如图5-15 所示。图5-15 方式0扩展应用仿真实例2023/6/726采用查询方式:ORG 00H START:MOV SCON,#00H;设置串行口工作方式0 M
10、OV A,#80H;初始值 CLR P1.0;允许串行输入,禁止并行输出 NEXT:MOV SBUF,A;启动串行发送 LOOP:JNB TI,LOOP;一帧数据发送完?CLR TI;发送完成,清除标志位 SETB P1.0;允许并行输出 ACALL DELAY;延时 RR A;准备下一个数据 CPL P1.0;允许串行输入,禁止并行输出 SJMP NEXT DELAY:MOV R3,#8;延时DELAY1:MOV R4,#70 DJNZ R4,$DJNZ R3,DELAY1 RET END 2023/6/727 INTES:CLR ES CLR TI;串行中断控制 SETB P1.0 RR
11、A ACALL DELAY CPL P1.0 MOV SBUF,A SETB ES RETI DELAY:MOV R3,#200;延时DELAY1:MOV R4,#200 DJNZ R4,$DJNZ R3,DELAY1 RET END 采用中断方式:ORG 0000H LJMP START ORG 0023H;串行中断入口地址 AJMP INTES ORG 10HSTART:MOV SCON,#00H MOV A,#80H CLR P1.0 SETB ES SETB EA MOV SBUF,A SJMP$2023/6/728 方式1:10位帧,用于双机通信 起始位:1位 数据位:8位停止位:1位2023/6/729串行发送:(写SBUF启动发送过程)串行接收:(置REN=1启动接收过程)2023/6/730 方式2和方式3:11位帧,用于多机通信 起始位:1位 数据位:9位停止位:1位2023/6/731串行发送:(写SBUF启动发送过程)串行接收:(置REN=1启动接收过程)2023/6/732
限制150内