|
回复 4楼 deweyled 的帖子
#include
unsigned int ad_value[];
void delay()
{
int i;
for(i=0;i<10;i++);
}
void main( void )
{
int i=0;
char ad=0;
// char ad_val_temp[100]={0};
WDTCTL=WDTPW+WDTHOLD; //关看门狗
BCSCTL1 =CALBC1_16MHZ; //设定DCO为16MHZ
DCOCTL =CALBC1_16MHZ;
P2SEL=0x01; //P2.0输入
P2DIR=0;
ADC10CTL0&=~ENC;//关闭转换
ADC10CTL0=REFON+REF2_5V+ADC10SHT_2+ADC10ON; //打开参考,2.5V,启动AD模块
ADC10CTL1=INCH_0+SHS_1+CONSEQ_2;//选通道0,AD启动信号来源选TA.OUT1,选单通道连续采样
ADC10CTL1=ADC10SSEL_3+ADC10DIV_0;//时钟源选SMCLK时钟并1分频
ADC10CTL0|= ENC+ADC10IE; //转换,中断使能
/*存波形*/
while(i<100)
{
delay();
ADC10CTL0|=ADC10SC;//开启转换
while((ADC10BUSY&ADC10IFG)==0)//等待转换完成
{
ad_value=ADC10MEM;
//10位转8位
i++;
ADC10CTL0|=ADC10IFG;
}
}
}
这个是我之前写的,但是MEM里面读不到数据 |
|