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.

[参考译文] MSP430F149:定时器 A 中断服务程序和 ADC 中断服务程序

Guru**** 2562120 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/602892/msp430f149-timer-a-interrupt-service-program-and-adc-interrupt-service-program

器件型号:MSP430F149

我有2个关于 Timer A 和 ADC 的问题

1、我 同时使用 ADC 和 TimerA、但程序保持 在 void main (void)和计时器 A0中断中、并且无法 从 ADC 获取值。

2、下面是  我正在使用的 timerA0中断服务程序的定义、该程序正在工作。

   

#if defined (__TI_Compiler_version__)|| Defined (__IAR_systems_ICC__)
#pragma vector=TIMERA0_vector
_interrupt void Timer_A (void)
#Elif defined (_GNU_)
void __attribute__((interrupt (TIMERA0_vector)) Timer_A (void)
其他
错误编译器不受支持!
#endif

下面是   我之前使用的 timerA0中断服务程序的定义、但它现在不起作用。

#pragma vector=TIMERA0_vector
_interrupt void Timer_A (void)

有什么区别?

感谢您对我的任何帮助回复。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您是否能够独立于 TimerA 访问 ADC ISR? 请参阅 TI 代码示例以获得进一步帮助。  如果使用 TI 或 IAR 编译器、并且您没有包含任何相关的 if 语句、则两个 ISR 定义之间没有区别。

    此致、
    Ryan

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、感谢您的回复。 我已经明白了。  

    我删除了一条用于计算的语句。  执行浮点计算可能需要太长时间。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    很高兴听到这个消息、绝对应该在 ISR 之外执行计算。

    此致、
    Ryan