一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

AVR單片機(jī)(學(xué)習(xí)ing)—(九)、ATMEGA16的模數(shù)轉(zhuǎn)換器—01

 筆錄收藏 2013-04-08

1、介紹

1)特點(diǎn):

10 位 精度
0.5 LSB 的非線性度
± 2 LSB 的絕對(duì)精度
65 - 260 μs 的轉(zhuǎn)換時(shí)間
最高分辨率時(shí)采樣率高達(dá)15 kSPS
8 路復(fù)用的單端輸入通道
7 路差分輸入通道
2 路可選增益為10x 與200x 的差分輸入通道
可選的左對(duì)齊ADC 讀數(shù)
0 - VCC 的 ADC 輸入電壓范圍
可選的2.56V ADC 參考電壓
連續(xù)轉(zhuǎn)換或單次轉(zhuǎn)換模式
通過自動(dòng)觸發(fā)中斷源啟動(dòng)ADC 轉(zhuǎn)換
ADC 轉(zhuǎn)換結(jié)束中斷
基于睡眠模式的噪聲抑制器
Note: 1. 在PDIP封裝下的差分輸入通道器件未經(jīng)測試。只保證器件在TQFP 與MLF封裝下正常
工作。

2)介紹和框圖

ATmega16有一個(gè)10位的逐次逼近型ADC。ADC與一個(gè)8通道的模擬多路復(fù)用器連接,能
對(duì)來自端口A 的8 路單端輸入電壓進(jìn)行采樣。單端電壓輸入以0V (GND) 為基準(zhǔn)。
器件還支持16 路差分電壓輸入組合。兩路差分輸入(ADC1、ADC0 與ADC3、ADC2)
有可編程增益級(jí),在A/D 轉(zhuǎn)換前給差分輸入電壓提供0dB(1x)、20dB(10x) 或46dB(200x)
的放大級(jí)。七路差分模擬輸入通道共享一個(gè)通用負(fù)端(ADC1), 而其他任何ADC 輸入可做
為正輸入端。如果使用1x 或10x 增益,可得到8 位分辨率。如果使用200x 增益,可得
到7 位分辨率。
ADC 包括一個(gè)采樣保持電路,以確保在轉(zhuǎn)換過程中輸入到ADC 的電壓保持恒定。ADC 的
框圖如 Figure 98 所示。
ADC 由AVCC 引腳單獨(dú)提供電源。AVCC 與VCC 之間的偏差不能超過± 0.3V

標(biāo)稱值為2.56V 的基準(zhǔn)電壓,以及AVCC,都位于器件之內(nèi)?;鶞?zhǔn)電壓可以通過在AREF
引腳上加一個(gè)電容進(jìn)行解耦,以更好地抑制噪聲。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

2、ADC的工作過程

ADC 通過逐次逼近的方法將輸入的模擬電壓轉(zhuǎn)換成一個(gè)10 位的數(shù)字量。最小值代表
GND,最大值代表AREF引腳上的電壓再減去1 LSB。通過寫ADMUX寄存器的REFSn位
可以把AVCC 或內(nèi)部2.56V 的參考電壓連接到AREF 引腳。在AREF 上外加電容可以對(duì)
片內(nèi)參考電壓進(jìn)行解耦以提高噪聲抑制性能。
模擬輸入通道與差分增益可以通過寫ADMUX 寄存器的MUX 位來選擇。任何ADC 輸入
引腳,像GND 及固定能隙參考電壓,都可以作為ADC 的單端輸入。ADC 輸入引腳可選
做差分增益放大器的正或負(fù)輸入。
如果選擇差分通道,通過選擇被選輸入信號(hào)對(duì)的增益因子得到電壓差分放大級(jí)。然后放大
值成為ADC 的模擬輸入。如果使用單端通道,將繞過增益放大器。
通過設(shè)置ADCSRA 寄存器的ADEN 即可啟動(dòng)ADC。只有當(dāng)ADEN 置位時(shí)參考電壓及輸
入通道選擇才生效。ADEN 清零時(shí)ADC 并不耗電,因此建議在進(jìn)入節(jié)能睡眠模式之前關(guān)
閉ADC。

ADC轉(zhuǎn)換結(jié)果為10位,存放于ADC數(shù)據(jù)寄存器ADCH及ADCL中。默認(rèn)情況下轉(zhuǎn)換結(jié)果為
右對(duì)齊,但可通過設(shè)置ADMUX 寄存器的ADLAR 變?yōu)樽髮?duì)齊。
如果要求轉(zhuǎn)換結(jié)果左對(duì)齊,且最高只需8 位的轉(zhuǎn)換精度,那么只要讀取ADCH 就足夠了。
否則要先讀ADCL,再讀ADCH,以保證數(shù)據(jù)寄存器中的內(nèi)容是同一次轉(zhuǎn)換的結(jié)果。一旦
讀出ADCL, ADC 對(duì)數(shù)據(jù)寄存器的尋址就被阻止了。也就是說,讀取ADCL 之后,即使
在讀ADCH 之前又有一次ADC 轉(zhuǎn)換結(jié)束,數(shù)據(jù)寄存器的數(shù)據(jù)也不會(huì)更新,從而保證了轉(zhuǎn)
換結(jié)果不丟失。ADCH 被讀出后, ADC 即可再次訪問ADCH 及ADCL 寄存器。
ADC轉(zhuǎn)換結(jié)束可以觸發(fā)中斷。即使由于轉(zhuǎn)換發(fā)生在讀取ADCH與ADCL之間而造成ADC無
法訪問數(shù)據(jù)寄存器,并因此丟失了轉(zhuǎn)換數(shù)據(jù),中斷仍將觸發(fā)。

3、啟動(dòng)一次轉(zhuǎn)換

向 ADC 啟動(dòng)轉(zhuǎn)換位ADSC 位寫"1” 可以啟動(dòng)單次轉(zhuǎn)換。在轉(zhuǎn)換過程中此位保持為高,直
到轉(zhuǎn)換結(jié)束,然后被硬件清零。如果在轉(zhuǎn)換過程中選擇了另一個(gè)通道,那么ADC 會(huì)在改
變通道前完成這一次轉(zhuǎn)換。
ADC轉(zhuǎn)換有不同的觸發(fā)源。設(shè)置ADCSRA寄存器的ADC自動(dòng)觸發(fā)允許位ADATE可以使能
自動(dòng)觸發(fā)。設(shè)置ADCSRB 寄存器的ADC 觸發(fā)選擇位ADTS 可以選擇觸發(fā)源( 見觸發(fā)源
列表中對(duì)ADTS 的描述)。當(dāng)所選的觸發(fā)信號(hào)產(chǎn)生上跳沿時(shí), ADC 預(yù)分頻器復(fù)位并開始
轉(zhuǎn)換。這提供了一個(gè)在固定時(shí)間間隔下啟動(dòng)轉(zhuǎn)換的方法。轉(zhuǎn)換結(jié)束后即使觸發(fā)信號(hào)仍然存
在,也不會(huì)啟動(dòng)一次新的轉(zhuǎn)換。如果在轉(zhuǎn)換過程中觸發(fā)信號(hào)中又產(chǎn)生了一個(gè)上跳沿,這個(gè)
上跳沿將被忽略。即使特定的中斷被禁止或全局中斷使能位為0,中斷標(biāo)志仍將置位。這
樣可以在不產(chǎn)生中斷的情況下觸發(fā)一次轉(zhuǎn)換。但是為了在下次中斷事件發(fā)生時(shí)觸發(fā)新的
轉(zhuǎn)換,必須將中斷標(biāo)志清零。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

使用ADC 中斷標(biāo)志作為觸發(fā)源,可以在正在進(jìn)行的轉(zhuǎn)換結(jié)束后即開始下一次ADC 轉(zhuǎn)換。
之后ADC 便工作在連續(xù)轉(zhuǎn)換模式,持續(xù)地進(jìn)行采樣并對(duì)ADC 數(shù)據(jù)寄存器進(jìn)行更新。第
一次轉(zhuǎn)換通過向ADCSRA 寄存器的ADSC 寫1 來啟動(dòng)。在此模式下,后續(xù)的ADC 轉(zhuǎn)換
不依賴于ADC 中斷標(biāo)志ADIF 是否置位。
如果使能了自動(dòng)觸發(fā),置位ADCSRA 寄存器的ADSC 將啟動(dòng)單次轉(zhuǎn)換。ADSC 標(biāo)志還
可用來檢測轉(zhuǎn)換是否在進(jìn)行之中。不論轉(zhuǎn)換是如何啟動(dòng)的,在轉(zhuǎn)換進(jìn)行過程中ADSC 一
直為1。

4、預(yù)分頻及ADC 轉(zhuǎn)換時(shí)序

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

在默認(rèn)條件下,逐次逼近電路需要一個(gè)從50 kHz到200 kHz的輸入時(shí)鐘以獲得最大精度。
如果所需的轉(zhuǎn)換精度低于10 比特,那么輸入時(shí)鐘頻率可以高于200 kHz,以達(dá)到更高的
采樣率。
ADC 模塊包括一個(gè)預(yù)分頻器,它可以由任何超過100 kHz 的CPU 時(shí)鐘來產(chǎn)生可接受的
ADC 時(shí)鐘。預(yù)分頻器通過ADCSRA 寄存器的ADPS 進(jìn)行設(shè)置。置位ADCSRA 寄存器的
ADEN 將使能ADC,預(yù)分頻器開始計(jì)數(shù)。只要ADEN 為1,預(yù)分頻器就持續(xù)計(jì)數(shù),直到
ADEN 清零。
ADCSRA寄存器的ADSC置位后,單端轉(zhuǎn)換在下一個(gè)ADC時(shí)鐘周期的上升沿開始啟動(dòng)。差
分轉(zhuǎn)換時(shí)序見P197“ 差分增益信道” 。
正常轉(zhuǎn)換需要13 個(gè)ADC 時(shí)鐘周期。為了初始化模擬電路,ADC 使能(ADCSRA 寄存器
的ADEN 置位) 后的第一次轉(zhuǎn)換需要25 個(gè)ADC 時(shí)鐘周期。
在普通的ADC 轉(zhuǎn)換過程中,采樣保持在轉(zhuǎn)換啟動(dòng)之后的1.5 個(gè)ADC 時(shí)鐘開始;而第一次
ADC轉(zhuǎn)換的采樣保持則發(fā)生在轉(zhuǎn)換啟動(dòng)之后的13.5 個(gè)ADC時(shí)鐘。轉(zhuǎn)換結(jié)束后,ADC結(jié)果
被送入ADC 數(shù)據(jù)寄存器,且ADIF 標(biāo)志置位。ADSC 同時(shí)清零( 單次轉(zhuǎn)換模式)。之后軟
件可以再次置位ADSC 標(biāo)志,從而在ADC 的第一個(gè)上升沿啟動(dòng)一次新的轉(zhuǎn)換。
使用自動(dòng)觸發(fā)時(shí),觸發(fā)事件發(fā)生將復(fù)位預(yù)分頻器。這保證了觸發(fā)事件和轉(zhuǎn)換啟動(dòng)之間的延
時(shí)是固定的。在此模式下,采樣保持在觸發(fā)信號(hào)上升沿之后的2 個(gè)ADC 時(shí)鐘發(fā)生。為了
實(shí)現(xiàn)同步邏輯需要額外的3 個(gè)CPU 時(shí)鐘周期。如果使用差分模式,加上不是由ADC 轉(zhuǎn)
換結(jié)束實(shí)現(xiàn)的自動(dòng)觸發(fā),每次轉(zhuǎn)換需要25 個(gè)ADC 時(shí)鐘周期。因?yàn)槊看无D(zhuǎn)換結(jié)束后都要
關(guān)閉ADC 然后又啟動(dòng)它。
在連續(xù)轉(zhuǎn)換模式下,當(dāng)ADSC 為1 時(shí),只要轉(zhuǎn)換一結(jié)束,下一次轉(zhuǎn)換馬上開始。轉(zhuǎn)換時(shí)
間請(qǐng)見 Table 81。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

5、差分增益信道

當(dāng)使用差分增益通道,需要考慮轉(zhuǎn)換的確定特征。
差分轉(zhuǎn)換與內(nèi)部時(shí)鐘CKADC2 同步等于ADC 時(shí)鐘的一半。同步是當(dāng)ADC 接口在CKADC2
邊沿出現(xiàn)采樣與保持時(shí)自動(dòng)實(shí)現(xiàn)的。當(dāng)CKADC2 為低時(shí),通過用戶啟動(dòng)轉(zhuǎn)換( 即,所有的
單次轉(zhuǎn)換與第一次連續(xù)轉(zhuǎn)換) 將與單端轉(zhuǎn)換使用的時(shí)間( 接著的預(yù)分頻后的13 個(gè) ADC 時(shí)
鐘周期)。當(dāng) CKADC2 為高時(shí),由于同步機(jī)制,將會(huì)使用14 個(gè) ADC 時(shí)鐘周期。在連續(xù)轉(zhuǎn)
換模式時(shí),一次轉(zhuǎn)換結(jié)束后立即啟動(dòng)新的轉(zhuǎn)換,而由于CKADC2 此時(shí)為高,所有的自動(dòng)啟
動(dòng)( 即除第一次外) 將使用14 個(gè) ADC 時(shí)鐘周期。
在所有的增益設(shè)置中,當(dāng)帶寬為4 kHz 時(shí)增益級(jí)最優(yōu)。更高的頻率可能會(huì)造成非線性放
大。當(dāng)輸入信號(hào)包含高于增益級(jí)帶寬的頻率時(shí),應(yīng)在輸入前加入低通濾波器。注意,ADC
時(shí)鐘頻率不受增益級(jí)帶寬限制。比如,不管通道帶寬是多少, ADC 時(shí)鐘周期為6 μs,允
許通道采樣率為12 kSPS。
如果使用差分增益通道且通過自動(dòng)觸發(fā)啟動(dòng)轉(zhuǎn)換,在轉(zhuǎn)換時(shí)ADC 必須關(guān)閉。當(dāng)使用自動(dòng)
觸發(fā)時(shí), ADC 預(yù)分頻器在轉(zhuǎn)換啟動(dòng)前復(fù)位。由于在轉(zhuǎn)換前的增益級(jí)依靠穩(wěn)定的ADC 時(shí)
鐘,該轉(zhuǎn)換無效。在每次轉(zhuǎn)換( 在寄存器 ADCSRA 的ADEN 位中 寫 “0” 接著為“1”),通
過禁用然后重使能ADC,只執(zhí)行擴(kuò)展轉(zhuǎn)換。擴(kuò)展轉(zhuǎn)換結(jié)果有效。

6、改變通道和基準(zhǔn)源

ADMUX寄存器中的MUXn及REFS1:0通過臨時(shí)寄存器實(shí)現(xiàn)了單緩沖。CPU可對(duì)此臨時(shí)寄
存器進(jìn)行隨機(jī)訪問。這保證了在轉(zhuǎn)換過程中通道和基準(zhǔn)源的切換發(fā)生于安全的時(shí)刻。在轉(zhuǎn)
換啟動(dòng)之前通道及基準(zhǔn)源的選擇可隨時(shí)進(jìn)行。一旦轉(zhuǎn)換開始就不允許再選擇通道和基準(zhǔn)
源了,從而保證ADC 有充足的采樣時(shí)間。在轉(zhuǎn)換完成(ADCSRA 寄存器的ADIF 置位) 之
前的最后一個(gè)時(shí)鐘周期,通道和基準(zhǔn)源的選擇又可以重新開始。轉(zhuǎn)換的開始時(shí)刻為ADSC

置位后的下一個(gè)時(shí)鐘的上升沿。因此,建議用戶在置位ADSC 之后的一個(gè)ADC 時(shí)鐘周期
里,不要操作ADMUX 以選擇新的通道及基準(zhǔn)源。
使用自動(dòng)觸發(fā)時(shí),觸發(fā)事件發(fā)生的時(shí)間是不確定的。為了控制新設(shè)置對(duì)轉(zhuǎn)換的影響,在更
新ADMUX 寄存器時(shí)一定要特別小心。
若ADATE及ADEN都置位,則中斷事件可以在任意時(shí)刻發(fā)生。如果在此期間改變ADMUX
寄存器的內(nèi)容,那么用戶就無法判別下一次轉(zhuǎn)換是基于舊的設(shè)置還是最新的設(shè)置。在以下
時(shí)刻可以安全地對(duì)ADMUX 進(jìn)行更新:
1. ADATE 或ADEN 為 0
2. 在轉(zhuǎn)換過程中,但是在觸發(fā)事件發(fā)生后至少一個(gè)ADC 時(shí)鐘周期
3. 轉(zhuǎn)換結(jié)束之后,但是在作為觸發(fā)源的中斷標(biāo)志清零之前
如果在上面提到的任一種情況下更新ADMUX,那么新設(shè)置將在下一次ADC 時(shí)生效。
當(dāng)改變差分通道時(shí)要特別注意。一旦選定差分通道,增益級(jí)要用125 μs 來穩(wěn)定該值。因
此在選定新通道后的125 μs 內(nèi)不應(yīng)啟動(dòng)轉(zhuǎn)換?;蛏釛壴摃r(shí)間段內(nèi)的轉(zhuǎn)換結(jié)果。

7、ADC 輸入通道

選擇模擬通道時(shí)請(qǐng)注意以下指導(dǎo)方針:
工作于單次轉(zhuǎn)換模式時(shí),總是在啟動(dòng)轉(zhuǎn)換之前選定通道。在ADSC 置位后的一個(gè)ADC 時(shí)
鐘周期就可以選擇新的模擬輸入通道了。但是最簡單的辦法是等待轉(zhuǎn)換結(jié)束后再改變通
道。
在連續(xù)轉(zhuǎn)換模式下,總是在第一次轉(zhuǎn)換開始之前選定通道。在ADSC 置位后的一個(gè)ADC
時(shí)鐘周期就可以選擇新的模擬輸入通道了。但是最簡單的辦法是等待轉(zhuǎn)換結(jié)束后再改變
通道。然而,此時(shí)新一次轉(zhuǎn)換已經(jīng)自動(dòng)開始了,下一次的轉(zhuǎn)換結(jié)果反映的是以前選定的模
擬輸入通道。以后的轉(zhuǎn)換才是針對(duì)新通道的。
當(dāng)切換到差分增益通道,由于自動(dòng)偏移抵消電路需要沉積時(shí)間,第一次轉(zhuǎn)換結(jié)果準(zhǔn)確率很
低。用戶最好舍棄第一次轉(zhuǎn)換結(jié)果。

8、ADC 基準(zhǔn)電壓源

ADC的參考電壓源(VREF)反映了ADC的轉(zhuǎn)換范圍。若單端通道電平超過了VREF,其結(jié)果將
接近0x3FF。VREF 可以是AVCC、內(nèi)部2.56V 基準(zhǔn)或外接于AREF 引腳的電壓。
AVCC通過一個(gè)無源開關(guān)與ADC相連。片內(nèi)的2.56V參考電壓由能隙基準(zhǔn)源(VBG)通過內(nèi)部
放大器產(chǎn)生。無論是哪種情況,AREF 都直接與ADC 相連,通過在AREF 與地之間外加
電容可以提高參考電壓的抗噪性。VREF 可通過高輸入內(nèi)阻的伏特表在AREF 引腳測得。
由于VREF 的阻抗很高,因此只能連接容性負(fù)載。
如果將一個(gè)固定電源接到AREF 引腳,那么用戶就不能選擇其他的基準(zhǔn)源了,因?yàn)檫@會(huì)導(dǎo)
致片內(nèi)基準(zhǔn)源與外部參考源的短路。如果AREF 引腳沒有聯(lián)接任何外部參考源,用戶可以
選擇AVCC 或1.1V 作為基準(zhǔn)源。參考源改變后的第一次ADC 轉(zhuǎn)換結(jié)果可能不準(zhǔn)確,建
議用戶不要使用這一次的轉(zhuǎn)換結(jié)果。

9、相關(guān)寄存器

1)ADMUX

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

Bit 7:6 – REFS1:0: 參考電壓選擇
如Table 83 所示,通過這幾位可以選擇參考電壓。如果在轉(zhuǎn)換過程中改變了它們的設(shè)置,
只有等到當(dāng)前轉(zhuǎn)換結(jié)束(ADCSRA 寄存器的ADIF 置位) 之后改變才會(huì)起作用。如果在
AREF 引腳上施加了外部參考電壓,內(nèi)部參考電壓就不能被選用了。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

Bit 5 – ADLAR: ADC 轉(zhuǎn)換結(jié)果 左對(duì)齊
ADLAR影響ADC轉(zhuǎn)換結(jié)果在ADC數(shù)據(jù)寄存器中的存放形式。ADLAR置位時(shí)轉(zhuǎn)換結(jié)果為左
對(duì)齊,否則為右對(duì)齊。ADLAR 的改變將立即影響ADC 數(shù)據(jù)寄存器的內(nèi)容,不論是否有
轉(zhuǎn)換正在進(jìn)行。

Bits 4:0 – MUX4:0: 模擬通道與增益選擇位
通過這幾位的設(shè)置,可以對(duì)連接到ADC 的模擬輸入進(jìn)行選擇。也可對(duì)差分通道增益進(jìn)行
選擇。細(xì)節(jié)見Table 84。如果在轉(zhuǎn)換過程中改變這幾位的值,那么只有到轉(zhuǎn)換結(jié)束
(ADCSRA 寄存器的ADIF 置位) 后新的設(shè)置才有效。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01
AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

2)ADC控制和狀態(tài)寄存器—ADCSRA

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01
Bit 7 – ADEN: ADC 使能
ADEN置位即啟動(dòng)ADC,否則ADC功能關(guān)閉。在轉(zhuǎn)換過程中關(guān)閉ADC將立即中止正在進(jìn)行
的轉(zhuǎn)換。
Bit 6 – ADSC: ADC 開始轉(zhuǎn)換
在單次轉(zhuǎn)換模式下,ADSC 置位將啟動(dòng)一次ADC 轉(zhuǎn)換。在連續(xù)轉(zhuǎn)換模式下,ADSC 置位
將啟動(dòng)首次轉(zhuǎn)換。第一次轉(zhuǎn)換( 在ADC 啟動(dòng)之后置位ADSC,或者在使能ADC 的同時(shí)置
位ADSC) 需要25 個(gè)ADC 時(shí)鐘周期,而不是正常情況下的13 個(gè)。第一次轉(zhuǎn)換執(zhí)行ADC
初始化的工作。
在轉(zhuǎn)換進(jìn)行過程中讀取ADSC 的返回值為"1”,直到轉(zhuǎn)換結(jié)束。ADSC 清零不產(chǎn)生任何動(dòng)
作。
Bit 5 – ADATE: ADC 自動(dòng)觸發(fā)使能
ADATE置位將啟動(dòng)ADC自動(dòng)觸發(fā)功能。觸發(fā)信號(hào)的上跳沿啟動(dòng)ADC轉(zhuǎn)換。觸發(fā)信號(hào)源通
過SFIOR 寄存器的ADC 觸發(fā)信號(hào)源選擇位ADTS 設(shè)置。
Bit 4 – ADIF: ADC 中斷標(biāo)志
在ADC 轉(zhuǎn)換結(jié)束,且數(shù)據(jù)寄存器被更新后, ADIF 置位。如果ADIE 及SREG 中的全局
中斷使能位I 也置位,ADC 轉(zhuǎn)換結(jié)束中斷服務(wù)程序即得以執(zhí)行,同時(shí)ADIF 硬件清零。此
外,還可以通過向此標(biāo)志寫1 來清ADIF。要注意的是,如果對(duì)ADCSRA 進(jìn)行讀-修改
-寫操作,那么待處理的中斷會(huì)被禁止。這也適用于SBI 及CBI 指令。
Bit 3 – ADIE: ADC 中斷使能
若ADIE 及SREG 的位I 置位, ADC 轉(zhuǎn)換結(jié)束中斷即被使能。
Bits 2:0 – ADPS2:0: ADC 預(yù)分頻器選擇位
由這幾位來確定XTAL 與ADC 輸入時(shí)鐘之間的分頻因子。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

3)ADC 數(shù)據(jù)寄存器- ADCL 及ADCH

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

ADC 轉(zhuǎn)換結(jié)束后,轉(zhuǎn)換結(jié)果存于這兩個(gè)寄存器之中。如果采用差分通道,結(jié)果由2 的補(bǔ)碼
形式表示。
讀取ADCL 之后,ADC 數(shù)據(jù)寄存器一直要等到ADCH 也被讀出才可以進(jìn)行數(shù)據(jù)更新。因
此,如果轉(zhuǎn)換結(jié)果為左對(duì)齊,且要求的精度不高于8 比特,那么僅需讀取ADCH 就足夠
了。否則必須先讀出ADCL 再讀ADCH。
ADMUX 寄存器的 ADLAR 及MUXn 會(huì)影響轉(zhuǎn)換結(jié)果在數(shù)據(jù)寄存器中的表示方式。如果
ADLAR 為1,那么結(jié)果為左對(duì)齊;反之( 系統(tǒng)缺省設(shè)置),結(jié)果為右對(duì)齊。
ADC9:0: ADC 轉(zhuǎn)換結(jié)果
ADC 轉(zhuǎn)換的結(jié)果。

4)特殊功能IO 寄存器- SFIOR

 AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

Bit 7:5 – ADTS2:0: ADC 自動(dòng)觸發(fā)源
若ADCSRA 寄存器的ADATE 置位,ADTS 的值將確定觸發(fā)ADC 轉(zhuǎn)換的觸發(fā)源;否則,
ADTS的設(shè)置沒有意義。被選中的中斷標(biāo)志在其上升沿觸發(fā)ADC轉(zhuǎn)換。從一個(gè)中斷標(biāo)志清
零的觸發(fā)源切換到中斷標(biāo)志置位的觸發(fā)源會(huì)使觸發(fā)信號(hào)產(chǎn)生一個(gè)上升沿。如果此時(shí)

ADCSRA 寄存器的ADEN 為1,ADC 轉(zhuǎn)換即被啟動(dòng)。切換到連續(xù)運(yùn)行模式(ADTS[2:0]=0)
時(shí),即使ADC 中斷標(biāo)志已經(jīng)置位也不會(huì)產(chǎn)生觸發(fā)事件。

AVR單片機(jī)(學(xué)習(xí)ing)鈥敚ň牛TMEGA16的模數(shù)轉(zhuǎn)換器鈥01

Bit 4 – Res: 保留位

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    一二区中文字幕在线观看| 欧美日韩有码一二三区| 国产在线日韩精品欧美| 亚洲欧洲在线一区二区三区| 国产一级二级三级观看| 精品国产av一区二区三区不卡蜜| 白白操白白在线免费观看| 99热中文字幕在线精品| 99久久精品久久免费| 亚洲国产四季欧美一区| 91精品视频免费播放| 五月婷婷六月丁香狠狠| 国产在线视频好看不卡| 国产精品免费不卡视频| 精品欧美一区二区三久久| 国产美女精品人人做人人爽| 91亚洲国产—区=区a| 亚洲中文字幕亲近伦片| 国产精品欧美一级免费| 国产欧美韩日一区二区三区| 欧洲一区二区三区蜜桃| 日本亚洲欧美男人的天堂| 国产精品99一区二区三区| 视频一区二区黄色线观看| 一级欧美一级欧美在线播| 久草精品视频精品视频精品| 日韩欧美一区二区黄色| 出差被公高潮久久中文字幕| 午夜传媒视频免费在线观看| 一区二区日韩欧美精品| 欧美日韩久久精品一区二区| 国产成人精品视频一二区| 久久re6热在线视频| 国产亚洲欧美一区二区| 最新午夜福利视频偷拍| 欧美丰满大屁股一区二区三区| 日韩中文高清在线专区| 中文字幕乱码亚洲三区| 天堂热东京热男人天堂| 成人免费视频免费观看| 欧美三级不卡在线观线看|