丁香婷婷网,黄色av网站裸体无码www,亚洲午夜无码精品一级毛片,国产一区二区免费播放

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>提高PIC16C711單片機(jī)片內(nèi)A/D分辨率的方法

提高PIC16C711單片機(jī)片內(nèi)A/D分辨率的方法

時(shí)間:2023-02-20 23:29:19 電子通信論文 我要投稿
  • 相關(guān)推薦

提高PIC16C711單片機(jī)片內(nèi)A/D分辨率的方法

摘要:介紹一種將PIC16C711片內(nèi)8位A/D提高到11位的方法。此方法電路簡單,速度快,可提高單片機(jī)應(yīng)用系統(tǒng)的性能價(jià)格比,具有一定的推廣價(jià)值。
  關(guān)鍵詞:PIC16C711單片機(jī)A/D分辨率
  
  目前,單片機(jī)中嵌入的A/D一般為8位到10位,難以滿足信號(hào)處理應(yīng)用中高分辨率的要求;而外接高分辨率的A/D將使成本明顯提高,因?yàn)锳/D轉(zhuǎn)換器的價(jià)格將隨其位數(shù)的增加而成倍增加。本文介紹一種提高PIC16C711單片機(jī)片內(nèi)A/D分辨率的方法,將PIC16C711片內(nèi)的8位A/D提高到11位。這種方法在PIC系列的其他單片機(jī)也適用。
  
  美國Microchip公司推出的8位單片機(jī)PIC16C711是一種性能價(jià)格比很高的單片機(jī)。它價(jià)格低、封裝小、采用CMOS工藝,具有OTP型,開發(fā)起來很方便。它內(nèi)含4路8位高速A/D,將它擴(kuò)展到11位后,可以大大提高單片機(jī)應(yīng)用系統(tǒng)的性能價(jià)格比。
  
  一、硬件電路
  
  實(shí)現(xiàn)擴(kuò)展的原理圖如圖1所示。8個(gè)等值的精密電阻R將0~5V基準(zhǔn)電壓分割成8檔,每檔范圍為0.625V。8個(gè)抽頭分別接CD4051八選一模擬開關(guān)的8個(gè)輸入端,通道選擇控制端C,B,A分別由PIC16C711單片機(jī)的RB2,RB1,RB0控制。IC2和IC3為高輸入阻抗運(yùn)放,IC2構(gòu)成跟隨器,IC3構(gòu)成精密差分放大器。
  
  二、工作原理
  
  實(shí)現(xiàn)11位A/D轉(zhuǎn)換由PIC16C711做2次8位A/D轉(zhuǎn)換完成。PIC16C711有4個(gè)模擬量輸入通道RA0~RA3,這些模擬量輸入通道復(fù)用1個(gè)采樣保持器進(jìn)入到A/D轉(zhuǎn)換器。參考電壓Vref可以來自外部也可以來自內(nèi)部VDD,A/D轉(zhuǎn)換器屬于逐次逼近式,轉(zhuǎn)換結(jié)果(8位)存入ADRES寄存器。在A/D轉(zhuǎn)換前必然選擇適當(dāng)?shù)耐ǖ,設(shè)置足夠的采樣時(shí)間。用戶可以通過設(shè)置A/D控制寄存器ADCON0和ADCON1來控制其轉(zhuǎn)換過程,同時(shí)A/D轉(zhuǎn)換的狀態(tài)也會(huì)在ADCON0中體現(xiàn)出來。
  
  先將待轉(zhuǎn)換的電壓Vi送到PIC16C711的RA0通道做一次A/D轉(zhuǎn)換。根據(jù)轉(zhuǎn)換所得的數(shù)字量由軟件算出Vi在8檔中位置,用Vi減去Vi所在檔的起始電壓。將所得差值放大8位,使之變?yōu)?~5V電壓信號(hào),再送給PIC16C711的RA1通道做1次A/D轉(zhuǎn)換,所得數(shù)字量是11位AD轉(zhuǎn)換的低8位,而檔位CBA就是高3位,從而實(shí)現(xiàn)11位A/D轉(zhuǎn)換。
  
  舉例說明如下:假設(shè)輸入電壓Vi為3V,程序控制PIC16C711的RA0通道先進(jìn)行第1次A/D轉(zhuǎn)換,所得結(jié)果是153,即3/5×255=153,對應(yīng)8位數(shù)字量為10011001。將低5位屏蔽,得10000000,循環(huán)右移5次,得00000100,此時(shí)低3位對應(yīng)的就是Vi=3V電壓時(shí)的檔位,即第4檔,CBA=100,程序?qū)⒃摍n位由RB2,RB1,RB0輸出,作為8選一模擬開關(guān)的通道選擇,使CD4051輸出2.5V,即5/8×4=2.5V。該電壓經(jīng)IC2運(yùn)放跟隨,再經(jīng)IC3進(jìn)行差分放大。設(shè)計(jì)時(shí)調(diào)整R11,R12,R13和R14的阻值,使放大倍數(shù)為8位,則得放大器IC3輸出Vo=8(Vi-2.5)=8(3-2.5)=4.0V。選擇RA1通道進(jìn)行第2次A/D轉(zhuǎn)換,結(jié)果為11001100,這就是11位A/D轉(zhuǎn)換結(jié)果的低8位。檔位100為11位A/D轉(zhuǎn)換的高3位,合起來就是11位A/D轉(zhuǎn)換的結(jié)果10011001100。
  
  三、程序
  
  以下是使用PIC16C711指令系統(tǒng)完成11位A/D轉(zhuǎn)換的程序段。
  
  BSFSTATUS,RP0;選頁面1
  
  MOVLW00000010B;RA0、RA1為模擬通道
  
  MOVWFADCON1;內(nèi)部參考電壓
  
  BCFSTATUS,RP0;選頁面0
  
  MOVLW11000001B;選RA0通道和內(nèi)部時(shí)鐘
  
  MOVWFADCON0
  
  MOVLW.125;延時(shí)125μs,等待輸入
  
  CALLWAIT;穩(wěn)定
  
  BSFADCON0,GO;啟動(dòng)A/D
  
  LOOPBTFSCADCON0,GO;判斷A/D完成否
  
  GOTOLOOP
  
  MOVFADRES,W;取轉(zhuǎn)換結(jié)果
  
  ANDLW0E0;屏蔽低5位
  
  MOVWFD1;存入D1
  
  BCFSTATUS,C
  
  
  
  
  RRFD1,1;右移5次
  
  RRFD1,1
  
  RRFD1,1
  
  RRFD1,1
  
  RRFD1,1
  
  MOVFD1,W
  
  MOVWFPORTB;檔位輸出
  
  MOVLW11001001B;選RA1通道
  
  MOVWFADCON0
  
  MOVLW.60;延時(shí)60μs
  
  CALLWAIT
  
  BSFADCON0,GO;啟動(dòng)A/D
  
  LOOP1BTFSCADCON0,GO;判斷A/D完成否
  
  GOTOLOOP1
  
  MOVFADRES,W;A/D轉(zhuǎn)換結(jié)果存D0
  
  MOVWFD0
  
  WAITMOVWFTEMP;延時(shí)子程序
  
  NEXTDECFSZTEMP,1
  
  GOTONEXT
  
  RETURN
  
  用這種方法實(shí)現(xiàn)的11位A/D轉(zhuǎn)換速度快PIC16C711基本上都是單周期指令,在4MHz振蕩頻率下指令周期1μs,進(jìn)行1次A/D轉(zhuǎn)換最短時(shí)間20μs;2次A/D轉(zhuǎn)換40μs;2個(gè)運(yùn)放變換時(shí)間20μs×2=40μs。總的轉(zhuǎn)換時(shí)間為百μs級。
  
  本文介紹的方法電路簡單,速度快,調(diào)試方便,已用于我們研制的單片機(jī)電阻爐溫自動(dòng)控制系統(tǒng)中,取得了預(yù)期的效果。對于其他帶8位、10位A/D的單片機(jī)稍加改動(dòng)均可使用,具有推廣價(jià)值。
  
  
  
  

【提高PIC16C711單片機(jī)片內(nèi)A/D分辨率的方法】相關(guān)文章:

TMS320F240片內(nèi)PWM實(shí)現(xiàn)D/A擴(kuò)展功能08-06

提高寫作技巧的方法06-27

優(yōu)化閱讀方法提高閱讀能力08-12

淺談提高生物學(xué)習(xí)的方法08-25

提高你的寫作技巧的方法07-22

優(yōu)化閱讀方法,提高閱讀能力08-17

提高孩子寫作技巧的方法07-09

單片機(jī)破解的常用方法及應(yīng)對策略08-06

單片機(jī)通信性能分析和評價(jià)方法08-06