版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第9章STC12C5A60S2單片機(jī)的片內(nèi)A/D轉(zhuǎn)換器
9.1A/D轉(zhuǎn)換器的內(nèi)部結(jié)構(gòu)9.2A/D轉(zhuǎn)換器的相關(guān)寄存器9.3A/D轉(zhuǎn)換器的應(yīng)用第9章STC12C5A60S2單片機(jī)的片內(nèi)A/D轉(zhuǎn)換器傳統(tǒng)的單片機(jī)只能處理數(shù)字量信息,但在應(yīng)用中經(jīng)常需要處理一些連續(xù)變化的模擬量,例如溫度、流量、電壓、頻譜等,這就需要先經(jīng)過A/D轉(zhuǎn)換轉(zhuǎn)變成單片機(jī)可以處理的數(shù)字量。STC90C58AD、STC12C5A60S2、STC12C5410AD等單片機(jī)內(nèi)部集成了8路10位A/D轉(zhuǎn)換電路,轉(zhuǎn)換速度可達(dá)到250KHz(25萬(wàn)次/秒),即轉(zhuǎn)換周期為4μs。9.1A/D轉(zhuǎn)換的內(nèi)部結(jié)構(gòu)STC12C5A60S2單片機(jī)的A/D轉(zhuǎn)換的輸入端在P1口(P1.7-P1.0),上電復(fù)位后,P1口為弱上拉,用戶可以通過程序?qū)?路中的任何一路設(shè)置為A/D轉(zhuǎn)換,不需作為A/D使用的口可繼續(xù)作為I/O口使用。從最高位開始的逐位試探法逐次逼近型A/D轉(zhuǎn)換器轉(zhuǎn)換原理:模擬量輸入逐次逼近式:轉(zhuǎn)換前,N位寄存器寫入的數(shù)據(jù)先由最高位置1,DAC輸出值與被測(cè)的模擬值進(jìn)行比較:如果“低于”,該位的1被保留;如果“高于”該位的1被清除。然后下一位再置1,再比較,決定是否保留……直至最低位完成同一過程。寫入的數(shù)據(jù)從最高位到最低位都試探過一遍的最終值就是A/D轉(zhuǎn)換的結(jié)果。9.2A/D轉(zhuǎn)換器的相關(guān)寄存器
與A/D轉(zhuǎn)換器相關(guān)的寄存器有:P1口模擬功能控制寄存器P1ASFA/D轉(zhuǎn)換器控制寄存器ADC_CONTRA/D轉(zhuǎn)換結(jié)果寄存器ADC_RES、ADC_RESL輔助寄存器AUXR1與A/D中斷有關(guān)的寄存器IE、IPH和IP1.P1口模擬功能控制寄存器P1ASF(地址9DH)
當(dāng)P1口中某引腳要作為A/D使用時(shí),要將P1ASF寄存器
中該引腳所對(duì)應(yīng)的位置1,即該引腳設(shè)置為模擬功能;
通過MOVP1ASF,#DATA指令實(shí)現(xiàn)。2.ADC控制寄存器ADC_CONTR(地址BCH)
啟動(dòng)A/D轉(zhuǎn)換之前一定要保證A/D轉(zhuǎn)換器的電源已打開,并且首次開啟內(nèi)部A/D轉(zhuǎn)換電源時(shí),需要適當(dāng)?shù)难訒r(shí),等內(nèi)部電源穩(wěn)定后,再啟動(dòng)A/D轉(zhuǎn)換。A/D轉(zhuǎn)換結(jié)束后關(guān)閉A/D轉(zhuǎn)換器的電源可降低功耗。ADC_POWER:A/D轉(zhuǎn)換器的電源控制位。當(dāng)該位為1時(shí),開啟A/D轉(zhuǎn)換器電源;當(dāng)該位為0時(shí),關(guān)閉A/D轉(zhuǎn)換器電源。SPEED1、SPEED0:轉(zhuǎn)換速度控制位。對(duì)SPEED1、SPEED0兩位取不同的值時(shí),A/D轉(zhuǎn)換所需的時(shí)間不同,具體情況如表9-1所示SPEED1SPEED0A/D轉(zhuǎn)換所需時(shí)間1190個(gè)時(shí)鐘周期轉(zhuǎn)換一次10180個(gè)時(shí)鐘周期轉(zhuǎn)換一次01360個(gè)時(shí)鐘周期轉(zhuǎn)換一次00540個(gè)時(shí)鐘周期轉(zhuǎn)換一次ADC_FLAG:A/D轉(zhuǎn)換器轉(zhuǎn)換結(jié)束標(biāo)志位,當(dāng)A/D轉(zhuǎn)換完成后,硬件自動(dòng)將ADC_FLAG位置1,但要通過程序?qū)⑵淝?。ADC_START:
轉(zhuǎn)換啟動(dòng)控制位。將該位設(shè)置為1時(shí),啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換結(jié)束后,該位自動(dòng)清0。下次需要啟動(dòng)A/D轉(zhuǎn)換時(shí),必須再次將該位置1。CHS2、CHS1、CHS0:模擬輸入通道選擇。當(dāng)CHS2、CHS1、CHS0三位取不同的值時(shí),選擇P1口不同的引腳作為模擬輸入通道,具體情況如表9-2所示。CHS2CHS1CHS0模擬輸入通道選擇000P1.0作為A/D輸入001P1.1作為A/D輸入010P1.2作為A/D輸入011P1.3作為A/D輸入100P1.4作為A/D輸入101P1.5作為A/D輸入110P1.6作為A/D輸入111P1.7作為A/D輸入3.A/D轉(zhuǎn)換結(jié)果寄存器ADC_RES、ADC_RESL
(地址0BDH、0BEH)
用于保存A/D轉(zhuǎn)換結(jié)果。當(dāng)輔助寄存器AUXR1(參見圖2-8)中ADRJ(A/D轉(zhuǎn)換結(jié)果寄存器的數(shù)據(jù)格式調(diào)整控制)位為0時(shí),10位A/D轉(zhuǎn)換結(jié)果的高8位存放在ADC_RES中,低2位存放在ADC_RESL的低2位中。ADRJ位為1時(shí),10位A/D轉(zhuǎn)換結(jié)果的高2位存放在ADC_RES寄存器的低2位中,低8位存放在ADC_RESL寄存器中。10位A/D轉(zhuǎn)換的結(jié)果與輸入電壓的關(guān)系為:(ADC_RES[1:0],ADC_RESL[7:0])=2109.3A/D轉(zhuǎn)換器的應(yīng)用
實(shí)現(xiàn)A/D轉(zhuǎn)換的步驟如下:(1)設(shè)置P1ASF寄存器,確定P1口的相應(yīng)引腳作為模擬輸入通道,設(shè)置輔助寄存器AUXR1中的ADRJ位確定轉(zhuǎn)換結(jié)果保存格式;(2)設(shè)置A/D轉(zhuǎn)換控制寄存器ADC_CONTR,打開A/D轉(zhuǎn)換電源,確定轉(zhuǎn)換速度和轉(zhuǎn)換通道;(3)啟動(dòng)A/D轉(zhuǎn)換。上電后首次打開內(nèi)部AD轉(zhuǎn)換模擬電源時(shí),需適當(dāng)延時(shí),待內(nèi)部模擬電源穩(wěn)定后,再啟動(dòng)A/D轉(zhuǎn)換。(4)A/D轉(zhuǎn)換啟動(dòng)后經(jīng)4個(gè)時(shí)鐘周期延時(shí)可以通過軟件查詢ADC_CONTR寄存器中的ADC_FLAG位是否為1,當(dāng)ADC_FLAG為1時(shí)表明A/D轉(zhuǎn)換結(jié)束。AD轉(zhuǎn)換結(jié)束后需將ADC_FLAG位清0?!纠?-1】設(shè)單片機(jī)的系統(tǒng)時(shí)鐘頻率為12MHz,利用STC12C5A60S2單片機(jī)中的A/D轉(zhuǎn)換模塊,將測(cè)溫電阻PT1000的阻值隨溫度變化所形成的電壓信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),單片機(jī)讀取后存放于30H、31H單元,如圖9-5所示。
【例9-1】設(shè)單片機(jī)的系統(tǒng)時(shí)鐘頻率為12MHz,利用STC12C5A60S2單片機(jī)中的A/D轉(zhuǎn)換模塊,將測(cè)溫電阻PT1000的阻值隨溫度變化所形成的電壓信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),單片機(jī)讀取后存放于30H、31H單元,如圖9-5所示。
分析:首先將PT1000阻值變化所反應(yīng)出的電壓信號(hào)經(jīng)儀表放大器AD623放大成0-5V的電壓信號(hào)。經(jīng)單片機(jī)內(nèi)部的A/D轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字量,為了提高轉(zhuǎn)換的精確度,盡量減小電源噪聲的影響,可連續(xù)采集64次,并對(duì)A/D轉(zhuǎn)換的結(jié)果求和,相當(dāng)于實(shí)現(xiàn)16位的A/D轉(zhuǎn)換。匯編語(yǔ)言子程序AD_RESULT1EQU30H;A/D轉(zhuǎn)換結(jié)果的高8位AD_RESULT2EQU31H;A/D轉(zhuǎn)換結(jié)果的低8位P1ASFEQU9DHAUXR1EQUA2HADC_CONTREQUBCHAD_CONVERT: MOVP1ASF,#01H;選擇P1.0為A/D轉(zhuǎn)換模擬量的輸入
ORLAUXR1,#00000100B;選擇ADRJ位為1 MOVA,#0E0HMOVADC_CONTR,A;開啟A/D轉(zhuǎn)換的電源 MOV AD_RESULT1,#00H MOV AD_RESULT2,#00H
LCALLDELAY_10μs;等待A/D轉(zhuǎn)換電源穩(wěn)定 MOV A,#11101000B MOV ADC_CONTR,A
;啟動(dòng)A/D轉(zhuǎn)換 MOV R6,#64 ;R6作為計(jì)數(shù)器AD_CONVERT1:
LCALLAD_CONV;調(diào)用A/D轉(zhuǎn)換的子程序 DJNZR6,AD_CONVERT1;64次轉(zhuǎn)換未結(jié)束,繼續(xù)轉(zhuǎn)換 MOVA,#0 MOVADC_CONTR,A;清ADC_FLAG位,并停止AD轉(zhuǎn)換 RETAD_CONV: MOV A,ADC_CONTR JNB ACC.4,AD_CONV;等待A/D轉(zhuǎn)換結(jié)束 MOV A,#11101000B MOV ADC_CONTR,A ;再次啟動(dòng)AD轉(zhuǎn)換
MOV A,ADC_RESL;讀轉(zhuǎn)換結(jié)果的低8位 ADD A,AD_RESULT2;與低8位結(jié)果相加 MOVAD_RESULT2,A;將得到的結(jié)果存放至31H單元MOVA,ADC_RES;讀轉(zhuǎn)換結(jié)果的高兩位ANLA,#03H;屏蔽ADC_RES寄存器的高6位
ADDCA,AD_RESULT1;與高8位結(jié)果相加 MOVAD_RESULT1,A;將得到的結(jié)果存放至30H單元 RETDELAY_10μs:
MOV
R5,#1EH
DJNZ
R5,$
RETC51程序:#include<STC12C5A.h>#include<intrins.h>//聲明本征函數(shù)庫(kù)unsignedinttemp,result;unsignedcharnum=0x40;//設(shè)置A/D轉(zhuǎn)換次數(shù)voidAD_CONV();//A/D轉(zhuǎn)換函數(shù)的聲明voidDELAY_10μs();//延時(shí)10μs函數(shù)的聲明voidmain(){ P1ASF=0x01;選擇P1.0為A/D轉(zhuǎn)換模擬量的輸入
AUXR1=0x04;選擇ADRJ位為1 ADC_CONTR=0xE0;//開啟動(dòng)A/D轉(zhuǎn)換的電源 DELAY_10μs();//延時(shí)10μs ADC_CONTR=0xE8;//啟動(dòng)A/D轉(zhuǎn)換
while(num!=0) { AD_CONV();//調(diào)用A/D轉(zhuǎn)換函數(shù) num--;//計(jì)數(shù)值減1 }
while(1);}
voidAD_CONV(){
do{ temp=ADC_CONTR;//讀A/D轉(zhuǎn)換的控制寄存器的內(nèi)容 }while((temp&0x10)!=0x10);//等待A/D轉(zhuǎn)換結(jié)束 ADC_CONTR=0xE8;//再次啟動(dòng)A/D轉(zhuǎn)換 temp=ADC_RESL;//讀轉(zhuǎn)換結(jié)果的低8
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 低血糖暈倒護(hù)理查房
- 《 工傷認(rèn)定范圍完善研究》范文
- 《 鋼管冷拔模具磨損失效分析及再制造研究》范文
- 切削加工中的刀具夾持技術(shù)研究考核試卷
- 非木竹材林產(chǎn)品采集與森林資源資產(chǎn)評(píng)估考核試卷
- 環(huán)境保護(hù)基礎(chǔ)知識(shí)考核試卷
- 工藝美術(shù)品制作流程標(biāo)準(zhǔn)化與質(zhì)量控制考核試卷
- 洗滌設(shè)備自動(dòng)化生產(chǎn)線考核試卷
- 南通桃塢服飾城有限公司招聘筆試題庫(kù)2024
- 湖泊綜合治理與濕地保護(hù)考核試卷
- 社區(qū)網(wǎng)格員貴州省2024年上半年筆試真題選擇題+判斷題+簡(jiǎn)答題A卷
- 2024-2030年中國(guó)歌劇行業(yè)市場(chǎng)發(fā)展分析及發(fā)展趨勢(shì)與投資風(fēng)險(xiǎn)預(yù)測(cè)研究報(bào)告
- 影音器材租賃合同三篇
- 九年級(jí)數(shù)學(xué)人教版(上冊(cè))22.1.2二次函數(shù)y=ax2的圖象及性質(zhì)課件
- 2023-2024學(xué)年遼寧省撫順市教育集團(tuán)八年級(jí)(上)月考英語(yǔ)試卷(10月份)
- 機(jī)械加工居間合同范本
- DL-T-1798-2018換流變壓器交接及預(yù)防性試驗(yàn)規(guī)程
- 初中語(yǔ)文教師教育理念(3篇模板)
- 抖音火花合同電子版獲取教程
- DZ∕T 0323-2018 硅灰石、透輝石、透閃石、長(zhǎng)石礦產(chǎn)地質(zhì)勘查規(guī)范(附修改單)(正式版)
- 體育賽事醫(yī)療保障方案
評(píng)論
0/150
提交評(píng)論