大学《接口与通信》第4章2_第1页
大学《接口与通信》第4章2_第2页
大学《接口与通信》第4章2_第3页
大学《接口与通信》第4章2_第4页
大学《接口与通信》第4章2_第5页
已阅读5页,还剩64页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、D2/D3=1时,引脚OUT1/OUT2=01中断识别寄存器(IIR) 当接收数据错、接收缓冲寄存器满、发送缓冲器空以及应答联络的输入控制信号的状态变化等有一种或多种出现时,在允许中断的情况下,可通过读中断识别寄存器识别是何种事件引起中断。 4.3.5 INS8250INS8250应用编程应用编程1 1、查询方式发送、查询方式发送初始化初始化8250读读LSRD5=1?发送一个字符发送一个字符发完?发完?结束结束YYNN2 2、查询方式接收、查询方式接收初始化初始化82508250读读LSRD0=1?接收一个字符接收一个字符收完?收完?结束结束YYNN有错?有错?NY错误处理错误处理发送寄存器

2、接收数据就绪3 3、中断方式通信程序设计、中断方式通信程序设计1 1)中断通信方式初始化)中断通信方式初始化 修改中断向量:修改中断向量:按使用的端口按使用的端口COM1COM1或或COM2COM2,接管中接管中断断0CH0CH或中断或中断0BH0BH(保存原中断向量,将新的中断向量保存原中断向量,将新的中断向量替换上去,注意程序结束时恢复原中断向量)替换上去,注意程序结束时恢复原中断向量)。 确定通信协议:确定通信协议:设置波特率及数据传输格式。设置波特率及数据传输格式。 确定确定INS8250INS8250操作方式:操作方式:设置中断允许寄存器相应位设置中断允许寄存器相应位的允许或禁止,并

3、设允许向量中断模式的允许或禁止,并设允许向量中断模式(置置MCRMCR的的D3=1D3=1) 。 开放通信中断:开放通信中断:对对8259A8259A中断控制器的屏蔽寄存器编中断控制器的屏蔽寄存器编程(程(OCW1OCW1),),允许中断允许中断IRQ4IRQ4或或IRQ3IRQ3。 中断通信方式有查询中断和向量中断两种方式。中断通信方式有查询中断和向量中断两种方式。DATA SEGMENT DATAINT_SEG DW ?INT_OFF DW ?DATA ENDSmoval,0ch ;取原取原OCH中断向量中断向量movah,35hint21hmovINT_OFF,bx;将返回的向量将返回的

4、向量ES:BX保存在双字保存在双字movbx,es ;变量变量INT中中movINT_SEG,bxcli ;修改中断向量前关中断修改中断向量前关中断moval,0chmovah,25hmovdx,SEG INSEV ;DS:DX指向中断向量,其中指向中断向量,其中movds,dx ;DS指向段地址指向段地址movdx,OFFSET INSEV ;DX指向偏移量指向偏移量int21hmovdx,3fbh;线路控制寄存器线路控制寄存器LCR地址地址outdx,80h ;置置DLAB=1movdx,3f8h;低位除数寄存器低位除数寄存器DLL地址地址outdx,0ch ;写写9600波特率的除数低波

5、特率的除数低8位位incdx;高位除数寄存器高位除数寄存器DLH地址地址outdx,00h;写写9600波特率的除数高波特率的除数高8位位mov dx,3fbh;线路控制寄存器线路控制寄存器LCR地址地址mov al, 00011011b ;偶校验、偶校验、1位停止位、位停止位、8位数据位位数据位out dx,almov dx,3fch;MODEM控制寄存器控制寄存器MCR地址地址out dx,08h ;OUT2位置位置1,打开,打开COM1中断中断mov dx,3f9h;中断允许寄存器地址中断允许寄存器地址out dx,03h;允许收允许收/发中断发中断inal,21h;读读8259A的的I

6、MRandal,efhout21h,al;开放开放IRQ4中断中断sti D5 D4 D3 D2 D1 D0WLS0WLS1PENSTBEPSSPSBDLAB字符长度选择字符长度选择005位位016位位107位位118位位停止位选择停止位选择01位位11.5位位(D1D0=00) 2位位(D1D000)奇偶校奇偶校验允许验允许奇偶校奇偶校验选择验选择11偶校验偶校验01奇校验奇校验附加奇偶标志附加奇偶标志位选择位选择0不附加不附加1附加附加1位位中止设置中止设置1中止中止0正常正常除数寄存器除数寄存器访问允许访问允许0禁止禁止1允许允许D7 D6 D5 D4 D3 D2 D1 D02 2)通信

7、中断服务程序)通信中断服务程序 首先读中断识别寄存器首先读中断识别寄存器IIRIIR,判断中断源,然后转向判断中断源,然后转向对应的处理子过程对应的处理子过程( (程序程序) )。判断中断源应该按照中断。判断中断源应该按照中断优先级别次序进行。优先级别次序进行。 当中断识别寄存器当中断识别寄存器D2D1=11D2D1=11时,表明时,表明接收出错中断,接收出错中断,需要再读取线路状态寄存器需要再读取线路状态寄存器,分析错误原因,再进行,分析错误原因,再进行错误处理。错误处理。 可能出现多个中断源同时引发中断。可能出现多个中断源同时引发中断。因此,每处理因此,每处理完一种中断源后,应继续读取中断

8、识别寄存器,检测完一种中断源后,应继续读取中断识别寄存器,检测D0D0是否为是否为“0 0”,当当D0=0D0=0时,表明还有未决中断,应时,表明还有未决中断,应该继续分析中断源并进行中断处理。该继续分析中断源并进行中断处理。 中断程序返回的条件是中断识别寄存器的中断程序返回的条件是中断识别寄存器的D0=1。命令,状态/数据同步检测信号 数据终端准备好 数据装置准备好 请求传送 允许传送 接收器时钟 发送器时钟 RXESBRKERRTSTXENDTRIREHRXESBRKERRTSTXENDTRIREH允许发送“ 1”允许“ 0”不允许数据终端就绪: “ 1”使DTR输出为低允许接收“ 1”允许“ 0”不允许送间隔字符“ 1”使TXD为低“ 0”正常工作出错标志复位: “ 1” 使PE、OE、TE标志复位请求发送:“ 1”使RTS输出变低内部复位

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论