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:请告诉我 ADC10的功能

Guru**** 2524460 points
Other Parts Discussed in Thread: MSP430G2553

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/988419/msp430g2553-please-tell-me-about-the-functions-of-adc10

器件型号:MSP430G2553

你好。 我叫 Junsuke。

请告诉我们以下事件。

将 MSP430的3.3V 电源除以2 μ 10kΩ 的结果由 ADC10转换。

转换结果为560。我的计算结果为511。 为什么您得到560的值?

下面是使用的编程代码。 谢谢你。

 

------

#include  /* MSP430G2553用のヘッダファイル*/
#include  /* uint8_t とか定義してあるヘッダファイル*/
#include
#include
#include
字符输入[10];
char syokika[10]={};
Int A;
Int mozi;
国际间歇;
char mukou[64]={'d'、'i'、's'、'a'、'b'、'0'、'e'};
void main (void)

  WDTCTL = WDTPW +WDTHOLD;
 BCSCTL1 = CALBC1_1MHz;
 DCOCTL = CALDCO_1MHz;
 ADC10CTL0 = ADC10SHT_2 + ADC10ON;
 //ADC10CTL0 &=~ADC10ON;
/*
 ADC10SHT:ADC10のサンプル&ホールド時間 μ H
 (サンプリング・維持の時間設定?)ここでは16カウント
 ADC10ON:ADC10 μ はオン
 ADC10IE:DC10割り込みのイネーブル
*
 ADC10CTL1 = INCH_3;
 ADC10AE0 |= 0b00001000;
 ADC10CTL0 |= ENC;

/*
入力チャンネルをA3に設定 μ A
ADC10 μ アナログ入力のイネーブル(μ P1.3のアナログ入力をイネーブル P1.3がA3に対応するため)
 *
 P1DIR |= 0x01;
 P1OUT = 0x01;
 P1SEL = 0x06;
 P1SEL2 = 0x06;
 UCA0CTL1 = 0b10000001;
 UCA0BR0 = 0x68;
 UCA0BR1 = 0x00;
 UCA0MCTL = UCBRS_1;
 UCA0CTL1 &=~UCSWRST;
 IE2 |= UCA0RXIE;
 _bis_SR_register (LPM0_bits +GIE);

#pragma vector=USCIAB0RX_vector
_interrupt void USCI0RX_ISR (void)

   if (UCA0RXBUF ='A' ){
   //ADC10CTL0 |= ENC;
   ADC10CTL0 |= ADC10SC;
/*ENC:ADC10をイネーブル
ADC10SC:ソフトウェア制御のサンプリング/変換の開始。*/
   memset (输入、'\0'、sizeof (输入));
   snprintf (输入、10、"%d"、ADC10MEM);
   for (mozi=0;mozi<10;mozi++){
               UCA0TXBUF =输入[MOZi];
               while (!(IFG2 & UCA0TXIFG));
                            }
   char kaigyo[2]={'\r\n'};
                       for (ka=0;ka<2;ka++){
                           UCA0TXBUF = kaigyo[开];
                           __delay_cycles (10000 );
                       }

--------------------

 

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

    您是如何估计结果的?

    您使用的是 SREF=0 (Vcc/VSS)。 在 G2 Launchpad 上、Vcc 为3.6V。 如果您假设是3.3V、这可能会解释结果中的+10%。

    [编辑:对不起,我是反向执行的--读数560意味着 Vref=Vcc 为1.65/560*1024=3.0V。

    您是否曾尝试使用 DMM 等直接测量引脚上的电压?

    另一个要尝试的是延长采样/保持时间、例如使用 ADC10SHT_3 (64个时钟)。]

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

    Bruce 先生感谢您的回答。 结果估计为1.65V、即3.3V 的部分压力。 与3.3V 基准电压相比、我预期1.65V 为512数字值。 然而、分压点的实际测量值为1.8V、而电源电压的实际测量值为3.3V。 由此、MSP430已经被正确测量、但我想知道测量值为什么不会达到1.65V。 10kΩ 确认有两个 k Ω 的外部电阻器。 谢谢你

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

    您使用的平台是什么? 如果您使用的是 G2ET Launchpad、则原理图显示了 P1.3 (A3)上的外部47k 上拉电阻、该引脚也连接到物理按钮(S1)。 [参考 G2ET Launchpad 用户指南(SLAU772)第25页]。 我记得(旧版)的不同代 G2 Launchpad 的按钮上没有/没有外部上拉电阻器。

    您是否可以选择使用 A4 (P1.4)? 我认为所有 G2 Launchpad 上都是"未装饰"的。

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

    我使用的是 G2ET。 正如您所说、使用 P1.4为我提供了理想的数字。 内部上拉电阻器似乎有作用。 谢谢你。