- 1、本文档共53页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
16.1 PicoBlaze中断处理机制 16.1.1 软件中断处理过程 与中断相关的指令在13.2.9节中讨论过。enable interrupt和disable interrupt指令使能和禁止中断请求,对应地,还有两个返回中断指令:returni enable和returni disable指令,用来返回到原来的中断点。 典型的带有中断服务程序流程的软件执行过程如图16-1所示。它主要包括如下几个部分: (1) 初始化enable interrupt指令:用来允许中断服务请求。由于中断请求默认是禁止的,所以在初始化时需要打开。 (2) 跳转(jump)到指令存储器最后一条指令(如3FF):跳转到中断服务子程序。 (3) 中断服务子程序:执行中断请求服务,中断服务程序必须以returni指令结束。 假设正在执行add s0, s3指令时,有外部I/O有效中断发生,则PicoBlaze执行中断的步骤如下: (1) 完成当前执行指令; (2) 保存程序计数器内容,清除中断标志i(置为0),保存零标志和进位标志,程序计数器置为3FF; (3) 在3FF地址执行jump isr指令; (4) 执行中断服务子程序; (5) 执行returni指令,恢复程序计数器和标志位; (6) 重新开始执行sub s5,01指令。 图16-1 中断流程图 16.1.2 中断时序描述 中断程序执行详细的时序参数的描述如图16-2所示。按照如图16-2所示时序标注时间点描述基本时序如下: (1) 在t1时刻,外部中断接口置位中断信号,PicoBlaze此时继续正常操作,执行完当前add s0,s3指令。 (2) 在t2时刻,PicoBlaze发现有中断信号来了,所以放弃执行下一条指令(sub s5,01),而去执行call 3FF指令。 (3) 在t3时刻,PicoBlaze置位中断响应信号,表示要对中断请求进行处理,同时保存sub s5,01指令的地址以及清零标志和进位标志,清除中断。 (4) 在t4时刻,PicoBlaze装载并执行地址3FF的跳转指令jump isr,外部中断接口电路响应中断响应信号并撤销中断信号。 (5) 在t5时刻,PicoBlaze开始执行中断服务程序。 图16-2 PicoBlaze中断时序描述图 16.2 外部中断接口16.2.1 单个中断请求 如果在PicoBlaze系统外设中仅有一个I/O接口能够产生中断请求,中断接口电路仅需要一个标志寄存器,如图16-3所示。当中断请求后,外部I/O接口电路置位中断请求信号一个时钟周期,置位中断标志寄存器激活PicoBlaze的中断输入。如果PicoBlaze中断允许,则它便通过置位中断响应信号一个时钟周期来响应中断并清零中断标志位。 图16-3 单个请求中断接口图 16.2.2 多个中断请求 在PicoBlaze系统中处理两个或者多个中断请求比较复杂。PicoBlaze必须决定处理哪个中断请求,然后在接收中断请求后清零对应的中断标志寄存器,这就需要协调硬件接口和中断服务子程序。 带有两个中断请求的中断接口如图16-4所示。两个独立的中断请求int request0和int request1连接两个中断标志触发器。中断标志触发器的输出通过一个或门产生最终的中断请求信号。除此之外,这两个信号同时连接到一个2选1选择器的输入端。当PicoBlaze发现中断请求时,它不知道是哪个外设发出请求或者是否是两个外设同时发出请求,中断服务子程序必须首先输入两个请求信号,检查其中断优先级值,然后执行对应的服务程序。 图16-4 多个中断请求接口图 除此之外,PicoBlaze还需要清零对应的中断标志触发器。interrupt_ack信号不能直接用来清零中断标志触发器,因为它不知道哪一个外设请求刚才被PicoBlaze接受了。需要采用特殊的输出逻辑译码电路产生一个清零脉冲信号clr。每个中断标志触发器的清零信号对应唯一的端口id号。在中断服务子程序中,在决定接受哪一个中断请求后,增加一条output指令。该指令实际上并不输出任何数据,而是产生一个周期的脉冲信号,用来清零对应的中断标志触发器。 16.3 软 件 开 发16.3.1 中断处理主程序 基于微处理器的应用通常都采用下面软件结构: call 初始化程序 forever: call 子程序任务1; call 子程序任务2; ... call 子程序任务n; jump forever; 一些任务有可能包
您可能关注的文档
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目八 使用Word制作数学试卷.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目二 使用Word制作杂志页.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目九 使用Word制作小报.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目六 使用Word制作成绩通知单.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目三 使用Word制作履历表.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目十 使用Excel制作校历.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目十二 使用Excel制作奖金发放表.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目十六 使用Excel查询销售表.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目十三 使用Excel制作成绩分析表.ppt
- Word 2000、Excel 2000实用教程 第二版 教学课件 作者 高长铎 胡维青 项目十四 使用Excel制作公司利润表.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第1章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第2章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第3章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第4章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第5章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第7章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第8章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第9章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 第10章.ppt
- XML案例教程高职 教学课件 作者 眭碧霞 全书 封面及目录.ppt
最近下载
- BDA-淡马锡中国旅游市场洞察研究China's Travel Industry-20151130.pptx VIP
- 《建筑材料基础知识》课件.ppt VIP
- BDA-淡马锡中国娱乐行业发展洞察China Recreation Industry-20151130.pptx VIP
- 北京市八年级(下)期中考试英语试卷.docx VIP
- 二轮专题复习03 函数的定义域【二】训练题集【学生版】.docx VIP
- BDA-DST中国农产品行业及价值链解析研究EN-2016 02 06.pptx VIP
- 症瘕(子宫肌瘤)护理常规.pptx VIP
- BDA-ATHM中国二手车产业链全景图研究报告-20150519.pptx VIP
- 鲁画报社版 三年级下册心理健康教育 我能专注做事情 课件.pptx VIP
- 人畜饮水工程施工组织设计汇.doc VIP
文档评论(0)