標(biāo)題: MSP430F5529渦流金屬探測(cè)器代碼 [打印本頁(yè)]

作者: qczj_    時(shí)間: 2022-7-11 18:19
標(biāo)題: MSP430F5529渦流金屬探測(cè)器代碼
#include <msp430f5529.h>
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // 關(guān)閉看門狗
  ADC12CTL0 = ADC12SHT02 + ADC12ON;     // 選擇采樣周期,打開ADC12模塊
  ADC12CTL1 = ADC12SHP;                     // 使用采樣定時(shí)器作為采樣觸發(fā)信號(hào)
  ADC12IE = 0x01;                           // 使能ADC采樣中斷
  ADC12CTL0 |= ADC12ENC;                    // 置位ADC12ENC控制位
  P6SEL |= 0x01;                            // 將P6.0引腳設(shè)為ADC輸入功能
  P1DIR |= 0x01;                            // 將P1.0引腳設(shè)為輸出功能
  while (1)
  {
    ADC12CTL0 |= ADC12SC;                   // 啟動(dòng)采樣轉(zhuǎn)換
__bis_SR_register(LPM0_bits + GIE);    // 進(jìn)入LPM0并啟用全局中斷
  }
}
#pragma vector = ADC12_VECTOR
__interrupt void ADC12_ISR(void)
{
  switch(__even_in_range(ADC12IV,34))
  {
  case  0: break;                           // Vector  0:  無(wú)中斷
  case  2: break;                           // Vector  2:  ADC溢出中斷
  case  4: break;                           // Vector  4:  ADC轉(zhuǎn)換時(shí)間溢出中斷
  case  6:                                      // Vector  6:  ADC12IFG0
    if (ADC12MEM0 >= 0x3ff)                 // ADC12MEM = A0 > 0.未知AVcc?
     P1OUT &= ~BIT0;                        // P1.0 = 1
    else
     P1OUT |= BIT0;                       // P1.0 = 0
  case  8: break;                           // Vector  8:  ADC12IFG1
  case 10: break;                           // Vector 10:  ADC12IFG2
  case 12: break;                           // Vector 12:  ADC12IFG3
  case 14: break;                           // Vector 14:  ADC12IFG4
  case 16: break;                           // Vector 16:  ADC12IFG5
  case 18: break;                           // Vector 18:  ADC12IFG6
  case 20: break;                           // Vector 20:  ADC12IFG7
  case 22: break;                           // Vector 22:  ADC12IFG8
  case 24: break;                           // Vector 24:  ADC12IFG9
  case 26: break;                           // Vector 26:  ADC12IFG10
  case 28: break;                           // Vector 28:  ADC12IFG11
  case 30: break;                           // Vector 30:  ADC12IFG12
  case 32: break;                           // Vector 32:  ADC12IFG13
  case 34: break;                           // Vector 34:  ADC12IFG14
  default: break;
  }
}







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1