微机原理及应用 第十章 串行接口技术

上传人:沈*** 文档编号:252487249 上传时间:2024-11-16 格式:PPT 页数:43 大小:1.16MB
返回 下载 相关 举报
微机原理及应用 第十章 串行接口技术_第1页
第1页 / 共43页
微机原理及应用 第十章 串行接口技术_第2页
第2页 / 共43页
微机原理及应用 第十章 串行接口技术_第3页
第3页 / 共43页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,10,章 串行接口技术,计算机通信,是将计算机技术和通信技术的相结合,完成,计算机与外部设备,或,计算机与计算机,之间的,信息交换,。可以,分为两大类:并行通信与串行通信。,并行通信,是将所传送数据的,各位,用多条数据线,同时,进行,发送或接收。,特点:,控制简单、传输速度快;由于传输线较多,长距离传送时成本高且接收方的各位同时接收存在困难,适合于,短距离,传输,30m,。,串行通信,是将所传送数据分成,一位一位,的形式,在一条传输线上,逐个位,地传送。,特点,:传输线少,长距离传送时,成本低,,且可以利用电话网等现成的设备,但,速度慢,,数据的,传送控制,比并行通信,复杂,。,第,10,章 串行接口技术,10,.2,80C51,的串行口,10,.1,串行通信概述,10,.3,串行口,工作方式及应用,10,.4,单片机与,PC,的通信,10.1,串行通信概述,1,、串行通信的基本通信方式,异步通信,同步通信,2,、串行通信的制式,单工制式,半双工制式,全双工制式,3,、串行通信的速率,1,、,串行通信,的,基本通信方式,异步串行,通信,:,以,字符,为传送单位,;,每个,字符,(1,帧,),随机出现在数据流中,但,1,个字符的各位之间严格定时发送,;,即,:,字符之间,异步,字符内各位间,同步,同步串行,通信,:,以数据块,(,字符串,),为传送单位,每帧含成百上千的字符,;,每帧内部的每一位都是,同步,的,;,字符间及字符内各位间都是,同步,的,对时钟要求严格,收发双方用同一时钟,起止式,异步通信字符格式,3,)特点,字符随机出现在数据流中,字符之间有不定长的空闲位,靠起始位和停止位定界,1,帧数据,1,),字符,帧,格式,起始位,:1,位,低电平,数据位,:5,8,位,先低位后高位,校验位,:1,位,/0,位,奇偶校验,停止位,:1,位、,1.5,位或,2,位,高电平,空闲 位,停止位,1,1.5,奇偶校验,数据位,(5,8,位,),起始位,不限,或,2,位,有,/,无,(,先低后高位,),1,位,0/1,0,1,1,1,0/1,0/1,0/1,0/1,0/1,0,LSB,MSB,第,n,个字符,第,n+1,个字符,2,)起,/,止位的作用,定界一帧数据,建立收发双方同步,起始位标志一帧的开始,停止位标志着结束,同步串行协议的帧格式,2,)特点:,一帧由若干字符组成,控制字符,定界数据和控制传输,SYNC1,SYNC2,消息头,消息,CRC,1,)帧信息各部分的含义,SYNC:,同步字符,个数根据需要确定,消息头:数据的,控制信息,消息:数据信息,校验字符,:CRC,校验、块校验、纵横奇偶校验,2,、,串行通信,的制式,单 工:数据只能单向传送,半双工:可分时进行双向传送,方向切换,全双工:可同时进行双向传送,发送器,接收器,发送器,接收器,甲机,乙机,信号地,半双工,发送器,接收器,接收器,发送器,甲机,乙机,信号地,全双工,发送器,接收器,甲机,乙机,信号地,单工,3,、串行通信的传送速率,波特率,是,每秒钟传输二进制代码的位数,,单位是:位秒(,bps,)。,如每秒钟传送,240,个字符,而每个字符格式包含,10,位,(1,个起始位、,1,个停止位、,8,个数据位,),,这时的波特率为:,10,位,240,个,/,秒,=2400 bps,10.2,80C51,的串行口,有两个物理上独立的,接收、发送缓冲器,SBUF,,它们占用同一地址,99H,;,接收器是,双缓冲,结构,避免数据接收过程中出现的帧重叠错误;,发送缓冲器,因为发送时,CPU,是主动的,不会产生帧重叠错误。,10.2.1,80C51,串行口的结构,10.2.2,串行口的特殊功能寄存器,1,.,数据缓冲器,SBUF,发送,SBUF,和接收,SBUF,共用一个地址,99H,,,物理上是隔离的。,1,),发送,SBUF,存放,待发送,的,8,位数据,,写入,SBUF,将同时启动发送,发送完毕置发送中断标志位,TI=1,。,发送指令:,M,O,VSBUF,,,A,2,),接收,SBUF,存放,已接收成功,的,8,位数据,使接收中断标志,RI=1,,申请中断,供,CPU,读取。,读取串行口接收数据指令:,M,O,V A,,,SBUF,2.,串行口控制,/,状态寄存器,SC,O,N,(98H),(1)SM0 SM1,选择 工作方式 波特率,0 0,方式,0 8,位移位寄存器,f,osc,/12,0 1,方式,1 10,位,UART T1,溢出率,x2,SMOD,/32,1 0,方式,2 11,位,UART2,SMOD,x,f,osc,/64,1 1,方式,3 11,位,UART T1,溢出率,x2,SMOD,/32,(2)SM2,:,多机通讯控制位,用于多机通讯,启动,RI,若,SM2=1,在方式,2,或方式,3,中,则接收到第,九,位数据,RB8,为,1,时,,才,将数据装入,SBUF,,并启动接收中断标志,RI=1,。否则数据将丢失,在方式,1,中,则只有接收到有效停止位,1,才启动,RI,。,若,SM2=0,则无论接收到第,九,位数据,RB8,是,1,还是,0,,,都能将数据装入,SBUF,,并且启动接收中断标志,RI=1,。,在方式,0,中,则,SM2,必须为,0,。,2.,串行口控制,/,状态寄存器,SC,O,N,(98H),(3)REN,:,允许,串行口,接收,控制位,软件置位时,(REN=1),允许接收数据,清,零,时,禁止接收,数据。,(4)TB8,:方式,2,或,3,要发送的第,9,位数据,(5)RB8,:方式,2,或,3,中接收的第,9,位数据,(6),TI,:,发送完一帧数据的中断标志,发送完一帧数据后由,硬件自动置,1,,可以向,CPU,申请中断。若允许中断,则响应中断后,必须,由,软件清,0,;,若禁止中断,则可用查询方式进行处理。,(7),RI,:,接收一帧,有效,数据的中断标志,接收完一帧,有效,数据后由,硬件自动置,1,,向,CPU,申请中断。若允许中断,则响应中断后,必须,由,软件清,0,;,若禁止中断,则可用查询方式进行处理。,TI,和,RI,共用一个中断源,由软件查询决定响应哪一个中断。,3.,电源控制寄存器,PCON(87H),SMOD,(PCON.7,),:,波特率加倍控制位。,SMOD=1,,,波特率加倍,,SMOD=0,,,则不加倍,点,点通讯,奇偶校验位,多机通讯,地址,/,数据标识位,查询方式,接收,的流程图,查询方式,发送,的流程图,中断方,式,发送,的流程图,中断方,式,接收,的流程图,中断方,式,发送,和,接收,的流程图,10.2.3,、波特率设计,方式,0,为固定波特率:,B=,f,osc,/12,方式,2,可选两种波特率:,B=,f,osc,(2,SMOD,/64),方式,1,、,3,为可变波特率,用,T1,作波特率发生器。,B=(2,SMOD,/32)T1,溢出率,T1,为方式,2,自动重载,的时间常数:,X=2,8,-t/T,溢出时间:,t=(2,8,-X)T=(2,8,-X)12/,f,osc,T1,溢出率,=1/t=,f,osc,/12(2,8,-X),波特率,B=(2,SMOD,/32),f,osc,/12(2,8,-X),串行口方式,1,、,3,,根据波特率选择,T1,工作方式,计算时间常数,T1,选方式,2,:,TH1=TL1=X=2,8,-,f,osc,/122,SMOD,/(32B),串行通讯的波特率,波特率,SMOD,时间常数,19200,1,FDH,9600,0,FDH,4800,0,FAH,2400,0,F4H,1200,0,E8H,600,0,F0H,300,0,A0H,表,1,、给出主频为,11.0592MHZ,下,由定时器,1,工作在,方式,2,做定时器发生时,几种常用波特率的时间常数。,10.3,80C51,串行口的工作方式,10.3.1,、方式,0,同步移位寄存器,方式。,主要,用于串行扩展,I/,O,接口。,1,.,一帧,8,位,无起始位和停止位,低位在前高位在后。,2,.RXD,:,数据输入,/,输出端,,,RXD,为串行数据,,TXD,为串行时钟,。,TXD,:,同步脉冲输出端,每个脉冲对应一个数据位。,3,.,波特率,B=,f,osc,/12,如:,f,osc,=12MHz,,,B=1MHz,,,每位数据占,1,s,。,4,.,发送过程:,TI=0,且写入,SBUF,,,启动发送,一帧发送结束,,TI=1,。,接收过程:,RI=0,且,REN=1,,启动接收,一帧接收完毕,,RI=1,发送时序,写入,SBUF,RXD,输出,TXD,TI,D,0,D,1,D,2,D,3,D,4,D,5,D,6,D,7,REN=1,RXD,输入,RI,=0,接收时序,(a),(b),【例10-2】,利用,74LS165,扩展,2,个,8,位并行输入口,读入,10,组数据存入内,RAM 40H,开始的单元中。,ORG0000H,AJMPMAIN,ORG0100H,MAIN:MOVR6,#0AH;,设置读入数据组数,MOVR0,#40H;,设置片内,RAM,地址指针,RCV0:CLRP1.0;,允许置入并行数据,SETBP1.0;,允许串行移位,RCV0:CLRP1.0;,允许并行置入数据,SETBP1.0;,允许串行移位,MOVR1,#02H;,设置每组字节数,RCV1:MOVSCON,#10H;,设置串行口工作方式,0,,并启动接收,WAIT:JNBRI,WAIT;,未接收完一帧数据,等待,CLRRI;,清除串行接收中断标志,MOVA,SBUF;,读入数据,MOVR0,A;,送入内部,RAM,区,INCR0;,修正地址指针,DJNZR1,RCV1;,是否接收完一组,字节数,DJNZR6,RCV0;,是否读完预定,组数,,未完则继续,RET,ORG 0000H,MOV A,#55H ;设置间隔显示初值,LOOP:,CLR P1.0 ;74LS164输出清0,SETB P1.0 ;允许数据串行移位,MOV SCON,#00H;设置串行口工作方式0,MOV SBUF,A ;启动串行口发送,JNB TI,$;等待一帧发送结束,CLR TI ;清除串行发送中断标志,LCALL DEL ;调用延时子程序,RL A ;左移,SJMP LOOP ;循环,【例10-3】,利用,74LS164,扩展,1,个,8,位并行输出口,编程使,8,个发光二极管隔一亮一,并循环。,ORG 0000H,MOV A,#55H ;设置间隔显示初值,LOOP:CLR P1.0 ;74LS164输出清0,SETB P1.0 ;允许数据串行移位,MOV SCON,#00H;设置串行口工作方式0,MOV SBUF,A ;启动串行口发送,JNB TI,$;等待一帧发送结束,CLR TI ;清除串行发送中断标志,LCALL DEL ;调用延时子程序,RL A ;左移,SJMP LOOP ;循环,10.3.2,、方式,1,10,位数据的异步通信口。,1,.,一帧,10,位:,8,位数据位,,1,个起始位,(0),,,1,个停止位,(1),。,2,.RXD,:,接收数据端。,TXD,:,发送数据端。,3,.,波特率:,用,T1,作为波特率发生器,,B=(2,SMOD,/32)T1,溢出率,4,.,发送:写入,SBUF,,,同时启动发送,一帧发送结束,,TI=1,。,4,.,发送:写入,SBUF,,,同时启动发送,一帧发送结束,,TI=1,。,接收:,REN=1,,,允许接收。,REN=1,且,RI=0,,启动接收,当,REN=1,且,RI=0,,,CPU,才开始,以所选择波特率的,16,倍,速率,采样,RXD,引脚电平信号;,若出现,负跳变,,才进入数据接收状态,先检测,起始位,,若第一位为,0,,继续,接收一帧,数据;否则,停止
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


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

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


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