程序代碼如下:
// SD24初始化
void ADC_SD24_Intil(void)
{
unsigned int i;
// 內(nèi)部通道0 單通道單詞轉(zhuǎn)換 中斷模式
SD24CTL |= SD24REFON + SD24SSEL0; // 1.2V ref, SMCLK
SD24CCTL0 |= SD24SNGL+SD24UNI+SD24IE; // Single convp ,enable interrupt 單通道單次轉(zhuǎn)換 單極性 偏移二進(jìn)制
// 過采樣率默認(rèn)值 256
SD24INCTL0 |= SD24INTDLY0; // Interrupt on 3rd sample 增益為1 默認(rèn)通道為0
for (i = 0; i < 0x3600; i++); // Delay for 1.2V ref startup
}
// 定時(shí)器控制SD24采樣啟動
#pragma vector=TIMERA0_VECTOR
__interrupt void TIMER_A (void)
{
static unsigned int Tn=0;
Tn++;
if(!(Tn%200)) SD24CCTL0 |= SD24SC;
}
#pragma vector=SD24_VECTOR
__interrupt void SD24AISR(void)
{
switch (SD24IV)
{
case 2: // SD24MEM Overflow
break;
case 4:
adcresult_mid[0] = SD24MEM0; // 讀取數(shù)據(jù)
adcresult_mid[1] = SD24MEM0; // 讀取數(shù)據(jù)
adc_over_flag =1;
break;
case 6:
break;
case 8:
break;
default:
break;
}
}
歡迎光臨 (http://www.torrancerestoration.com/bbs/) | Powered by Discuz! X3.1 |