日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]一、ADC12轉(zhuǎn)換模式ADC12提供4種轉(zhuǎn)換模式:單通道單次轉(zhuǎn)換對選定的通道進(jìn)行單次轉(zhuǎn)換要進(jìn)行如下設(shè)置:x=CSStartAdd,指向轉(zhuǎn)換開始地址ADC12MEMx存放轉(zhuǎn)換結(jié)果ADC12IFG.x為對應(yīng)的中斷標(biāo)志ADC12MCTLx寄存器中定義了通道和

一、ADC12轉(zhuǎn)換模式

ADC12提供4種轉(zhuǎn)換模式:

單通道單次轉(zhuǎn)換

對選定的通道進(jìn)行單次轉(zhuǎn)換要進(jìn)行如下設(shè)置:
x=CSStartAdd,指向轉(zhuǎn)換開始地址
ADC12MEMx存放轉(zhuǎn)換結(jié)果
ADC12IFG.x為對應(yīng)的中斷標(biāo)志
ADC12MCTLx寄存器中定義了通道和參考電壓
轉(zhuǎn)換完成時必須使ENC再次復(fù)位并置位(上升沿),以準(zhǔn)備下一次轉(zhuǎn)換。在ENC復(fù)位并再次置位之前的輸入信號將被忽略。

序列通道單次轉(zhuǎn)換

對序列通道進(jìn)行單次轉(zhuǎn)換要進(jìn)行如下設(shè)置:
x=CSStartAdd,指示轉(zhuǎn)換開始地址
EOS(ADC12MCTLx.7)=1標(biāo)志序列中最后通道y,非最后通道的EOS位都是0,表示序列沒有結(jié)束。
ADC12MEMx,...ADC12MEM.y存放轉(zhuǎn)換結(jié)果
ADC12IFG.x,...ADC12IFG.y為對應(yīng)的中斷標(biāo)志
ADC12MCTLx寄存器中定義了通道和參考電壓
轉(zhuǎn)換完成時必須使ENC再次復(fù)位并置位(上升沿),以準(zhǔn)備下一次轉(zhuǎn)換。在ENC復(fù)位并再次置位之前的輸入信號將被忽略。

單通道多次轉(zhuǎn)換

對選定的通道進(jìn)行多次轉(zhuǎn)換,直到關(guān)閉該功能或ENC=0。進(jìn)行如下設(shè)置:
x=CSStartAdd,指向轉(zhuǎn)換開始地址
ADC12MEMx存放轉(zhuǎn)換結(jié)果
ADC12MCTLx寄存器中定義了通道和參考電壓
在這種模式下,改變轉(zhuǎn)換模式,不必先停止轉(zhuǎn)換,在當(dāng)前正在進(jìn)行的轉(zhuǎn)換結(jié)束后,可改變轉(zhuǎn)換模式。該模式的停止可有如下幾種辦法:
使用CONSEQ=0的辦法,改變?yōu)閱瓮ǖ绬未文J健?br/>使用ENC=0直接使當(dāng)前轉(zhuǎn)換完成后停止。
使用單通道單次模式替換當(dāng)前模式,同時使ENC=0

序列通道多次轉(zhuǎn)換

對序列通道進(jìn)行多次轉(zhuǎn)換,直到關(guān)閉該功能或ENC=0。進(jìn)行如下設(shè)置:
x=CSStartAdd,指示轉(zhuǎn)換開始地址
EOS(ADC12MCTLx.7)=1標(biāo)志序列中最后通道y。
ADC12MCTLx寄存器中定義了通道和參考電壓
改變轉(zhuǎn)換模式,不必先停止轉(zhuǎn)換。一旦改變模式(單通道單次模式除外),將在當(dāng)前序列完成后立即生效

不論用戶使用何種轉(zhuǎn)換模式,都要處理以下問題:

設(shè)置具體模式
輸入模擬信號
關(guān)注轉(zhuǎn)換結(jié)束信號
存放轉(zhuǎn)換數(shù)據(jù)以及采用查詢或者中斷方式讀取數(shù)據(jù)

二、ADC12寄存器說明

寄存器類型

寄存器縮寫

寄存器含義

轉(zhuǎn)換控制寄存器ADC12CTL0轉(zhuǎn)換控制寄存器0ADC12CTL1轉(zhuǎn)換控制寄存器1
中斷控制寄存器ADC12IFG中斷標(biāo)志寄存器ADC12IE中斷使能寄存器
ADC12IV中斷向量寄存器
存儲及其控制寄存器ADC12MCTL0~ADC12MCTL15存儲控制寄存器0~15ADC12MEM0~ADC12MEM15存儲寄存器0~15

1.ADC12CTL0控制寄存器0,各位定義:

15~1211~87

6

5

4

3

2

1

0

SHT1SHT0MSC2.5VREF
ONADC12
ONADC12
TOVIEADC12
TVIEENCADC12
SC

ADC12SC——采樣/轉(zhuǎn)換控制位。在不同條件下,ADC12SC的含義如下所示:

ENC=1
ISSH=0

SHP=1ADC12SC由0變?yōu)?啟動A/D轉(zhuǎn)換A/D轉(zhuǎn)換完成后ADC12SC自動復(fù)位

SHP=0ADC12SC保持高電平采樣
ADC12SC復(fù)位時啟動一次轉(zhuǎn)換

ENC——轉(zhuǎn)換允許位。

0:ADC12為初始狀態(tài),不能啟動A/D轉(zhuǎn)換;
1:首次轉(zhuǎn)換由SAMPCON上升沿啟動

ADC12TVIE——轉(zhuǎn)換時間溢出中斷允許位(當(dāng)前轉(zhuǎn)換還沒完成時,又發(fā)生一次采樣請求,則會發(fā)生轉(zhuǎn)換時間溢出)

0:沒發(fā)生轉(zhuǎn)換時間溢出
1:發(fā)生轉(zhuǎn)換時間溢出

ADC12OVIE——溢出中斷允許位(當(dāng)ADC12MEMx中原有數(shù)據(jù)還沒有讀出,而又有新的轉(zhuǎn)換結(jié)果數(shù)據(jù)要寫入時,則發(fā)生溢出)

0:沒發(fā)生溢出
1:發(fā)生溢出

ADC12ON——ADC12內(nèi)核控制位

0:關(guān)閉ADC12內(nèi)核
1:打開ADC12內(nèi)核

REFON——參考電壓控制位

0:內(nèi)部參考電壓發(fā)生器關(guān)閉
1:內(nèi)部參考電壓發(fā)生器打開

2.5V——內(nèi)部參考電壓的電壓值選擇位

0:選擇1.5V內(nèi)部參考電壓
1:選擇2.5V內(nèi)部參考電壓

MSC——多次采樣轉(zhuǎn)換位(CONSEQ<>0表示當(dāng)前轉(zhuǎn)換模式不是單通道單次轉(zhuǎn)換)

有效條件

MSC值

含義

SHP=1
CONSEQ<>00每次轉(zhuǎn)換需要SHI信號的上升沿觸發(fā)采樣定時器1僅首次轉(zhuǎn)換由SHI信號的上升沿觸發(fā)采樣定時器,而后采樣轉(zhuǎn)換將在前一次轉(zhuǎn)換完成后立即進(jìn)行

SHT1、SHT0——采樣保持定時器1,采樣保持定時器0

分別定義保存在轉(zhuǎn)換結(jié)果寄存器ADC12MEM8~ADC12MEM15和ADC12MEM0~ADC12MEM7中的轉(zhuǎn)換采樣時序與采樣時鐘ADC12CLK的關(guān)系。采樣周期是ADC12CLK周期乘4的整數(shù)倍,即:

SHITx

0

1

23456789101112~15n1248162432486496128192256

2.ADC12CTL1轉(zhuǎn)換控制寄存器1(大多數(shù)3~15位,只有在ENC=0時才可被修改),各位定義:

15~1211~10

9

8

7~5

4、3

2、1

0

CSSTARTADDSHSSHPISSHADC12
DIVADC12
SSELCONSEQ

ADC12
BUSY

CSSTARTADD——轉(zhuǎn)換存儲器地址位。該4位所表示的二進(jìn)制數(shù)0~15分別對應(yīng)ADC12MEM0~15??梢远x單次轉(zhuǎn)換地址或序列轉(zhuǎn)換的首地址。

SHS——采樣觸發(fā)輸入源選擇位。

0:ADC12SC
1:Timer_A.OUT1
2:Timer_B.OUT0
3:Timer_B.OUT1

SHP——采樣信號(SAMPCON)選擇控制位。

0:SAMPCON源自采樣觸發(fā)輸入信號
1:SAMPCON源自采樣定時器,由采樣輸入信號的上升沿觸發(fā)采樣定時器

ISSH——采樣輸入信號方向控制位

0:采樣輸入信號為同向輸入
1:采樣輸入信號為反向輸入

ADC12DIV——ADC12時鐘源分頻因子選擇位。分頻因子為該3位二進(jìn)制數(shù)加1

ADC12SSEL——ADC12內(nèi)核時鐘源選擇

0:ADC12內(nèi)部時鐘源——ADC12OSC
1:ACLK
2:MCLK
3:SMCLK

CONSEQ——轉(zhuǎn)換模式選擇位

0:單通道單次轉(zhuǎn)換模式
1:序列通道單次轉(zhuǎn)換模式
2:單通道多次轉(zhuǎn)換模式
3:序列通道多次轉(zhuǎn)換模式

ADC12BUSY——ADC12忙標(biāo)志(只用于單通道單次轉(zhuǎn)換模式,在其它轉(zhuǎn)換模式下,該位無效)

0:表示沒有活動的操作
1:表示ADC12正處于采樣期間、轉(zhuǎn)換期間或序列轉(zhuǎn)換期間

3.ADC12MEM0~ADC12MEM15轉(zhuǎn)換存儲寄存器

該組寄存器均為16位寄存器,用來存放A/D轉(zhuǎn)換結(jié)果。中用其中低12位,高4位在讀出時為0

4.ADC12MCTLx轉(zhuǎn)換存儲控制寄存器(所有位只有在ENC為低電平時可修改,在POR時各位被復(fù)位)

對于每個轉(zhuǎn)換存儲器有一個對應(yīng)的轉(zhuǎn)換存儲器控制寄存器,所以在進(jìn)行CSSTARTADD轉(zhuǎn)換存儲器地址位設(shè)置的同時,也確定了ADC12MCTLx。該寄存器各位含義如下:

76,5,4

3,2,1,0

EOSSREFINCH

EOS——序列結(jié)束控制位

0:序列沒有結(jié)束
1:該序列中最后一次轉(zhuǎn)換

SREF——參考電壓源選擇位

0:Vr+=AVcc,Vr-=AVss
1:Vr+=VREF+,Vr-=AVss
2,3:Vr+=VEREF+,Vr-=AVss
4:Vr+=AVcc,Vr-=VREF-/VEREF-
5:Vr+=VREF+,Vr-=VREF-/VEREF-
6,7:Vr+=VEREF+,Vr-=VREF-/VEREF-

INCH——選擇模擬輸入通道

0~7:A0~A7
8:VeREF+
9:VREF-/VeREF-
10:片內(nèi)溫度傳感器的輸出
11~15:(AVCC-AVSS)/2

5.ADC12IFG中斷標(biāo)志寄存器為16位,其中中斷標(biāo)志位ADC12IFG.x對應(yīng)于轉(zhuǎn)換存儲寄存器ADC12MEMx。各位含義如下:

1514

......

10ADC12
IFG15ADC12
IFG14......ADC12
IFG1ADC12
IFG0

ADC12IFG.x置位:轉(zhuǎn)換結(jié)束,并且轉(zhuǎn)換結(jié)果已經(jīng)裝入轉(zhuǎn)換存儲寄存器。
ADC12IFG.x復(fù)位:ADC12MEMx被訪問。

6.ADC12IE中斷使能寄存器為16位,對應(yīng)于ADC12IFG寄存器。各位含義如下:

1514

......

10ADC12
IE.15ADC12
IE.14......ADC12
IE.1ADC12
IE.0

ADC12IE.x=1:允許相應(yīng)的中斷標(biāo)志位ADC12IFG.x在置位時發(fā)生的中斷請求服務(wù)。
ADC12IE.x=0:禁止相應(yīng)的中斷標(biāo)志位ADC12IFG.x在置位時發(fā)生的中斷請求服務(wù)。

7.ADC12IV中斷向量寄存器

ADC12是一個多源中斷:有18個中斷標(biāo)志(ADC12IFG.0~ADC12IFG.15與ADC12TOV,ADC12OV),但只有一個中斷向量。所以需要設(shè)置這18個標(biāo)志的優(yōu)先級順序,按照優(yōu)先級順序安排中斷標(biāo)志的響應(yīng),高優(yōu)先級的請求可以中斷正在服務(wù)的低優(yōu)先級。如下表所示:

ADC12中斷標(biāo)志ADC12IFG

ADC12TOVADC12OVADC12IV














1514131211109876543210


0000000000000000000XXXXXXXXXXXXXXXXX12XXXXXXXXXXXXXXXX104XXXXXXXXXXXXXXX1006XXXXXXXXXXXXXXX0008~~~~~~~~~~~~~~~~~~~X100000000000000003410000000000000000036

各中斷標(biāo)志會產(chǎn)生一個0~36的偶數(shù)。

ADC12OV和ADC12TOV會在訪問ADC12IV后自動復(fù)位。但在響應(yīng)了ADC12IFG.x標(biāo)志對應(yīng)的中斷服務(wù)之后,相應(yīng)的標(biāo)志不自動復(fù)位,用以保證能處理發(fā)生溢出的情況。


本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉