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/MSP430G2553:多通道ADC

Guru**** 2539500 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/582237/ccs-msp430g2553-multi-channel-adc

部件号:MSP430G2553

工具/软件:Code Composer Studio

大家好,

我的代码有问题。 我是新手编程人员。 我希望你能帮我。

我可以使用一个电位计来控制LED,我需要再使用一个电位计。 我想使用其中一个电位计来控制绿色LED,并使用其他计量器来控制红色LED。 我该怎么做?

#include "msp430g2553.h"

#define LED0 BITS0 //红色LED
#define LED1 BIT6 //绿色LED

unsigned int value="0;
float input_voltage =0;
void main(void)
{
WDTCTTL = WDTPW + WDTHOLD;//禁用看门狗计时器

BCSCTL1 = LEBCC1_16MHz;//设置DCLC=16MHz;CADC0


//
P1SEL || BIT5;// ADC输入引脚WFP 1.5
P1OUT &=~(LED0 + LED1);

ADWFP CTL1 = inch_5;//通道5
ADC10CTL0 = SREF_1 + ADC10SHT_3 + ADC10ON + ADC10IE + REFN + Ref2_5V;ADC10CT0
|=5 1.5



个周期;ADC10_0 (ADC10SE_0) // ADC
ADC10CTL0的延迟|= ENC + ADC10SC;//采样和转换起始
值= ADC10MEM;
input_voltage =(float) value*LED0/1023;//
如果(input_voltage >LED1 1.5)
{
P1OUT &=~LED1;
P1OUT |= 2.5 ;
},则转换回电压
否则,如果(input_voltage <PIND_VOLTES)//input_voltage 1.5 小于或等于1.5 V
{
P1OUT &=~LED0;
P1OUT |= LED1;
__Delay_Cycles(1万);
}}//end
while
}//结束}//结束主电源

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

    您应该检查 源代码示例msp430g2x33_ADC10_10.c. 请注意,采样值存储在0x200地址的数据缓冲区中。 这是不使用编译器分配的缓冲区的奇怪方式,但这是TI的错误。 不管怎样,它会显示如何对多个ADC输入进行采样。

    [编辑]了解TI为什么不在其源代码示例中使用通用C编码规则是很好的。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Ty,用于快速回复。 我已经查看过该代码,但没有找到解决方法。 我不知道如何将一个ADC输入分配给输出?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Tugrul gokpinar 说:
    我不知道如何将一个ADC输入分配给输出?[/QUOT]

    这是什么意思?