Board logo

标题: [求助]请教版主关于中断的问题 [打印本页]

作者: fsystem    时间: 2007-7-16 13:29     标题: [求助]请教版主关于中断的问题

我用的是cw编程的
想请教一下版主我的程序在cw上用Full chip simulation方式调试可以
用TBDML方式总是跳不出RTI中断程序 这是怎么回事啊?
作者: strongchen    时间: 2007-7-16 17:04

应该是RTI中断间隔比较短,单步运行时总是会进入RTI中断吧。你如果在别的地方设一个断点,也应该能断下来的。如果要单步运行的话,只能先暂时关中断。
作者: fsystem    时间: 2007-7-17 09:46

我把时间调长了还是那个样子,郁闷的不行了
能不能帮我看看程序啊 谢谢各位大侠!!!!
我用的是清华的dg128的开发板
#include /* common defines and macros */
#include /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

int k,l;

int PWM1(int ad)
{
int ux;
PWME_PWME1 = 0x01;
PWMPRCLK = 0x04;
PWMCLK=0x03;
PWMSCLA=20;
PWMPOL_PPOL1 =0x01;
PWMCNT1 = 0;
PWMPER1 = 255;
ux=15+ad;
PWMDTY1 = ux;
}

PWM0(int add){
int us;
PWME_PWME0 = 0x00;
PWMPRCLK = 0x04;
PWMCLK=0x03;
PWMSCLA=20;
PWMPOL_PPOL0 =0x01;
PWMPER0 = 255;
PWMCNT0 = 0;
PWME_PWME0 = 0x01;
us=20+add ;
PWMDTY0 =us;

}

void findway(void) {
switch(PORTA)
{
case 0x40:k=-4,l=30,PORTB=0XFD;break; //-6
case 0x20:k=-2,l=20,PORTB=0XFB;break; //-4
case 0x10:k=-1,l=10,PORTB=0XF7;break; //-2
case 0x08:k=0,l=0,PORTB=0XEF;break; //0
case 0x04:k=1,l=10,PORTB=0XDF;break; //2
case 0x02:k=2,l=20,PORTB=0XBF;break; //4
case 0x01:k=4,l=30,PORTB=0X7F;break; //6
default: k=k,PORTB=0X00;
}
}

void MCU_init(void)
{

RTICTL = 0xE4;
CRGFLG = 0x80;
CRGINT = 0x80;
}

void interrupt RTI_Int()
{
CRGFLG=0x80;
PWM0(k);

}
void main(void) {
MCU_init();
EnableInterrupts;
for(;;) {
findway();
PWM1(l);
}
}

作者: strongchen    时间: 2007-7-17 09:49

你把中断放入非分页地址了吗?中断地址定义了吗?把整个project打包贴出来吧。
作者: fsystem    时间: 2007-7-17 13:18

我的project 辛苦了版主
http://bbs.chinaecnet.com/uploadImages/project.rar

作者: strongchen    时间: 2007-7-17 17:49

你现在的现象是什么?
作者: fsystem    时间: 2007-7-18 09:16

pwm0口没有输出 怎么中断跳不出来
是不是不能把pwm输出程序放到里面啊!
作者: strongchen    时间: 2007-7-18 09:49

我看到你在P&E_Multilink_CyclonePro_linker.prm里面添加了中断地址,但是在TBDML_linker.prm里面倒没有。你是用TBDML连接的吧?那应该修改TBDML_linker.prm文件。
作者: fsystem    时间: 2007-7-18 13:29

郁闷啊
还是不行 是不是程序的寄存器的设置有问题啊 麻烦版主了
作者: strongchen    时间: 2007-7-18 16:34

怎么不行呢?如果你在主循环中设置一个断点,断不下来吗?
作者: fsystem    时间: 2007-7-18 19:06

用TBML时直接就进入中断程序里了 然后就跳不出来
算了 还是不麻烦版主了 太不好意思了 谢谢版主了啊




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0