void adc_clkinit()
{
ADC12MCTL0=ADC12SREF_1+ADC12INCH0;
ADC12CTL0 =ADC12ON+ADC12SHT0_2+ADC12REFON+ADC12REF2_5V; //ON:AD工作使能 SHT0_2:转换时间
ADC12CTL1 =ADC12SHP; //SHP=1时 ADC12SC=1 采样 ADC12SC=0 转换
//ADC12CTL1|=ADC12CONSEQ_2;
ADC12CTL0|=ADC12ENC;
ADC12IE=0x01;
_EINT();
while(test)
{
ADC12CTL0|=ADC12SC; //SHP=1 :SC=1 采样 (ADC12数值S/C=采样/转换)
}
ADC12CTL0&=~ADC12SC; //转换
_NOP();
_NOP();
}
#pragma vector=ADC12_VECTOR //采样完成后 IFG置位
__interrupt void ADC()
{
_DINT();
AD[count]=ADC12MEM0;
if(count==60)
{
test=0;
count=0;
for(i=0;i<60;i++)
{
ADC12+=AD[i];
}
ADC12=ADC12/60;
result=(ADC12*5.75/4095);
result1=result*1000;
_NOP();
}
count++;
_EINT();
}
对于初学者:我强烈建议查看这个资料
【入门必看】Launchpad口袋实验平台(指导书)下载
https://bbs.eeworld.com.cn/forum. ... 0554&fromuid=415653
里面介绍了最详细,也是初学者最想看的资料。比如什么宏定义的使用方法了,C语言中的或|、与&的使用方法啦。。等等。。。
一、参照官方例程 二、从网上搜索一个430利用ADC做电压表的例子呢(很多的呢,我这有个g2553的,要的话传给你呢)。
人有的时候真是奇怪,选择了会后悔,放弃了会遗憾,完美只能是一种理想,不是一种存在。
ADC12MCTL0=ADC12SREF_1+ADC12INCH0;//参考电压 VR+ = VREF+ VR− = AVSS,通道是A0,是内部的参考电压
如果按楼主说的测量外部电压的话,只要把A0这个管脚引出来就好啦,
NXP新年新气象大家一起嗨起来 + 恩智浦KW41Z有奖创意征集令高能来袭 +https://www.eeworld.com.cn/huodong/201611_NXPKW41ZActivity1/index.html