LaunchPad 仿真时有时无法进入中断
今天调试LaunchPad M430G2553 的ADC10时 ,发现在硬件仿真的时候时不时的无法进入ADC10的中断我的ADC10的设置为:
ADC10CTL0 |= SREF_0 + ADC10SHT_3 + ADC10ON + ADC10IE;
ADC10CTL1 |= INCH_0 + SHS_1 + ADC10SSEL_2 + CONSEQ_3;
ADC10AE0 |= BIT0;
ADC10DTC0 |= ADC10CT;
ADC10DTC1 = 0x0F;
ADC10SA = (unsigned short)g_ADC10_receiced;
前后都对ENC位进行置位与复位;
TimerA0的设置为:
TACTL = TACLR;
TACTL = TASSEL_2 + MC_2;
TACCTL1 = OUTMOD_4 + CCIE;
TACCR1 = 500;
我设置的ADC10是用TimerA的CCR1对应的PWM输出作为ADC10的采样保持定时器的触发源,运行的时候每次都能进入中断(即使ADC10罢工,不进中断TimerA也照进不误)
我想问各位大神的是:
我是用一根USB现对430进行仿真及供电,会不会是电压的问题导致430无法正常工作呢。。。。。。。
还是说只是程序的问题。。。。。。。
本帖最后由 MAXWELL_TANG 于 2012-8-3 20:00 编辑
后来我对程序修改,中断是可以正常进了,但每次没过一会儿,IAR上就报错,说CPUOFF,进入低功耗,但我并没有设置低功耗啊。。。 在函数或中断函数里对 ADC10SA 进行重复赋值的时候,430无法正常进入中断;但只在开始初始化的时候赋值的话,CPU又会关闭进入低功耗。。。。 程序貌似是停在了TAIV里面(Diassembly里) 000140 0000 ????
000142 0000 ????
000144 0000 ????
000146 0000 ????
000148 0000 ????
00014A 0000 ????
00014C 0000 ????
00014E 0000 ????
000150 0000 ????
000152 0000 ????
000154 0000 ????
000156 0000 ????
000158 0000 ????
00015A 0000 ????
00015C 0000 ????
00015E 0000 ????
TA0CTL:
TA0CTL.ID0:
TA0CTL.ID1:
后来我又用断点手动和自动测进ADC10中断的次数,手动话大概十几次后CPUOFF,SCG0置位,进入低功耗;自动的话在355次左右时CPUOFF,SCG0置位,进入低功耗,各位大神求解啊
顶起,同样
页:
[1]