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.

[参考译文] MSP430G2553:MSP430G2553在 ADC10DTC1使用时挂起

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/994995/msp430g2553-msp430g2553-hangs-on-adc10dtc1-usage

器件型号:MSP430G2553

您好!

如果我启用使用 ADC10DTC1 -它将挂起我正在开发的应用-这是一个代码片段:

(持续)

ADC10CTL0 &=~ENC;//
while (ADC10CTL1和 ADC10BUSY);//等待 ADC10内核处于活动状态

ADC10DTC1 = 0x10;
ADC10SA =&ADC_readings[0];
__no_operation();//调试器的空间
ADC10CTL0 |= ENC + ADC10SC;//采样和转换开始
_bis_SR_register (CPUOFF + GIE);// LPM0、ADC10_ISR 将强制退出

__no_operation();//在此处设置断点

它就在这里。

ISR 基本上只是清除 CPUOFF 位。

如果我使用  ADC10DTC1和 ADC10SA 禁用、我可以读取 ADC10MEM、但一切正常。

提前感谢、
约翰·W

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

    尊敬的 John:

    我不太清楚您根据您的代码需要什么。 但是、我找到 一 个 ADC10 DTC 功能代码示例。 您可以尝试使用它、看看这些函数是否都运行良好。

     e2e.ti.com/.../msp430g2x33_5F00_adc10_5F00_13.c

    此致、

    现金 Hao

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

    更具体地说、ADC10IFG 只会在 DTC 计数 DTC1=16转换后发生[参考 UG (SLAU144J) 22.2.7.1节、最后一段]。 如果 CONSEQ=0 (我猜是这样)、您只会进行1次转换、因此您不会获得中断、而会保持 LPM。

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

    感谢 Bruce 和 Cash 的回复。

    我将 ADC10CTL1配置为:

    ADC10CTL1 = INCH_1 + CONSEQ_2;

    ADC10CTL0 = SREF_1 + ADC10SHT_2 + REFON + ADC10ON + ADC10IE + REF2_5V;

    我开始想知道我是否遇到了堆栈问题-这些处理器没有太多的 RAM。

    我将尝试运行其中的一些独立程序、看看我是否看到程序停止。  

    有时、即使 DTC 未启用、程序也会暂停。

    谢谢、
    John

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

    如果 MSC=0 (并且 CONSEQ=2)、则每个触发器只能获得一次转换(ADC10SC)。 我怀疑您想要设置 MSC=1。 [参考 UG 图22-7]

    如果 CONSEQ=2且 MSC=1、ADC 将永久转换(尽可能快)、但 DTC 将在 DTC1计数满足后停止。 写入 ADC10SA 后、DTC 将再次开始。

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

    Bruce -我认为只有在从多个渠道获取数据时才有必要-我想这并不是很清楚-我会尝试并发布结果。

    谢谢、
    John

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

    Bruce -就是这样-感谢您的帮助!  立即开始工作。  

    现在、我要说明在512字节 RAM 空间中堆和堆栈的大小。

    谢谢!
    John