?? 3_8_2_4.c
字號:
#include <msp430x13x.h>
#define ADCMEM ((int*) 0x0140) // ADC12MEMx 定義
void Init(void);
unsigned int Result[2];
void main(void) //使用中斷方式取結果
{
Init();
ADC12CTL0 |= 0x01; // 開始轉換
LPM0; //進入低功耗狀態,等待中斷
_NOP();
}
void Init(void)
{
WDTCTL = WDTPW + WDTHOLD;
P6SEL = 0xFF; // 所有P6口線均為ADC模塊使用
ADC12CTL0 &=~ 0x02; // 在進行設置時首先復位ADC的轉換使能
ADC12MCTL0 = 0x00; // Ref = AVss, AVcc; 輸入通道 = A0
ADC12MCTL1 = 0x8a; // Ref = AVss, AVcc; 輸入通道 = A10
ADC12CTL1 = 0x0206 ; // 第一個轉換結果被放在ADC12MEM0
// 第二個轉換結果被放在ADC12MEM1
// 采樣脈沖由采樣定時器產生
// 時鐘源:內部振蕩器
// 時鐘分頻: 1
// 轉換模式: 多通道、重復轉換
ADC12CTL0 = SHT0_8+ MSC+ADC12ON ;
ADC12IE = 0x002; //使能轉換中斷
ADC12CTL0 |= 0x02;
_EINT(); //使能全局中斷
}
interrupt [ADC_VECTOR] void ADC12(void) // ADC 中斷處理程序
{
unsigned int i;
for(i = 0 ; i < 2 ; i++ )
{
Result[i] = ADCMEM[i] ; //讀取結果
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -