MSP430 LaunchPad PushButton

//******************************************************************************
//  hit the Push-Button P1.3 and trigger red LED toggle P1.0 example
//  support msp430g2553
//  Description; Toggle P1.0 by xor'ing P1.0
//  ACLK = n/a, MCLK = SMCLK = default DCO
//
//                MSP430G2231
//             -----------------
//         /|\|              XIN|-
//          | |                 |
//          --|RST          XOUT|-
//            |                 |
//            |             P1.0|-->LED          
//
// Build by CCS v5
// source code provided by Wei Yan <kikiqqp@gmail.com>
//******************************************************************************
// #define BSF(var, bit)  ((var) |=  (1 << (bit))) //把某1bit設為1 仿PIC ASM用
// #define BCF(var, bit)  ((var) &= ~(1 << (bit)))  //把某1bit設為0

#include <msp430g2553.h>

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;            //關閉看門狗
  P1OUT = BIT3;                        //設定PT1.3為高電位
  P1DIR = BIT0;                        //設定PT1.0為輸出
  P1REN = P1OUT;                       //設定PT1.3上拉電阻
  char flash;
  unsigned int count;
  for( ; ; )                          //Polling Loop
  {
      while((P1IN & BIT3) == 0)   //使用if比較直覺
          for(flash = 0 ; flash < 20; flash++)
          {
              P1OUT ^= BIT0;          //NOT BIT0高電位
              for (count=0; count<60000; count++);
          }
  }
}

0 個留言: