您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 机械/模具设计 > 3MCS51单片机原理_串行口.
2.3MCS-51串行接口串行数据通信概述一、并行通信和串行通信并行并行数据是一位一位传送的串行1位优点:传输线少,连线简单缺点:速度慢适用于远距离或数据量少的通信通信串行串行串行串行通信:打印机计算机网络鼠标扫描仪硬盘并行、串行接口的应用?I2CSPIRS232USB常见的串行通信接口:串行传输方式同步传输和异步传输同步传输1位数据计算机外设123456781001111110011111同步时钟1位数据计算机异步传输外设靠发送和接收速率相同来保证比特率:位/秒(bps)波特率:码元/秒(Baud)高位先送发送速率接收速率1、同步通信方式如何区分数据的起始?2、异步通信方式异步通信协议:(1)没有数据发送时,数据线保持“1”状态(2)发送数据时,先发起始位“0”,其后是数据(3)数据后再发一位停止位“1“因此对于8位数据至少要发送10位例:若比特率为9600bps,则每传输960帧,即960字符/秒而每位传输时间:T=1/9600≈0.104(ms)解决了传输一个字节的同步问题,如何组成一组数据的传输?计算机异步传输外设同步头数据7E7D5E7D7D5DPPP协议中3、单工、双工、半双工方式单工:广播双工:电话半双工:对讲机4、串行通信接口(1)UART(UniversalAsynchronousReceiver/Transmitter通用异步接收器/发送器(2)USRT(UniversalSynchronousReceiver/Transmitter)通用同步接收器/发送器8串-并8并-串发送接收1时钟时钟6、调制解调器-15V:逻辑1+15V:逻辑05、RS-232C标准美国电子工业协会EIA公布的串行总线标准DB-25DB-9最少3根线公用电话网ModemModem计算机计算机RS232CRS232CRxD(3)TxD(2)地(5)2.3.2.MCS-51串行口串行口概述8051的通讯:即单片机与外界进行信息交换。通讯方式:并行通讯:数据的各位同时发送或接受串行通讯:数据一位一位顺序发送或接受串行口通讯方式单工通讯:通讯接口只能发送或接受的单向通讯方式半双工通讯:通讯接口既可发送又可接受,但不能同时进行全双工通讯:通讯接口能同时发送接受的通讯方式异步传送方式与同步传送异步通讯:利用起始位表示字符的开始,用停止位表示字符结束D0D1D2D3D4D5D6D7D010P0起始位数据位D0~D7校验位结束位第n个字符(帧)2.同步通讯:在同步通讯中,每个字符要用起始位和停止位作为字符开始和结束的标志,占用了时间;所以在数据块传递时,为了提高速度,常去掉这些标志,采用同步传送。由于数据块传递开始要用同步字符来指示,同时要求由时钟来实现发送端与接收端之间的同步,故硬件较复杂。串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平……等)不同,形成了多种串行通信的协议与接口标准。常见的有:☞通用异步收发器(UART)——本课程介绍的串口☞通用串行总线(USB)☞I2C总线☞CAN总线☞SPI总线☞RS-485,RS-232C,RS422A标准……等等串行通信的协议与接口标准串行通信的数据传送率传送率:数据传送速度波特率(baudrate):异步通信中数据传输速率的单位,其含义每秒传送多少位二进制数。例:数据传送的速率为120个字符每秒,每个字符有1个起始位、8个数据位和一个停止位组成,则其传送波特率为:波特1200/1200/12010sbsb每一位的传送时间为波特率的倒数:mssbbtd833.01200112.3.3MCS-51串行口结构发送控制器发送SBUF(99H)接受SBUF(99H)门接受控制器+串行口中断串行控制寄存器(98H)输入移位寄存器定时器T1内部总线T1R1TXD(P3.1)RXD(P3.0)888物理空间上各自独立的发送寄存器和接收寄存器,有相同名字和地址空间,但不会出现冲突,因为发送寄存器只读不写,接受寄存器只写不读。串行口控制寄存器SCOND7D6D5D4D3D2D1D0SM0SM1SM2RENTB8RB8TIRISM0SM1:串行口方式选择位SM0SM1方式功能说明0008位同步移位寄存器方式(用于I/O扩展)01110位UART,波特率可变(T1溢出率/n)????10211位UART,波特率fosc/64或fosc/3211311位UART,波特率可变(T1溢出率/n)????SM2:允许方式2和方式3多机通讯位REN:接收允许控制位。由软件置位以允许接收,又由软件清0来禁止接收。TB8:是要发送数据的第9位。在方式2或方式3中,要发送的第9位数据,根据需要由软件置1或清0。例如,可约定作为奇偶校验位,或在多机通讯中作为区别地址帧或数据帧的标志位。RB8:接收到的数据的第9位。在方式0中不使用RB8。在方式1中,若(SM2)=0,RB8为接收到的停止位。在方式2或方,式3中,RB8为接收到的第9位数据。TI:发送中断标志。在方式0中,第8位发送结束时,由硬件置位。在其它方式的发送停止位前,由硬件置位。TI置位既表示一帧信息发送结束,同时也是申请中断,也可用软件查询的方法获得数据已发送完毕的信息,或用中断的方式来发送下一个数据。TI必须用软件清0。RI:接收中断标志位。在方式0,当接收完第8位数据后,由硬件置位。在其它方式中,在接收到停止位的中间时刻由硬件置位(例外情况见于SM2的说明)。RI置位表示一帧数据接收完毕,可用查询的方法获知或者用中断的方法获知。RI也必须用软件清0。特殊功能寄存器PCON:是为了在CHMOS的80C51单片机上实现电源控制而附加的。其中最高位是SMOD。2.3.4串行口工作方式一、方式0方式0为移位寄存器输入/输出方式。可外接移位寄存器以扩展I/O口,也可以外接同步输入/输出设备。8位串行数据都是从RXD(P3.0)输入或输出,TXD(P3.1)用来输出同步脉冲。1、方式0发送串行数据从RXD引脚输出,TXD引脚输出移位脉冲。CPU将数据写入发送寄存器时,立即启动发送,将8位数据以fosc/12的固定波特率从RXD输出,低位在前,高位在后。发送完一帧数据后,发送中断标志TI由硬件置位。2、方式0接收当串行口以方式0接收时,先置位允许接收控制位REN。此时,RXD(P3.0)为串行数据输入端,TXDP3.1仍为同步脉冲移位输出端。当(RI)=0和(REN)=1同时满足时,开始接收。当接收到第8位数据时,将数据移入接收寄存器,并由硬件置位RI。?二、方式1方式1为波特率可变的10位异步通讯接口方式。发送或接收一帧信息,包括1个起始位0,8个数据位和1个停止位1。1.方式1发送当CPU执行一条指令将数据写入发送缓冲SBUF时,就启动发送。串行数据从TXD引脚输出,发送完一帧数据后,就由硬件置位TI。2.方式1接受在(REN)=1时,串行口采样RXD引脚,当采样到1至0的跳变时,确认是开始位0,就开始接收一帧数据。只有当(RI)=0且停止位为1或者(SM2)=0时,停止位才进入RB8,8位数据才能进入接收寄存器,并由硬件置位中断标志RI;否则信息丢失。所以在方式1接收时,应先用软件清零RI和SM2标志。在串行通讯中,收发双方的数据传送率(波特率)要有一定的约定。在8051串行口的四种工作方式中,方式0和2的波特率是固定的,而方式1和3的波特率是可变的,由定时器T1的溢出率控制。方式0和方式2的波特率:在方式0,每个及其周期发送或接受一位数据,波特率的数值固定为时钟频率(fosc)的1/12,且不受SMOD的影响。在方式2中,波特率由PCON中的选择位SMOD来决定,当SMOD=0时,波特率为1/64fosc当SMOD=1时,波特率为1/32fosc,方式1和方式3的波特率:)1(322的溢出率波特率TSMOD其中,T1的溢出率取决于计数速率和定时器的预制值。T1计数率取决于它工作在定时器状态还是计数器状态,当工作于定时器状态时,T1计数脉冲为fosc/12;当工作于计数器状态时,T1计数脉冲取决于外部输入时钟频率。
本文标题:3MCS51单片机原理_串行口.
链接地址:https://www.777doc.com/doc-2920444 .html