新手自己在实验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条回答
574433742
1楼-- · 2019-03-24 16:39
<   把开发板内连去掉应该会好吧,,,然后,,3.3V 直接接 IO 口,不好吧,,,
lcofjp
2楼-- · 2019-03-24 21:45
 精彩回答 2  元偷偷看……
chi80929
3楼-- · 2019-03-25 03:43
574433742 发表于 2015-9-17 11:50
把开发板内连去掉应该会好吧,,,然后,,3.3V 直接接 IO 口,不好吧,,,

版子上内建的零件要去掉,只能割掉线路了呢
chi80929
4楼-- · 2019-03-25 08:56
lcofjp 发表于 2015-9-17 12:41
我觉得你还是按着官网例程的套路来吧,你自己写的总避免不了有些小问题。

可是我是照着书本的范例了,你瞧

因为书本上并没有提供电路图,
所以那电路图是我照着书中意思推敲出来的,
不知道问题是否就是出现在这点呢

螢幕快照 2015-09-17 下午12.56.35.png
574433742
5楼-- · 2019-03-25 13:36
 精彩回答 2  元偷偷看……
chi80929
6楼-- · 2019-03-25 13:47
574433742 发表于 2015-9-17 13:59
割线,,别,,不要破坏开发板。。。。

换个 IO 口,,不用那个口,,用别的IO

ADC输入A0~A7脚在P6.0~P6.7,
开发版硬是在P6.0~P6.7内建了八颗LED呀,避不掉。

一周热门 更多>

相关问题

    相关文章