书签 分享 收藏 举报 版权申诉 / 83
上传文档赚钱

类型-微机原理-第七章-串行通信接口技术-PPT课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3229294
  • 上传时间:2022-08-08
  • 格式:PPT
  • 页数:83
  • 大小:1.32MB
  • 【下载声明】
    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低

    26、低4位任一位置位任一位置1,均产生调制解调器状态,均产生调制解调器状态中断,当中断,当CPU读取该寄存器或复位后,低读取该寄存器或复位后,低4位被位被清零清零(7)中断允许寄存器IER(3F9H)n8250设计有设计有2个中断寄存器和个中断寄存器和4级中断级中断n4级中断的优先权,是按照串行通信过程级中断的优先权,是按照串行通信过程中事件的紧迫程度安排的、是固定不变的中事件的紧迫程度安排的、是固定不变的n用户可利用中断允许或禁止进行控制用户可利用中断允许或禁止进行控制n中断允许寄存器的低中断允许寄存器的低4位控制位控制8250这这4级中级中断是否被允许断是否被允许n某位为某位为1,则对应的中断

    27、被允许,则对应的中断被允许n否则,被禁止否则,被禁止8.中断识别IIR(3FAH)保存正在请求中断的优先权最高保存正在请求中断的优先权最高的中断级别编码的中断级别编码0 0 0 0 0ID1 ID0IP0 有中断有中断1 无中断无中断ID1ID0优先权优先权中断类型中断类型1 11 00 10 01234 接收线路状态接收线路状态 接收数据准备好接收数据准备好 发送保持寄存器空发送保持寄存器空 调制解调器状态调制解调器状态3.8250应用举例写通信控制字写通信控制字D7=1写除数低写除数低8位位写通信控制字写通信控制字写除数高写除数高8位位写写MODEM控制字控制字写中断允许字写中断允许字 结

    28、束结束n8250的初始化过程的初始化过程例:例:82508250端口地址为端口地址为3F8H3F8H3FFH3FFH,若,若82508250以波特率以波特率9600bps9600bps,进行异步通信,每字符进行异步通信,每字符8 8位,位,1 1位停止位,采用奇校验,允位停止位,采用奇校验,允许所有中断,试编程初始化。许所有中断,试编程初始化。解:解:MOVMOV DXDX,3FBH 3FBH ;82508250线路控制寄存器地址送线路控制寄存器地址送DXDX MOV ALMOV AL,80H80H;置;置DLAB=1DLAB=1,设置除数,设置除数寄存器寄存器 OUT DXOUT DX,AL

    29、ALMOV DXMOV DX,3F8H 3F8H ;除数寄存器地址送;除数寄存器地址送DXDX MOV AL MOV AL,0CH0CH ;波特率为;波特率为9600bps 9600bps OUT DX OUT DX,ALAL ;送除数低;送除数低8 8位位 INC DXINC DXMOV ALMOV AL,00H00H ;送除数高;送除数高8 8位位OUT DXOUT DX,ALALMOVMOV DXDX,3FBH 3FBH ;82508250控制寄存器地址送控制寄存器地址送DXDXMOV ALMOV AL,00001011B 00001011B ;8 8位数据,奇校验,位数据,奇校验,1

    30、1位停止位位停止位OUT DXOUT DX,AL AL MOVMOV DXDX,3F9H 3F9H ;中断允许寄存器地址送;中断允许寄存器地址送DXDX MOV ALMOV AL,0FH 0FH ;设置中断允许控制字,允许所有中断;设置中断允许控制字,允许所有中断OUT DXOUT DX,AL AL MOVMOV DXDX,3FCH 3FCH ;设置;设置MODEMMODEM控制字控制字 MOV ALMOV AL,0FH0FHOUT DXOUT DX,AL AL ;OUT1OUT1*,OUT2,OUT2*均为均为0 0 n8250查询方式发送查询方式发送初始化初始化8250读读LSRD5=1?

    31、发送一个字符发送一个字符发完?发完?结束结束YYNNn查询方式接收查询方式接收初始化初始化82508250读读LSRD0=1?接收一个字符接收一个字符收完?收完?结束结束YYNN有错?有错?NY错误处理错误处理例:两台例:两台PCPC机用机用RS-232CRS-232C串口采用零串口采用零MODEMMODEM方式实现近方式实现近距离串行通信。数据传送波特率为距离串行通信。数据传送波特率为9600bps9600bps,数据格式,数据格式为为8 8位位/每字符,每字符,1 1位停止位,奇校验,双机位停止位,奇校验,双机82508250端口地端口地址均为址均为2F8H2F8H2FFH2FFH。试编写

    32、发送和接收程序,其功能。试编写发送和接收程序,其功能如下:如下:通信双方执行程序后,均等待键盘输入字符通信双方执行程序后,均等待键盘输入字符双方只要按下一个键,键值在本机当前光标处显示,双方只要按下一个键,键值在本机当前光标处显示,而且传送到对方,在对方当前光标处显示出来而且传送到对方,在对方当前光标处显示出来双方只要按下双方只要按下ESCESC键,则停止程序的执行,返回到键,则停止程序的执行,返回到DOSDOS状态状态通信双方如果出现通信错误,则屏幕显示通信双方如果出现通信错误,则屏幕显示“?”,并继续等待键入新字符或接收新字符并继续等待键入新字符或接收新字符MOV DX,2FBH ;825

    33、08250控制寄存器地址送控制寄存器地址送DXDXMOV AL,80H ;置;置DLAB=1DLAB=1,设置除数寄存器,设置除数寄存器OUT DX,ALMOV DX,2F8H ;除数寄存器地址送;除数寄存器地址送DXDXMOV AL,0CH;波特率为;波特率为9600bps9600bps OUT DX,AL ;送除数低;送除数低8 8位位INC DXMOV AL,00H;送除数高;送除数高8 8位位OUT DX,AL MOV DX,2FBH ;82508250控制寄存器地址送控制寄存器地址送DXDX MOV AL,0BH ;8 8位数据,奇校验,位数据,奇校验,1 1位停止位位停止位 OUT

    34、 DX,AL MOV DX,2FCH;设置;设置MODEM控制字控制字 MOV AL,03H;RTS,CTS有效有效 OUT DX,AL MOV DX,2F9H;禁止中断;禁止中断 MOV AL,00H OUT DX,ALFOREVER:MOV DX,2FDHIN AL,DX ;读线路状态寄存器;读线路状态寄存器TEST AL,1EH JNZ ERROR ;有错,转错误处理程序有错,转错误处理程序TEST AL,01H ;查接收缓冲器是否满查接收缓冲器是否满JNZ RECEIVETEST AL,20H ;查发送缓冲器是否空查发送缓冲器是否空JNZ FOREVER ;为空则发送字符;为空则发送字

    35、符MOV AH,01H ;读键盘缓冲器内容读键盘缓冲器内容;若有键按下,则;若有键按下,则ZF=0ZF=0,且,且AL=AL=字符码字符码INT 16HJZ FOREVERMOV AH,00H ;AL=字符字符ASCII码码 INT 16HMOV DX,2F8HOUT DX,ALMOV AH,02H ;显示字符;显示字符MOV DL,ALINT 21HCMP AL,27 ;若按下若按下ESCESC键,则退出键,则退出 JNZ NEXT MOV AH,4CH INC 21HNEXT:JMP FOREVERRECEIVE:MOV DX,2F8H ;接收数据;接收数据 IN AL,DX AND AL

    36、,7FH ;检查是否;检查是否ESC CMP AL,27 JNZ DISP ;不是;不是ESC,则显示,则显示 MOV AH,4CH;是;是ESC,退出,退出 INT 21H DISP:PUSH AX MOV BX,0;显示字符;显示字符 MOV AH,14 INT 10H POP AX CMP AL,0DH ;处理回车;处理回车 JNZ FOREVER MOV AL,0AH MOV BX,0 MOV AH,14 INT 10H JMP FOREVER ERROR:MOV DX,3F8H IN AL,DXMOVAL,?MOV BX,0 MOV AH,14 INT 10H JMP FOREVER

    37、n8250中断方式通信中断方式通信n中断通信方式初始化中断通信方式初始化n修改中断向量:按使用的端口COM1或COM2,接管中断0CH或中断0BH(保存原中断向量,将新的中断向量替换上去,注意程序结束时恢复原中断向量)n确定通信协议:设置波特率及数据传输格式,设置中断允许寄存器相应位的允许或禁止n开放通信中断:对8259A中断控制器的屏蔽寄存器编程(OCW1),允许中断IRQ4或IRQ3n通信中断服务程序通信中断服务程序n首先读中断识别寄存器IIR,判断中断源,然后转向对应的处理子过程(程序)。n当中断识别寄存器D2D1=11时,表明接收出错中断,需要再读取线路状态寄存器,分析错误原因,再进行

    38、错误处理n可能出现多个中断源同时引发中断。因此,每处理完一种中断源后,应继续读取中断识别寄存器,检测D0是否为“0”,当D0=0时,表明还有未决中断,应该继续分析中断源并进行中断处理。n中断程序返回的条件是中断识别寄存器的D0=1。可编程串行通信接口芯片可编程串行通信接口芯片8251A8251A基本性能:基本性能:n全双工、双缓冲器全双工、双缓冲器n两种传送方式:同步和异步传送两种传送方式:同步和异步传送n同步传送:同步传送:58位位/字符,内部或外部同步,字符,内部或外部同步,可自动插人同步字符可自动插人同步字符n异步传送:异步传送:58位位/字符,时钟速率为通信波字符,时钟速率为通信波特率

    39、的特率的1、16或或64倍倍n可自动产生、检测和处理终止字符,可产生可自动产生、检测和处理终止字符,可产生1、1.5或或2位的停止位位的停止位n波特率在同步方式时为波特率在同步方式时为064Kbps,异步方,异步方式时为式时为019.2Kbpsn出错检测:具有奇偶、溢出和帧错误等检测出错检测:具有奇偶、溢出和帧错误等检测电路电路8251A的内部结构:的内部结构:(1)8251A与与CPU接口信号接口信号 1 1、片选信号片选信号 CSCS*为低电平时,为低电平时,8251A8251A被选中被选中2 2、数据信号数据信号 D7D7D0D0与系统的数据总线相连与系统的数据总线相连 3 3、读写控制

    40、信号读写控制信号 RDRD*为读信号为读信号WRWR*为写信号为写信号C/DC/D*为控制为控制/数据信号数据信号RESETRESET复位复位CLKCLK时钟时钟8251A的接口信号的接口信号(2)8251A与外部设备之间的连接信号与外部设备之间的连接信号 1.发送器发送器1)TxRDY(Transmitter Ready):发送器准备好,高电平有效):发送器准备好,高电平有效2)TxEMPTY(Transmitter Empty):发送器空,高电平有效):发送器空,高电平有效3)TxD:发送数据线:发送数据线4)TxC:发送器输入时钟:发送器输入时钟2.接收器接收器1)RxD:接收数据线:接

    41、收数据线2)RxRDY:接收器准备好:接收器准备好3)SYNDET:同步检测:同步检测4)RxC:接收器输入时钟:接收器输入时钟3.与调制器的接口接号与调制器的接口接号1)DTR:数据终端准备好:数据终端准备好2)RTS:请求发送:请求发送3)DSR:数据装置准备好:数据装置准备好4)CTS:清除传送:清除传送8251A的编程的编程n8251A的编程模型(的编程模型(P312,图图7-52)n8251A的读写操作的读写操作8251A的工作过程的工作过程(P315,图图7-56)(1 1)方式命令字)方式命令字(2 2)操作命令字)操作命令字(用于控制发用于控制发/收,数据传送方向收,数据传送方

    42、向)(3 3)状态寄存器格式)状态寄存器格式例:若要查询例:若要查询8251A8251A接收器是否准备好,可用接收器是否准备好,可用下列程序实现:下列程序实现:MOV DX,3F9H ;状态口;状态口NEXT:IN AL,DX ;读状态口;读状态口 AND AL,02H ;查询;查询D D1 1=1=1?JZNEXT;未准备好,转;未准备好,转NEXTNEXT等待等待 MOV DX,3F8H ;数据口地址送;数据口地址送DXDX IN AL,DX 8251A应用举例应用举例1.异步方式下初始化程序例:设例:设8251A8251A工作于异步方式,波特率系数为工作于异步方式,波特率系数为1616,

    43、具有,具有7 7位数据位,位数据位,1 1 位停止位,偶校验,位停止位,偶校验,发送、接收允许,设端口地址为发送、接收允许,设端口地址为3F8H3F8H和和3F9H3F9H,试编程初始化。试编程初始化。分析:根据题目要求,可以确定方式命令字为:分析:根据题目要求,可以确定方式命令字为:01111010B01111010B,即,即7AH7AH。而操作命令字为。而操作命令字为00110111B00110111B,即,即37H37H初始化程序如下:初始化程序如下:MOV DXMOV DX,3F9H 3F9H MOV ALMOV AL,7AH7AH;送方式命令字;送方式命令字OUT DXOUT DX,

    44、ALALMOV ALMOV AL,37H37H ;设操作命令字;设操作命令字OUT DXOUT DX,ALAL2.同步方式下初始化程序例:设例:设8251A8251A工作于同步方式,控制口的端口地址工作于同步方式,控制口的端口地址为为3F9H3F9H,采用双同步字符,奇校验,采用双同步字符,奇校验,7 7 位数据位,位数据位,试编程初始化。试编程初始化。分析:根据题目要求,可以确定方式命令字为分析:根据题目要求,可以确定方式命令字为00011000B,即,即18H。而操作命令字为。而操作命令字为10110111B即即B7H。它使。它使8251A对同步字符进行对同步字符进行检索;同时使状态寄存器

    45、中检索;同时使状态寄存器中3个出错标志复位;此外,个出错标志复位;此外,使使8251A的发送器启动,接收器也启动;控制字还的发送器启动,接收器也启动;控制字还通知通知8251A,CPU当前已经准备好进行数据传输。当前已经准备好进行数据传输。MOV DX,3F9H ;命令端口地址给命令端口地址给DXDXMOV AL,00011000B ;方式命令字;方式命令字OUT DX,AL MOV AL,16HOUT DX,AL ;送第一个同步字符;送第一个同步字符16H16HOUT DX,AL ;送第二个同步字符;送第二个同步字符16H16HMOV AL,B7H ;设置操作命令字;设置操作命令字OUT D

    46、X,AL 3.3.两台微机之间进行双机串行通信的举例两台微机之间进行双机串行通信的举例例:通过例:通过8251A实现两台微机相互通信的实现两台微机相互通信的硬件连接图如图硬件连接图如图8-25所示。利用两片所示。利用两片8251A通过标准串行接口通过标准串行接口RS-232C实现实现两台两台8086微机之间的异步串行通信。设微机之间的异步串行通信。设两台微机中两台微机中8251A的命令端口地址为均的命令端口地址为均3F9H,数据端口地址均为,数据端口地址均为3F8H。分析:设系统采用查询方式控制串行通信的分析:设系统采用查询方式控制串行通信的过程。过程。初始化程序由两部分组成:初始化程序由两部

    47、分组成:将一方定义为发送方,发送方将一方定义为发送方,发送方CPUCPU查询查询到到TxRDYTxRDY有效时,则有效时,则CPUCPU向向8251A8251A并行输并行输出一个待发送的字节数据;出一个待发送的字节数据;将对方定义为接收方,接收方将对方定义为接收方,接收方CPUCPU查询查询到到RxRDYRxRDY有效时,则从有效时,则从8251A8251A输入一个已输入一个已接收到的字节数据,直到全部数据传送完毕接收到的字节数据,直到全部数据传送完毕为止。为止。发送程序如下:发送程序如下:STARTSTART:MOV MOV DXDX,3F9H3F9HMOV MOV ALAL,7FH7FH;

    48、异步方式,;异步方式,8 8位数据,位数据,;一位停止位,偶校验;一位停止位,偶校验OUT OUT DXDX,ALAL ;波特率因子为;波特率因子为6464,允许,允许 ;发送;发送MOV MOV ALAL,11H11H;操作命令字;操作命令字OUTOUT DXDX,ALALMOV MOV DIDI,1000H1000H ;设置地址指针;设置地址指针MOV MOV CXCX,40H40H ;设置计数器初值;设置计数器初值L1L1:MOVMOV DXDX,3F9H3F9H ININ ALAL,DXDX AND ALAND AL,01H 01H ;查询;查询TxRDYTxRDY是否有效是否有效 J

    49、Z L1 JZ L1 ;无效则等待;无效则等待 MOV MOV DXDX,3F8H3F8H MOVMOV ALAL,DIDI ;向;向8251A8251A输出一个字节数据输出一个字节数据 OUTOUT DXDX,ALAL INCINC DI DI ;修改地址指针;修改地址指针 LOOP L1LOOP L1 ;未传送完,则继续下一个;未传送完,则继续下一个 HLTHLT接收程序如下:接收程序如下:BEGINBEGIN:MOVMOV DXDX,3F9H3F9HMOV MOV ALAL,7FH7FH ;异步方式,;异步方式,8 8位数据,位数据,1 1位停止位位停止位OUTOUT DXDX,AL A

    50、L ;偶校验,波特率因子;偶校验,波特率因子6464,允许接收,允许接收MOV MOV ALAL,14H14H ;操作命令字(置;操作命令字(置ERER,RxE RxE 为为1 1)OUTOUT DXDX,AL AL MOV MOV SISI,2000H2000H;设置地址指针;设置地址指针MOVMOV CXCX,40H40H;设置计数器初值;设置计数器初值L2L2:MOV MOV DXDX,3F9H3F9HININ ALAL,DX DX ;读取状态字;读取状态字TESTTEST ALAL,38H 38H ;查询接收器是否有错。;查询接收器是否有错。JNZ JNZ ERR ERR ;有错则转错

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:-微机原理-第七章-串行通信接口技术-PPT课件.ppt
    链接地址:https://www.163wenku.com/p-3229294.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库