本帖最后由 arm菜鸟人 于 2013-12-10 16:47 编辑
使用MSP430F149ADC12,输出一直是0x0FFF。很郁闷,大家帮找茬,看问题出在哪里。不胜感激。
void ADC12_Init(void)
{
volatile unsigned int i;
P6SEL |= 0x01; // Enable A/D channel A0
P6DIR &= ~BIT0; // 设置P6.0为输入
ADC12CTL0 &= ~ENC;
ADC12CTL0 = ADC12ON+SHT0_2+REFON+REF2_5V; // Turn on and set up ADC12
ADC12CTL1 = SHP; // Use sampling timer
ADC12MCTL1 = SREF_1 + INCH_0; // Vr+=Vref+
for ( i=0; i<0x3600; i++) // Delay for reference start-up
{
}
ADC12CTL0 |= ENC; // Enable conversions
}
/****************************************************************************************
函数名称: ADC12_Convert(void)
功 能: ADC12 启动函数
参 数: 无
返回值 : 无
说明 :
****************************************************************************************/
unsigned int ADC12_Convert(void)
{
unsigned int temp = 0;
ADC12CTL0 |= ADC12SC; // ADC12SC 启动模式
while ((ADC12IFG & BIT0) == 0); // 等待ADC 完成
temp = ADC12MEM0;
return temp;
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>