[技术求助] 为什么中断返回时,老是出现程序复位?

[复制链接]
 楼主| 发表于 2019-10-18 21:06 | 显示全部楼层 |阅读模式
编了一个小程序,处理定时器下溢中断,为什么中断返回时,老是出现程序复位?
发表于 2019-10-18 21:10 | 显示全部楼层
程序发出来看看吧
 楼主| 发表于 2019-10-18 21:17 | 显示全部楼层

#include \"LF2407.H\"



void initial()                 //系统初始化程序

{

    asm(\" setc INTM\";

    *SCSR1=0x8104;

    *WDCR=0x0E8;

    *IMR=0x0002;

    *IFR=0x0FFFF;

    *MCRA=*MCRA&0x0FFFC;

    *PADATDIR=*PADATDIR|0x0301;   

}



void timer1()              //通用定时器1初始化程序

{  

   *T1CON=0x0802;

   *T1PR=0x4E20;

   *T1CNT=0x00;

   *EVAIMRA=*EVAIMRA|0x0100;

   *EVAIFRA=*EVAIFRA&0x0100;

}



void T1INT()                //定时器下溢中断处理程序

{ int flag;

   flag=*EVAIFRA&0x0100;

   if(flag!=0x0100)

   {

     asm(\" clrc INTM\";

     return;

   }   

   *T1CNT=0x00;

   *EVAIFRA=*EVAIFRA&0x0100;

   asm(\" clrc INTM\";

   return;

}



void main()                   //主程序

{ initial();

   timer1();

   asm(\" clrc INTM\");

   *T1CON=*T1CON|0x0040;

   while(1)

   {    }                        //等待中断

}   
发表于 2019-10-18 21:19 | 显示全部楼层
中间程序有问题
发表于 2019-10-18 21:23 | 显示全部楼层
建议楼主, 做好借助仿真器来调试.
发表于 2019-10-18 21:27 | 显示全部楼层
"中断返回时,老是出现程序复位", 很多时候由于堆栈设置不足引起, 也提醒楼主留意一下.
发表于 2019-10-18 21:30 | 显示全部楼层
没有用过 2407, 但是其他 DSP 中断结束应该要清除引起中断的标志.
发表于 2019-10-18 21:33 | 显示全部楼层
还是发TI DSP版块吧;
 楼主| 发表于 2019-10-18 21:38 | 显示全部楼层
哦,那我就知道怎么回事了,多谢大家
发表于 2019-10-18 21:41 | 显示全部楼层
程控放大芯片程控放大芯片
发表于 2019-10-18 21:45 | 显示全部楼层
THS7530
 楼主| 发表于 2019-10-18 21:48 | 显示全部楼层
嗯,性能更强宽带PGA
发表于 2019-10-18 21:50 | 显示全部楼层
http://focus.ti.com.cn/cn/docs/prod/folders/print/ths7530.html
发表于 2019-10-18 21:55 | 显示全部楼层
有啊  像TI的VCA系列  都是压控放大器 比如VCA810,VCA822等等
发表于 2019-10-18 21:58 | 显示全部楼层
嗯,而且增益可调范围也很宽  这些芯片挺受欢迎的
发表于 2019-10-18 22:01 | 显示全部楼层
嗯,我再好好缕一缕吧,有了好消息及时通知大家
您需要登录后才可以回帖 登录 | 注册

本版积分规则

852

主题

9757

帖子

2

粉丝
快速回复 返回顶部 返回列表