实验十8255方式1中断.doc_第1页
实验十8255方式1中断.doc_第2页
实验十8255方式1中断.doc_第3页
实验十8255方式1中断.doc_第4页
全文预览已结束

下载本文档

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

文档简介

实验十 可编程8255方式1一、实验目的1、掌握8255工作方式时的使用及编程。2、进一步掌握中断处理程序的编写。二、实验设备TPC-USB实验系统(块USB总线接口模块、一个扩展实验台及软件集成实验环境)三、实验原理与内容1、按图10-1,8255方式1的输出电路连好线路。2、编程:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:依次输出01H、02H,04H,08H,10H,20H,40H,80H使L0L7依次发光,中断次结束。3、 按图10-2,8255方式1输入电路,连好线路。 图10-1 输出电路图 10-2 输入电路4、编程:每按一次单脉冲按钮产生一个正脉冲使8255产生一次中断请求,让CPU进行一次中断服务:读取逻辑电平开关预置的ASCII码,在屏幕上显示其对应的字符,中断次结束。四、参考流程图(如图10-3、图10-4)五、汇编程序参考程序: code segmentassume cs:codestart:mov ax,csmov ds,axmov dx,offset int_procmov ax,250bh ;设外部中断int_proc类型号为0BHint 21hmov dx,21h ;中断屏蔽寄存器in al,dxand al,0f7h ;开放IRQ3中断out dx,almov dx,28bh ;控制字端口1010001011mov al,0a0h;置8255为A口方式1输出10100000out dx,almov al,0dh ;将PC6置位00001101out dx,almov bl,1ll: jmp ll ;循环等待int_proc:mov al,blmov dx,288h ;将AL从8255的A口输出1010001000out dx,almov al,20hout 20h,al ;中断结束命令EOI(用20h表示)shl bl,1jnc next ;CF=0,中断次数小于8,返回主程序in al,21hor al,08h ;关闭IRQ3中断out 21h,alsti ;开中断mov ah,4ch ;返回DOSint 21hnext: iretcode endsend start参考程序:mov ax,250bhint 21hmov dx,21hin al,dx ;设置IRQ3中断矢量and al,0f7h ;开放IRQ3中断out dx,almov dx,28bh ;控制端口mov al,0b8h ;设8255为A口方式1输入10111000out dx,almov al,09h ;将PC4置位00000100out dx,almov bl,8 ;BL为中断次数计数器sss: jmp sssint_proc: ;中断服务程序mov dx,288h ;自8255A口输入一数据in al,dxmov dl,al ;将所输入的数据保存到DLmov ah,02h ;显示ASCII码为DL的字符int 21hmov dl,0dh ;回车int 21hmov dl,0ah ;换行int 21hmov dx,20h ;发出EOI结束命令mov al,20hout dx,aldec bl ;计数器减1jnz next ;不为0则返回主程序in al,21hor al,08hout

温馨提示

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

评论

0/150

提交评论