DSP中断子程序.docx_第1页
DSP中断子程序.docx_第2页
DSP中断子程序.docx_第3页
DSP中断子程序.docx_第4页
全文预览已结束

下载本文档

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

文档简介

DSP作业:中断系统的应用中断源扩展方法:有八个中断源,分别表示为IR1,IR2,IR8,各个中断源均为边沿触发方式,C5402建立相应的中断系统。构建硬件中断系统如图,每两个一组相“与”后,分别既然如此4个外部中断接口INT0、INT1、INT2、INT3。没组分别将两条线接于HPI端口,此时,HPI端口作为I/O口使用。ST0:状态寄存器0,地址6ST1:状态寄存器1,地址7BH:累加器B的高价位,地址CBL:累加器B的低阶位,地址BBG:累加器B的保护位,地址DPSHD Smem ;将Smem中的数据压入堆栈PSHM MMR ;将MMR中的数据压入堆栈POPD Smem ;将数据从栈顶弹至Smem中POPM MMR ;将数据从栈顶弹至MMR中;外部中断INT0中断服务子程序:INT0ISR:PSHMST0;保存寄存器,将寄存器的值压入堆栈PSHMST1;保存寄存器,将寄存器的值压入堆栈PSHMBG;将地址D压入堆栈,之后类似PSHMBHPSHMBLPORTRHPIPORT, *(hpi_var);从HPI口读数据并存储到*(hpi_var)所在的地址STL*(hpi_var), B;将*(hpi_var)的低十六位放到B中AND#01B, B;加法运算BCIR2,ANEQ;首先判别是否是IR1,是,则执行服务程序;否,则跳至对IR2的判断;扩展中断IR0的服务程序主体IR2:STL*(hpi_var),BAND#010B,BBCINT0END,ANEQ;首先判别是否是IR1,是,则执行服务程序;否,则跳至结束;扩展中断IR1的服务程序主体INT0ED:POPMBL; 将数据从栈顶弹至BL中POPMBH; 将数据从栈顶弹至BH中,以下类似POPMBGPOPMST1POPMST0RETE;外部中断INT1中断服务子程序:INT1ISR:PSHMST0;保存寄存器PSHMST1PSHMBGPSHMBHPSHMBLPORTRHPIPORT,*(hpi_var);读HPI口STL*(hpi_var), BAND#0100B, BBCIR4,ANEQ; 首先判别是否是IR3,是,则执行服务程序;否,则跳至对IR4的判断;扩展中断IR3服务程序主体IR4:STL*(hpi_var), BAND#01000B, BBCINT0END,ANEQ; 首先判别是否是IR4,是,则执行服务程序;否,则跳至结束 ;下面代码跟上面雷同,不一一赘述,中断有响应时间,对扩展的中断源来说,实际中断响应时间要算引导程序的时间,过多的中断源,堆栈深度增加,是压栈、弹栈操作频繁,堆栈大小应慎重考虑,不然出现程序混乱错误,若以后要在dsp上发展再深入考虑中断与堆栈的关系。;扩展中断IR4的服务程序主体INT1ED:POPMBLPOPMBHPOPMBGPOPMST1POPMST0RETE;外部中断INT2中断服务子程序:INT2ISR:PSHMST0;保存寄存器PSHMST1PSHMBGPSHMBHPSHMBLPORTRHPIPORT,*(hpi_var);读HPI口STL*(hpi_var),BAND#010000B,BBCIR6,ANEQ; 首先判别是否是IR5,是,则执行服务程序;否,则跳至对IR6的判断;扩展中断IR5的服务程序主体IR6:STL*(hpi_var),BAND#01000B,BBCINT2END,ANEQ; 首先判别是否是IR6,是,则执行服务程序;否,则跳至结束;扩展中断IR6的服务程序主体INT2ED:POPMBLPOPMBHPOPMBGPOPMST1POPMST0RETE;外部中断INT3中断服务子程序:INT3ISR:PSHMST0;保存寄存器PSHMST1PSHMBGPSHMBHPSHMBLPORTRHPIPORT,*(hpi_var);读口STL*(hpi_var),BAND#010000B,BBCIR8,ANEQ; 首先判别是否是IR7,是,则执行服务程序;否,则跳至对IR8的判断;扩展中断IR7的服务程序主体IR8:STL*(hpi_var),BAND#01000B,BBCINT3END,ANEQ; 首先判别是否是IR8,是,则执行服务程序;否,则跳至结束;扩展中断IR8的服务程序主体INT3ED:POPMBLPOPMBHPOPMBGPOPMST1POPMST0RETE由INT0、INT1、INT2、INT3的中断优先级顺序可知,前面

温馨提示

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

评论

0/150

提交评论