13281036_刘大力_8259中断控制器作业汇编.docx

13281036_刘大力_8259中断控制器作业汇编.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
13281036_刘大力_8259中断控制器作业汇编

接口作业3:8259-1:利用8255触发8259A的中断点亮LED目的掌握8259A矢量中断方式的硬件连接和软件编程的方法,同时掌握中断和其它接口芯片配合来完成某一特定任务的方法。内容8255的PC6作为8259A的中断源,8255每向8259A发出中断请求,都让LED指示灯交替点亮和熄灭。实验接线图图1-4 实验连线图编程提示中断服务程序的主要功能是交替点亮和熄灭LED指示灯(即第1次进中断点亮LED,第2次进中断则熄灭LED)。当然8255A能使用前需要在主程序中初始化。主程序可以采样死等待的方式,如果要结束程序,可以按动实验平台的Reset键。也可以采用计数的方法,即进中断5次后结束程序。8255的PC6作为中断源,应采用上升沿触发方式(由低到高的变化),为了能够进行下次中断,PC6必须变为低点平。为了能使LED的闪烁可见,在中断各申请之间加入延迟程序。.MODEL SMALL.386CODE SEGMENTASSUME CS:CODESTART:MOV DX,203HMOV AL;设置8255控制字OUT DX,ALMOV CL,0CLI;关386CPU中端IN AL,21H;写入中断屏蔽字OCW1时,采用读取-修改-写入的顺序AND ALOUT 21H,AL;将中断入口地址写入中断向量表PUSH DSMOV BX,0MOV DS,BXLEA AX,CS:INT_PROC;将中断程序的入口地址给AXMOV BX,5;N=IRX 中端IR5MOV SI,30H;BASE=30H 基址ADD SI,BX;W基址+IR5=中断类型号35HSAL SI,2;中断类型号为35H*4=中断向量存在SIMOV DS:[SI],AX;将入口地址AX送到中断向量表中PUSH CSPOP AXMOV DS;[SI+2],AXPOP DSSTI;开386CPU中断L1:MOV DX,203HMOV ALOUT DX,ALMOV CX,0FFFFHDELAY1:LOOP DALAY1MOV DX,203HMOV ALOUT DX,ALMOV CX,0FFFFHDELAY2:LOOP DALAY2JMP L1INT_PROC PROC FAR;中断服务程序PUSH AXCMP BL,0JZ L2MOV DX,201H;PC0=1MOV AL,01OUT DX,ALMOV BL,0JMP EXITL2:MOV DX,201H;PC0=0MOV AL,00OUT DX,ALMOV BL,1EXIT:MOV AL,20HOUT 20H,ALPOP AXSTIIRETINT_PROC ENDPCODE ENDSEND START接口作业3:8259-2:利用8259A中断次数不同使得8253产生不同波形目的掌握8259A矢量中断方式的硬件连接和软件编程的方法,同时掌握中断和其它接口芯片配合来完成某一特定任务的方法。内容通过按键PLUS的按下,统计8259中断次数,比如按5次8253产生方波,按10次8253产生窄脉冲周期波形。接线图连线图.MODEL SMALL.386CODE SEGMENTSTART: MOV DX,203HMOV AL,36H ;8253初始化,计数器0,方式3OUT DX,ALMOV CX,0 ;CX初始计0MOV BX,0CLIIN AL,21H ;设置屏蔽字,IR5开放AND ALOUT 21H,ALPUSH DSMOV BX,0MOV DS,BXLEA AX,CS:INTRMOV BX,05HMOV SI,30HADD SI,BXSAL SI,2MOV DS:[SI],AXPUSH CSPOP AXMOV DS:[SI+2],AXPOP DSSTI ;开中断WAITING:JMP WAITING ;主程序INT_PROC PROC FAR ;中断服务程序PUSH AXPUSH DXCLICMP CX,5JGE L1 ;CX大于等于5则输出方波INC CXJMP L3L1:CMP CX,10 ;CX大于等于10则输出窄脉冲周期波形JGE L2MOV DX,200H ;8253初始化,计数器0.初值4,MOV AL,0004HINC CXJMP L3L2: MOV DX,203HMOV AL,78H ;8253初始化,计数器1,方式4OUT DX,ALMOV DX,201HMOV AL,0004HOUT DX,ALINC CXL3: MOV AL,20HOUT 20H,ALSTIPOP DXPOP AXIRETIN

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档