新手自己在实验a/d转换,找不出问题(已解决,谢谢)

2019-03-24 09:47发布

本帖最后由 chi80929 于 2015-9-18 10:57 编辑

大家早,小弟自学msp430f169,
在练习下列这个实验,但我要亮的p1.0的led始终没反应,
却是开发版内建好的p6.0led在亮灭(我知道因为它和vr并连)。
想破头也不知道哪裡出错,导致p1.0没动作,

希望高手指导我哪裡有问题。小弟感激各位!

除了红笔框的,其他都是我自个儿接的。
螢幕快照 2015-09-17 上午10.18.22.png

/************************************************************************
单通道单次转换,选择AVcc为参考电压
检测P6.0引脚电压,如果小于0.5AVcc,
择点亮连接至P1.0的LED,否则LED灭    ~採用中断方式
*************************************************************************/


#include <msp430x16x.h>

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;
  ADC12CTL0 = SHT0_2 + ADC12ON;  //设定採样时间,打开ADC12,n=4
  ADC12CTL1 = SHP;  //单通道单次转换,使用採样定时器,选择同相输入
                                     //ADC12SC,ADC12内部CLOCK

  ADC12IE = 0x01;  //使能转换中断
  ADC12CTL0 |= ENC;  //使能转换器
  P6SEL |= 0x01;  //P6.0为A/D通道AD0
  P1DIR |= 0x01;  //P1.0 输出

  while(1)
  {
    ADC12CTL0 |= ADC12SC;  //开启採样
  }
}

#pragma vector = ADC_VECTOR
__interrupt void ADC12_deal (void)
{
  if(ADC12MEM0 < 0x7FF)
    P1OUT &=  ~0x01;  //清0   P1.0 LED亮
   else
     P1OUT |= 0x01;  //置1    P1.0  LED灭
}


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
18条回答
qiushenghua
2019-03-26 07:53
 精彩回答 2  元偷偷看……0人看过

一周热门 更多>

相关问题

    相关文章