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.

[参考译文] MSP430FR5972:ADC 读取问题

Guru**** 2540720 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/586310/msp430fr5972-adc-reading-issue

器件型号:MSP430FR5972

您好!

现在我面临一个问题、我为 ADC 通道 P9.4 (A12)提供不同的电源(从1.5V 到3.6V)、但它提供最大值(4095)、当我提供 GND 时、它提供0 (零)值。  

最后、它只给出两个值、即4095或0。

我使用的代码如下:-

void adc_ch_a12 ()

ADC12MCTL0 |= ADC12INCH_12 | ADC12VRSEL_1;// A12 ADC 输入选择;Vref=1.2V
P9SEL1 |= BIT4;//为 ADC 配置 P9.4


void adc_init()

//配置 ADC12
ADC12CTL0 = ADC12SHT0_2 | ADC12ON;
ADC12CTL1 = ADC12SHP;// ADCCLK = MODOSC;采样计时器
ADC12CTL2 |= ADC12RES_2;// 12位转换结果
ADC12IER0 |= ADC12IE0;//启用 ADC 转换完成中断

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

    您好!

    我不确定、但如果我看到正确、您正在使用内部 VREF = 1.2V。

    对我来说、任何高于1.2V 的电压都很明显地显示了最大值。

    将输入电压降至1.2V 以下或将 VREF 更改为更高值、然后重试。

    此致

    Lukas

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