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.

[参考译文] CCS/CC430F6137:使用 IQmathlibrary 读取 ADC 输出值

Guru**** 2502205 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/766291/ccs-cc430f6137-read-adc-output-value-using-iqmathlibrary

器件型号:CC430F6137

工具/软件:Code Composer Studio

先生、我尝试使用 IQmathlibrary 读取 ADC 输出值、但该值不正确。 如何 使用 IQmathlibrary 读取 ADC 输出值?

随附的型号代码。  

int main (空)

 _IA0Q1结果、A1Results、索引=0;
 浮点运算放大器、电压、功率= 0、RMS_CURRENT_0、RMS_Voltage=0;
 字符 res[12]、res1[12];


WDTCTL = WDTPW+WDTHOLD;//停止看门狗计时器

P1DIR |= 0x01;
UART_INIT();

P2SEL = 0x0F;//启用 A/D 通道输入

ADC12CTL0 = ADC12ON+ADC12MSC+ADC12SHT0_8;//打开 ADC12_A,延长采样时间
//以避免结果溢出
ADC12CTL1 = ADC12SHP+ADC12CONSEQ_3;//3 //使用采样计时器、重复序列
ADC12MCTL0 = ADC12INCH_0;// ref+=AVcc、channel = A0
ADC12MCTL1 = ADC12INCH_1;// ref+=AVcc、channel = A1
ADC12MCTL2 = ADC12INCH_2+ADC12EOS;// ref+=AVcc、channel = A2
// ADC12MCTL3 = ADC12INCH_3+ADC12EOS;// ref+=AVcc、channel = A3、end seq
ADC12IE = 0x04;//启用 ADC12IFG.3
ADC12CTL0 |= ADC12ENC;//启用转换

while (1)

ADC12CTL0 |= ADC12SC;//开始转换


 while (!(ADC12IFG2));
A0results =ADC12MEM1;
A1Results  = ADC12MEM2;

Iamps =_IQ1toF (A0results);
VOLT =_IQ1toF (A1Results);
UART_TX (0x0d);UART_TX (0x0a);
// Iamps = A0results;
UART_str ("i:");_IQ1toa (res、"%2.4f"、Igams);UART_str (res);
UART_str ("V:");_IQ1toa (res1、"%2.4f"、Volt);UART_str (res1);

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sivanathi、
    您提到使用 IQMath 库读取 ADC 值、但在代码示例中、我看到了
    while (!(ADC12IFG2));
    A0results =ADC12MEM1;
    A1Results = ADC12MEM2;
    那么、该点中的值是否与您的预期相符、或者它们是否已经不符合预期范围?
    您是否使用了我们的 ADC 代码示例之一? 这将是我们的建议。
    IQmath 库的对处理 ADC 和结果没有影响。 您的代码只需利用 IQmath 库函数对 ADC 值进行后处理即可。

    此致
    Peter
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Sivanathi、
    您能否告诉我们您是否仍需要此方面的支持? 如果您这样做、您可以通过向其发布来重新打开该线程。 现在、我假设您的问题已解决。

    此致
    Peter