to:Lina Lian
原本想利用该程序学习ADC的使用方法,结果发现好像是不能用的。具体表现为:如果在CCS5中走单步,最后程序就停留在第90行,但没有执行该行。证据是:LaunchPAD的红灯没有熄灭。而且也没有进入过ADC的中断程序,这叫我如何查询ADC的转换结果。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
to:Lina Lian
原本想利用该程序学习ADC的使用方法,结果发现好像是不能用的。具体表现为:如果在CCS5中走单步,最后程序就停留在第90行,但没有执行该行。证据是:LaunchPAD的红灯没有熄灭。而且也没有进入过ADC的中断程序,这叫我如何查询ADC的转换结果。
Songlin Qin,
我看了程序,具体如下所示。90行恰好是进入LPM0的下一行。MSP430 关于进入LPMx调试时有个特点:虽然调试指示执行到进入LPM0的下一行,其实当时的CPU是一直处于LPMx的。故你看到的单步调试一直停留在这里,说明CPU一直在LPM0,没有被唤醒。要想看到ADC的转换结果,不要单步调试,在ADC中断处理函数第98行设置断点,让程序一直运行,停在断点处的时候,再查看RAM 200h - 206h的值即可。你先试试看。O(∩_∩)O~
Line89 __bis_SR_register(CPUOFF + GIE); // LPM0, ADC10_ISR will force exit
Line90 P1OUT &= ~0x01;