实验九中断控制器8259实验_第1页
实验九中断控制器8259实验_第2页
实验九中断控制器8259实验_第3页
实验九中断控制器8259实验_第4页
实验九中断控制器8259实验_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、主程序流程图主程序流程图(第一部分)主程序流程图(第二部分)中断处理子程序 CODECODE SEGMENTSEGMENT ASSUMEASSUME CS:CODECODE,DS:DATADATADELAY PROCPROC PUSH CX PUSH BX MOV BX,0FFFHLOOP2: MOV CX,0FFFFHLOOP1: LOOP LOOP1 DEC BX JNZ LOOP2 POP BX POP CX RET DELAY ENDPENDPSTARTSTART: MOV AX,DATADATA MOV DS,AX MOV AH,09H MOV DX,OFFSET MESG1 INT

2、 21h ;显示提示信息 MOV DX,303H ;初始化8255 MOV AL,80H OUT DX,AL MOV DX,300H ;LED灯熄灭 MOV AL,0FFH OUT DX,AL MOV AX,3572H ;获取原中断向量 INT 21H MOV INT0A_OFF,BX ;保存原中断向量 MOV BX,ES MOV INT0A_SEG,BX CLI ;关中断 MOV AX,2572H MOV DX,SEG LEDLIGHT ;设置新的中断向量 PUSH DS MOV DS,DX MOV DX,OFFSET LEDLIGHT INT 21H POP DS STI ;开中断 IN

3、AL,0A1H ;打开IRQ10 AND AL,0FBH ;11111011 OUT 0A1H,AL IN AL,21H ;打开IRQ2 AND AL,0FBH OUT 21H,ALL1: MOV AH,0BH ;检查是否有Q或q键按下 INT 21H INC AL JNZ NEXT0 ; 若无键按下,则程序往下执行 MOV AH,08H ;如有Q或q键按下,则程序退出 INT 21H CMP AL,q JZ EXIT CMP AL,Q JZ EXITNEXT0: CALL DELAY JMP L1 EXIT: MOV AX,2572H ;恢复中断向量 MOV DX,INT0A_SEG PUS

4、H DS MOV DS,DX MOV DX,INT0A_OFF INT 21H POP DS IN AL,0A1H ;屏蔽IRQ10 OR AL,04H;00000100 OUT 0A1H,AL IN AL,21H ;屏蔽IRQ2 OR AL,04H OUT 21H,AL MOV AX,4C00H ;程序退出 INT 21H LEDLIGHT PROCPROC FAR ;中断服务程序 PUSH SI PUSH AX PUSH DX CLI ;关中断 MOV SI,OFFSET LEDDATA ADD SI,NUM MOV AL,SI MOV DX,300H OUT DX,AL ;点亮LED INC NUM CMP NUM,08H JNE NEXT MOV NUM,00HNEXT: MOV AL,62H ;发中断结束命令 MOV DX,0A0H OUT DX,AL ;向从片8259发EOI命令 OUT 020H,AL ;向主片8259发EOI命令 STI ;开中断 POP DX

温馨提示

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

评论

0/150

提交评论