第八讲:单片机串口通讯

上传人:dja****22 文档编号:243000203 上传时间:2024-09-13 格式:PPT 页数:30 大小:225KB
返回 下载 相关 举报
第八讲:单片机串口通讯_第1页
第1页 / 共30页
第八讲:单片机串口通讯_第2页
第2页 / 共30页
第八讲:单片机串口通讯_第3页
第3页 / 共30页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,串行口与串行通信,串行通信的基本特征是,数据,逐位顺序,进行传送,串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平等)不同,形成了多种串行通信的协议与接口标准。,常见的有:,通用异步收发器(UART)本讲介绍的串口,通用串行总线(USB),I2C总线,CAN总线,SPI总线,RS-232C, RS-485 , RS422A标准等等,并行、串行通信示意图,并行是数据的各位同时收发,串行是数据一位一位次序发送或接收,3,全双工串行接口(UART),单工:单向的(或者是收或者是发),半双工,:(串行通信)收/发,不可,同时进行,全双工,:(串行通信)收/发,可同时,进行,异步串行通信,:,以,字符,为单位进行传送,同步串行通信,:以,数据块,为单位进行传送,波特率(bps.),:,单位时间传送二进制的位数 (bit/秒),他是衡量串口传输速度快慢的重要指标,【例】,波特率是9600 那么1秒传输的,二进制位数就是9600个,异步通信的数据格式,5,简单的,RS-232C,数据通讯,6,51单片机的串行接口,SBUF是两个数据缓冲寄存器 公用地址99H,SM0 SM1,SM2,REN,TB8 RB8,TI R1,SCON,SM0,SM1:,串行口4种工作方式的选择位。,0 0 方式0:,8位移位寄存器,波特率,固定,为,f,osc,/12,0 1 方式1:,10位异步收发,(,1,+8+,1,位),,,波特率,可变,按公式计算,1 0 方式2:,11位异步收发,(,1,+8+1+,1,位),,,波特率,固定=,f,osc,x1/32,或,1/64,1 1 方式3:,11位异步收发,(,1,+8+1+,1,位),,,波特率,可变,,按公式计算,SM2:,串行口,多机通信,控制位,(作为方式2、方式3的,附加控制位,),串行口控制寄存器,SCON,(98H),RI,TI:,串行口收/发数据申请中断标志位,1 申请中断; 0 不申请中断,在方式0中,第8位发送结束时,由硬件置位。在其他方式的发送停止位之前,由硬件置位。TI置位既表示一帧信息发送结束,同时也是申请中断,可根据需要,用软件查询方法获得数据已发送完毕的信息,或者也可由中断的方式来发送下一个数据。TI必须由软件清0,RI和TI道理相同 也需要由软件清0,SM0 SM1,SM2,REN,TB8 RB8,TI R1,SCON,n+1,n-1,P,1,0,D0,D1,D2,D3,D4,D5,D6,D7,P,1,0,D0,起始位,数 据 位,校验位/ 停止位,串行数据帧,RI,TI:,串行口收/发数据申请中断标志位,1 申请中断; 0 不申请中断,TB8:,方式2、3中,是要发送的第9位数据。,多机通信中,TB8=0 表示发送的是数据;,TB8=1 表示发送的是地址。(奇偶校验),RB8:,在方式2、3中,是收到的第9位数据。,在多机通信中,用作区别地址帧/数据帧的,标志。(奇偶校验),SM0 SM1,SM2,REN,TB8 RB8,TI RI,REN,:,串行口接收允许控制位,= 1 表示允许接收; = 0 禁止接收。,SCON,SMOD, GF1 GF0,PD,1DL,电源控制寄存器,PCON,(97H),特殊功能寄存器,PCON,不能按位寻址,SMOD:,在串行口工作方式 1、2、3 中,,是,波特率加倍位 (产生高波特率时启用平时不用,比如用11.0592晶振产生57600波特率时就要设置成SMOD=1),=1 时,波特率加倍(PCON=0x80;),=0 时,波特率不加倍。(PCON=0x00;),(在PCON中只有这一个位与串口有关),PCON,PD:掉电方式控制位,=0:常规工作方式。,=1,:进入掉电方式:,振荡器,停振,片内,RAM,和,SRF,的值保持不变,P0P3,口维持原状。,程序,停止,只有复位能使之退出掉电方式。,SMOD, GF1 GF0,PD IDL,PCON,IDL:,待机方式(空闲方式)控制位,=0:常规工作方式。,=1,:进入待机方式:,振荡器,继续振荡,中断,、,定时器,、,串口,功能继续有效,片内,RAM,和,SRF,保持不变,CPU状态,保持、,P0P3,口维持原状,程序,停顿,。,中断和复位能退出待机,继续后面的程序。,SMOD, GF1 GF0,PD 1DL,PCON,PD:掉电控制位,=0:常规方式。,=1,:掉电方式:,振荡器,停振,片内,RAM,和,SRF,不变,P0P3,口维持原状,程序,停止,只有复位能退出掉电,IDL:待机控制位,=0:常规方式。,=1,:待机方式:,振荡器,继续振荡,中断,定时器,串口,有效,片内,RAM,和,SRF,不变,CPU状态,P0P3,维持原状,程序,停顿,。,中断和复位能退出待机,继续后面的程序。,SMOD, GF1 GF0,PD 1DL,PCON,串行口工作方式 0,工作方式0:,8位移位寄存器I/O方式,发送:,SBUF,中的串行,数据,由,RxD,逐位移出;,TxD,输出,移位时钟,,频率=fosc1/12;,每送出8位数据,TI,就自动置1,;,需要用,软件清零,TI,。,接收:串行,数据,由,RxD,逐位移入,SBUF,中;,TxD,输出,移位时钟,,频率=fosc1/12;,每接收 8位数据,RI,就自动置1,;,需要用,软件清零,RI,。,经常配合,“串入并出”“并入串出”,移位,寄存器一起使用扩展接口 74HC164 74HC165等,我们开发板不涉及这方面 所以不做讲解,工作方式0:,8位移位寄存器I/O方式,常用于串行通讯。除发/收8位数据外,还,在,D0,位前有一个,起始位“0”,;,在,D7,位后有一个,停止位“1”,。,方式1工作时:,发送端,自动添加,一个起始位和一个停止位;,接收端,自动去掉,一个起始位和一个停止位。,工作方式1,:,10位UART,(,1,+8+,1,位),波特率,可变,波特率可变,用定时器T1作波特率发生器:,公式:,波特率 =(2,SMOD,/32),T1的溢出率,波特率=,(2,SMOD,/32),T1的溢出率,溢出率:T1溢出的频繁程度,即:T1溢出一次所需时间的倒数。也就是晶振频率,初值 X,=,2,n,-,2,SMOD,fosc,32,波特率,12,波特率,=,2,SMOD,fosc,32,12(2,n,-,X,),其中:,X,是定时器初值,初值 X,=,2,n,-,2,SMOD,fosc,32,波特率,12,用,T1,工作于,方式2,来产生波特率,9600,,,已知晶振频率=,11.0592MHz,。要求出T1的,初值,:,初值 X,=,2,8,-,2,0,11.0592,10,6,32,9600,12,= 256,-,= 256,-,3,11.0592,10,6,=,253 =,FDH,不同晶振的最大波特率及其误差 11.0592M 和 22.1184M时最小,晶振频率(MHz) 最大波特率 误差率,12.000000 48000.16%12.288000 24001.23%14.318180 24000.23%14.745600 38400 0.00%15.000000 38400 1.73%16.000000 48002.12%,20.000000 96001.36%,22.118400 1152000.00%,24.000000 96000.16%24.576000 48001.23%25.000000 48000.47%28.000000 96001.27%32.000000 96002.12%,晶振频率(MHz) 最大波特率 误差率,1.000000300 2.12%1.84320096000.00%2.000000300 0.79%2.457600300 0.78%3.00000012000.16%3.579545300 0.23%3.68640019200 0.00%4.00000012002.12%4.19430424001.14%4.91520012001.59%5.00000024001.36%5.06880024000.00%6.00000024000.16%6.14400012001.23%7.37280038400 0.00%8.00000024002.12%10.000000 48001.36%10.738635 24001.32%11.000000 57600 0.54%,11.059200 57600 0.00%,波特率,(方式1、3),f,osc,=6M,f,osc,=12M,f,osc,= 11.059M,SMOD,T,1,方式,初值,SMOD,T,1,方式,初值,SMOD,T,1,方式,初值,62500,1,2,FFH,19200,1,2,FDH,9600,0,2,FDH,4800,1,2,F3H,0,2,FAH,2400,1,2,F3H,1,2,F3H,0,2,F4H,1200,1,2,E6H,0,2,E6H,0,2,E8H,600,1,2,CCH,0,2,CCH,0,2,D0H,300,0,2,CCH,0,2,98H,0,2,A0H,137.5,1,2,1DH,0,2,1DH,0,2,2EH,110,0,2,72H,0,1,FEEBH,0,1,FEFFH,常用波特率和定时器,T1,初值关系表,21,RxD,引脚为,接收端,,,TxD,引脚为,发送,端,由波特率,发生器,T1,控制发送速度。,T1作波特率发生器时,初始化包括:,选,定时器1,工作方式2,(TMOD选,8位自动重装 TMOD=0x20,);,将计算出的,初值,X,赋给,TH1,TL1,;,启动T1,(,TR1=1;,);,注意,T1,不要开中断,!,工作方式1,的接收/发送,串行口的初始化包括:,对,SCON,选工作方式,对,PCON,设波特率加倍位“,SMOD,”(缺省值=0),如果是接收数据,还要先置打开,REN接收允许,位(REN=1;),如果采用中断方式 还要打开 ES串口中断允许位和总中断EA位,GATE,C / T M1 M0,GATE,C / T M1 M0,T1,T0,(89H),SM0 SM1,SM2,REN,TB8 RB8,TI R1,SCON,SM0,SM1:,串行口工作方式选择位。,0 1 :方式1,,8位UART,(,1,+8+,1,位),REN:,串行口,接收允许,位。 REN=1 允许接收,串行口控制寄存器,SCON,0 1,0,1,0 0,0 0,TB8,RB8,,TI,RI,等位由运行中间的情况,决定,可先写成 “0”,SM2:,串行口,多机通信,控制位,作为方式2、3,的,附加控制位,,此处不用,可写成“0”,EA, ET2 ES ET1 EX1 ET0 EX0,IE,中断允许寄存器,IE,(0A8H),ES:,串行中断允许控制位,=0 时禁止中断;,=1,时,允许,中断。,EA:,总的中断允许控制位(总开关):,=0 时禁止全部中断;,=1,时,允许,中断。,由于波特率固定,常用于,单片机间,通讯。,数据由,8+,1,位组成,通常附加的一位,(TB8/RB8),用于,“奇偶校验”,。,工作方式2,:,9位UART,(,1,+8+1+,1,位),两种,波特率,方式2的波特率 = fosc,2,SMOD,/64,即:,f,osc,1/32,或,f,osc,1/64,两种,奇偶校验,是检验串行通信双方传输的数据正确与否的,一个措施,,,并不能保证通信数据的传输一定正确,。,换言之:如果,奇偶校验发生错误,表明数据传输一定出错了;如果奇偶校验没有出错,,绝不等于,数据传输完全正确。,奇校验:,8位,有效数据连同,1位,附加位中,,二进制,“1”的个数,为,奇数,偶校验:,8位,有效数据连同,1位,附加位中,,二进制,“1”的个数,为,偶数,约定,接收,采用,奇校验,若接收到的,9位,数据中“1”的个数为奇数,,则表明接收,正确,,取出8位有效数据即可;,若接收到的,9位,数据中“1”的个数为,偶数,,,则表明接收,出错,!应当进行,出错处理,。,约定,发送,采用,奇校验,若,发送,的8位有效数据中“1”的个数为,偶数,,,则要,人为添加,一个附加位,“1”,一起发送;,若,发送,的8位有效数据中“1”的个数为,奇数,,,则要,人为添加,一个附加位,“0”,一起发送。,采用,偶校验,时,处理方法与,奇校验,相反,回顾:,程序状态字寄存器,PSW,中有一个,奇偶状态位,P,CY,AC,F0,RS0,OV,P,RS1,PSW.7,PSW.0,P,(PSW.0):,奇偶状态位。,P=1,表示目前累加器中 “1”的个数为,奇数,P=0,表示目前累加器中 “1”的个数为,偶数,CPU随时监视着,Acc,的,“1”的个数,并自动反映在,P,工作方式2 的,奇偶校验用法,串口方式2 的,奇偶校验用法:,SM0 SM1 SM2 REN,TB8 RB8,TI R1,SCON,串行口控制寄存器,SCON,TB8 RB8,工作方式3,:,当SM0,SM1为11时,串行口工作于方式3,9位UART,(,1,+8+1+,1,位),波特率可变,串口方式3,和方式2唯一的区别是波特率机制不同,。,方式2的波特率固定为时钟周期的32或64分频,不可变。此工作方式与其他串行通讯设备连接困难,因此不常用。,方式3的,波特率可变,按前面的公式计算:,波特率=,(2,SMOD,/32),T1的溢出率,波特率,=,2,SMOD,fosc,32,12(2,n,-,X,),其中:,X,是定时器初值,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


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

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


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