版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第7章 A/D、D/A、CMP和TSI模塊本章導(dǎo)讀:作為工業(yè)控制及測(cè)量最主要的模塊之一,*H/數(shù)轉(zhuǎn)換(ADC及數(shù)/模轉(zhuǎn)換(DAC)的是嵌入式系統(tǒng)應(yīng)用的基本內(nèi)容之一。比較器CMP也是嵌入式應(yīng)用系統(tǒng)中基本的控制邏輯之一。觸摸感應(yīng)接口 TSI作為一種新型的人機(jī)交互手段,已應(yīng)用于越來越多的嵌入式系統(tǒng)。 本章主要知識(shí)點(diǎn)有 A/D轉(zhuǎn)換的基本知識(shí)及一般編程模型;D/A轉(zhuǎn)換的基本知識(shí)及一般編程模型;比較器CMP模塊的基本知識(shí)及一般編程模型;TSI模塊的基本知識(shí)及一般編程模型。7. 1 16位A/D轉(zhuǎn)換模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)在過程控制和儀器儀表中,多數(shù)情況下是由嵌入式計(jì)算機(jī)進(jìn)行實(shí)時(shí)控制及實(shí)時(shí)數(shù)據(jù)處理 的。計(jì)算機(jī)所加
2、工的信息是數(shù)字量,而被測(cè)控對(duì)象往往是一些連續(xù)變化的模擬量(如溫度、 壓力、速度或流量等)。模/數(shù)(Analog/Digital , A/D)轉(zhuǎn)換模塊是嵌入式計(jì)算機(jī)與外界連接的 紐帶,是大部分嵌入式應(yīng)用中必不可少的重要組成部分,該部分的性能直接影響到嵌入式設(shè)備的總體性能。本節(jié)首先簡要闡述 A/D轉(zhuǎn)換的基礎(chǔ)知識(shí),接著給出K60 MCU內(nèi)部A/D轉(zhuǎn)換模塊的基本編程方法,并封裝了 A/D轉(zhuǎn)換構(gòu)件,可供實(shí)際開發(fā)參考使用。7. 1. 1 A/D轉(zhuǎn)換的基礎(chǔ)知識(shí)A/D轉(zhuǎn)換模塊(Analog To Digital Convert Module)即模/數(shù)轉(zhuǎn)換模塊,其功能是將電壓信號(hào) 轉(zhuǎn)換為相應(yīng)的數(shù)字信號(hào)。數(shù)字控制
3、系統(tǒng)如圖7-1所示。實(shí)際應(yīng)用中,該電壓信號(hào)可能由溫度、濕度、壓力等實(shí)際物理量經(jīng)過傳感器和相應(yīng)的變換電路轉(zhuǎn)化而來。經(jīng)過A/D轉(zhuǎn)換后,MCU就可以處理這些物理量。進(jìn)行A/D轉(zhuǎn)換,應(yīng)該了解以下一些基本問題:第一,采樣精度是多少;第二,采樣速率有多快;第三,濾波問題;第四,物理量回歸等。圖7-1數(shù)字控制系統(tǒng)框圖1 .采樣精度采樣精度就是指數(shù)字量變化一個(gè)最小量時(shí)模擬信號(hào)的變化量,即采樣位數(shù)。通常,MCU的采樣位數(shù)為 8位,某些增強(qiáng)型的可達(dá)到10位,而專用的 A/D采樣芯片則可達(dá)到 12位、14位,甚至16位。設(shè)采樣位數(shù)為 N,則 最小的能檢測(cè)到的模擬量變化值為1/2n。例如,以K60為例,其采樣精度最高
4、為16位,若參考電壓為3. 3V,則檢測(cè)到的模擬量最小變化為3. 3/216=0. 05mV。2 . 米樣速率采樣速率是指完成一次 A/D采樣所要花費(fèi)的時(shí)間。在多數(shù)的MCU中要花費(fèi)幾個(gè)到幾十個(gè)指令周期,因而此速率和所選器件的工作頻率有很大關(guān)系。3 .濾波為了使采樣的數(shù)據(jù)更準(zhǔn)確,必須對(duì)采樣的數(shù)據(jù)進(jìn)行篩選,去掉誤差較大的毛刺。通常采 用中值濾波法和均值濾波法來提高采樣精度。所謂中值濾波,就是將 M次連續(xù)采樣值按大 小進(jìn)行排序,取中間值作為濾波輸出。而均值濾波,是把 N次采樣結(jié)果值相加,然后除以 采樣次數(shù)N,得到的平均值就是濾波結(jié)果。若要得到更高的精度,可以通過建立其他誤差模型分析方式來實(shí)現(xiàn)。4 .
5、物理量回歸在實(shí)際應(yīng)用中,得到穩(wěn)定的A/D采樣值以后,還需要把A/D采樣值與實(shí)際物理量對(duì)應(yīng)起來,這一步稱為物理量回歸。A/D轉(zhuǎn)換的目的是把模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào),供計(jì)算機(jī)進(jìn)行處理,但必須知道 A/D轉(zhuǎn)換后的數(shù)值所代表的實(shí)際物理量的值,這樣才有實(shí)際意義。例 如,利用MCU采集室內(nèi)溫度,A/D轉(zhuǎn)換后的數(shù)值是126,實(shí)際它代表多高溫度呢?如果當(dāng) 前室內(nèi)溫度是25. IV,則A/D值126就代表實(shí)際溫度 25. C。7.1.2 A/D轉(zhuǎn)換常用傳感器簡介傳感器是指把物理量或化學(xué)量轉(zhuǎn)變成電信號(hào)的器件,它是實(shí)現(xiàn)測(cè)試與自動(dòng)控制系統(tǒng)的首要環(huán)節(jié)。例如,電子計(jì)價(jià)秤中所安裝的稱重傳感器,是電子計(jì)價(jià)秤的重要部件,它擔(dān)負(fù)著
6、將 重量轉(zhuǎn)換成電信號(hào)的任務(wù),該電信號(hào)被放大器放大并經(jīng)A/D轉(zhuǎn)換后,由顯示器件給出稱重信息。如果沒有傳感器對(duì)原始參數(shù)進(jìn)行精確可靠的測(cè)量,無論是信號(hào)轉(zhuǎn)換或信息處理都將無法實(shí)現(xiàn)。傳感器的種類可分為力、熱、濕、氣、磁、光、電等。各種傳感器都是根據(jù)相關(guān)材 料在不同環(huán)境下會(huì)表現(xiàn)出不同的物理特性研制而成的。下面介紹一些簡單的傳感器。1 .溫度傳感器溫度傳感器是利用一些金屬、半導(dǎo)體等材料與溫度有關(guān)的特性制成的,這些特性包括熱膨脹、電阻、電容、磁性、熱電勢(shì)、熱噪聲、彈性及光學(xué)特征,根據(jù)制造材料將其分為熱敏 電阻傳感器、半導(dǎo)體熱電偶傳感器、PX結(jié)溫度傳感器和集成溫度傳感器等類型。熱敏電阻傳感器是一種比較簡單的溫度
7、傳感器,其最基本電氣特性是隨著溫度的變化自身阻值也隨之變化。圖7-2 (a)是XTC熱敏電阻。(a) NTC熱敏電阻(b)熱敏電阻的簡單采樣電路圖7-2熱敏電阻及其采樣電路在實(shí)際應(yīng)用中,將熱敏電阻接入圖7-2 (b)的采樣電路中,熱敏電阻和一個(gè)特定阻值的電 阻串聯(lián),由于熱敏電阻會(huì)隨著環(huán)境溫度的變化而化,因此A/D采樣點(diǎn)的電壓也會(huì)隨之變化,A/D采樣點(diǎn)的電壓式中,X是一特定阻值,根據(jù)實(shí)際熱敏電阻的不同而加以選定。假如熱敏電阻阻值增大,采樣點(diǎn)的電壓就會(huì)減小,A/D值也相應(yīng)減??;反之,熱敏電阻阻值減小,采樣點(diǎn)的電壓就會(huì)增大,A/D值也相應(yīng)增大。所以采用這種方法,MCU就會(huì)獲知外界溫度的變化。如果想知
8、道外界的具體溫度值,就需要進(jìn)行物理量回歸操作,也就是通過A/D采樣值,根據(jù)采樣電路及熱敏電阻溫度變化曲線,推算當(dāng)前溫度值。2 .光敏電阻器光敏電阻器是利用半導(dǎo)體的光電效應(yīng)制成的一種電阻值隨入射光的強(qiáng)弱而改變的電阻 器;入射光強(qiáng),電阻減??;入射光弱,電阻增大。光敏電阻器一般用于光的測(cè)量、光的控制 和光電轉(zhuǎn)換(將光的變化轉(zhuǎn)換為電的變化)。通常,光敏電阻器都制成薄片結(jié)構(gòu),以便吸收更多的光能。當(dāng)它受到光的照射時(shí), 半導(dǎo)體片(光敏層)內(nèi)就激發(fā)出電子一空穴對(duì),參與導(dǎo)電,使電路中電流增強(qiáng)。一般光敏電阻器 結(jié)構(gòu)如圖7-3 (a)所示。圖7-3 (b)給出了簡單的光敏電阻采樣電路,其中A/D采樣點(diǎn)的電壓的計(jì)算方
9、法類似于上述熱敏電阻A/D采樣點(diǎn)電壓的計(jì)算。a)光敏電期小)光敏電陰的筒單果樣電路圖7-3光敏電阻及其采樣電路3 . 灰度傳感器所謂灰度,也可認(rèn)為是亮度,簡單地說就是色彩的深淺程度?;叶葌鞲衅鞯闹饕ぷ髟硎鞘褂脙芍欢O管,一只為發(fā)白光的高亮度發(fā)光二極管,另一只為光敏二極管。發(fā)光二極管發(fā)出超強(qiáng)白光照射在物體上,通過物體反射回來落在光敏二極管上,由于受照射在它上面的光線強(qiáng)弱的影響,光敏二極管的阻值在反射光線很弱(也就是物體為深色) 時(shí)為幾百千歐,一般光照度下為幾千歐,在反射光線很強(qiáng)(也就是物體顏色很淺,幾乎全反射時(shí))為幾十歐。這樣就能檢測(cè)到物體的顏色的灰度了。7.1.3 A/D轉(zhuǎn)換模塊概要與編程
10、要點(diǎn)1. A/D模塊簡介概要由于K60的ADC模塊的時(shí)鐘頻率最高可配置為50MHz,最快采樣周期為 4個(gè)時(shí)鐘,所以采樣速率最高可達(dá) 12. 5MHz。K60共有2個(gè)ADC模塊,每個(gè)ADC模塊包含27個(gè)寄存器。 ADC模塊由于使用了線性逐次逼近算法,所以具有最高可達(dá)16位的分辨率。同時(shí) ADC具有差分輸入和單端輸入兩種采集模式。差分輸入模式具有 4路,每路有可以分別配置為 16位、 13位、11位和9位四種采集精度;單端輸入模式具有 24路,每路可以分別配置為 16位、 12位、10位和8位四種采集精度。當(dāng)K60的ADC模塊配置為差分模式時(shí),將4對(duì)差分引腳視為差分輸入源,將該對(duì)引腳的電壓差值作模
11、數(shù)轉(zhuǎn)換的測(cè)量值,而且相應(yīng)的結(jié)果寄存器會(huì)出現(xiàn)符號(hào)位。當(dāng)差分引腳DP的電壓比DM高時(shí),符號(hào)位為0。當(dāng)差分引腳 DP的電壓比DM低時(shí),符號(hào)位1。雖然差分可 以帶符號(hào),但這里還是建議讀者設(shè)置DP端的電壓值高于 DM端的電壓值。如果ADC模塊配置位為非差分模式時(shí),那么差分模式下的所有差分輸入正端將視為單端模式的輸入端。其實(shí)單端輸入可以理解為另一端電壓值永遠(yuǎn)為0V的差分輸入。2. A/D模塊寄存器ADCI塊共有2個(gè)通道,每個(gè)道共有28個(gè)寄存器。表7-2列出了 ADC01的28個(gè)寄存器的內(nèi) 存映射,ADC通道的寄存器名、復(fù)位值和該通道相同,基地址則從400B_B000開始。表7-2ADC0通道寄存器映射絕對(duì)
12、地址寄存器名寬度進(jìn)入方式復(fù)位值4003_B000ADC 狀態(tài)控制寄存器1 (ADC0_SC1A )32R/W0000_001Fh4003_B004ADC 狀態(tài)控制寄存器1 (ADC0_SC1B)32R/W0000_001Fh4003_B008ADC 配置寄存器1 (ADC0_CFG1 )32R/W0000_0000h4003_B00CADC 配置寄存器2 (ADC0_CFG2 )32R/W0000_0000h4003_B010ADC數(shù)據(jù)結(jié)果寄存器(ADC0_RA )32R0000_0000h4003_B014ADC數(shù)據(jù)結(jié)果寄存器(ADC0_RB )32R0000_0000h4003_B018比
13、較值寄存器(ADC0_CV1 )32R/W0000_0000h4003_B01C比較值寄存器(ADC0_CV2 )32R/W0000_0000h4003_B020狀態(tài)和控制寄存器 2 (ADC0_SC2)32R/W0000_0000h4003_B024狀態(tài)和控制寄存器 3 (ADC0_SC3)32R/W0000_0000h4003_B028ADC偏移校正寄存器(ADC0_OFS )32R/W0000_0004h4003_B02CADC力口方增益寄存器(ADC0_PG )32R/W0000_8200h4003_B030ADC減方增益寄存器(ADC0_MG )32R/W0000_8200h4003
14、_B034ADC加方通用校準(zhǔn)值寄存器(ADC0_CLPD )32R/W0000_000Ah4003_B038ADC加方通用校準(zhǔn)值寄存器(ADC0_CLPS )32R/W0000_0020h4003_B03CADC加方通用校準(zhǔn)值寄存器(ADC0_CLP4 )32R/W0000_0200h4003_B040ADC加方通用校準(zhǔn)值寄存器(ADC0_CLP3 )32R/W0000_0100h4003_B044ADC加方通用校準(zhǔn)值寄存器(ADC0_CLP2 )32R/W0000_0080h4003_B048ADC 加方通用校準(zhǔn)值寄存器( ADC0_CLP1 )32R/W0000_0040h4003_B04
15、CADC加方通用校準(zhǔn)值寄存器(ADC0_CLP0 )32R/W0000_0020h4003_B050ADC PGA 寄存器(ADC0_PGA )32R/W0000_0000h4003_B054ADC減方通用校準(zhǔn)值寄存器(ADC0_CLMD )32R/W0000_000Ah4003_B058ADC 減方通用校準(zhǔn)值寄存器( ADC0_CLMS )32R/W0000_0020h4003_B05CADC 減方通用校準(zhǔn)值寄存器( ADC0_CLM4 )32R/W0000_0200h4003_B060ADC 減方通用校準(zhǔn)值寄存器( ADC0_CLM3 )32R/W0000_0100h4003_B064AD
16、C 減方通用校準(zhǔn)值寄存器( ADC0_CLM2 )32R/W0000_0080h4003_B068ADC減方通用校準(zhǔn)值寄存器(ADC0_CLM1 )32R/W0000_0040h4003_B06CADC 減方通用校準(zhǔn)值寄存器( ADC0_CLM0 )32R/W0000_0020h在ADC模塊的編程過程中,主要需要配置ADC模塊的時(shí)鐘、轉(zhuǎn)換為單端或者差分、轉(zhuǎn)換精度、觸發(fā)源以及轉(zhuǎn)換通道等功能,因此需要用到ADC的控制寄存器、配置寄存器以及狀態(tài)寄存器等。本章詳細(xì)介紹的寄存器有配置寄存器1、狀態(tài)和控制寄存器 1、狀態(tài)和控制寄存器2和狀態(tài)和控制寄存器31. ADC 配置寄存器 1(ADCx_CFG1)配
17、置寄存器1選才i ADC的運(yùn)行模式、時(shí)鐘源、時(shí)鐘分頻,并可以配置低功耗或長采樣 時(shí)間。ME匕WRm與白tADLPC-低功耗配置。該寄存器控制功耗配置的逐次逼近轉(zhuǎn)換器。當(dāng)采用優(yōu)化功耗時(shí),不需要更改的采樣速率。0:正常功耗配置。1:低功耗配置。功耗的減小以最大時(shí)鐘速率為代價(jià)。ADIV時(shí)鐘分頻選擇。該位選擇時(shí)鐘分頻比,用以生成ADC模塊的內(nèi)部時(shí)鐘 ADCK) 00:分頻比為1,時(shí)鐘速率為輸人時(shí)鐘。01:分頻比為2,時(shí)鐘速率為(輸入時(shí)鐘) /2。10:分頻比為4,時(shí)鐘速率為(輸入時(shí)鐘)/4。11:分頻比為84,時(shí)鐘速率為(輸入時(shí)鐘)18。ADLSMP采樣時(shí)間配置。該位根據(jù)轉(zhuǎn)換模式的選擇來配置不同的采樣
18、時(shí)間,通過調(diào) 整它來適應(yīng)采樣周期,以允許高阻抗的精確采樣或低阻抗輸入的最低轉(zhuǎn)換速率。在連續(xù)轉(zhuǎn)換使能且不需要高轉(zhuǎn)換速率的時(shí)候,長的采樣時(shí)間也可以用來降低整體的功耗。當(dāng)ADLSMP=1時(shí),選擇為長采樣時(shí)間,此時(shí)配置ADLSTS1:0用以選擇長采樣時(shí)間的程度。0:短采樣時(shí)間。1:長采樣時(shí)間。MODE轉(zhuǎn)換模式選才用來選擇ADC模塊的精度模式。00: DIFF=0時(shí),為單端8位精度轉(zhuǎn)換;DIFF=1時(shí),為差分9位精度轉(zhuǎn)換并輸出二進(jìn)制補(bǔ) 碼。01: DIFF=0時(shí),為單端12位精度轉(zhuǎn)換;DIFF=1時(shí),為差分13位精度轉(zhuǎn)換并輸出二進(jìn)制 補(bǔ)碼。10: DIFF=0時(shí),為單端10位精度轉(zhuǎn)換;DIFF=1時(shí),為
19、差分11位糧度轉(zhuǎn)換并輸出二進(jìn)制 補(bǔ)碼。11: DIFF=0時(shí),為單端16位精度轉(zhuǎn)換;DIFF=1時(shí),為差分16位精度轉(zhuǎn)換并輸出二進(jìn)制 補(bǔ)碼。ADICLK-輸入時(shí)鐘選擇。該位通過選擇日鐘輸人源來生成內(nèi)部時(shí)鐘ADCK)注意,當(dāng)選擇的時(shí)鐘源為 ADACK時(shí),不必在轉(zhuǎn)換開始前?t活它。當(dāng)選擇為ALTCL簾且在轉(zhuǎn)換前未激活(ADACKEN =。時(shí),異步時(shí)鐘會(huì)在轉(zhuǎn)換開始時(shí)被激活并在結(jié)束時(shí)關(guān)閉。因此,在時(shí)鐘源 被重新激活的時(shí)候相應(yīng)的時(shí)鐘會(huì)有一個(gè)啟動(dòng)延時(shí)。00:總線時(shí)鐘。01:總線時(shí)鐘2分頻。10:備用時(shí)鐘(ALTCLK。11:異步時(shí)鐘(ADACK)。2. ADC狀態(tài)和控制寄存器 1(ADCx_SC1n)AR
20、TRW IFFADCH狀態(tài)寄存器 ADCx_SCln分為兩個(gè)寄存器,分別是 SC1A和SC1B SC1A寄存器可用于軟 件和硬件觸發(fā)兩者模式的操作。為了允許ADC的連續(xù)轉(zhuǎn)換可以被內(nèi)部外設(shè)觸發(fā),ADC有不止一個(gè)狀態(tài)和控制寄存器,每個(gè)轉(zhuǎn)換對(duì)應(yīng)一個(gè)寄存器。只有在硬件觸發(fā)的模式下,才可以配 置SC1中的SC1B寄存器。在任何一個(gè)時(shí)間點(diǎn)上,僅有一個(gè)SC1n寄存器為控制 ADC轉(zhuǎn)換的激活斗犬態(tài)。當(dāng) SC1n正在控制轉(zhuǎn)換過程日是可以更新SC1A的。向SC1A寄存器寫人的時(shí)候會(huì)中止一個(gè)當(dāng)前正在運(yùn)行的轉(zhuǎn)換。在軟件觸發(fā)模式下(ADTRG=0),寫入SC1A寄存器會(huì)初始化一個(gè)新的轉(zhuǎn)換(如果 ADCH不等于全1狀態(tài))
21、。同樣,寫人任何 SC1n寄存器會(huì)中止當(dāng)前 SC1n控制的轉(zhuǎn)換。由于 SC1B不能用來軟件觸發(fā)操作,因此寫入SC1B奇存器不會(huì)初始化一個(gè)新的轉(zhuǎn)換。COCO-轉(zhuǎn)換完成標(biāo)志。該位為只讀位,如果比較功能沒有使能(ACFE = 0且硬件平均功能沒有使能(AVGE=。,每次轉(zhuǎn)換完成時(shí)該位會(huì)置位。當(dāng)比較功能使能后(ACFE=|, COCO標(biāo)志僅當(dāng)轉(zhuǎn)換完成后的比較結(jié)果為真值時(shí)才置位。當(dāng)硬件平均功能使能后(AVGE=。,COCO標(biāo)志在選定的轉(zhuǎn)換數(shù)目完成后置位(由AVGS位決定)。SC1A的COCO標(biāo)志也會(huì)在校準(zhǔn)序列完成后置位。當(dāng)對(duì)應(yīng)的 SC1n寄存器寫入或者對(duì)應(yīng)的 Rn寄存器被讀取后,COCO標(biāo)志會(huì)被清 除。
22、0:轉(zhuǎn)換沒有完成。1:轉(zhuǎn)換完成。AIEN中斷使能。該位使能轉(zhuǎn)換完成中斷。當(dāng)COCO被置位,并且 AIEN為高時(shí),一個(gè)中斷會(huì)被觸發(fā)。0:轉(zhuǎn)換完成中斷禁用。1:轉(zhuǎn)換完成中斷使能。DIFF差分模式使能。 該位配置ADC運(yùn)行于差分輸入模式。 當(dāng)使能該位后,該模式自 動(dòng)選擇差分通道、改變轉(zhuǎn)換算法和轉(zhuǎn)換完成的周期數(shù)。0:單端轉(zhuǎn)換。 1:差分轉(zhuǎn)換。ADCH輸人通道選擇。ADCH的5位用來選擇輸入的通道號(hào)。 輸人通道的解碼還取決于DIFF位的值。DAD0? DAD3為對(duì)應(yīng)差分輸人的 DADPx和DADMx成對(duì)弓|腳。當(dāng)通道選擇位 的所有位為1時(shí)(ADCH=11111),逐次逼近轉(zhuǎn)換算法子系統(tǒng)會(huì)關(guān)閉。該特性可以
23、用來明確地 禁用ADC 轉(zhuǎn)換并且隔離通道的所有輸人源。通過中止連續(xù)轉(zhuǎn)換可以避免一個(gè)額外的單次轉(zhuǎn)換被執(zhí)行。沒有必要在連續(xù)轉(zhuǎn)換禁用的時(shí)候設(shè)置該位為全1 以起到降低ADC 功耗的作用,因?yàn)樵撃K會(huì)在一個(gè)轉(zhuǎn)換完成后自動(dòng)進(jìn)入低功耗模式。000000000100010000110010000101001100011101000 01001 01010 01011 01100 01101 01110 01111 10000 10001100101001110100101011011010111 11000保留狀態(tài)。 11001保留狀態(tài)。11010DIFF=0,DADP0為輸入;DIFF=1, DAD0為輸入
24、。DIFF=0,DADP1 為輸人;DIFF=1, DAD1 為輸入。DIFF=0,DADP2 為輸入;DIFF=1, DAD2 為輸入。DIFF=0,DADP3 為輸人;DIFF=1, DAD3 為輸入。DIFF=0,AD4 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD5 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD6 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD7 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD8 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD9 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD10 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,
25、AD11 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD12 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD13 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD14 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD15 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD16 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD17 為輸入;DIFF= 1,保留狀態(tài)。DIFF=0,AD18 為輸人;DIFF=1,保留狀態(tài)。DIFF=0,AD19 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD20 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,AD21 為輸入;DIFF=1,保留狀
26、態(tài)。DIFF=0,AD22 為輸入;DIFF=1,保留狀態(tài)。DIFF=0,保留狀態(tài) 保留狀態(tài)AD23 為輸人;OODIFF=1,保留狀態(tài)。DIFF = 0溫度傳感器(單端)為輸入;DIFF=1,溫度傳感器(差分)為輸入。11011: DIFF=0,帶隙(單端)為輸入; DIFF=1,帶隙(差分)為輸人。11100保留狀態(tài)。11101 : DIFF=0, Vrefsh為輸入;DIFF=1, Vrefsh(差分)為輸入。電壓參考的選擇由 SC2寄存器的REFSE位決定。11110: DIFF=0, Vrefsh為輸入;DIFF=1,保留狀態(tài)。電壓參考的選擇由SC2寄存器的REFSEIB決定。111
27、11模塊禁用。3. ADC狀態(tài)和控制寄存器 2(ADCx_SC2)SC2寄存器包含轉(zhuǎn)換活躍、硬件 /軟件觸發(fā)選擇、比較功能和電壓參考選擇等配置。現(xiàn)m - a? 然 * 飄 | aa 絲 型 忤 一 什 帕ResetWR6sstADACT轉(zhuǎn)換活躍。該位指明當(dāng)前是否處于一個(gè)轉(zhuǎn)換或硬件平均處理中。初始化一個(gè)轉(zhuǎn)換后,ADACT置位;當(dāng)轉(zhuǎn)換完成或者中止后,該位被清零。0:沒有在轉(zhuǎn)換。1:正在轉(zhuǎn)換。ADTRG-轉(zhuǎn)換觸發(fā)選擇。ADTRG選擇觸發(fā)類型來初始化一個(gè)轉(zhuǎn)換,有軟件觸發(fā)和硬件觸發(fā)兩個(gè)類型可以選擇。當(dāng)選擇軟件觸發(fā)時(shí),通過寫SC1A寄存器可以初始化一個(gè)轉(zhuǎn)換。當(dāng)選擇硬件觸發(fā)時(shí),則隨著一個(gè)ADHWTSn脈沖輸
28、人后的ADHWT使能而觸發(fā)一個(gè)轉(zhuǎn)換初始化。0:軟件觸發(fā)選擇。1:硬件觸發(fā)選擇。ACFE-比較功能使能。0:比較功能禁用。1:比較功能使能。ACFGT-比較功能大于使能。ACFGT艮據(jù)ACREN的值來配置比較功能,以檢查轉(zhuǎn)換結(jié) 果與對(duì)應(yīng)的比較值寄存器 (CV1和CV2)。為了使該位有效,則 ACFEB必須置位。0:如果配置小于閾值,則范圍之內(nèi)的和范閑之外的值將不被包含,該功能取決于CV1和CV2寄存器的值。1:如果配置為大于或等于閾值,則范圍之內(nèi)的和范閑之外的值將被包含,該功能取決 于CV1和CV2寄存器的值。ACREN-比較功能范圍使能。ACREN配置比較功能來檢查轉(zhuǎn)換的結(jié)果是否在CV1和CV
29、2寄存器的范圍內(nèi)或范圍外。為了使ACFGT位有效則ACFE位必須置位。DMAEN DMA使能。0: DMA禁用。1: DMA使能,任何 ADC的轉(zhuǎn)換完成后都會(huì)置位 COCO標(biāo)志以觸發(fā)一個(gè) DMA請(qǐng)求。REFSE電壓參考選擇,用于轉(zhuǎn)換的電壓參考源。00:默認(rèn)電壓參考源引腳對(duì)(外部引腳Vrefh和Vrefi)。01:備用參考對(duì)(VALTH和VALTL),可以是附件的外部引腳或者內(nèi)部源,取決于 MCU的 配置。10:保留選項(xiàng)。11:保留選項(xiàng)。4. ADC狀態(tài)和控制寄存器 3(ADCx_SC3)SC3及寄存器控制ADC模塊的校準(zhǔn)、連續(xù)轉(zhuǎn)換以及硬件平均功能。qLusct0CAL校準(zhǔn)。置位 CAL的時(shí)候開
30、始一個(gè)校準(zhǔn)序列。處于校準(zhǔn)過程中該位保持置位,校準(zhǔn)序列完成后該位清零。必須檢查CALF位來決定校準(zhǔn)序列的結(jié)果,一旦校準(zhǔn)開始,校準(zhǔn)過程便不能通過寫 ADC寄存器來中斷,否則校準(zhǔn)結(jié)果就是不正確的,且CALF將被置位。S位CAL位將中斷任何轉(zhuǎn)換。CALF-校準(zhǔn)失敗標(biāo)志。在校準(zhǔn)序列完成前,如果ADTRG=1則任何ADC寄存器被寫入或者進(jìn)人任何停止模式校準(zhǔn)序列都將失敗。向該位寫1將會(huì)清零該位。0:校準(zhǔn)正常完成。1:校準(zhǔn)失敗。ADC精確度規(guī)格將不保證。ADCO一一連續(xù)轉(zhuǎn)換使能。AVGE=1),那么在初始化轉(zhuǎn)換后,一個(gè)轉(zhuǎn)換或者一組轉(zhuǎn)換AVGE=1),那么在初始化轉(zhuǎn)換后,連續(xù)轉(zhuǎn)換或者多組轉(zhuǎn)換0:如果硬件平均功能
31、使能( 將開啟。AVGE-硬件平均使能。 0:硬件平均功能禁用。AVGS-硬件平均選擇, 00: 4個(gè)采樣平均。10: 16個(gè)采樣平均。1:如果硬件平均功能使能( 將開啟。1:硬件平均功能使能。決定多少個(gè)ADC轉(zhuǎn)換來平均出一個(gè)結(jié)果。01: 8個(gè)采樣平均。11: 32個(gè)采樣平均。3 .編程要點(diǎn)對(duì)于ADC模塊的編程,我們只要了解ADC狀態(tài)控制寄存器 SCI (ADC Status and ControlRegisters 1)、ADC配置寄存器 CFG1 和 CFG2 (ADC Configuration Register 1、2)三個(gè)寄存器就能 使用K60的ADC模塊了。讀者若要了解其寄存器詳細(xì)
32、信息請(qǐng)參見芯片手冊(cè)。下面著重介紹ADC模塊編程要點(diǎn)。1)初始化在開始ADC之前,需要初始化 ADC模塊,ADC模塊初始化的順序如下。(1)配置SIM _SCGC6,使能ADC的時(shí)鐘,使能A/D通道的引腳復(fù)用功能為 ADC功能。(2)配置ADC配置寄存器(CFG),選擇用于產(chǎn)生內(nèi)部時(shí)鐘輸入時(shí)鐘源和分頻因子,同 時(shí)可以配置ADC的選擇采樣時(shí)間和低功耗功能。(3)配置ADC狀態(tài)和控制寄存器(SC1n),選擇轉(zhuǎn)換是否是單端或差分模式,使能或禁 止轉(zhuǎn)換完成中斷,選擇轉(zhuǎn)換的輸入通道。2)開始轉(zhuǎn)換操作在初始化結(jié)束后,當(dāng)向 SC1n的域ADCH寫入通道值時(shí),一個(gè) A/D轉(zhuǎn)換便 開始了。3)完成轉(zhuǎn)換當(dāng)轉(zhuǎn)換結(jié)果送
33、到數(shù)據(jù)結(jié)構(gòu)寄存器中轉(zhuǎn)換就完成了??梢酝ㄟ^查看 SC1n寄存器中的C0C0位來檢驗(yàn)轉(zhuǎn)換是否完成。4 ) 獲取A/D值當(dāng)轉(zhuǎn)換結(jié)束后,結(jié)果寄存器中的值即為轉(zhuǎn)換結(jié)果,最后需要清除標(biāo) 志寄存器的coco完成轉(zhuǎn)換位。代碼片段如下。7.1.4 A/D轉(zhuǎn)換驅(qū)動(dòng)構(gòu)件設(shè)計(jì)A/D模塊具有初始化、采樣、中值濾波、均值濾波等操作。按照構(gòu)件的思想,可將它們 封裝成獨(dú)立的功能函數(shù)。A/D構(gòu)件包括頭文件 hw_adc. h和hw_adc. c文件。A/D構(gòu)件頭文件中主要包括相關(guān)宏定義、A/D的訪能函數(shù)原每說明等內(nèi)容。A/D構(gòu)件程序文件的內(nèi)容是給出A/D各功能函數(shù)的實(shí)現(xiàn)過程。表7-1給出了 ADC構(gòu)件函數(shù)的函數(shù)名和各個(gè)函數(shù)的具
34、體功能。表7-1 A/D構(gòu)件函數(shù)年 4學(xué) ft功 能1h,品k inh1也她安(fl q jAJD科慢收川用如化2般擬他步人的迎通學(xué)尊本生 次M之 用的徵收員的人口俅hmmid住擬城幡人的加勒4等中的*於蔡融任意 飾的模黑的出口轉(zhuǎn)撿拓中的4hwadL' avc檢取1L峨人曲泣號(hào).匕位泄泄,:1,1110 ?產(chǎn) k:一7. . : 二 的穩(wěn)拉呈的A 口以鼻中性船小的姑山卡的?中值.就現(xiàn)下者泌他本節(jié)給出了 K60內(nèi)部A/D轉(zhuǎn)換模塊的程序,包含了中值濾波與均值濾波的復(fù)合濾波方式,因?yàn)椴缓浖V波的 A/D轉(zhuǎn)換程序很少能夠?qū)嶋H應(yīng)用。中值濾波的思想是:連續(xù)采樣3次,并將3次采樣結(jié)果按照從大到小的
35、順序排列, 取中間值作為中值濾波的結(jié)果。 均值濾波 的思想是:先進(jìn)行 n次中值濾波,再將這 n次中值結(jié)果相加,然后除以采樣次數(shù) n得到最 終結(jié)果。具體的構(gòu)件函數(shù)功能如下,hw_adc_init函數(shù)主要完成 A/D轉(zhuǎn)換模塊的初始化。hw_adc_mid函數(shù)實(shí)現(xiàn)中值濾波,hw_adC_ave函數(shù)實(shí)現(xiàn)均值濾波。下面以K60的A/D轉(zhuǎn)換程序?yàn)槔?,給出相應(yīng)的程序代碼。1. A/D轉(zhuǎn)換構(gòu)件頭文件2. A/D轉(zhuǎn)換構(gòu)件函數(shù)7.1.5A/D 轉(zhuǎn)換驅(qū)動(dòng)構(gòu)件測(cè)試實(shí)例A/D 轉(zhuǎn)換測(cè)試實(shí)例主函數(shù)7.212 位 D/A 轉(zhuǎn)換模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)7.2.1 D/A 轉(zhuǎn)換的基礎(chǔ)知識(shí)數(shù)/模轉(zhuǎn)換(Digital-to-Analog
36、 Converter, DAC)是ADC的逆轉(zhuǎn)換 當(dāng)MCU需要把處理后的 信息反饋到控制設(shè)備上時(shí),就需要將數(shù)字量轉(zhuǎn)換為模擬量。完成這種轉(zhuǎn)換的電路稱為數(shù)/模轉(zhuǎn)換器,亦稱為DAC。1. D/A 轉(zhuǎn)換的指標(biāo)1) 分辨率(Resolution)指數(shù)字量變化一個(gè)最小量時(shí)模擬信號(hào)的變化量。分辯率又稱為精度,通常以數(shù)字信號(hào)的位數(shù)來表示。2) 建立時(shí)間(Setting Time)是將一個(gè)數(shù)字量轉(zhuǎn)換為穩(wěn)定模擬信號(hào)所需的時(shí)間,也可以認(rèn)為是轉(zhuǎn)換時(shí)間。2. D/A 轉(zhuǎn)換器的分類1) 電壓輸出型電壓輸出型D/A 轉(zhuǎn)換器雖有直接從電阻陣列輸出電壓的,但一般采用內(nèi)置輸出放大器以低阻抗輸出。直接輸出電壓的器件僅用于高阻抗負(fù)載
37、,由于無輸出放大器部分的延遲,故常作為高速D/A 轉(zhuǎn)換器使用。2) 電流輸出型電流輸出型D/A 轉(zhuǎn)換器很少直接利用電流輸出,大多外接電流-電壓轉(zhuǎn)換電路得到電壓輸出,有兩種方法:一是只在輸出引腳上接負(fù)載電阻而進(jìn)行電流-電壓轉(zhuǎn)換;二是外接運(yùn)算放大器。 第一種方法雖可在電流輸出引腳上出現(xiàn)電壓,但必須在規(guī)定的輸出電壓范圍內(nèi)使用,而且由于輸出阻抗高,所以一般外接運(yùn)算放大器使用。3) 乘算型D/A 轉(zhuǎn)換器中有使用恒定基準(zhǔn)電壓的,也有在基準(zhǔn)電壓輸入上加交流信號(hào)的,后者由于能得到數(shù)字輸入和基準(zhǔn)電壓輸入相乘的結(jié)果而輸出,因而稱為乘算型D/A 轉(zhuǎn)換器。乘算型D/A 轉(zhuǎn)換器一般不僅可以進(jìn)行乘法運(yùn)算,而且可以作為使輸
38、入信號(hào)數(shù)字化衰減的衰減器及對(duì)輸入信號(hào)進(jìn)行調(diào)制的調(diào)制器使用。4) 一位 D/A 轉(zhuǎn)換器一位 D/A 轉(zhuǎn)換器與前述轉(zhuǎn)換方式全然不同,它將數(shù)字值轉(zhuǎn)換為脈沖寬度調(diào)制或頻率調(diào)制的輸出,然后用數(shù)字濾波器進(jìn)行平均化而得到一般的電壓輸出(又稱為位流方式),用于音頻等場(chǎng)合。7. 2. 2 D/A轉(zhuǎn)換模塊概要1概要當(dāng)DAC使能時(shí),將會(huì)轉(zhuǎn)換 DACDAT11:0的值或者把數(shù)據(jù)緩沖區(qū)的值轉(zhuǎn)換成模擬電壓。電壓轉(zhuǎn)換精度為 Vin/4096,輸出電壓范圍在 Vin/4096? Vin之間。D/A結(jié)構(gòu)如圖7-4所示。*卜"DaCHE uDACRI MT;DAC FES圖7-4 K60的12位DAC模塊結(jié)構(gòu)圖DAC模
39、塊可以選擇兩路參考電壓, DACREF_手口 DACREF_2其分另U連接至 VRE橋口 VDDA。 VREF俞出的是一個(gè)精準(zhǔn)的 1.2V電壓,VDDA是K60使用的3.3V工作電壓。K60的12位DAC的輸出端則可以連接到外部引腳、比較器的輸入端、運(yùn)算放大器(Op-Amps)以及 ADC等。K60的12位DAC主要有以下特性:片上可編程的輸出產(chǎn)生器:兩路參考源電壓選 擇;支持16字的數(shù)據(jù)緩沖區(qū);支持 DMA 。2. DAC模塊寄存器DAC模塊共有2個(gè)通道,每組通道共有 36個(gè)寄存器。其中,有 32個(gè)緩沖區(qū)寄存器 DACx_DATn體口 DACx_DATnH 16組,其余4個(gè)分另是狀態(tài)寄存器
40、(DACx_SR)控制寄存器 0(DACx_C0)控制寄存器 l(DACx_C1和控制寄存器 2(DACx_C2 DAC通道 0的基地址為 400C_C000,通道1的基地址為 400C_D000。顯DAC模塊的編程過程中主要需要吊置DAC模塊的觸發(fā)模式、緩沖區(qū)操作模式等,因此需要用到DAC的控制寄存器0和控制寄存器1。下面將詳細(xì)介紹這兩組寄存器。1) DAC控制寄存器0(DACx C0)DACENDACRFSDACTRGSE LDACSWTPGLPENDACBWIENDACBTIENDACBBENBfl 1«f>4|331電Read Wrte Raset DOOOOOOODA
41、CENDAC使能。該位控制可編程參考電壓生成器的開始操作。0: DAC系統(tǒng)禁用。1: DAC系統(tǒng)使能。DACRFSDAC參考選擇。0: DAC選擇DACREF_祚為參考電壓。1: DAC選擇DACREF_2乍為參考電壓。DACTRGSE- DAC 觸發(fā)選擇。0:選擇DAC硬件觸發(fā)。1 :選擇DAC軟件觸發(fā)。DACSWTRG-DAC軟件觸發(fā)。高位激活。該位只能寫入,讀取值始終為0。如果DAC軟件觸發(fā)被選擇并且緩沖器被使能,向該位寫1將使緩沖器讀指針前進(jìn)一次。0: DAC軟件觸發(fā)無效。1 :DAC軟件觸發(fā)有效。LPENDAC彳氐功耗控制.0:高功耗模式。1:低功耗模式。DACBWIENDAC緩沖區(qū)
42、閾值中斷使能。0: DAC緩沖區(qū)閾值中斷被禁用。1: DAC緩沖區(qū)閾值中斷被使能。DACBTIEN- DAC緩沖區(qū)讀指針到頂標(biāo)志中斷使能。0: DAC緩沖區(qū)讀指針到頂標(biāo)志中斷禁用。1: DAC緩沖區(qū)讀指針到頂標(biāo)志中斷使能。DACBBIEN- DAC緩沖區(qū)讀指針到底標(biāo)志中斷使能。0: DAC緩沖區(qū)讀指針到底標(biāo)志中斷禁用。1: DAC緩沖區(qū)讀指針到底標(biāo)志中斷使能。2) DAC控制寄存器1(DACx_C1)74|321DReadWriteDMAEN0DACBFWMDACBFMDDACBFENRe 帛國000Q |0000DMAEN DMA使能選擇。0: DMA禁用。1: DMA使能。DMA使能時(shí),D
43、MA請(qǐng)求將由原始中斷生成,且此時(shí)該模塊的中斷不會(huì)發(fā) 生。DACBFWMDAC緩沖區(qū)閾值選擇,用于控制DAC緩沖區(qū)閾值標(biāo)志何時(shí)被置位。 當(dāng)DAC 緩沖區(qū)讀指針達(dá)到該位定義的字?jǐn)?shù),即離上限值的1?4個(gè)字時(shí),DAC緩沖區(qū)閾值將被置位。該位允許用戶配置閾值中斷。00: 1個(gè)字; 01: 2個(gè)字; 10: 3個(gè)字; 11: 4個(gè)宇。DACBFMD一一 DAC緩沖區(qū)工作模式選擇。00:普通模式;01:擺動(dòng)模式;10:單次掃描模式;11:保留。DACBFENDAC緩沖區(qū)使能。0:緩沖區(qū)讀指針禁用。轉(zhuǎn)換的數(shù)據(jù)始終為緩沖區(qū)的第一個(gè)字。1:緩沖區(qū)讀指針使能。轉(zhuǎn)換的數(shù)據(jù)為讀指針指向的字,意味者其可以為緩沖區(qū)的任意3
44、. DAC三種工作模式K60的DAC模塊共有16位的數(shù)據(jù)緩沖區(qū),同時(shí) DAC可以被配置為正常開模式、擺動(dòng)模式、一次掃描模式。在這些模式下,數(shù)據(jù)緩沖區(qū)的讀指針可以設(shè)置為任意一個(gè)0 到 DAC 控制寄存器 DAC_C2 (DAC Control Register)41 DACBFUPM之間的一個(gè)值。1) 正常模式緩沖區(qū)作為一個(gè)循環(huán)緩沖區(qū)工作,當(dāng)觸發(fā)發(fā)生時(shí),讀指針每次加K 當(dāng)讀指針到達(dá)頂部時(shí),在下次觸發(fā)事件時(shí)回到0。2) 擺動(dòng)模式當(dāng)讀指針到達(dá)頂部時(shí)它不返回到0,而是在下次觸發(fā)時(shí)減1 ,直到減到0 為止。3) 一次掃描模式當(dāng)事件發(fā)生時(shí),讀指針每次加1,當(dāng)?shù)竭_(dá)頂部時(shí)停止。復(fù)位后讀指針回0 。7. 2.
45、3 D/A 轉(zhuǎn)換驅(qū)動(dòng)構(gòu)件設(shè)計(jì)由于 DAC 模塊具有初始化、DAC 轉(zhuǎn)換等操作,所以按照構(gòu)件的思想,可將它們封裝成多個(gè)獨(dú)立的功能函數(shù)。DAC構(gòu)件包括hw_dac. h和hw_dac. c文件。DAC構(gòu)件頭文件中主要包括相關(guān)宏定義、DA的功能函數(shù)原型每明等內(nèi)容。DAC構(gòu)件程序文件的內(nèi)容是給出DAC各功能函數(shù)的實(shí)現(xiàn)過程。DAC構(gòu)件給出了表7-2所示DAC主要函數(shù)的聲明和定義。表7-2 DAC主要函數(shù)的聲明和定義1. D/A 轉(zhuǎn)換構(gòu)件頭文件2. D/A 轉(zhuǎn)換構(gòu)件函數(shù)7. 2. 4 D/A 轉(zhuǎn)換驅(qū)動(dòng)構(gòu)件測(cè)試實(shí)例基于 D/A 驅(qū)動(dòng)構(gòu)件的基礎(chǔ)之上,我們?cè)僭O(shè)計(jì)一個(gè)測(cè)試實(shí)例,便于更好地理解D/A 構(gòu)件函數(shù)。我們
46、知道12 位的 D/A 輸出,在設(shè)置緩沖區(qū)為4095 時(shí),輸出電壓最高為參考電壓。設(shè)置為0時(shí),輸出0V電壓。在主函數(shù)中設(shè)計(jì)一個(gè)循環(huán),讓輸出緩沖區(qū)的大小從0加到4000循環(huán),觀察DAC0通道引腳輸出電壓變化值。7.3 K60 的比較器模塊的驅(qū)動(dòng)構(gòu)件設(shè)計(jì)7. 3. 1 CMP 基礎(chǔ)知識(shí)電壓比較器的功能為比較兩個(gè)電壓的大小(用輸出電壓的高或低電平,表示兩個(gè)輸入電壓的大小關(guān)系):當(dāng)“+”輸入端電壓高于輸入端時(shí),電壓比較器輸出為高電平;當(dāng)“+”輸入端電壓低于輸入端時(shí),電壓比較器輸出為低電平。電壓比較器的作用:它可用做模擬電路和數(shù)字電路的接口, 還可以用做波形產(chǎn)生和變換 電路等。利用簡單電壓比較器可將正弦
47、波變?yōu)橥l率的方波或矩形波。比較器可以分為模擬比較器和數(shù)字比較器兩類。1 .模擬比較器將模擬量與一標(biāo)準(zhǔn)值進(jìn)行比較,當(dāng)高于該值時(shí),輸出高(或低)電平;反之,則輸出低 (或高)電平。例如,將一溫度信號(hào)接于運(yùn)放的同相端,反相端接一電壓基準(zhǔn)(代表某一溫 度),當(dāng)溫度高于基準(zhǔn)值時(shí),運(yùn)放輸出高電平,控制加熱器關(guān)閉;反之當(dāng)溫度信號(hào)低于基準(zhǔn) 值時(shí),運(yùn)放輸出低電平,將加熱器接通,這一運(yùn)放就是一個(gè)簡單的比較器。2 .數(shù)字比較器用來比較二組二進(jìn)制數(shù)是否相同,相同時(shí)輸出高(或低)電平;反之,則輸出相反的電 平。最簡單的數(shù)字比較器是一位二進(jìn)制數(shù)比較器,是一個(gè)異或門。7. 3. 2 CMP模塊概要與編程要點(diǎn)1. CMP模
48、塊介紹K60的比較器(Comparator, CMP)模塊提供了一個(gè)電路,可以比較兩路模擬電壓。比較 器電路使用的電壓范圍與芯片使用的電壓范圍相同。比較器比較兩路模擬電壓信號(hào)的輸入, 使用INP和INM 。當(dāng)正向輸入大于反向輸入時(shí),模擬信號(hào)輸出(CMP0)為高,當(dāng)正向輸入小于反向輸入時(shí),CMP0為低。K60中輸出信號(hào)還可以通過 CR1寄存器中的INV置1來確定反向輸出。CMP的框圖如圖7-5所示。VRSE:. DAChNEnable ANMUk Input Pins.?1.XNMUXPENI7:0 |PSEL0Rcliri*川代 IniouiO RcL-clikc hipu- I .Rcfcr
49、rna? Irrnm 2 1 Rcfcitn«c Iroiri 3 _ KcRr-iim lrnpmJ_ ; R詆rawx Tnt)us 5 I f FURinmw Inpui 6 I ;JMUX i 一DAC outputVOSFL|5 0| |圖7-5比較器結(jié)構(gòu)圖1) CMP框圖K60的比較器設(shè)備,共有 3個(gè)比較器模塊。模塊 0有5個(gè)輸入通道,模塊1和模塊2都 有2個(gè)輸入通道。這3個(gè)比較器模塊的輸出通道都只有1個(gè)。K60的比較器模塊有兩個(gè)模擬復(fù)用器(MUX), MUX可以從8路通道中選擇一路模擬信號(hào)彳為輸入信號(hào)。內(nèi)部的 6位DAC 也可以提供一個(gè)信號(hào)。MUX電路可以在整個(gè)電源電壓
50、范圍內(nèi)進(jìn)行操作。6位DAC是一個(gè)64-tap的電阻型階梯網(wǎng)絡(luò),它可以為應(yīng)用程序提供一個(gè)可選的參考電壓。它可以將電源電壓分成 64個(gè)不同的參考電壓值。每6位數(shù)值對(duì)應(yīng)一個(gè)輸出電壓,其值的范圍是Vin/64到Vin。DAC的參考電壓 Vin可以從Vin1和Vin2中選擇。Vin1指向VDD, VDD為3.3V。Vin2指向VREF_OUT, VREF_OUT 輸出一個(gè)精確的 1.2V。INP和INM為正向輸入通道初反向輸又通道。INP和INM比較通道分別從兩個(gè)模擬 MUX選擇一路輸入信號(hào)。若兩個(gè)輸入通道選擇了一樣的輸入,那CMP模塊將會(huì)自動(dòng)關(guān)閉模塊。CMP模塊將從用戶選擇的通道進(jìn)行比較。若使用DAC
51、輸出的比較電壓作為參考電壓,設(shè)置通道號(hào)為7即可。2) CMP中斷CMP可以在比較輸出上升沿或者下降沿產(chǎn)生中斷。當(dāng)SCEIETp和SCECF哪置位時(shí),或者SCRIEFp和SCRCF翅置位時(shí),響應(yīng)中斷請(qǐng)求??梢酝ㄟ^清除SCRIE薦取消上升沿中斷,或者清除 SCRIEFje取消下降沿請(qǐng)求。3) CMP模塊特點(diǎn)CMP包括如下特性:1 .運(yùn)行于整個(gè)電源電壓范圍內(nèi)。2 .輸入范圍從 rail到rail。3 .可編程滯環(huán)控制。4 .可選擇的上升沿中斷,下降沿中斷,或沿跳變中斷。5 .可選擇的比較輸出電平翻轉(zhuǎn)。6 .比較器輸出可以為:采樣模式、窗口模式(適用于某些 PWM零交叉檢測(cè)應(yīng)用)、數(shù) 字濾波模式、旁路
52、濾波、時(shí)鐘可通過外部采樣信號(hào)或總線時(shí)鐘調(diào)整。7 .在輸出外部濾波器用于內(nèi)部功能時(shí),外部滯后可同時(shí)被使用。8 .兩種軟件可選的性能級(jí)別:通過較高的功率換取較短延時(shí);低功率,長延時(shí)。9 .支持DMA傳輸:可選擇一個(gè)比較事件來觸發(fā)一個(gè)DMA傳輸。10 .可以在所有操作模式中使用。在停止卞II式,VLPS模式,LLS模式,和VLLSX莫式中,無法使用窗口和濾波器功能。2. CMP模塊寄存器介紹CMP存儲(chǔ)器映射絕對(duì)地址寄存器名稱位寬權(quán)限復(fù)位值40073000CMP控制寄存器 0 (CMP0_CR0)8讀/寫00h40073001CMP控制寄存器1 (CMP0_CR1)8讀/寫00h40073002CMP
53、濾波周期寄存器 (CMP0_FPR)8讀/寫00h4007-3003CMP狀態(tài)和控制寄存器 (CMP0_SCR)8讀/寫00h4007-3004DAC控制寄存器(CMP0_DACCR)8讀/寫00h4007-3005MUX控制寄存器(CMP0_MUXCR)8讀/寫00h4007-3008CMP控制寄存器 0 (CMP1_CR0)8讀/寫00h4007-3009CMP控制寄存器1 (CMP1_CR1)8讀/寫00h4007_300ACMP濾波周期寄存器 (CMP1_FPR)8讀/寫00h4007-300BCMP狀態(tài)和控制寄存器 (CMP1_SCR)8讀/寫00h4007-300CDAC控制寄存器 (CMP1_DACCR)8讀/寫00h4007-300DMUX控制寄存器 (CMP1_MUXCR)8讀/寫00h4007-3010CMP控制寄存器 0 (CMP2_CR0)8讀/寫00h40073011CMP控制寄存器1 (CMP2_CR1)8讀/寫00h40073012CMP濾波周期寄存器 (CMP2_FPR)8讀/寫00h4007
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 一年級(jí)上冊(cè)語文教案
- 農(nóng)藥殘留土壤生物降解研究
- 高一化學(xué)教案:專題第二單元第四課時(shí)糖類
- 2024屆浙江省溫州十五校聯(lián)合體高考化學(xué)押題試卷含解析
- 2024高中化學(xué)第四章電化學(xué)基礎(chǔ)第一節(jié)原電池達(dá)標(biāo)訓(xùn)練含解析新人教版選修4
- 2024高中地理課時(shí)作業(yè)9資源的跨區(qū)域調(diào)配-以我國西氣東輸為例含解析新人教版必修3
- 2024高中語文開學(xué)第一課學(xué)生觀后感范文700字范文三篇素材
- 2024高中語文第五單元散而不亂氣脈中貫伶官傳序作業(yè)含解析新人教版選修中國古代詩歌散文欣賞
- 2024高中語文精讀課文一第3課2在動(dòng)亂中成長起來作業(yè)含解析新人教版選修中外傳記蚜
- 2024高考化學(xué)一輪復(fù)習(xí)第十章化學(xué)實(shí)驗(yàn)基礎(chǔ)第四講實(shí)驗(yàn)方案的設(shè)計(jì)與評(píng)價(jià)規(guī)范演練含解析新人教版
- 《國有控股上市公司高管薪酬的管控研究》
- 餐飲業(yè)環(huán)境保護(hù)管理方案
- 食品安全分享
- 礦山機(jī)械設(shè)備安全管理制度
- 《創(chuàng)傷失血性休克中國急診專家共識(shí)(2023)》解讀課件
- 小學(xué)六年級(jí)數(shù)學(xué)100道題解分?jǐn)?shù)方程
- 2022年五年級(jí)數(shù)學(xué)興趣小組活動(dòng)記錄
- Q∕GDW 12127-2021 低壓開關(guān)柜技術(shù)規(guī)范
- YY 0838-2021 微波熱凝設(shè)備
- 商品房預(yù)售合同登記備案表
- 版式設(shè)計(jì)發(fā)展歷程-ppt課件
評(píng)論
0/150
提交評(píng)論