[工学]中断系统.pptVIP

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[工学]中断系统

2) ICW2(中断类型号寄存器) 3) ICW3 4) ICW4 2.工作方式编程 1.OCW1 2. OCW2 3. OCW3 3.8259A编程应用 1.初始化 例1:设IBM PC机接有一片8259A(两个端口地址为60H、61H),管理8个中断源,采用普通完全嵌套方式,普通EOI方式,中断请求高电平有效,优先级固定,IRR0最高,IRR7最低,IRR0的中断类型号为38H。IRR1、IRR5需要被屏蔽。 MOV AL, 1BH OUT 60H,AL MOV AL, 38H OUT 61H, AL MOV AL,09H OUT 61H,AL MOV AL, 22H OUT 61H, AL ;单片,电平触发,要ICW4 ; IRR0的中断类型码为38H ;普通的全嵌套方式,缓冲方式, ;正常EOI ; 屏蔽IRR1和IRR5 2. 读中断屏蔽寄存器IMR(假设8259A的端口地址为20H,21H) IN AL , 21H 3. 读中断请求寄存器IRR(假设8259A的端口地址为20H,21H) MOV AL, OUT 20H, AL IN AL, 20H 4.读中断服务寄存器ISR (假设8259A的端口地址为20H,21H) MOV AL, OUT 20H, AL IN AL, 20H 5. 送中断服务程序的入口地址(修改中断向量表) 方法一:使用串操作指令STOSW改写 CLI SUB AX,AX MOV ES, AX MOV DI, 4*60H MOV AX, OFFSET INTR CLD STOSW MOV AX, SEG INTR STOSW STI ;段地址清零 ;指向INT 60H矢量 ;中断服务程序偏移地址 例:中断类型号60H,中断服务程序过程名INTR,修改中断向量表 ;清方向标志 ;中断服务程序段地址 方法二:使用DOS系统功能调用实现 PUSH DS MOV DX, OFFSET INTR MOV AX, SEG INTR MOV DS, AX MOV AH, 25H MOV AL, 60H INT 21H POP DS ;保护DS ;中断服务程序偏移地址 ;中断服务程序段地址 ;功能号 ;中断类型号 ;恢复DS 6. 送中断结束命令 当ICW4中AEOI位为0时,即8259A为正常EOI时,在中断结束 时,要送EOI命令20H,具体如下: MOV AL, 20H OUT 60H, AL 已知8259A端口地址为60H和61H 中断处理程序的编写 例:假设8259A端口地址为20H,21H,单级中断,普通EOI 中断处理:从8255A端口A输入一个字节数据到内存1000H单元 其中8255A端口A的地址为261H INTER PROC FAR PUSH AX PUSH DX MOV DX, 261H IN AL, DX MOV [1000H] , AL MOV AL, 20H OUT 20H , AL POP DX POP AX STI IRET INTER ENDP 保护现场 中断处理 送中断结束命令 恢复现场 ;开中断 ;中断返回 一个由8086CPU和8255A为主体构成的闭环调节系统的结构流程图如图8.20所示。由图可看出,8255A中端口A工作在方式0,完成输出功能,用来向数模转换器输出8位数字信息。端口B工作在方式1,完成输入功能,用来接收由模数转换器输入的8位数字信息。端口C作控制用,PC7用作模数转换器ADC0809的启动信号,PC2用作输入的STBB信号,PC0用作中断请求信号INTRB,通过中断控制器8259A可向CPU发中断请求,这些都要由初始化程序来定义。 由8255A端口A输出的8位数字信息,经数模转换器DAC0832转换成模拟量。它输出的模拟量是电流值,因此,DAC0832常与运算放大器一起使用,以便将模拟电流放大并转换为模拟电压,经过调整可达到。当CPU输出的数字量从00H~FFH时,运算放大器输出0~4.98V的模拟电压,该电压经传感器可调节控制现场的温度、速度、声音或流量等其他参数。 控制现场的模拟信息经传感器和运算放大器可变换为一定范围内的电压值,这模拟电压经模数转换器ADC0809可变换为8位数字信息送回8255A的端口B,其转换速度取决于从CLK端引入的标准时钟,端口B可采用查询或中断方式与CPU联系。若采用中断方式,中断

文档评论(0)

qiwqpu54 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档