36-比較器B-芯片資料課件_第1頁(yè)
36-比較器B-芯片資料課件_第2頁(yè)
36-比較器B-芯片資料課件_第3頁(yè)
36-比較器B-芯片資料課件_第4頁(yè)
36-比較器B-芯片資料課件_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

3.6比較器B

(Comparator_B)本節(jié)內(nèi)容Comp_B概述Comp_B結(jié)構(gòu)Comp_B功能使用模擬輸入端模擬輸入開(kāi)關(guān)比較器參考電壓發(fā)生器輸出電路Comp_B中斷Comp_B庫(kù)函數(shù)Comp_B應(yīng)用舉例比較器B——概述(1/1)比較器B是為精確的比較測(cè)量而設(shè)計(jì)的,如電池電壓監(jiān)測(cè)、產(chǎn)生外部模擬信號(hào)、測(cè)量電流、電容和電阻,結(jié)合其他模塊還可實(shí)現(xiàn)精確的A/D模數(shù)轉(zhuǎn)換功能。比較器B是工業(yè)儀表、手持式儀表等產(chǎn)品設(shè)計(jì)中的理想選擇。5系列之前的MSP430單片機(jī)僅有比較器A,5/6系列430單片機(jī)升級(jí)為比較器B。Comp_B是一個(gè)模擬電壓比較器,涵蓋了多達(dá)16通道的通用比較器功能。比較器B——概述(2/2)Comp_B模塊主要特性有:正向反向終端輸入多路選擇器通過(guò)軟件選擇比較器輸出的RC濾波可輸出到TA的捕獲輸入軟件控制端口輸入緩沖具有中斷能力可選的參考電壓發(fā)生器、電壓磁滯發(fā)生器參考電壓輸入可選擇共用參考電壓超低功耗的比較模式低功耗模式支持中斷驅(qū)動(dòng)測(cè)量系統(tǒng)比較器B——結(jié)構(gòu)(1/1)比較器B的結(jié)構(gòu),如下圖所示:比較器B包括:兩個(gè)模擬量輸入端CB0和CB1一個(gè)模擬比較器參考電壓發(fā)生器和輸出濾波器還有一些控制單元比較器B——功能使用(1/5)比較器B的主要功能:指出兩個(gè)輸入電壓CB0和CB1的大小關(guān)系,然后設(shè)置輸出信號(hào)CBOUT的值。如果CB0>CB1則:CBOUT=1,否則CBOUT=0?!裟M輸入端

參與比較的兩個(gè)模擬信號(hào)通過(guò)正、負(fù)兩個(gè)輸入電壓端:CB0和CB1進(jìn)入比較器B,輸入電流極小。這兩個(gè)輸入端可由用戶軟件設(shè)置,最終能夠選擇6種信號(hào)(CB0、CB1、0.5VCC、0.25VCC、三極管閥值電壓和外部參考源),而且能夠進(jìn)行多種組合比較。硬件提供的比較組合如下:兩個(gè)外部輸入比較每個(gè)外部輸入與0.5VCC或0.25VCC比較每個(gè)外部輸入與內(nèi)部基準(zhǔn)電壓比較比較器B——功能使用(2/5)◆模擬輸入開(kāi)關(guān)通過(guò)CBIPSELx及CBIMSELx位,用于選擇兩個(gè)比較器輸入終端與相應(yīng)端口管腳之間連接還是斷開(kāi)。比較器的輸入終端可以分別進(jìn)行控制。通過(guò)配置CBIPSELx/CBIMSELx位可以實(shí)現(xiàn):▲將外部信號(hào)連接到比較器的正端或負(fù)端▲內(nèi)部參考電壓到相應(yīng)輸出端口管腳選擇一個(gè)路徑 ▲將外部電流源應(yīng)用到比較器的正端或負(fù)端 ▲內(nèi)部多路選擇器的兩個(gè)端口到外部的映射

CBEX位控制輸入多路選擇器,改變比較器正端或負(fù)端輸入信號(hào)的順序。另外,當(dāng)比較器終端順序發(fā)生改變時(shí),比較器輸出信號(hào)也發(fā)生反轉(zhuǎn),這使用戶可以檢測(cè)或補(bǔ)償比較器輸入端的偏置電壓。比較器B——功能使用(3/5)◆比較器如比較器B的結(jié)構(gòu)圖所示,比較器位于模擬信號(hào)輸入和濾波輸出之間的部分。比較器對(duì)正和負(fù)輸入終端的模擬信號(hào)進(jìn)行比較。如果正端信號(hào)大于負(fù)端,則比較器輸出CBOUT為高。其中與門(mén)負(fù)責(zé)將比較輸出信號(hào)進(jìn)行整形。可以通過(guò)CBON位來(lái)關(guān)閉或打開(kāi)比較器??刂莆籆BEX選擇正向或反向輸出。比較器B——功能使用(4/5)◆參考電壓發(fā)生器COMP_B參考電壓的框圖,如下圖所示:參考電壓發(fā)生器用于產(chǎn)生用于比較器任意輸入端的VREF。如果外部信號(hào)用于兩個(gè)比較器輸入端,應(yīng)當(dāng)關(guān)閉內(nèi)部參考電壓發(fā)生器,從而降低電流消耗。比較器B——功能使用(5/5)◆輸出電路最終輸出信號(hào)的上升沿或下降沿可以設(shè)置為具有中斷能力。如果不使用中斷,可將輸出信號(hào)送給內(nèi)部其他模塊,作為其他模塊的一個(gè)輸入信號(hào);還可以由外部引腳引出?!袅硗?,比較器B可以適合于低功耗應(yīng)用,該模塊可通過(guò)軟件打開(kāi)/關(guān)閉,不用時(shí)關(guān)閉以便電流消耗最小。比較器B——中斷(1/1)中斷標(biāo)志CBIFG,在比較器輸出的上升沿或下降沿時(shí)都會(huì)置位,上升沿或下降沿由CBIES位選擇。如果CBIE及GIE位都置位,CBIFG標(biāo)志將產(chǎn)生中斷請(qǐng)求。比較器B——庫(kù)函數(shù)(1/3)◆比較器API分成3組函數(shù):處理初始化和輸出,處理中斷,處理輔助功能。◆處理初始化和輸出的相關(guān)API:COMPB_init()COMPB_setReferenceVoltage()COMPB_enable()COMPB_disable()COMPB_outputValue()比較器B——庫(kù)函數(shù)(2/3)◆

處理中斷的相關(guān)APICOMPB_enableInterrupt()COMPB_disableInterrupt()COMPB_clearInterrupt()COMPB_getInterruptStatus()COMPB_interruptSetEdgeDirection()COMPB_interruptToggleEdgeDirection()比較器B——庫(kù)函數(shù)(3/3)◆

處理輔助功能的相關(guān)APICOMPB_enableShortOfInputs()COMPB_disableShortOfInputs()COMPB_disableInputBuffer()COMPB_enableInputBuffer()COMPB_IOSwap()比較器B——應(yīng)用舉例(1/9)◆例1、使用CompB,比較輸入電壓和內(nèi)部參考電壓大小,如果大于內(nèi)部參考電壓2.0V,則CBOUT輸出高電平,否則輸出低電平,用LED亮滅來(lái)標(biāo)識(shí)比較結(jié)果。相關(guān)程序如下:#include<msp430f6638.h>voidmain(void){WDTCTL=WDTPW+WDTHOLD;//關(guān)閉看門(mén)狗定時(shí)器

P3DIR|=BIT0;//P3.0輸出方向

P3SEL|=BIT0;//選擇P3.0/CBOUT引腳為外設(shè)功能

//配置比較器B

CBCTL0|=CBIPEN+CBIPSEL_0;//使能V+,輸入通道CB0CBCTL1|=CBPWRMD_1;//正常電源模式

CBCTL2|=CBRSEL;//VREF應(yīng)用到負(fù)端比較器B——應(yīng)用舉例(2/9)//R-ladderoff;bandgaprefvoltage(1.2V)

CBCTL2|=CBRS_3+CBREFL_2; //suppliedrefamplifiertogetVcref=2.0V(CBREFL_2)

CBCTL3|=BIT0;//關(guān)閉輸入緩沖P6.0/CB0

CBCTL1|=CBON;//打開(kāi)CompB

__delay_cycles(75);//延時(shí),用于comp判斷電壓大小

__bis_SR_register(LPM4_bits);//進(jìn)入LPM4__no_operation();//空操作,用于調(diào)試}比較器B——應(yīng)用舉例(3/9)◆用庫(kù)函數(shù)調(diào)用,實(shí)現(xiàn)例1相同功能相關(guān)程序如下:voidmain(void){//關(guān)閉看門(mén)狗定時(shí)器

WDT_hold(__MSP430_BASEADDRESS_WDT_A__);

//選擇P3.0/CBOUT引腳為外設(shè)功能 GPIO_setAsPeripheralModuleFunctionOutputPin(__MSP430_BASEADDRESS_PORT3_R__,GPIO_PORT_P3,GPIO_PIN0);//初始化比較器B//CB0連接到正端,//VREF應(yīng)用到負(fù)端,//正常電源模式COMPB_init(__MSP430_BASEADDRESS_COMPB__,COMPB_INPUT0,COMPB_VREF,COMPB_POWERMODE_NORMALMODE,COMPB_FILTEROUTPUT_DLYLVL1,COMPB_NORMALOUTPUTPOLARITY);

比較器B——應(yīng)用舉例(4/9)//VREF應(yīng)用到負(fù)端,選擇參考電壓為2V//參考電壓為2.0V,//上線2.0*(32/32)=2.0V,//下線2.0*(32/32)=2.0VCOMPB_setReferenceVoltage(__MSP430_BASEADDRESS_COMPB__,COMPB_VREFBASE2_0V,32,32);

//使能COMP模塊

COMPB_enable(__MSP430_BASEADDRESS_COMPB__);//延時(shí),用于comp判斷電壓大小__delay_cycles(75);比較器B——應(yīng)用舉例(5/9)◆例2:利用COMPB中斷處理能力:Vcompare與內(nèi)部參考電壓1.5V比較,如果超過(guò)1.5V,就置位CBIFG,進(jìn)入中斷處理函數(shù)。相關(guān)程序如下:#include<msp430f6638.h>voidmain(void){WDTCTL=WDTPW+WDTHOLD;//關(guān)閉看門(mén)狗定時(shí)器

P1DIR|=BIT0;//P1.0/LED設(shè)為輸出方向

//打開(kāi)CompB

CBCTL0|=CBIPEN+CBIPSEL_0;//使能V+,輸入CB0通道

CBCTL1|=CBPWRMD_1;//正常電源模式

CBCTL2|=CBRSEL;//VREF應(yīng)用到負(fù)端

//R-ladderoff;bandgaprefvoltage(1.2V)

CBCTL2|=CBRS_3+CBREFL_1;//設(shè)置參考電壓Vcref=1.5V(CBREFL_2)

CBCTL3|=BIT0;//關(guān)閉輸入緩存P6.0/CB0__delay_cycles(75);//延時(shí),用于comp判斷電壓大小

比較器B——應(yīng)用舉例(6/9)

CBINT&=~(CBIFG+CBIIFG);//清除中斷標(biāo)志

CBINT|=CBIE;//在CBIFG(CBIES=0)上升沿使能CompB中斷

CBCTL1|=CBON;//使能

比較器B

__bis_SR_register(LPM4_bits+GIE);//打開(kāi)全局中斷,進(jìn)入LMP4__no_operation();//空操作,用于調(diào)試

}//Comp_BISR–

翻轉(zhuǎn)LED#pragmavector=COMP_B_VECTOR__interruptvoidComp_B_ISR(void){CBCTL1^=CBIES;//翻轉(zhuǎn)中斷跳變沿

CBINT&=~CBIFG;//清除中斷標(biāo)志

P1OUT^=0x01;//翻轉(zhuǎn)P1.0}比較器B——應(yīng)用舉例(7/9)◆用庫(kù)函數(shù)調(diào)用,實(shí)現(xiàn)例2相同功能相關(guān)程序如下:voidmain(void){

//關(guān)閉看門(mén)狗定時(shí)器

WDT_hold(__MSP430_BASEADDRESS_WDT_A__);

//P1.0/LED設(shè)為輸出方向

GPIO_setAsOutputPin(__MSP430_BASEADDRESS_PORT1_R__,GPIO_PORT_P1,GPIO_PIN0);//初始化比較器B模塊//VREF應(yīng)用到負(fù)端//普通電源模式COMPB_init(__MSP430_BASEADDRESS_COMPB__,COMPB_INPUT0,COMPB_VREF,COMPB_POWERMODE_NORMALMODE,COMPB_FILTEROUTPUT_DLYLVL1,COMPB_NORMALOUTPUTPOLARITY);

比較器B——應(yīng)用舉例(8/9)//VREF應(yīng)用到負(fù)端

//參考電壓為1.5V//上限1.5*(32/32)=1.5V,//下限1.5*(32/32)=1.5VCOMPB_setReferenceVoltage(__MSP430_BASEADDRESS_COMPB__,COMPB_VREFBASE1_5V,32,32);//使能中斷

COMPB_enableInterrupt(__MSP430_BASEADDRESS_COMPB__,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論