430 AD新手求助

2019-03-24 13:16发布

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就没有这样的问题,各种不懂 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
7条回答
ly971021598
2019-03-24 20:58
< :TI_MSP430_内容页_SA7 --> 楼主你的使能中断设置错误了,你中断的是P6.0和P6.1应该这样写ADC12IE=0x03;这样你在试试看能不能行。

一周热门 更多>

相关问题

    相关文章