void AD_INIT(void)
{
P6DIR=0x38; //P6.3 P6.4 P6.5液晶用了
P6SEL|=BIT0+BIT1+BIT6+BIT7; // 使能ADC通道
ADC12CTL0=ADC12ON+SHT0_8+MSC; // 打开ADC,设置采样时间
ADC12CTL1=SHP+CONSEQ_3; // 使用采样定时器
ADC12MCTL0=INCH_0;
ADC12MCTL1=INCH_1;
ADC12MCTL2=INCH_6;
ADC12MCTL3=INCH_7+EOS;
ADC12IE=0x08; // 使能ADC中断
ADC12CTL0 |= ENC; // 使能转换
ADC12CTL0 |= ADC12SC; // 开始转换
}
#pragma vector=ADC_VECTOR
__interrupt void ADC12ISR (void)
{
res[0]=ADC12MEM0; // Move results
res[1]=ADC12MEM1; // Move results
res[2]=ADC12MEM2; // Move results
res[3]=ADC12MEM3;
}
显示程序都是一样的为什么P6.0 和P6.1口不能测小电压,就是比如说引脚悬空的时候液晶P6.0是1.7V,那小于1.7的电压都测不出,接地的话能显示0V,P6.6和P6.7就没有这样的问题,各种不懂
楼主你的使能中断设置错误了,你中断的是P6.0和P6.1应该这样写ADC12IE=0x03;这样你在试试看能不能行。
如果你写ADC12IE=0x08;它中断的是P6.3引脚。
我也是刚入门,以后可以多多交流。
回复 4楼 ly971021598 的帖子
谢谢,不过我刚刚试了试好像不行啊
回复 6楼 huo_hu 的帖子
不动大神什么意思啊
我外接光敏二极管想测电压的
看走眼了.
什么叫悬空的时候1.7V啊???
,输入管脚的内阻很大,悬空就没意义了,你接个滑阻试试