-微机原理-第七章-串行通信接口技术-PPT课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《-微机原理-第七章-串行通信接口技术-PPT课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 第七 串行 通信 接口 技术 PPT 课件
- 资源描述:
-
1、可编程串行通信接口芯片可编程串行通信接口芯片8251A在串行通信时,收发双方要解决的问题在串行通信时,收发双方要解决的问题:n以何种速率进行数据的发送和接收(以何种速率进行数据的发送和接收(波特率波特率)n采用何种数据格式(采用何种数据格式(帧格式帧格式)n接收方如何得知一批数据的开始和结束(接收方如何得知一批数据的开始和结束(帧同步帧同步)n接收方如何从位流中正确地采样到位数据(接收方如何从位流中正确地采样到位数据(位同步位同步)n接收方如何判断收到数据的正确性(接收方如何判断收到数据的正确性(数据校验数据校验)n收发出错时如何处理(收发出错时如何处理(出错处理出错处理)串行通信的基本概念串
2、行通信的基本概念全双工方式全双工方式站站A站站B站站A站站B站站A站站B半双工方式半双工方式单工方式单工方式1.数据传送方向数据传送方向2.串行通信的两种基本方式串行通信的两种基本方式(1)异步通信及其协议)异步通信及其协议所谓的异步通信,是指通信中两个字符的时间间所谓的异步通信,是指通信中两个字符的时间间隔是不固定的,而同一字符中的相邻代码间时间隔是不固定的,而同一字符中的相邻代码间时间间隔是固定的间隔是固定的n串行异步通信以字符为单位进行传输,用串行异步通信以字符为单位进行传输,用起始位表示字符的开始,用停止位表示字起始位表示字符的开始,用停止位表示字符结束,其通信协议是符结束,其通信协议
3、是起止式异步通信协起止式异步通信协议议n串行通信时的数据、控制和状态信息都使串行通信时的数据、控制和状态信息都使用同一根信号线传送用同一根信号线传送n收发双方必须遵守共同的通信协议(通信收发双方必须遵守共同的通信协议(通信规程),才能解决传送速率、信息格式、规程),才能解决传送速率、信息格式、位同步、字符同步、数据校验等问题位同步、字符同步、数据校验等问题(2)同步通信及其协议)同步通信及其协议同步通信以一个数据块为传输单位,每个数据块附同步通信以一个数据块为传输单位,每个数据块附加加1个或个或2个同步字符,最后以校验字符结束个同步字符,最后以校验字符结束 同步通信协议有多种,常用的有面向比特
4、的高级数据链路同步通信协议有多种,常用的有面向比特的高级数据链路控制协议控制协议HDLC(High-Level Data Link Control)。)。IBM系列系列微机中常用的同步数据链路控制协议微机中常用的同步数据链路控制协议SDLC(Synchronous Data Link Control)则是)则是HDLC的子集的子集n同步通信的特点是不仅字符内部保持同步通信的特点是不仅字符内部保持“同同步步”,而且字符与字符之间也是同步的。,而且字符与字符之间也是同步的。n在这种通信方式下,收在这种通信方式下,收/发双方必须建立准确发双方必须建立准确的位定时信号,也就是收的位定时信号,也就是收/
5、发时钟的频率必须发时钟的频率必须严格地一致。严格地一致。n每个字符不增加任何附加位,而是连续发送每个字符不增加任何附加位,而是连续发送3.波特率与收波特率与收/发时钟发时钟n串行传输速率也称串行传输速率也称波特率波特率(Baud Rate)n每秒传输的二进制位数每秒传输的二进制位数bpsn字符中每个二进制位持续的时间长度都一样,为数据字符中每个二进制位持续的时间长度都一样,为数据传输速率的倒数传输速率的倒数(1)串行传输速率)串行传输速率字符速率与波特率两者关系字符速率与波特率两者关系 字符速率:每秒钟传输的字符数。字符速率:每秒钟传输的字符数。波特率:指单位时间内传送二进制数据的波特率:指单
6、位时间内传送二进制数据的位数。单位为:位数。单位为:b/s例例:异步传输过程异步传输过程 设每个字符对应设每个字符对应1 1个起始位、个起始位、7 7个信息位、个信息位、1 1个个奇偶校验位和奇偶校验位和1 1个停止位,如果波特率为个停止位,如果波特率为1200bps1200bps,那么,每秒钟能传输的最大字符数为那么,每秒钟能传输的最大字符数为1200/101200/10120120个个例例2:2:同步传输同步传输 用用1200bps1200bps的波特率工作,用的波特率工作,用4 4个同步字个同步字符作为信息帧头部,但不用奇偶校验,那符作为信息帧头部,但不用奇偶校验,那么,传 输么,传 输
7、 1 0 01 0 0 个 字 符 所 用 的 时 间 为个 字 符 所 用 的 时 间 为7(100+4)/12007(100+4)/12000.6067s0.6067s,这就是说,每,这就是说,每秒钟能传输的字符数可达到秒钟能传输的字符数可达到100/0.6067100/0.6067165165个。个。可见,可见,在同样的传输率下,同步传输时在同样的传输率下,同步传输时实际字符传输率要比异步传输时高实际字符传输率要比异步传输时高。(2)发送发送/接收时钟接收时钟发送发送/接收时钟频率与接收时钟频率与波特率之间的关系为:波特率之间的关系为:发送发送/接收时钟频率接收时钟频率=n 发送发送/接
8、收接收波特率波特率例:要求传输速率为例:要求传输速率为1200 bps当选择当选择n=16时,时,表明一位数字信号中有表明一位数字信号中有16个时个时钟脉冲,故发送钟脉冲,故发送/接收时钟频率为:接收时钟频率为:1200 16=19.2kHz其中其中n称为波特因子,一般称为波特因子,一般n=1,16,32,64 n调制和解调调制和解调 长距离通信时,常需要利用电话线路,它的频带则只有长距离通信时,常需要利用电话线路,它的频带则只有300Hz300Hz3400Hz3400Hz。为了通过电话线路传输数字信号,必须先。为了通过电话线路传输数字信号,必须先把数字信号转换为适合在电话线路上传送的模拟信号
9、,这就把数字信号转换为适合在电话线路上传送的模拟信号,这就是调制;经过电话线路传输后,在接收端再将模拟信号转换是调制;经过电话线路传输后,在接收端再将模拟信号转换为数字信号,这就是解调。为数字信号,这就是解调。n调制方法调制方法 :移频键控(移频键控(FSKFSK)移相键控移相键控PSK PSK 振幅键控(振幅键控(ASKASK)4.信号的调制解调信号的调制解调nRS-232CRS-232C信号定义的说明信号定义的说明 RS-232CRS-232C的的2525个插脚仅定义个插脚仅定义2222个。在微机通信个。在微机通信中,通常使用的中,通常使用的RS-232CRS-232C接口信号只有接口信号
10、只有9 9根引脚根引脚(P299,P299,图图7-377-37)5.RS232C接口接口nRS-232CRS-232C总线的电气规范总线的电气规范nRS-232CRS-232C标准与标准与TTL标准之间的转换标准之间的转换常用于将常用于将TTLTTL电平转换为电平转换为RS-232CRS-232C电平的芯片,除电平的芯片,除MC1488MC1488外外还有还有7518875188,7515075150等;用于将等;用于将RS-232CRS-232C电平转换为电平转换为TTLTTL电电平,除平,除MC1489MC1489外,还有外,还有7518975189,7515475154等等nRS-23
11、2CRS-232C的应用的应用n使用使用MODEMMODEM连接连接n直接连接直接连接n三线连接三线连接n计算机通常使用计算机通常使用UART来实现数据的串来实现数据的串/并和并和并并/串转换串转换nUART的基本原理(的基本原理(P301,图图7-39、7-40)nUART的工作过程的工作过程n常用的错误标志常用的错误标志n奇偶校验错奇偶校验错n帧错误帧错误n溢出(丢失)错误溢出(丢失)错误6.通用异步收发器通用异步收发器(UART)可编程异步通信接口可编程异步通信接口INS82508250的基本功能:的基本功能:n全双工、双缓冲器接收和发送全双工、双缓冲器接收和发送n15种波特率,种波特率
12、,50-9600bpsn可编程的异步通信格式可编程的异步通信格式n提供奇偶、溢出和帧校验等错误检测提供奇偶、溢出和帧校验等错误检测n片内具有优先权中断控制逻辑片内具有优先权中断控制逻辑8250的内部结构的内部结构8250芯片引脚定义与功能芯片引脚定义与功能(1)面向CPU一侧的引脚(1)n数据线数据线D7 D0:在:在CPU与与8250之间交换信息之间交换信息n地址线地址线A0A2:寻址:寻址8250内部寄存器内部寄存器n片选线:片选线:8250设计了设计了3个片选输入信号个片选输入信号CS0、CS1、CS2*和一个片选输出信号和一个片选输出信号CSOUT。3个片个片选输入都有效时,才选中选输
13、入都有效时,才选中8250芯片,同时芯片,同时CSOUT输出高电平有效。输出高电平有效。n地址选通信号地址选通信号ADS*:当该信号低有效时,锁存:当该信号低有效时,锁存上述地址线和片选线的输入状态,保证读写期间上述地址线和片选线的输入状态,保证读写期间的地址稳定的地址稳定(1)处理器接口引脚(2)n读控制线读控制线n数据输入选通数据输入选通DISTR(高有效)和(高有效)和DISTR*(低有效)(低有效)有一个信号有效,有一个信号有效,CPU从从8250内部寄存器读出数据内部寄存器读出数据n相当于相当于I/O读信号读信号n写控制线写控制线n数据输出选通数据输出选通DOSTR(高有效)和(高有
14、效)和DOSTR*(低有(低有效)有一个有效,效)有一个有效,CPU就将数据写入就将数据写入8250内部寄存器内部寄存器n相当于相当于I/O写信号写信号n8250读写控制信号有两对,每对信号作用完全相读写控制信号有两对,每对信号作用完全相同,只不过有效电平不同而己同,只不过有效电平不同而己(1)处理器接口引脚(3)n驱动器禁止信号驱动器禁止信号DDIS:CPU从从8250读取数读取数据时,据时,DDIS引脚输出低电平,用来禁止外引脚输出低电平,用来禁止外部收发器对系统总线的驱动;其它时间,部收发器对系统总线的驱动;其它时间,DDIS为高电平为高电平n主复位线主复位线MR:硬件复位信号:硬件复位
15、信号RESETn中断请求线中断请求线INTRPT:8250有有4级共级共10个中个中断源,当任一个未被屏蔽的中断源有请求断源,当任一个未被屏蔽的中断源有请求时,时,INTRPT输出高电平向输出高电平向CPU请求中断请求中断(2)面向外设引脚信号8250数据装置准备好数据装置准备好DSR*数据终端准备好数据终端准备好DTR*发送数据发送数据SOUT接收数据接收数据SIN请求发送请求发送RTS*允许发送允许发送CTS*信号地信号地GND载波检测载波检测RLSD*振铃指示振铃指示RI*(3)时钟信号n时钟输入引脚时钟输入引脚XTAL1:8250的基准工作时钟的基准工作时钟n时钟输出引脚时钟输出引脚X
16、TAL2:基准时钟信号的输出端基准时钟信号的输出端n波特率输出引脚波特率输出引脚BAUDOUT*:基准时钟经:基准时钟经8250内部波特率发生器分频后产生发送时钟,为波特内部波特率发生器分频后产生发送时钟,为波特率率16倍倍n接收时钟引脚接收时钟引脚RCLK:接收外部提供的接收时钟接收外部提供的接收时钟信号;若采用发送时钟作为接收时钟,则只要将信号;若采用发送时钟作为接收时钟,则只要将RCLK引脚和引脚和BAUDOUT*引脚直接相连引脚直接相连(4)输出线nOUT1*和和OUT2*:n两个一般用途的输出信号两个一般用途的输出信号n由调制解调器控制寄存器的由调制解调器控制寄存器的D2和和D3使其
17、输出使其输出低电平有效信号低电平有效信号n复位使其恢复为高复位使其恢复为高8250的寄存器及编程方法的寄存器及编程方法n8250内部有内部有10个个可访问的寄存器,除数可访问的寄存器,除数寄存器是寄存器是16位的,占用两个连续的位的,占用两个连续的8位端位端口口n内部寄存器用引脚内部寄存器用引脚A0A2来寻址;同时还来寻址;同时还要利用通信线路控制寄存器的最高位,即要利用通信线路控制寄存器的最高位,即除数寄存器访问位除数寄存器访问位DLAB的的0和和1两种状态,两种状态,来区别公用来区别公用1个端口地址所访问的两个寄个端口地址所访问的两个寄存器存器8250内部寄存器端口地址适配器地址适配器地址
18、DLAB A2A1A0访问寄存器名称访问寄存器名称3F8H00 0 0接收数据寄存器(读)接收数据寄存器(读)发送保持寄存器(写)发送保持寄存器(写)3F9H 00 0 1中断允许寄存器中断允许寄存器3F8H 10 0 0波特率除数锁存寄存器(低字节)波特率除数锁存寄存器(低字节)3F9H 10 0 1波特率除数锁存寄存器(高字节)波特率除数锁存寄存器(高字节)3FAH 0 1 0中断识别寄存器中断识别寄存器3FBH 0 1 1线路控制寄存器线路控制寄存器3FCH 1 0 0MODEM控制寄存器控制寄存器3FDH 1 0 1线路状态寄存器线路状态寄存器3FEH 1 1 0MODEM状态寄存器状
19、态寄存器(1)发送保持寄存器THR(3F8H):“写写”包含将要串行发送的并行数据包含将要串行发送的并行数据 CPU发送保持寄存器发送保持寄存器发送移位寄存器发送移位寄存器同步控制同步控制8250SOUT(1)接收缓冲寄存器RBR(3F8H):“读读”存放串行接收后转换成并行的数据存放串行接收后转换成并行的数据CPU接收缓冲寄存器接收缓冲寄存器接收移位寄存器接收移位寄存器同步控制同步控制8250SIN(2)波特率除数寄存器BRD(3F8H,3F9H)除数寄存器保存设定的分频系数除数寄存器保存设定的分频系数BRD基准时钟频率基准时钟频率(16波特率)波特率)起起 始始 位位时钟时钟(RCLK)数
20、据线数据线(SIN)T16 T16 T8 T例:计算波特率为例:计算波特率为1200bps1200bps的波特率除的波特率除数。数。当使用当使用UARTUART的内部时钟为的内部时钟为1.8432MHz1.8432MHz时(或由外部通过时(或由外部通过XTALXTAL1 1引脚输入),引脚输入),BRD=1843200/BRD=1843200/(161612001200)=0060H=0060H(3)通信线路控制寄存器LCR(3FBH)DLABD6 D5 D4 D3D2D1 D0寄存器选择寄存器选择0 正常值正常值1 除数寄存器除数寄存器中止字符中止字符0 无作用无作用1 发送中止字发送中止字
21、符符校验位设置校验位设置0 无校验无校验位位001 设置奇校设置奇校验验011 设置偶校验设置偶校验101 校验位为校验位为1111 校验位为校验位为0停止位个数停止位个数0 1位位1 1.5位(数据位为位(数据位为5位时)位时)1 2位(数据位为位(数据位为68位时)位时)数据位个数数据位个数00 5位位01 6位位10 7位位11 8位位指定串行异步通信的字符格式指定串行异步通信的字符格式例:通信线路控制寄存器(例:通信线路控制寄存器(LCRLCR)的编程,)的编程,设置发送数据字长为设置发送数据字长为8 8位,位,2 2位停止位,偶校位停止位,偶校验,其程序段为:验,其程序段为:MOV
22、DXMOV DX,3FBH 3FBH ;LCRLCR的地址的地址MOV ALMOV AL,00011111B 00011111B ;LCRLCR内容数内容数;据格式参数;据格式参数 OUT DXOUT DX,ALAL(4)通信线路状态寄存器LSR(3FDH)0D6 D5 D4 D3D2D1 D0为为1,表示发送移位寄存器空;,表示发送移位寄存器空;当数据由发送保持寄存器移入当数据由发送保持寄存器移入发送移位寄存器时,该位为发送移位寄存器时,该位为0提供串行异步通信的当前状态提供串行异步通信的当前状态供供CPU读取和处理读取和处理为为1,表示发送保持寄存器空,表示发送保持寄存器空,当当CPU将字
23、符写入发送保持将字符写入发送保持寄存器后,该位为寄存器后,该位为0为为1,表示正在传输中止字符,表示正在传输中止字符为为1,表示出现帧错误,表示出现帧错误为为1,表示出现奇偶错,表示出现奇偶错为为1,表示出现溢出错,表示出现溢出错为为1,表示接收数据缓冲器收到,表示接收数据缓冲器收到一个数据,既接收数据准备好;一个数据,既接收数据准备好;当当CPU读走数据后,该位为读走数据后,该位为0为为1使使DTR*引脚为低引脚为低否则为高否则为高(5)MODEM控制寄存器MCR(3FCH)设置设置8250与数据通信设备之间与数据通信设备之间联络应答的输出信号联络应答的输出信号0 0 0LOOP OUT2O
24、UT1RTS DTR为为1使使RTS*引脚为低引脚为低否则为高否则为高 为为1使使OUT1*引脚为低引脚为低否则为高否则为高 为为1使使OUT2*引脚为低引脚为低否则为高否则为高 为为1使使8250为循环工作方式为循环工作方式否则为正常工作方式否则为正常工作方式例:要使例:要使MCRMCR的的DTRDTR,RTSRTS有效,有效,OUTOUT1 1,OUTOUT2 2以及以及LOOPLOOP无效,则编程如下:无效,则编程如下:MOV DX,3FCH ;MCR的地址,的地址,MOV AL,00000011B;MCR的控制字的控制字 OUT DX,AL例:要对例:要对82508250通过自发自收进
25、行诊断,则程序通过自发自收进行诊断,则程序为为:MOV DX,3FCH ;MCR的地址的地址MOV AL,00010011B ;LOOP位置位置“1”OUT DX,AL(6)MODEM状态寄存器MSR(3FEH)n反映反映4个控制输入信号的当前状态及其变化个控制输入信号的当前状态及其变化nMSR高高4位中某位为位中某位为1,说明相应输入信号当前,说明相应输入信号当前为低有效,否则为高电平为低有效,否则为高电平nMSR低低4位中某位为位中某位为1,则说明从上次,则说明从上次CPU读取读取该状态字后,相应输入信号已发生改变,从高变该状态字后,相应输入信号已发生改变,从高变低或反之低或反之nMCR低
展开阅读全文