在线情况
楼主
  • 头像
  • 级别
    • 积分3
    • 经验49
    • 文章3
    • 注册2012-04-03
    求高手指教MSP430F2619 的比较器使用方法

    求高手指教MSP430F2619 的比较器使用方法


           今天弄了一下午Comparator A 但是还是没弄明白,主要是现象和我想的不一样


    我是这几点没弄明白,大家看我哪里叙述有误:
            CACTL1 中的 CAEX 和 CARSEL 决定了参考电压的输入端(+ or -) CAREF 选择参考电压
       CAON 打开比较器A  CAIE CAIES CAIFG 与中断有关(这个我明白)
      下面我的问题来了,没理解好的地方:
             CACTL2 中的 CASHORT 是有关短路采样的,没用到
            CAF 输出滤波
            CAOUT 输出状态
             P2CA4 P2CA3 P2CA2 P2CA1 P2CA0 这几位把我弄糊涂了,没有看懂datasheet的意思
        datasheet 中把 P2CA4 和 P2CA0 作为一组  P2CA3 P2CA2 P2CA1 作为一组 他们的设定都要根据
          CAEX 的情况, 但这两组到底针对谁啊,感觉自相矛盾?

    #include<msp430x26x.h>
    void ComparatorA_init();
    void LED_init();


    void main(void)
    {
         WDTCTL = WDTHOLD + WDTPW;   // 关狗
         LED_init();            // led初始化  P5.7 接的LED正端
         ComparatorA_init();   // CA初始化
       
        _EINT();    

        while(1)
        {
          if((CAOUT & CACTL2) == 1) // 判断CAOUT 的状态 ,控制LED亮灭
               P5OUT |= BIT7;
          else
               P5OUT &= ~BIT7;
        }
    }
    void LED_init()
    {
       P5DIR |= BIT7;
       P5OUT &= ~BIT7;
    }
    void ComparatorA_init()
    {
       CACTL1 = CAON + CAREF_2 + CARSEL  // 开CA + 选择参考源 + 选择参考源输入端
       CACTL2 =  P2CA3 + CAF; // 选择通道 开滤波 怎么选择通道哦?
       CAPD |= BIT2;  // 关相应管脚的BUFFER
       P2SEL |= BIT2;  这句话好像没用?
    }
    加一个问题,PxREN 在其他情况下感觉用不用没多大影响?

    可以的话请给一个 MSP430F2619 比较器A 的例程,谢谢啦!
    [ 此贴最后由DC在2012-4-3 20:28:12编辑过 ]
    微控网感谢您的参与
    在线情况
    2
    • 头像
    • 级别
      • 积分3
      • 经验49
      • 文章3
      • 注册2012-04-03
      谢谢啦版主!! 继续摸索中···[EM14]
      微控网感谢您的参与
      Powered by LeadBBS 9.2 .
      Page created in 0.1719 seconds with 7 queries.