AD轉(zhuǎn)換與DA轉(zhuǎn)換實(shí)訓(xùn)_第1頁(yè)
AD轉(zhuǎn)換與DA轉(zhuǎn)換實(shí)訓(xùn)_第2頁(yè)
AD轉(zhuǎn)換與DA轉(zhuǎn)換實(shí)訓(xùn)_第3頁(yè)
AD轉(zhuǎn)換與DA轉(zhuǎn)換實(shí)訓(xùn)_第4頁(yè)
AD轉(zhuǎn)換與DA轉(zhuǎn)換實(shí)訓(xùn)_第5頁(yè)
已閱讀5頁(yè),還剩115頁(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)介

會(huì)計(jì)學(xué)1AD轉(zhuǎn)換與DA轉(zhuǎn)換實(shí)訓(xùn)11.1

8位A/D轉(zhuǎn)換器ADC0809的應(yīng)用實(shí)訓(xùn)目的掌握A/D轉(zhuǎn)換器ADC0809的原理及基本性能指標(biāo)掌握ADC0809與單片機(jī)的接口方法及編程方法功能設(shè)計(jì)設(shè)計(jì)由單片機(jī)與A/D轉(zhuǎn)換器

ADC0809構(gòu)成的第數(shù)1頁(yè)/共據(jù)120頁(yè)采集系統(tǒng),使其依次采集8路模擬量,經(jīng)0809進(jìn)第3頁(yè)/共120頁(yè)A/D轉(zhuǎn)換器形式很多,按A/D轉(zhuǎn)換器輸入模擬量的極性分類,可分為單極型和雙極型兩種;按A/D轉(zhuǎn)換器的數(shù)字量輸出方式分類,可分為并行方式、串行方式及串/并行方式;按A/D轉(zhuǎn)換器的轉(zhuǎn)換原理分類,可分為積分型、逐次逼近型和并行轉(zhuǎn)換型。第4頁(yè)/共120頁(yè)(1)關(guān)于ADC0809ADC0809是一個(gè)典型的逐次逼近型8位A/D轉(zhuǎn)換

器。它由8路模擬開關(guān)、8位A/D轉(zhuǎn)換器、三態(tài)輸出鎖存器及地址鎖存譯碼器等組成。它允許8路模擬量分時(shí)輸入,轉(zhuǎn)化后的數(shù)字量輸出是三態(tài)的(總線型輸出),可以直接與單片機(jī)數(shù)據(jù)總線相連接。

ADC0809采用+5V電源供電,外接

工作時(shí)鐘。當(dāng)?shù)?典頁(yè)/共1型20頁(yè)工作時(shí)鐘為

500kHz時(shí),轉(zhuǎn)換時(shí)間約為128μs。(2)

ADC0809的引腳說(shuō)明

ADC0809引腳如圖11-2所示。第6頁(yè)/共120頁(yè)第7頁(yè)/共120頁(yè)IN0~I(xiàn)N7D0~D78路模擬通道輸入端。8位數(shù)字量輸出端。VREF(+)、VREF(-)

正、負(fù)參考電壓輸入端。CLOCK

時(shí)鐘輸入端,時(shí)鐘最高允許頻率為640kHz。START

轉(zhuǎn)換啟動(dòng)信號(hào),高電平有效。道選擇端。通道與地址對(duì)應(yīng)關(guān)系見第8頁(yè)/共120頁(yè)ADDA、ADDB、ADDC模擬通ALE地址鎖存信號(hào)。高電平時(shí),

將三位地址信號(hào)送入地址鎖存器,經(jīng)譯碼選擇相應(yīng)的模擬輸入通道。使用時(shí)該信號(hào)可以和START信號(hào)連在一起,以便同時(shí)鎖存通道地址和啟動(dòng)A/D轉(zhuǎn)換。EOC

A/D轉(zhuǎn)換結(jié)束信號(hào),此信號(hào)常被用來(lái)作為中斷請(qǐng)求信號(hào)。OE

允許輸出信號(hào)。當(dāng)OE端為電平上升沿時(shí)第9,頁(yè)/共1輸20頁(yè)出鎖存器將轉(zhuǎn)換結(jié)果送到數(shù)據(jù)線,供單片機(jī)讀取。4.硬件原理與資源分配硬件原理圖如圖11-3所示。圖11-3

ADC0809與單片機(jī)的連接第10頁(yè)/共120頁(yè)(1)時(shí)鐘信號(hào)由于0809無(wú)片選端,因此電路增加了或非門74LS02及譯碼器74LS138,以便對(duì)0809進(jìn)行讀/寫控制。單片

機(jī)采用6MHz的晶振,ALE輸出

6MHz/s時(shí)鐘信號(hào),經(jīng)74LS74觸發(fā)

器2分頻,得到500kHz的時(shí)鐘信號(hào),與0809的時(shí)鐘端CLK相連。第11頁(yè)/共120頁(yè)(2)通道選擇三位通道選擇端ADDA、ADDB、ADDC與數(shù)據(jù)線P0口的低三位P0.0、P0.1、P0.2相連,用數(shù)據(jù)線進(jìn)行通道選擇,由P0.0、P0.1、P0.2三位決定選擇哪一通道。也可以用地址線選擇通道。第12頁(yè)/共120頁(yè)(3)

0809的啟動(dòng)0809的啟動(dòng)端

START、地址鎖存端ALE均為高電

平有效。將START與ALE端連在一

起,與74LS02的輸出端相連?;蚍情T74LS02的兩個(gè)輸入端WR和Y0均為低電平時(shí),其輸出為高電平。當(dāng)譯碼器74LS138的3個(gè)輸入端P2.7、P2.6和P2.5為0時(shí),Y0為低電平,執(zhí)行外部I/O口寫操作時(shí),WR為低第電13頁(yè)/平共120。頁(yè)執(zhí)行下列操作將啟動(dòng)0通道轉(zhuǎn)換:MOVA,#00H

;數(shù)據(jù)線低3位為0,選擇0通道MOV#1FFFHDPTR,;P2.7、P2.6、P2.5均為0,MOVX@DPTR,A

;執(zhí)行外部I/O口寫操作時(shí)WR為低電平第14頁(yè)/共120頁(yè)(4)轉(zhuǎn)換數(shù)據(jù)的讀取當(dāng)轉(zhuǎn)換結(jié)束時(shí),EOC端輸出高電平??捎貌樵兓蛑袛嗟姆椒ㄟM(jìn)行數(shù)據(jù)讀取處理。輸出允許OE端為高電平,

8位轉(zhuǎn)換數(shù)據(jù)D0~D7輸出到數(shù)據(jù)線

上。只有譯碼器輸出Y0和RD同時(shí)

為低電平時(shí),OE端才為高電平。

執(zhí)行外部I/O口讀操作RD為低電平。執(zhí)行下列操作將讀取轉(zhuǎn)換數(shù)據(jù):MOV

DPTR,#1FFFH

;P2.7、P2.6、第15頁(yè)/共120頁(yè)(5)轉(zhuǎn)換結(jié)束標(biāo)志EOC轉(zhuǎn)換結(jié)束標(biāo)志EOC端經(jīng)反向器與單片機(jī)的INT0相連,即轉(zhuǎn)換一旦結(jié)束,外部中斷0則申請(qǐng)中斷。資源分配:

R0:數(shù)據(jù)指針

R2:通道計(jì)數(shù)器內(nèi)部RAM的40H以后的若干單元數(shù)據(jù)第堆16頁(yè)/棧共120區(qū)頁(yè)內(nèi)部RAM的60H~67H單元:存放5.參考程序ORG;CPU起AJMP;跳轉(zhuǎn)到ORG;外部中AJMP0000H始地址MAIN主程序0003H斷0入口地址JINT0外部中斷0處MAIN:NOPMOVMOVSP,#40HR0,#60HMOV;跳轉(zhuǎn)到理程序;主程序段;設(shè)定堆棧;設(shè)置數(shù)據(jù)存儲(chǔ)區(qū)首地址;選通道0A,R2MOVR2,#00HMOVDPTR,#1FFFH;初始化ADC0809第17頁(yè)/共120頁(yè)SETB

IT0;設(shè)定外部中斷0為邊沿觸發(fā);EX0SETB

EX0=1(開放外部中斷0);開總SETB

EA中斷,EA=1(開放總中斷)LOOP1:MOVX

@DPTR,AMOVX

@DPTR,ALOOP2:RETI;啟動(dòng)0809;再啟動(dòng)0809;中斷返回END第18頁(yè)/共120頁(yè)6.總結(jié)與提高本節(jié)所介紹的程序采用中斷方式讀取A/D轉(zhuǎn)換值,讀者還可以用查詢法(查詢P3.2)或者用軟件延時(shí)法(延時(shí)128μs以上)來(lái)編制采集程序。在實(shí)際單片機(jī)應(yīng)用系統(tǒng)中,對(duì)于模擬信號(hào)變化較快的場(chǎng)合需要增加采樣保持器。對(duì)于一般傳感器輸出的模擬信號(hào)還要經(jīng)過調(diào)理電路處輸入A/D轉(zhuǎn)換理成標(biāo)準(zhǔn)信號(hào),第19頁(yè)才/共12能0頁(yè)器。1.實(shí)訓(xùn)目的掌握12位A/D轉(zhuǎn)換器AD574A的工作原理及基本性能指標(biāo)掌握A/D轉(zhuǎn)換器AD574A與單片機(jī)的接口技術(shù)及編程方法11.2

12位A/D轉(zhuǎn)換器AD574A的應(yīng)用第20頁(yè)/共120頁(yè)2.功能設(shè)計(jì)設(shè)計(jì)單片機(jī)與12位A/D轉(zhuǎn)換器

AD574組成的數(shù)據(jù)采集系統(tǒng),編寫

AD574的數(shù)據(jù)采集程序。A/D轉(zhuǎn)換后的12位數(shù)字量存入內(nèi)部RAM區(qū)60H和61H單元,61H單元存放低4位。第21頁(yè)/共120頁(yè)3.背景知識(shí)AD574A是美國(guó)AD公司研制的12位逐次逼近型A/D轉(zhuǎn)換器,適合在高精度和快速采樣系統(tǒng)中應(yīng)用。(1)主要特點(diǎn)①內(nèi)部集成有轉(zhuǎn)換時(shí)鐘、參考電壓源和三態(tài)輸出鎖存器。②轉(zhuǎn)換時(shí)間為25μs。③輸入模擬電壓第22頁(yè)可/共1以20頁(yè)為單極性也可以為雙極性,單極性輸入時(shí)電壓為

0~+10V或0~+20V;雙極性輸入(2)

AD574A的引腳

AD574A的引腳如圖11-4所示。圖11-4

AD574A的引腳圖第23頁(yè)/共120頁(yè)10VIN①模擬量輸入10V量程的模擬電壓輸入線。單極性時(shí)為0~10V,雙極性時(shí)為-5~+5V。20VIN

20V量程的模擬電壓輸入線。單極性時(shí)為0~20V,雙極性時(shí)為-10~+10V。AC

模擬電壓公共地線。②數(shù)字量輸出DB11~DB0DB11為最高位。第24頁(yè)/共120頁(yè)12位數(shù)字量輸出線,CSCE③控制線片選線,低電平有效。片選使能線,高電平有效。和CS共同用于片選控制。當(dāng)

CS為0,CE為1時(shí),選中本片工作;否則本片處于禁止?fàn)顟B(tài)。R/C

讀出/轉(zhuǎn)換控制輸入線。若R/C為0,則本片啟動(dòng)工作;若使R/C為1,則本片處于允許讀出數(shù)字量狀態(tài)。第25頁(yè)/共120頁(yè)A012/8地址線。用來(lái)啟動(dòng)A/D轉(zhuǎn)換。決定進(jìn)行12位轉(zhuǎn)換還是8位A/D轉(zhuǎn)換。STS轉(zhuǎn)換狀態(tài)輸出線。STS為高電平,表示AD574A正處于A/D轉(zhuǎn)換

狀態(tài),若STS變?yōu)榈碗娖?,則A/D轉(zhuǎn)換完成。因此,在實(shí)用中STS線可供CPU查詢,也可作為MCS-51入線??刂乒δ芤姳?1-2。(見書195頁(yè))的外中斷第請(qǐng)26頁(yè)/求共120輸頁(yè)④測(cè)試/調(diào)零線REF

IN內(nèi)部解碼網(wǎng)絡(luò)所需參考電壓輸入線。REF

OUT內(nèi)部參考電壓輸出線。通常,REF

IN和REF

OUT之間跨接一個(gè)l00Ω電位器,用來(lái)調(diào)整各量程的增益。BIP

OFF

補(bǔ)償調(diào)整線,用于在模擬輸入為零時(shí)把ADC輸出的數(shù)字量調(diào)整為零。⑤電源線第27頁(yè)/共120頁(yè)4.硬件原理與資源分配單片機(jī)與AD574A的接線圖如圖11-5所示。第28頁(yè)/共120頁(yè)第29頁(yè)/共120頁(yè)AD574的口地址見書196頁(yè)。模擬電壓輸入極性的設(shè)定利用BIP、RIN和ROUT

3端與外接電

阻的不同連接方法,可以把

AD574A設(shè)定為單極性輸入或雙極

性輸入。圖11-5為雙極性輸入。如果輸入電壓在-5~+5V之間,模擬量應(yīng)從10VIN端輸入;如果輸入電壓在-10~+10V之間,模擬量應(yīng)從

20VIN第端30頁(yè)/共輸120頁(yè)入。單極性輸入時(shí):輸出數(shù)字量

D=212VIN/VFS,其中為輸入電壓,VFS為滿刻度電壓分辨率

1LSB=VFS/212,其中VFS=10V,1LSB=2.4mV雙極性輸入時(shí):輸出數(shù)字量D=211(1+2VIN/VFS)=2048(1+2VIN/V

)第31頁(yè)F/S共120頁(yè)分辨率

1LSB=VFS/212,其中V

=10V,1LSB=2.4mV(3)零點(diǎn)調(diào)整:R1用于零點(diǎn)調(diào)整①單極性輸入時(shí),使VIN=LSB/2=1.2mV。調(diào)整R1使輸出數(shù)字量在000H~001H間跳動(dòng)。②雙極性輸入時(shí),使VIN=-VFS/2+LSB/2=-4.99mV。調(diào)整R1使輸出數(shù)字量在000H~001H間跳動(dòng)。第32頁(yè)/共120頁(yè)(4)增益調(diào)整:R2用于增益調(diào)整①單極性輸入時(shí),調(diào)整R2,使

VIN=+VFS-1LSB=9.9976V,輸出數(shù)字量FFFH;VIN=+VFS-2LSB=9.9952V,輸出數(shù)字量FFEH。②雙極性輸入時(shí),調(diào)整R2,使

VIN=+VFS

/2-1LSB=4.9976V,輸出數(shù)字量FFFH;VIN=

+VFS

/2-2LSB=4.9952V,第33頁(yè)輸/共120出頁(yè)

數(shù)字量FFEH。資源分配:

R0:數(shù)據(jù)指針

R2:通道計(jì)數(shù)器內(nèi)部RAM的40H以后的若干單元:數(shù)據(jù)堆棧區(qū)內(nèi)部RAM的60H~61H單元:存放

1個(gè)12位轉(zhuǎn)換數(shù)據(jù)第34頁(yè)/共120頁(yè)0000HAJMP;跳轉(zhuǎn)到主5.參考程序ORGMAIN程序ORG0003H0入口地址;外部中斷部中斷0處AJMPJINT0;跳轉(zhuǎn)到外理程序MAIN:NOP;主程序段MOVSP,#40H;設(shè)定堆棧MOVR1,#60H;數(shù)據(jù)存放首地址中斷0為邊SETBIT0;設(shè)定外部沿觸發(fā)MOVDPTR,#1FF0H;送口地址MOVX@

DPTR,A;啟動(dòng)12位A/D轉(zhuǎn)換第35頁(yè)/共120頁(yè)SETB;開放外部SETBEX0中斷0EAAJMPLOOPLOOP:JINT0:NOPCLREX0;開總中斷;等待中斷;外部中斷0處理程序;關(guān)外部中MOVINC;讀高8位數(shù)據(jù);存儲(chǔ)高8位;選定低4INC;數(shù)據(jù)存儲(chǔ)ANLMOV斷0MOVX

A,@DPTR@R1,ADPTR位口R1單元加1MOVX

A,@DPTRA,#0FH@R1,ARETI;讀低4位數(shù)據(jù);屏蔽高4位;存儲(chǔ)低4位;中斷返回END第36頁(yè)/共120頁(yè)6.總結(jié)與提高本節(jié)為12位A/D轉(zhuǎn)換的實(shí)訓(xùn),使用了中斷處理方法,讀者也可以嘗試使用查詢方式進(jìn)行數(shù)據(jù)采集。第37頁(yè)/共120頁(yè)實(shí)訓(xùn)目的掌握串行A/D轉(zhuǎn)換器MAX1247的工作原理及使用方法掌握串行A/D轉(zhuǎn)換器MAX1247與單片機(jī)的接口技術(shù)及編程方法功能設(shè)計(jì)設(shè)計(jì)由單片機(jī)與12位串行A/D轉(zhuǎn)換器MAX1247構(gòu)成的數(shù)據(jù)采集系統(tǒng),并編寫數(shù)據(jù)采集程序。11.3串行A/D轉(zhuǎn)換器MAX1247的應(yīng)用第38頁(yè)/共120頁(yè)3.背景知識(shí)

MAX1247是MAXIM公司研制的12位4通道串行A/D轉(zhuǎn)換器,適合在

高精度和高速度的采樣系統(tǒng)中應(yīng)用。(1)主要特點(diǎn):①4通道(單極性)12位串行A/D轉(zhuǎn)換,也可接2通道(雙極性)。②單一電源供電(+5V)。③低第39頁(yè)功/共1耗20頁(yè)。④SPI/QSPI接口(串行接口)。第40頁(yè)/共120頁(yè)各管腳功能如下:

VCC電源(+5V)。CH0、CH1、CH2、CH3

4通道模COM擬信號(hào)輸入端。模擬輸入?yún)⒖蓟鶞?zhǔn)端。VREF基準(zhǔn)電壓輸入。CS

片選線,低電平有效。SHDN

低電平時(shí),器件將關(guān)閉并進(jìn)入掉電節(jié)能第41狀頁(yè)/共1態(tài)20頁(yè),否則為正常狀態(tài)。REFADJ

緩沖放大器輸入端,接VCC時(shí)內(nèi)部緩沖放大器無(wú)效。AGNDDGND數(shù)字地。模擬地。DOUT串行數(shù)據(jù)輸出端。SSTRB

轉(zhuǎn)換結(jié)束。DIN串行數(shù)據(jù)輸入端(控制字),時(shí)鐘上升沿有效。SCLK串第42行頁(yè)/共1時(shí)20頁(yè)鐘輸入。(3)

MAX1247工作方式

MAX1247可通過設(shè)定控制字的PD1、PD0位進(jìn)行工作模式的選擇。①外時(shí)鐘模式使用外部時(shí)鐘不僅能將串行數(shù)據(jù)移進(jìn)、移出,還可控制模數(shù)轉(zhuǎn)換的速度。②內(nèi)時(shí)鐘模式使用內(nèi)部時(shí)鐘轉(zhuǎn)換模式,轉(zhuǎn)換時(shí)鐘取自內(nèi)部的時(shí)鐘發(fā)生器,這是一種轉(zhuǎn)換時(shí)鐘與串行數(shù)據(jù)移位鎖定時(shí)鐘相互分離的模式。第43頁(yè)/共120頁(yè)③軟掉電模式軟掉電模式在

SHDN為高電平或懸空時(shí),通過設(shè)置控制字的PD1位和PD0位,可選擇滿掉電和快速掉電的軟掉電模式,以便在兩次轉(zhuǎn)換的閑置時(shí)段使器件

進(jìn)入低耗能的掉電狀態(tài)。在軟掉電

模式中,串行移位寄存器保留了掉

電前的操作數(shù),但不進(jìn)行模數(shù)轉(zhuǎn)換。④硬掉電模式將SHDN置于低電平,可以在任何第4時(shí)4頁(yè)/共刻120頁(yè)完全關(guān)閉轉(zhuǎn)換,并以“0”替換控制字的PD1位和(4)

MAX1247的控制字

START:?jiǎn)?dòng)位,為“1”有效。SEL2、SEL1、SEL0:通道選擇端,見表11-3。(見書199頁(yè))UNI/BIF:極性選擇位,為“1”選擇單極性,為“0”選擇雙極性。SGL/DIF:?jiǎn)味?差動(dòng)方式選擇端。

PD1、PD0:模式選擇端。見表11-4。(第見45頁(yè)/共書120頁(yè)200頁(yè))(5)

MAX1247數(shù)據(jù)操作時(shí)序

MAX1247的數(shù)據(jù)操作時(shí)序如圖11-7所示。第46頁(yè)/共120頁(yè)第47頁(yè)/共120頁(yè)4.硬件原理與資源分配

MAX1247與單片機(jī)的連接圖如圖11-8所示。P1.0為串行輸出控制字,

P1.1為輸出串行時(shí)鐘,P1.2為片選線,P1.3為A/D轉(zhuǎn)換數(shù)字量由P1.3串行輸入。對(duì)MAX1247操作時(shí),單片機(jī)首先

送出8位控制字,然后讀取16位串行A/D數(shù)據(jù),其中最后的4位數(shù)據(jù)為無(wú)效位。因第此48頁(yè)/共對(duì)120頁(yè)MAX1247的一

次操作需要24個(gè)串行時(shí)鐘SCLK。第49頁(yè)/共120頁(yè)5.參考程序DINSCLKCSDOUT;定義P1.0為DIN;定義P1.1為SCLK;定義P1.2為CS;定義P1.3為DOUT0000HAJMP;跳轉(zhuǎn)到主EQU

P1.0EQU

P1.1EQU

P1.3EQU

P1.4ORGMAIN程序MAIN:NOPMOVR1,#60HMOVA,#9FHLCALL

AD10;主程序段;0通道轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于60H、61H;選通0通道、單極性、外時(shí)鐘;調(diào)用A/D控制字寫入子程序第50頁(yè)/共120頁(yè)MOVLCALL

AD11R1,62HMOVA,#0DFHLCALL

AD10MOVLCALL

AD11R1,64HMOVA,#0AFHLCALL

AD10;A/D轉(zhuǎn)換子程序;1通道轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于62H、63H;選通1通道、單極性、外時(shí)鐘;調(diào)用A/D控制字寫入子程序;A/D轉(zhuǎn)換子程序;2通道轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于64H、65H;選通2通道、單極性、外時(shí)鐘;調(diào)用A/D控制字寫入子程序第51頁(yè)/共120頁(yè)LCALL

AD11MOV

R1,66H存;A/D轉(zhuǎn)換子程序;3通道轉(zhuǎn)換的數(shù)據(jù)儲(chǔ)于MOV66H、67HA,#0EFH性、LCALL

AD10LCALL

AD11;選通3通道、單極外時(shí)鐘;調(diào)用A/D控制字寫入子程序;A/D轉(zhuǎn)換子程序…ENDAD10:

CLRDINCLRCLR;MAX1247控制字寫

SCLKCS第52頁(yè)/共120頁(yè)L1:MOV

R0,#08HNOPNOPCLR

CCLR

SCLKRLC

AMOV

DIN,CNOPSETBDJNZCLRSCLKR0,L1NOPSCLKSETB

CS第53頁(yè)/共120頁(yè)CLRDINNOPNOPNOPNOPRETAD11:

NOP;A/D轉(zhuǎn)換子程序CLRCLRCCSNOPNOPSCLKMOV;高8位CLRR0,#08H數(shù)據(jù)第54頁(yè)/共120頁(yè)LL3:

NOPSETBSCLKMOVRLCNOPNOPC,DOUTANOPSCLKR0,LL3@R1,AMOV;低4位CLRDJNZMOVR0,#08H數(shù)據(jù)LL2:

CLRCNOP第55頁(yè)/共120頁(yè)NOPSETBSCLKNOPNOPMOV

C,DOUTARLCNOPCLRSCLKDJNZ

R0,LL2INC

R1ANL

A,#0F0HSWAP

A第56頁(yè)/共120頁(yè)MOV

@R1,ASETB

CSRET第57頁(yè)/共120頁(yè)6.總結(jié)與提高A/D轉(zhuǎn)換器廣泛應(yīng)用于便攜式設(shè)備、醫(yī)用儀器、電池供電系統(tǒng)、遠(yuǎn)程數(shù)據(jù)采集和過程控制等各個(gè)領(lǐng)域。應(yīng)根據(jù)實(shí)際任務(wù)要求來(lái)確定選用8位、

12位或更高位,以及并行芯片或串行芯片A/D轉(zhuǎn)換器。第58頁(yè)/共120頁(yè)實(shí)訓(xùn)目的掌握8位D/A轉(zhuǎn)換器DAC0832的工作原理及使用方法掌握8位D/A轉(zhuǎn)換器DAC0832與單片機(jī)的接口技術(shù)及編程方法功能設(shè)計(jì)設(shè)計(jì)8位D/A轉(zhuǎn)換器DAC0832與單片機(jī)的硬件電路連接,并編寫

DAC0832的數(shù)據(jù)輸出程序。11.4

8位D/A轉(zhuǎn)換器DAC0832的應(yīng)用第59頁(yè)/共120頁(yè)3.背景知識(shí)由圖11-1所示單片機(jī)測(cè)控系統(tǒng)可知,單片機(jī)與被控對(duì)象之間要經(jīng)過D/A(數(shù)/模)轉(zhuǎn)換環(huán)節(jié),該環(huán)節(jié)把單片機(jī)輸出的數(shù)字量轉(zhuǎn)換成模擬量,從而對(duì)被控對(duì)象進(jìn)行控制。D/A轉(zhuǎn)換環(huán)節(jié)在單片機(jī)應(yīng)用系統(tǒng)中作為輸出信號(hào)。第60頁(yè)/共120頁(yè)DAC0832是8位電流輸出型D/A轉(zhuǎn)換芯片。DAC0832主要技術(shù)指標(biāo)分辨

率為8位,增益溫度系數(shù)為0.02%,單電源供電,電源范圍為+5~+15V,轉(zhuǎn)換速度約1μs。DAC0832的外部引腳

DAC0832的內(nèi)部結(jié)構(gòu)及引腳圖如圖

11-9所示。第61頁(yè)/共120頁(yè)第62頁(yè)/共120頁(yè)(3)

DAC0832工作方式通過控制端CS、ILE、WR1、WR2、XFER的不同接線方式,可以控制

DAC0832工作在不同方式下。①單緩沖方式:兩個(gè)輸入寄存器中有一個(gè)處于直通方式,另一個(gè)處于受控鎖存方式。適用于只有一路模擬信號(hào)輸出或雖有幾路模擬信號(hào)但不需要同步輸出的場(chǎng)合。②雙緩沖方式第:63頁(yè)/共兩120頁(yè)個(gè)鎖存器都接成受控方式ILE接高電平。(4)

DAC0832的輸出極性圖11-10(a)為DAC0832的單極性輸出電路。其輸出為:圖11-10(b)為DAC0832的雙極性輸出電路。其輸出為:式中B為輸入數(shù)字量,其范圍為0~第64頁(yè)/共120頁(yè)第65頁(yè)/共120頁(yè)4.硬件原理如圖11-11所示電路是由單片機(jī)與

D/A轉(zhuǎn)換器構(gòu)造一個(gè)波形發(fā)生器。

DAC0832為單緩沖方式和雙極性輸

出,LM358為雙運(yùn)算放大器。P2.7、P2.6、P2.5三位均為0,選通DAC0832,選通地址為譯碼輸出

1FFFH。第66頁(yè)/共120頁(yè)第67頁(yè)/共120頁(yè)5.參考程序(1)

0832輸出矩形波單片機(jī)連續(xù)255次輸出數(shù)字量0,然后連續(xù)255次輸出數(shù)字量FFH。如此重復(fù),0832即可輸出連續(xù)矩形波。ORG

0000HDPTR,#1FFFH;指向0832MOVDD0:

MOVDD1:MOVMOVX

@DPTR,AA,#0R2,#255;向D/A送0DJNZ

R2,DD1255次,形成矩MOV

A,#255;循環(huán)形波的低電平;將FFH送到A第68頁(yè)/共120頁(yè)DD2:MOVX

@DPTR,AD/AMOV

R2,#255;向D/A送255,輸出為高;循環(huán)DJNZ

R2,DD2255次,形成矩形波的高電平;重復(fù)LJMP

DD0上述過程,形成多個(gè)矩形波END第69頁(yè)/共120頁(yè)(2)

0832輸出梯形波單片機(jī)從輸出數(shù)字量0開始,逐次加1直到255,保持255次,然后從輸出255逐次減1直至為0。如此重復(fù),0832即可輸出連續(xù)梯

形波。ORG;CPU起DD0:DD1:0000H始地址MOVMOVMOVX

@DPTR,ADPTR,#1FFFHA,#00H;D/A輸出CJNEINC

AA,#255,DD1MOVA,#0FFHMOV;循環(huán)255次,形成梯形波的上升沿;將FFH送AR2,#0FFHDD2:MOVX

@DPTR,A;向D/A送255,D/A輸出為高第70頁(yè)/共120頁(yè)DJNZ

R2,DD2255次,形成梯;循環(huán)形波的上底DD3:MOVX

@DPTR,ACJNE成梯;D/A輸出A;循環(huán)255次,形形波DECA,#0,DD3的下降沿LJMP

DD1上述過程,形;重復(fù)成多個(gè)梯形波END第71頁(yè)/共120頁(yè)(3)

0832輸出三角波單片機(jī)從輸出數(shù)字量0開始,逐次加1直到255,然后從輸出255逐次減1直至為0。如此重復(fù),0832即可輸出連續(xù)三角波。ORGMOV0000HDPTR,#1FFFHDD0:DD1:MOVXMOV@DPTR,AA,#00H;D/A輸出CJNEINC

AA,#255,DD1;循環(huán)256次,形成三角波的上升沿DD2:MOVX@DPTR,A;D/A輸出ACJNEDECA,#0,DD2;循環(huán)256次,形成三角波的下降沿第72頁(yè)/共120頁(yè)LJMP

DD0;重復(fù)上述過程,形成多個(gè)三角波END第73頁(yè)/共120頁(yè)6.總結(jié)與提高上述三段程序通過DAC0832輸出端輸出的波形為直線型的波形,沒有考慮波形頻率。改變程序即可使0832輸出滿足頻率要求的各種曲線。第74頁(yè)/共120頁(yè)實(shí)訓(xùn)目的掌握串行D/A

MAX525的工作原理及使用方法掌握12位串行D/A轉(zhuǎn)換器MAX525與單片機(jī)的接口技術(shù)及編程方法功能設(shè)計(jì)設(shè)計(jì)由12位D/A轉(zhuǎn)換器MAX525與

單片機(jī)構(gòu)成的模擬輸出電路,并編寫MAX525的數(shù)據(jù)輸出程序。11.5串行D/A

MAX525的應(yīng)用第75頁(yè)/共120頁(yè)3.背景知識(shí)MAX525是MAXIM公司生產(chǎn)的4通道12位串行D/A轉(zhuǎn)換器。主要特點(diǎn)①4通道12位串行D/A轉(zhuǎn)換②單電源供電(+5V)③3線串行,可程控?cái)?shù)字輸出④SPI/QSPI傳輸工作模式MA第7X6頁(yè)5/共21205頁(yè)的引腳

MAX525的引腳如圖11-12所示。第77頁(yè)/共120頁(yè)(3)

MAX525工作模式

MAX525的數(shù)據(jù)形式為16位,其中最高位和次高位為地址位,第14位和第13位為控制位,后12位為數(shù)字位。如圖11-13所示。MAX525的工作模式由4位地址控制位和12位數(shù)據(jù)位確定,見表11-5。(見書208頁(yè))第78頁(yè)/共120頁(yè)第79頁(yè)/共120頁(yè)(4)

MAX525工作時(shí)序如圖11-14所示。第80頁(yè)/共120頁(yè)第81頁(yè)/共120頁(yè)4.硬件原理與資源分配如圖11-15所示為單片機(jī)8051與MAX525芯片的連接圖。LM385是精密的基準(zhǔn)電源(+2.5V),MAX525是串行D/A轉(zhuǎn)換芯片,接

口方式為SPI。本電路中使用單片機(jī)的P1口模擬SPI的串行接口與

MAX525相連接。其中P1.0為串行數(shù)據(jù)輸入,P1.1為MAX525的時(shí)鐘輸入,P1.2為第M82A頁(yè)/X共15202頁(yè)5的片選,如圖11-15所示。第83頁(yè)/共120頁(yè)5.參考程序DIN

EQU

P1.0;定義P1.0為DIN,串行數(shù)據(jù)SCLK輸入端EQU

P1.1CSEQU

P1.2DOUTEQU

P1.3ORGAJMP;定義P1.1為SCLK,串行時(shí)鐘輸入端;定義P1.2為CS,片選端;定義P1.3為DOUT,串行數(shù)據(jù)輸出,用于級(jí)聯(lián)

0000H;跳轉(zhuǎn)到主MAIN程序MAIN:

NOP;主程序段SETBCS第84頁(yè)/共120頁(yè)CLRSCLKCLR;選中MOVCSMAX525R0,#16為MOVA,#80HL1:CLRRLCMOVSETBDJNZCLRR0,L1;發(fā)16位數(shù),前4位控制字;控制字,所有輸出寄存器從輸入寄存器加載CADIN,CSCLKNOPSCLK;MAX525初始化第85頁(yè)/共120頁(yè)NOP;開始4路MOVD/A轉(zhuǎn)換R4,#60HMOVR3,#30HLCALL

DA10MOVR4,62HMOVR3,#70HLCALL

DA10MOVR4,#64HMOVR3,#0B0H;A通道待轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于60H、61H;選通A轉(zhuǎn)換通道;調(diào)用D/A轉(zhuǎn)換子程序;B通道待轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于62H、63H;選通B轉(zhuǎn)換通道;調(diào)用D/A轉(zhuǎn)換子程序;C通道待轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于64H、65H;選通C轉(zhuǎn)換通道第86頁(yè)/共120頁(yè)LCALLDA10MOVR4,#66HR3,#0F0HMOVLCALL

DA10;調(diào)用D/A轉(zhuǎn)換子程序;D通道待轉(zhuǎn)換的數(shù)據(jù)存儲(chǔ)于66H、67H;選通D轉(zhuǎn)換通道;調(diào)用D/A轉(zhuǎn)換子程序…DA10:NOPMOVMOV;D/A轉(zhuǎn)換子程序;數(shù)據(jù)存放首地址;送4位控制字A,R3LL1:R1,R4R0,#04HMOVCLRC第87頁(yè)/共120頁(yè)RLCMOVSETBADIN,CSCLKNOPSCLKR0,LL1MOV;高8位A,@R1LL2:CCLRDJNZR0,#08H數(shù)據(jù)MOVCLRRLCMOVSETBADIN,CSCLKNOP第88頁(yè)/共120頁(yè)SCLKR0,LL2MOV;低4位CLRDJNZR0,#04H數(shù)據(jù)INC

R1MOV

A,@R1SWAP

ALL3:CLR

CRLCMOVSETBADIN,CSCLKNOPCLRDJNZSCLKR0,LL3第89頁(yè)/共120頁(yè)RETEND第90頁(yè)/共120頁(yè)6.總結(jié)與提高本節(jié)介紹的系統(tǒng)使用了4路12位串行D/A轉(zhuǎn)換器MAX525,在輸出端

沒有給出執(zhí)行機(jī)構(gòu),讀者如有此方面的應(yīng)用需求可自行加接被控對(duì)象。第91頁(yè)/共120頁(yè)11.6

8位A/D、D/A轉(zhuǎn)換器PCF8591的應(yīng)用實(shí)訓(xùn)目的學(xué)習(xí)A/D、D/A轉(zhuǎn)換器PCF8591的使用方法掌握I2C總線數(shù)據(jù)操作的基本時(shí)序掌握PCF8591與單片機(jī)的接口技術(shù)及編程方法功能設(shè)計(jì)第92頁(yè)/共120頁(yè)設(shè)計(jì)由單片機(jī)與PCF8591組成的數(shù)據(jù)采集與輸出處理系統(tǒng),編寫3.背景知識(shí)PCF8591是一個(gè)具有I2C總線接口的8位A/D、D/A轉(zhuǎn)換器。(1)主要特點(diǎn)①4端口模擬輸入,可單端也可差分輸入。②低功耗。③8位A/D轉(zhuǎn)換,內(nèi)有多路開關(guān)、采樣及第保93頁(yè)/持共120頁(yè)電路。④一路D/A模擬輸出。第94頁(yè)/共120頁(yè)(3)控制字格式PCF8591控制字用于設(shè)置芯片實(shí)現(xiàn)不同功能??刂谱諨7D6D5格D式4如D下3:D2D1D000D7、D3:標(biāo)志位,置“0”。

D6:模擬輸出允許位(D/A轉(zhuǎn)換輸出允許第)95頁(yè)/,共120頁(yè)1有效。D5、D4:模擬量輸入方式選擇,見(4)

I2C總線的數(shù)據(jù)操作格式I2C總線由時(shí)鐘線SCL和數(shù)據(jù)線SDA組成,SCL和SDA是雙向傳輸線。I2C總線傳輸數(shù)據(jù)時(shí)需要起始信號(hào)S和終止信號(hào)P。為了保證I2C總線數(shù)據(jù)的可靠傳送,每傳送一個(gè)字節(jié)都必須跟隨一個(gè)應(yīng)答信號(hào)A,發(fā)送數(shù)據(jù)時(shí)高位在前。在全部數(shù)據(jù)傳送結(jié)束后,主控制器發(fā)送終止信號(hào)P。I2C總線上傳送的每一個(gè)字節(jié)均為8位,但每啟動(dòng)一次I2C總線,其后第96頁(yè)/共120頁(yè)(5)

I2C總線操作時(shí)序I2C總線數(shù)據(jù)傳送啟動(dòng)、終止、應(yīng)答和非應(yīng)答時(shí)序如圖11-17所示。

I2C總線寫1位數(shù)據(jù)操作時(shí)序如圖

11-18(a)所示。I2C總線讀1位數(shù)據(jù)操作時(shí)序如圖11-18(b)所示。第97頁(yè)/共120頁(yè)第98頁(yè)/共120頁(yè)圖11-18

I2C總線讀寫時(shí)序第99頁(yè)/共120頁(yè)(6)

PCF8591器件的地址I2C器件的地址是由硬件構(gòu)成的,對(duì)于每一個(gè)I2C器件都有一個(gè)地址編號(hào),如PCF8591的地址編號(hào)為

1001,地址引腳為A2A1A0。若此三個(gè)引腳接地,則PCF8591的寫地址為10010000B(90H),讀地址為10010001(91H)。第100頁(yè)/共120頁(yè)4.硬件原理與資源分配圖11-19為單片機(jī)8051與PCF8591芯片的連接圖。LM385是精密的基準(zhǔn)電源(+2.5V)。P1.0模擬I2C的時(shí)鐘信號(hào),P1.1模擬

I2C的數(shù)據(jù)線。本實(shí)訓(xùn)將通過編程

實(shí)現(xiàn)圖11-16所示的時(shí)序,完成I2C總線的啟動(dòng)與終止、PCF8591初始化、4通道A/D轉(zhuǎn)換、D/A轉(zhuǎn)換和等待第10應(yīng)1頁(yè)/共答120頁(yè)。第102頁(yè)/共120頁(yè)A/D轉(zhuǎn)換選擇4路模擬信號(hào)獨(dú)立輸入,通道自動(dòng)增量方式。控制字為:0

0

0

0

0

1

0

0

B(04H)。D/A轉(zhuǎn)換允許模擬輸出???/p>

制字為:0

1

0

0

0

0

0

0

B(40H)。對(duì)I2C發(fā)送一個(gè)字節(jié)后,檢查應(yīng)答。從I2C讀取一個(gè)字節(jié)后,單片機(jī)應(yīng)發(fā)送應(yīng)答信號(hào)。第103頁(yè)/共120頁(yè)資源分配R0:D/A轉(zhuǎn)換數(shù)據(jù)指針,初值為

50H。R1:A/D轉(zhuǎn)換數(shù)據(jù)指針,初值為

60H。R2:A/D轉(zhuǎn)換數(shù)據(jù)個(gè)數(shù),初值為4;D/A轉(zhuǎn)換數(shù)據(jù)個(gè)數(shù),初值為2。R3:循環(huán)計(jì)數(shù)器,初值為8。R4:第暫104頁(yè)存/共12A0頁(yè)/D。F0:應(yīng)答標(biāo)志位,F(xiàn)0=0有應(yīng)答,5.參考程序I2C接口的數(shù)據(jù)操作程序由下列幾個(gè)基本操作子程序組成:PCFD為A/D轉(zhuǎn)換子程序,PCFX為D/A轉(zhuǎn)換子程序,STR為I2C啟動(dòng)子程序(圖11-17時(shí)序(a)),ED0為I2C終止子程序(圖11-17時(shí)序(b)),YIDA為發(fā)送應(yīng)答子程序(圖11-17時(shí)序(c)),YIDAF為圖11-17時(shí)序(d)),CHEK為檢查應(yīng)答信號(hào)發(fā)送非應(yīng)答子程第105頁(yè)序/共12(0頁(yè)0000HMAINORGAJMPMAIN:

NOP;R2存放A/D轉(zhuǎn)換的數(shù)據(jù)個(gè)數(shù);PCF8591A/D轉(zhuǎn)換…MOV

R2,#04HLCALL

PCFDMOV

R2,#03HLCALL

PCFX;存放D/A轉(zhuǎn)換的數(shù)據(jù)個(gè)數(shù);PCF8591D/A轉(zhuǎn)換…PCFX:

NOPLCALL

STR;總線啟動(dòng)第106頁(yè)/共120頁(yè)MOV

A,#90HLCALL

WR0LCALL

CHEKJBWRD1:MOV;PCF8591D/A尋址字;寫入;檢查應(yīng)答位;錯(cuò)誤,重發(fā);寫入

R1,#50HWRD2:F0,PCFXA,#40HMOVLCALL

WR0LCALL

CHEKJB;檢查應(yīng)答位;錯(cuò)誤重發(fā)F0,PCFXMOVA,@R1INC;61H存R1放D/A待轉(zhuǎn)換的數(shù)據(jù)第107頁(yè)/共120頁(yè)DJNZR2,WRD2LCALL

EDORETNOPPCFD:LCALL

STRMOV

A,#90HLCALL

WR0LCALL

CHEKJBMOVF0,PCFDA,#04HLCALL

WR0LCALLCHEK;總線啟動(dòng);寫PCF8591A/D尋址字;寫入;檢查應(yīng)答位;錯(cuò)誤重發(fā);A/D控制字;寫入;檢查應(yīng)答位第108頁(yè)/共120頁(yè)F0,PCFDPCFD1:JBLC

溫馨提示

  • 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ù)覽,若沒有圖紙預(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論