




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、為了滿足多種需要,目前國內(nèi)外各半導(dǎo)體器件生產(chǎn)廠家設(shè)計(jì)并生產(chǎn)出了多種多樣的ADC芯片。僅美國AD公司的ADC產(chǎn)品就有幾十個(gè)系列、近百種型號之多。從性能上講,它們有的精度高、速度快,有的則價(jià)格低廉。從功能上講,有的不僅具有A/D轉(zhuǎn)換的基本功能,還包括內(nèi)部放大器和三態(tài)輸出鎖存器;有的甚至還包括多路開關(guān)、采樣保持器等,已發(fā)展為一個(gè)單片的小型數(shù)據(jù)采集系統(tǒng)。盡管ADC芯片的品種、型號很多,其內(nèi)部功能強(qiáng)弱、轉(zhuǎn)換速度快慢、轉(zhuǎn)換精度高低有很大差別,但從用戶最關(guān)心的外特性看,無論哪種芯片,都必不可少地要包括以下四種基本信號引腳端:模擬信號輸入端(單極性或雙極性);數(shù)字量輸出端(并行或串行);轉(zhuǎn)換啟動信號輸入端;轉(zhuǎn)
2、換結(jié)束信號輸出端。除此之外,各種不同型號的芯片可能還會有一些其他各不相同的控制信號端。選用ADC芯片時(shí),除了必須考慮各種技術(shù)要求外,通常還需了解芯片以下兩方面的特性。(1)數(shù)字輸出的方式是否有可控三態(tài)輸出。有可控三態(tài)輸出的ADC芯片允許輸出線與微機(jī)系統(tǒng)的數(shù)據(jù)總線直接相連,并在轉(zhuǎn)換結(jié)束后利用讀數(shù)信號選通三態(tài)門,將轉(zhuǎn)換結(jié)果送上總線。沒有可控三態(tài)輸出(包括內(nèi)部根本沒有輸出三態(tài)門和雖有三態(tài)門、但外部不可控兩種情況)的ADC芯片則不允許數(shù)據(jù)輸出線與系統(tǒng)的數(shù)據(jù)總線直接相連,而必須通過I/O接口與MPU交換信息。(2)啟動轉(zhuǎn)換的控制方式是脈沖控制式還是電平控制式。對脈沖啟動轉(zhuǎn)換的ADC芯片,只要在其啟動轉(zhuǎn)換
3、引腳上施加一個(gè)寬度符合芯片要求的脈沖信號,就能啟動轉(zhuǎn)換并自動完成。一般能和MPU配套使用的芯片,MPU的I/O寫脈沖都能滿足ADC芯片對啟動脈沖的要求。對電平啟動轉(zhuǎn)換的ADC芯片,在轉(zhuǎn)換過程中啟動信號必須保持規(guī)定的電平不變,否則,如中途撤消規(guī)定的電平,就會停止轉(zhuǎn)換而可能得到錯(cuò)誤的結(jié)果。為此,必須用D觸發(fā)器或可編程并行I/O接口芯片的某一位來鎖存這個(gè)電平,或用單穩(wěn)等電路來對啟動信號進(jìn)行定時(shí)變換。具有上述兩種數(shù)字輸出方式和兩種啟動轉(zhuǎn)換控制方式的ADC芯片都不少,在實(shí)際使用芯片時(shí)要特別注意看清芯片說明。下面介紹兩種常用芯片的性能和使用方法。1. ADC 0808/0809ADC 0808和ADC 0
4、809除精度略有差別外(前者精度為8位、后者精度為7位),其余各方面完全相同。它們都是CMOS器件,不僅包括一個(gè)8位的逐次逼近型的ADC部分,而且還提供一個(gè)8通道的模擬多路開關(guān)和通道尋址邏輯,因而有理由把它作為簡單的“數(shù)據(jù)采集系統(tǒng)”。利用它可直接輸入8個(gè)單端的模擬信號分時(shí)進(jìn)行A/D轉(zhuǎn)換,在多點(diǎn)巡回檢測和過程控制、運(yùn)動控制中應(yīng)用十分廣泛。1) 主要技術(shù)指標(biāo)和特性(1)分辨率: 8位。(2)總的不可調(diào)誤差: ADC0808為±LSB,ADC 0809為±1LSB。(3)轉(zhuǎn)換時(shí)間:取決于芯片時(shí)鐘頻率,如CLK=500kHz時(shí),TCONV=128s。(4)單一電源: +5V。(5)
5、模擬輸入電壓范圍:單極性05V;雙極性±5V,±10V(需外加一定電路)。(6)具有可控三態(tài)輸出緩存器。(7)啟動轉(zhuǎn)換控制為脈沖式(正脈沖),上升沿使所有內(nèi)部寄存器清零,下降沿使A/D轉(zhuǎn)換開始。(8)使用時(shí)不需進(jìn)行零點(diǎn)和滿刻度調(diào)節(jié)。2) 內(nèi)部結(jié)構(gòu)和外部引腳ADC0808/0809的內(nèi)部結(jié)構(gòu)和外部引腳分別如圖和圖所示。內(nèi)部各部分的作用和工作原理在內(nèi)部結(jié)構(gòu)圖中已一目了然,在此就不再贅述,下面僅對各引腳定義分述如下:圖11.19 ADC0808/0809內(nèi)部結(jié)構(gòu)框圖(1)IN0IN78路模擬輸入,通過3根地址譯碼線ADDA、ADDB、ADDC來選通一路。(2)D7D0A/D轉(zhuǎn)換后
6、的數(shù)據(jù)輸出端,為三態(tài)可控輸出,故可直接和微處理器數(shù)據(jù)線連接。8位排列順序是D7為最高位,D0為最低位。(3)ADDA、ADDB、ADDC模擬通道選擇地址信號,ADDA為低位,ADDC為高位。地址信號與選中通道對應(yīng)關(guān)系如表所示。(4)VR(+)、VR(-)正、負(fù)參考電壓輸入端,用于提供片內(nèi)DAC電阻網(wǎng)絡(luò)的基準(zhǔn)電壓。在單極性輸入時(shí),VR(+)=5V,VR(-)=0V;雙極性輸入時(shí),VR(+)、VR(-)分別接正、負(fù)極性的參考電壓。圖11.20 ADC0808/0809外部引腳圖表11.3 地址信號與選中通道的關(guān)系地址選中通道ADDCADDBADDA000011110011001101010101I
7、N0IN1IN2IN3IN4IN5IN6IN7(5)ALE地址鎖存允許信號,高電平有效。當(dāng)此信號有效時(shí),A、B、C三位地址信號被鎖存,譯碼選通對應(yīng)模擬通道。在使用時(shí),該信號常和START信號連在一起,以便同時(shí)鎖存通道地址和啟動A/D轉(zhuǎn)換。(6)STARTA/D轉(zhuǎn)換啟動信號,正脈沖有效。加于該端的脈沖的上升沿使逐次逼近寄存器清零,下降沿開始A/D轉(zhuǎn)換。如正在進(jìn)行轉(zhuǎn)換時(shí)又接到新的啟動脈沖,則原來的轉(zhuǎn)換進(jìn)程被中止,重新從頭開始轉(zhuǎn)換。(7)EOC轉(zhuǎn)換結(jié)束信號,高電平有效。該信號在A/D轉(zhuǎn)換過程中為低電平,其余時(shí)間為高電平。該信號可作為被CPU查詢的狀態(tài)信號,也可作為對CPU的中斷請求信號。在需要對某個(gè)
8、模擬量不斷采樣、轉(zhuǎn)換的情況下,EOC也可作為啟動信號反饋接到START端,但在剛加電時(shí)需由外電路第一次啟動。(8)OE輸出允許信號,高電平有效。當(dāng)微處理器送出該信號時(shí),ADC0808/0809的輸出三態(tài)門被打開,使轉(zhuǎn)換結(jié)果通過數(shù)據(jù)總線被讀走。在中斷工作方式下,該信號往往是CPU發(fā)出的中斷請求響應(yīng)信號。3) 工作時(shí)序與使用說明ADC 0808/0809的工作時(shí)序如圖所示。當(dāng)通道選擇地址有效時(shí),ALE信號一出現(xiàn),地址便馬上被鎖存,這時(shí)轉(zhuǎn)換啟動信號緊隨ALE之后(或與ALE同時(shí))出現(xiàn)。START的上升沿將逐次逼近寄存器SAR復(fù)位,在該上升沿之后的2s加8個(gè)時(shí)鐘周期內(nèi)(不定),EOC信號將變低電平,以
9、指示轉(zhuǎn)換操作正在進(jìn)行中,直到轉(zhuǎn)換完成后EOC再變高電平。微處理器收到變?yōu)楦唠娖降腅OC信號后,便立即送出OE信號,打開三態(tài)門,讀取轉(zhuǎn)換結(jié)果。圖11.21 ADC 0808/0809工作時(shí)序模擬輸入通道的選擇可以相對于轉(zhuǎn)換開始操作獨(dú)立地進(jìn)行(當(dāng)然,不能在轉(zhuǎn)換過程中進(jìn)行),然而通常是把通道選擇和啟動轉(zhuǎn)換結(jié)合起來完成(因?yàn)锳DC0808/0809的時(shí)間特性允許這樣做)。這樣可以用一條寫指令既選擇模擬通道又啟動轉(zhuǎn)換。在與微機(jī)接口時(shí),輸入通道的選擇可有兩種方法,一種是通過地址總線選擇,一種是通過數(shù)據(jù)總線選擇。如用EOC信號去產(chǎn)生中斷請求,要特別注意EOC的變低相對于啟動信號有2s+8個(gè)時(shí)鐘周期的延遲,要
10、設(shè)法使它不致產(chǎn)生虛假的中斷請求。為此,最好利用EOC上升沿產(chǎn)生中斷請求,而不是靠高電平產(chǎn)生中斷請求。2. AD574AAD574A是美國AD公司的產(chǎn)品,是目前國際市場上較先進(jìn)的、價(jià)格低廉、應(yīng)用較廣的混合集成12位逐次逼近式ADC芯片。它分6個(gè)等級,即AD574AJ、AK、AL、AS、AT、AU,前三種使用溫度范圍為0+70,后三種為-55+125。它們除線性度及其他某些特性因等級不同而異外,主要性能指標(biāo)和工作特點(diǎn)是相同的。1) 主要技術(shù)指標(biāo)和特性(1)非線性誤差:±1LSB或±LSB(因等級不同而異)。(2)電壓輸入范圍:單極性0+10V,0+20V,雙極性±5V
11、,±10V。(3)轉(zhuǎn)換時(shí)間: 35s。(4)供電電源: +5V,±15V。(5)啟動轉(zhuǎn)換方式:由多個(gè)信號聯(lián)合控制,屬脈沖式。(6)輸出方式:具有多路方式的可控三態(tài)輸出緩存器。(7)無需外加時(shí)鐘。(8)片內(nèi)有基準(zhǔn)電壓源??赏饧覸R,也可通過將VO(R)與Vi(R)相連而自己提供VR。內(nèi)部提供的VR為±0.1)V(max),可供外部使用,其最大輸出電流為;(9)可進(jìn)行12位或8位轉(zhuǎn)換。12位輸出可一次完成,也可兩次完成(先高8位,后低4位)。2) 內(nèi)部結(jié)構(gòu)與引腳功能AD574A的內(nèi)部結(jié)構(gòu)與外部引腳如圖所示。從圖可見,它由兩片大規(guī)模集成電路混合而成:一片為以D/A轉(zhuǎn)換器
12、AD565和10V基準(zhǔn)源為主的模擬片,一片為集成了逐次逼近寄存器SAR和轉(zhuǎn)換控制電路、時(shí)鐘電路、三態(tài)輸出緩沖器電路和高分辨率比較器的數(shù)字片,其中12位三態(tài)輸出緩沖器分成獨(dú)立的A、B、C三段,每段4位,目的是便于與各種字長微處理器的數(shù)據(jù)總線直接相連。AD574A為28引腳雙列直插式封裝,各引腳信號的功能定義分述如下:圖11.22 AD574A的結(jié)構(gòu)框圖與引腳(1)12/輸出數(shù)據(jù)方式選擇。當(dāng)接高電平時(shí),輸出數(shù)據(jù)是12位字長;當(dāng)接低電平時(shí),是將轉(zhuǎn)換輸出的數(shù)變成兩個(gè)8位字輸出。(2)A0轉(zhuǎn)換數(shù)據(jù)長度選擇。當(dāng)A0為低電平時(shí),進(jìn)行12位轉(zhuǎn)換;A0為高電平時(shí),則為8位長度的轉(zhuǎn)換。(3)片選信號。(4)R/讀
13、或轉(zhuǎn)換選擇。當(dāng)為高電平時(shí),可將轉(zhuǎn)換后數(shù)據(jù)讀出;當(dāng)為低電平時(shí),啟動轉(zhuǎn)換。(5)CE芯片允許信號,用來控制轉(zhuǎn)換與讀操作。只有當(dāng)它為高電平時(shí),并且=0時(shí),R/信號的控制才起作用。CE和、R/、12/、A0信號配合進(jìn)行轉(zhuǎn)換和讀操作的控制真值表如表所示。(6)VCC正電源,電壓范圍為0。(7)Vo(R)+10V參考電壓輸出端,具有的帶負(fù)載能力。表11.4 AD574A的轉(zhuǎn)換和讀操作控制真值表CE12 /A0操作內(nèi)容0×11111×100000××00111××××+5VDGNDDGND××01×
14、01無操作無操作啟動一次12位轉(zhuǎn)換啟動一次8位轉(zhuǎn)換并行讀出12位讀出高8位(A段和B段)讀出C段低4位,并自動后跟4個(gè)0(8)AGND模擬地。(9)GND數(shù)字地。(10)Vi(R)參考電壓輸入端。(11)VEE負(fù)電源,可選加之間的電壓。(12)BIP OFF雙極性偏移端,用于極性控制。單極性輸入時(shí)接模擬地(AGND),雙極性輸入時(shí)接Vo(R)端。(13)Vi(10)單極性010V范圍輸入端,雙極性±5V范圍輸入端。(14)Vi(20)單極性020V范圍輸入端,雙極性±10V范圍輸入端。(15)STS轉(zhuǎn)換狀態(tài)輸出端,只在轉(zhuǎn)換進(jìn)行過程中呈現(xiàn)高電平,轉(zhuǎn)換一結(jié)束立即返回到低電平???/p>
15、用查詢方式檢測此端電平變化,來判斷轉(zhuǎn)換是否結(jié)束,也可利用它的負(fù)跳變沿來觸發(fā)一個(gè)觸發(fā)器產(chǎn)生IRQ信號,在中斷服務(wù)程序中讀取轉(zhuǎn)換后的有效數(shù)據(jù)。從轉(zhuǎn)換被啟動并使STS變高電平一直到轉(zhuǎn)換周期完成這一段時(shí)間內(nèi),AD574A對再來的啟動信號不予理睬,轉(zhuǎn)換進(jìn)行期間也不能從輸出數(shù)據(jù)緩沖器讀取數(shù)據(jù)。3) 工作時(shí)序AD574A的工作時(shí)序如圖所示。對其啟動轉(zhuǎn)換和轉(zhuǎn)換結(jié)束后讀數(shù)據(jù)兩個(gè)過程分別說明如下:圖11.23 AD574A的工作時(shí)序(1)啟動轉(zhuǎn)換在=0和CE=1時(shí),才能啟動轉(zhuǎn)換。由于是=0和CE=1相與后,才能啟動A/D轉(zhuǎn)換,因此實(shí)際上這兩者中哪一個(gè)信號后出現(xiàn),就認(rèn)為是該信號啟動了轉(zhuǎn)換。無論用哪一個(gè)啟動轉(zhuǎn)換,都應(yīng)
16、使R/C信號超前其200ns時(shí)間變低電平。從圖可看出,是由CE啟動轉(zhuǎn)換的,當(dāng)R/為低電平時(shí),啟動后才是轉(zhuǎn)換,否則將成為讀數(shù)據(jù)操作。在轉(zhuǎn)換期間STS為高電平,轉(zhuǎn)換完成時(shí)變低電平。(2)讀轉(zhuǎn)換數(shù)據(jù)在=0和CE=1且為高電平時(shí),才能讀數(shù)據(jù),由12/決定是12位并行讀出,還是兩次讀出。如圖所示,或CE信號均可用作允許輸出信號,看哪一個(gè)后出現(xiàn),圖中為CE信號后出現(xiàn)。規(guī)定A0要超前于讀信號至少150ns,信號超前于CE信號最小可到零。從表和圖可看出,AD574A還能以一種單獨(dú)控制(stand-alone)方式工作: CE和12/固定接高電平,和A0固定接地,只用來控制轉(zhuǎn)換和讀數(shù),=0時(shí)啟動12位轉(zhuǎn)換,=1
17、時(shí)并行讀出12位數(shù)。具體實(shí)現(xiàn)辦法可有兩種:正脈沖控制和負(fù)脈沖控制。當(dāng)使用350ns以上的正脈沖控制時(shí),有脈沖期間開啟三態(tài)緩沖器讀數(shù),脈沖后沿(下降沿)啟動轉(zhuǎn)換。當(dāng)使用400ns以上的負(fù)脈沖控制時(shí),則前沿啟動轉(zhuǎn)換,脈沖結(jié)束后讀數(shù)。4) 使用方法AD574A有單極性和雙極性兩種模擬輸入方式。(1)單極性輸入的接線和校準(zhǔn)單極性輸入的接線如圖11.24(a)所示。AD574A在單極性方式下,有兩種額定的模擬輸入范圍: 0+10V的輸入接在Vi(10)和AGND間,0+20V輸入接在Vi(20)和AGND間。R1用于偏移調(diào)整(如不需進(jìn)行調(diào)整可把BIP OFF直接接AGND,省去外加的調(diào)整電路),R2用于
18、滿量程調(diào)整(如不需調(diào)整,R2可用一個(gè)50±1%的金屬膜固定電阻代替)。為使量化誤差為±LSB,AD574A的額定偏移規(guī)定為LSB。因此在作偏移調(diào)整時(shí),使輸入電壓為LSB(滿量程電壓為+10V時(shí)是1.22mV),調(diào)R1,使數(shù)字輸出為000000000000到000000000001的跳變。在做滿量程調(diào)整時(shí),是通過施加一個(gè)低于滿量程值1LSB的模擬信號進(jìn)行的,這時(shí)調(diào)R2以得到從到的跳變點(diǎn)。(2)雙極性輸入的接線和校準(zhǔn)雙極性輸入的接線如圖11.24(b)所示。和單極性輸入時(shí)一樣,雙極性時(shí)也有兩種額定的模擬輸入范圍:±5V和±10V。±5V輸入接在Vi
19、(10)和AGND之間;±10V接在Vi(20)和AGND之間。圖11.24 AD574A的輸入接線圖雙極性校準(zhǔn)也類似于單極性校準(zhǔn)。調(diào)整方法是,先施加一個(gè)高于負(fù)滿量程LSB(對于±5V范圍為-4.9988V)的輸入電壓,調(diào)R1,使輸出出現(xiàn)從000000000000到000000000001的跳變;再施加一個(gè)低于正滿量程1LSB(對于±5V范圍為+4.9963V)的輸入信號,調(diào)R2使輸出現(xiàn)從到的跳變。如偏移和增益無需調(diào)整,則相應(yīng)的調(diào)整電阻也和在單極性中一樣,R2可用50±1%的固定電阻代替。ADC 0808 與 ADC 0809 區(qū)別§7.3 A
20、/D轉(zhuǎn)換器ADC0809與 MCS-51單片機(jī)的接口設(shè)計(jì) ADC0808/0809八位逐次逼近式A/D轉(zhuǎn)換器是一種單片CMOS器件,包括8位的模/數(shù)轉(zhuǎn)換器,8通道多路轉(zhuǎn)換器和與微處理器兼容的控制邏輯.8通道多路轉(zhuǎn)換器能直接連通8個(gè)單端模擬信號中一任何一個(gè). 一,ADC0808/0809的內(nèi)部結(jié)構(gòu)及引腳功能 1,ADC0809轉(zhuǎn)換器內(nèi)部結(jié)構(gòu)2,ADC0809引腳功能分辨率為8位.最大不可調(diào)誤差A(yù)DC0808小于±1/2LSB,ADC0809小于±1LSB單一+5V供電,模擬輸入范圍為05V.具有鎖存三態(tài)輸出,輸出與TTL兼容.功耗為15mw.不必進(jìn)行零點(diǎn)和滿度調(diào)整.轉(zhuǎn)換速度取
21、決于芯片的時(shí)鐘頻率.時(shí)鐘頻率范圍:101280KHZ當(dāng)CLK=500KHZ時(shí),轉(zhuǎn)換速度為128s.IN0IN7:8路輸入通道的模擬量輸入端口. 2-12-8:8位數(shù)字量輸出端口. START,ALE:START為啟動控制輸入端口,ALE為地址鎖存控制信號端口.這兩個(gè)信號端可連接在一起,當(dāng)通過軟件輸入一個(gè)正脈沖,便立即啟動模/數(shù)轉(zhuǎn)換.EOC,OE:EOC為轉(zhuǎn)換結(jié)束信號脈沖輸出端口,OE為輸出允許控制端口,這兩個(gè)信號亦可連結(jié)在一起表示模/數(shù)轉(zhuǎn)換結(jié)束.OE端的電平由低變高,打開三態(tài)輸出鎖存器,將轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上.REF(+),REF(-),VCC,GND,REF(+)和REF(-)為
22、參考電壓輸入端,VCC為主電源輸入端,GND為接地端.一般REF(+)與VCC連接在一起,REF(-)與GND連接在一起.CLK:時(shí)鐘輸入端.3,8路模擬開關(guān)的三位地址選通編碼表ADDA,B,C8路模擬開關(guān)的三位地址選通輸入端,以選擇對應(yīng)的輸入通道. 地 址 碼對應(yīng)的輸入通道CBA000011110011001101010101IN0IN1IN2IN3IN4IN5IN6IN7二,ADC0808/0809與8031單片機(jī)的接口設(shè)計(jì) ADC0808/0809與8031單片機(jī)的硬件接口有三種方式,查詢方式,中斷方式和等待延時(shí)方式.究竟采用何種方式,應(yīng)視具體情況,按總體要求而選擇.1.延時(shí)方式 ADC
23、0809編程模式在軟件編寫時(shí),應(yīng)令p2.7=A15=0;A0,A1,A2給出被選擇的模擬通道的地址;執(zhí)行一條輸出指令,啟動A/D轉(zhuǎn)換;執(zhí)行一條輸入指令,讀取A/D轉(zhuǎn)換結(jié)果.通道地址:7FF8H7FFFH下面的程序是采用延時(shí)的方法,分別對8路模擬信號輪流采樣一次,并依次把結(jié)果轉(zhuǎn)存到數(shù)據(jù)存儲區(qū)的采樣轉(zhuǎn)換程序.START: MOV R1, #50H ;置數(shù)據(jù)區(qū)首地址MOV DPTR, #7FF8H ;P2.7=0且指向通道0 MOV R7, #08H ;置通道數(shù) NEXT: MOVX DPTR,A ;啟動A/D轉(zhuǎn)換MOV R6, #0AH ;軟件延時(shí)DLAY: NOPNOPNOPDJNZ R6, D
24、LAYMOVX A, DPTR ;讀取轉(zhuǎn)換結(jié)果MOV R1, A ;存儲數(shù)據(jù)INC DPTR ;指向下一個(gè)通道INC R1 ;修改數(shù)據(jù)區(qū)指針 DJNZ R7, NEXT ;8個(gè)通道全采樣完了嗎 . 2.中斷方式 將ADC0808/0809作為一個(gè)外部擴(kuò)展的并行I/O口,直接由8031的P2.0和脈沖進(jìn)行啟動.通道地址為FEF8HFEFFH用中斷方式讀取轉(zhuǎn)換結(jié)果的數(shù)字量,模擬量輸入通路選擇端A,B,C分別與8031的P0.0,P0.1,P0.2(經(jīng)74LS373)相連,CLK由8031的ALE提供. INTADC:SETB IT1 ;選擇為邊沿觸發(fā)方式SETB EA ;開中斷SETB EX1 ;
25、MOV DPTR, #0FEF8H ;通道地址送DPTRMOVX DPTR,A ;啟動A/D轉(zhuǎn)換PINT1: MOV DPTR, #0FEF8H ; 通道地址送DPTRMOVX A, DPTR;讀取從IN0輸入的轉(zhuǎn)換結(jié)果存入MOV 50H, A ;50H單元MOVX DPTR,A ;啟動A/D轉(zhuǎn)換RETI ;中斷返回三,接口電路設(shè)計(jì)中的幾點(diǎn)注意事項(xiàng)ADC0808/0809最高工作時(shí)鐘頻率的說明由于ADC0808/0809芯片內(nèi)無時(shí)鐘,所以必須靠外部提供時(shí)鐘;ADC0808/0809通過中斷方式與8031單片機(jī)接口的電路中,8031單片機(jī)的主頻接為6MHZ,ALE提供ADC0808/0809的時(shí)
26、鐘頻率為1MHZ(1000KHZ);實(shí)際應(yīng)用系統(tǒng)使用證明,ADC0808ADC0808/0809應(yīng)用設(shè)計(jì)時(shí),推薦選用640KHZ左右的時(shí)鐘頻率. 2,ADC0816/17與ADC0809的主要區(qū)別ADC0816/0817與ADC0808/0809相比,除模擬量輸入通道數(shù)增至16路,封裝為40引腳外,其原理,性能結(jié)構(gòu)基本相同.ADC0816和ADC0817的主要區(qū)別是:ADC0816的最大不可調(diào)誤差為±1/2LSB,精度高,價(jià)格也高;ADC0817的最大不可調(diào)誤差為士1LSB,價(jià)格低. 習(xí)題七 試設(shè)計(jì)一數(shù)據(jù)采集系統(tǒng) 2002.10 使用單位: 山東省氣象局在東營市孤島氣象觀察站設(shè)計(jì)單位
27、: 山東大學(xué)物理與微電子學(xué)院2000級設(shè)計(jì)方案: 自行確定提 示: 對于非模擬物理量,可以用下圖示意即可ADC0808百科名片ADC0808是采樣分辨率為8位的、以逐次逼近原理進(jìn)行模/數(shù)轉(zhuǎn)換的器件。其內(nèi)部有一個(gè)8通道多路開關(guān),它可以根據(jù)地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個(gè)進(jìn)行A/D轉(zhuǎn)換。ADC0808是ADC0809的簡化版本,功能基本相同。一般在硬件仿真時(shí)采用ADC0808進(jìn)行A/D轉(zhuǎn)換,實(shí)際使用時(shí)采用ADC0809進(jìn)行A/D轉(zhuǎn)換。ADC0808管腳圖內(nèi)部結(jié)構(gòu)ADC0808是CMOS單片型逐次逼近式AD轉(zhuǎn)換器,它有8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型A/D轉(zhuǎn)
28、換器。 引腳功能(外部特性)ADC0808芯片有28條引腳,采用雙列直插式封裝,如右圖所示。各引腳功能如下: 15和2628(IN0IN7):8路模擬量輸入端。 8、14、15和1721:8位數(shù)字量輸出端。 22(ALE):地址鎖存允許信號,輸入,高電平有效。 6(START): AD轉(zhuǎn)換啟動脈沖輸入端,輸入一個(gè)正脈沖(至少100ns寬)使其啟動(脈沖上升沿使0809復(fù)位,下降沿啟動A/D轉(zhuǎn)換)。 7(EOC): AD轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。 9(OE):數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)AD轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開
29、輸出三態(tài)門,輸出數(shù)字量。 10(CLK):時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KHZ。 12(VREF(+)和16(VREF(-):參考電壓輸入端 11(Vcc):主電源輸入端。 13(GND):地。 2325(ADDA、ADDB、ADDC):3位地址輸入線,用于選通8路模擬輸入中的一路 通道選擇極限參數(shù)電源電壓(Vcc):6.5V 控制端輸入電壓:-0.3V15V 其它輸入和輸出端電壓:-0.3VVcc+0.3V 貯存溫度:-65+150功耗(T=+25):875mW 引線焊接溫度:氣相焊接(60s):215;紅外焊接(15s):220抗靜電強(qiáng)度:400V一個(gè)風(fēng)格很好的AD轉(zhuǎn)換程序,值得
30、你參考 標(biāo)簽:AD轉(zhuǎn)換程序頂0 分享到 發(fā)表評論(0)開心001人人網(wǎng)新浪微博/ICC-AVR application builder : 2007/6/23 1:26:55/ Target : M16#include <iom16v.h>#include <macros.h>#define ADC_VREF_TYPE 0xe0 /選用2.56V 的片內(nèi)基準(zhǔn)電壓源,且結(jié)果為左對齊#define AD_SE_ADC0 0x00 /ADC0unsigned char Table10 = 0x3f,0x06,0x5b,0x4f,
31、0x66,0x6d,0x7d,0x07,0x7f,0x6f; /數(shù)碼管字型09unsigned char Data4 = 0,0,0,0; /存放A/D轉(zhuǎn)換結(jié)果unsigned long int i,j=2560,k=256;void port_init(void)PORTA = 0x01;DDRA = 0x00;PORTB = 0xFF;DDRB = 0xFF;PORTC = 0x0F; /m103 output onlyDDRC = 0x0F;PO
32、RTD = 0x00;DDRD = 0x00;/ADC initialize/ Conversion time: 112uSvoid adc_init(void)ADCSR = 0x00; /disable adcADMUX = 0x00; /select adc input 0ACSR = 0x80;ADCSR = 0x86;/call this routine to initialize all peripheralsvoid init_devices(void)/stop errant interrupts until set upCLI(); /disable all interrup
33、tsport_init();adc_init();MCUCR = 0x00;GICR = 0x00;TIMSK = 0x00; /timer interrupt sourcesSEI(); /re-enable interrupts/all peripherals are now initializedvoid delay_(unsigned char a)unsigned int i;for(i=0;i<a*7373;i+);void Display(unsigned char p) /動態(tài)顯示,unsigned char i;for(i=0;i<4;i+
34、)PORTD=0x01<<i;PORTB=Tablepi;delay_(5);PORTD&=(0x01<<i);unsigned int read_adc(unsigned char adc_input) /讀取A/D轉(zhuǎn)換結(jié)果ADMUX=adc_input|ADC_VREF_TYPE; ADCSRA|=0x40; /啟動A/D轉(zhuǎn)換while (ADCSRA&0x10)=0); /等待A/D轉(zhuǎn)換完成ADCSRA|=
35、0x10;return ADCH;void Process(unsigned int i,unsigned char *p) /數(shù)據(jù)處理函數(shù)p0=i/1000;i=i%1000;p1=i/100;i=i%100;p2=i/10;i=i%10;p3=i;void main(void)init_devices();DDRA=0x00; /設(shè)置A口為不帶上拉輸入;PORTA=0x00;DDRB=0xff; /設(shè)置B口為輸出口;DDRD=0xff; /設(shè)置D口為輸出口;PORTB=0x3f;
36、160; /B口初始化輸出0 ;D口初始化輸出1;點(diǎn)亮全部數(shù)碼管;PORTD=0xff;ADMUX=ADC_VREF_TYPE; /選擇第一通道ADC0;ADCSRA=0xA6; /125k轉(zhuǎn)換速率,自由轉(zhuǎn)換模式;啟動A/D轉(zhuǎn)換;delay_(1000); /延時(shí)待系統(tǒng)穩(wěn)定;while(1)i=read_adc(AD_SE_ADC0); /獲取A/D轉(zhuǎn)換數(shù)據(jù)i=(i*j)/k;Process(i,Data); /數(shù)據(jù)處理 Display(Data);&
37、#160; /顯示結(jié)果delay_(5);AD轉(zhuǎn)換程序匯編語言2007年10月12日 星期五 13:46;實(shí)驗(yàn)?zāi)康模菏煜/D轉(zhuǎn)換;軟件思路:選擇RAO做為模擬輸入通道;; 連續(xù)轉(zhuǎn)換4次再求平均值做為轉(zhuǎn)換結(jié)果; 最后結(jié)構(gòu)只取低8位;
38、0; 結(jié)果送數(shù)碼管的低3位顯示;硬件要求:撥碼開關(guān)S14第2位置ON,第1位置OFF; 撥碼開關(guān)S6全部置ON,S5第4-6位置ON,第1-3位置OFF; 為不影響結(jié)果,其他撥碼開關(guān)置OFF。#INCLUDE<P16F877a.INC> ;包含芯片頭文件_CONFIG _DE
39、BUG_OFF&_CP_ALL&_WRT_HALF&_CPD_ON&_LVP_OFF&_BODEN_OFF&_PWRTE_ON&_WDT_OFF&_HS_OSC;*寄存器定義*TEMP EQU 20H ;臨時(shí)寄存器BAI EQU
40、0; 21H ;轉(zhuǎn)換結(jié)果的百位SHI EQU 22H ;轉(zhuǎn)換結(jié)果的十位GE EQU 23H
41、60; ;轉(zhuǎn)換結(jié)果的個(gè)位;* ORG 00H ;復(fù)位入口地址 NOP
42、160; ;ICD需要的空指令 GOTO MAIN ;跳轉(zhuǎn)到主程序入口 ORG 04H
43、; ;中斷入口地址 RETFIE ;放置一條中斷返回指令,防止以外中斷發(fā)生;*查表程序*;入口參數(shù):W;出口參數(shù):WTABLE ADDWF PCL,1
44、60; ;指令寄存器加上偏移地址 RETLW 0C0H ;0的編碼(公陽極數(shù)碼管) &
45、#160; RETLW 0F9H ;1的編碼 RETLW 0A4H
46、60; ;2的編碼 RETLW 0B0H ;3的編碼 RETLW 99H
47、 ;4的編碼 RETLW 92H ;5的編碼 RETLW 082H ;6 RETLW
48、 0F8H ;7 RETLW 080H ;8 RETLW 090H
49、60; ;9;*主程序*MAIN MOVLW 30H MOVWF FSR ;轉(zhuǎn)換結(jié)果存放起始地址
50、 LOOP BSF STATUS,RP0 ;選擇體1 MOVLW 7H ;A口高3位為輸出,低3位輸入
51、0; MOVWF TRISA CLRF TRISD ;D口設(shè)為輸出 MOVLW 8EH MOVWF ADCON1
52、0; ;結(jié)果左對齊,只選擇RA0做ADC口,其余做普通數(shù)字口 BCF STATUS,RP0 ;回體0 MOVLW 41H MOVWF ADCON0
53、; ;選擇時(shí)鐘源為fosc/8,允許ADC工作 CALL DELAY ;調(diào)用延時(shí)程序,保證足夠的采樣時(shí)間 BSF ADCON0,GO
54、 ;啟動ADC轉(zhuǎn)換WAIT BTFSS PIR1,ADIF ;轉(zhuǎn)換是否完成 GOTO WAIT ;等待轉(zhuǎn)換的完成 BSF
55、 STATUS,RP0 MOVFW ADRESL ;讀取轉(zhuǎn)換的結(jié)果 BCF STATUS,RP0 MOVWF INDF&
56、#160; ;保存到臨時(shí)寄存器里 INCF FSR,1 BTFSS FSR,2 ;連續(xù)轉(zhuǎn)換4次,求平均值 GOTO
57、60; LOOP CALL CHANGE ;調(diào)用結(jié)果轉(zhuǎn)換程序 CALL DISPLAY ;調(diào)用顯示程序 GO
58、TO MAIN ;循環(huán)工作;*轉(zhuǎn)換程序*;入口參數(shù):30H-33H;出口參數(shù):BAI,SHI,GECHANGE CLRF BAI CLRF SHI CLRF
59、 GE ;先清除結(jié)果寄存器 MOVFW 31H ;以下8條指令求4次轉(zhuǎn)換結(jié)果的平均值 ADDWF
60、 30H,1 MOVFW 32H ADDWF 30H,1 MOVFW 33H ADDWF 30H,1 RRF
61、 30H,1 RRF 30H,0 MOVWF TEMP MOVLW 64H
62、; ;減100,結(jié)果保留在W中 SUBWF TEMP,0 BTFSS STATUS,C ;判斷是否大于100 GOTO SHI_VAL
63、; ;否,轉(zhuǎn)求十位結(jié)果 MOVWF TEMP ;是,差送回TEMP中 INCF BAI,1 ;百位加1
64、60; GOTO $-6 ;返回繼續(xù)求百位的值SHI_VAL MOVLW 0AH ;減10,結(jié)果保留在W中 &
65、#160; SUBWF TEMP,0 BTFSS STATUS,C ;判斷是否大于10 GOTO GE_VAL
66、; ;否,轉(zhuǎn)去判斷個(gè)位結(jié)果 MOVWF TEMP ;是,差送回TEMP中 INCF SHI,1 &
67、#160; ;十位值加1 GOTO $-6 ;轉(zhuǎn)會繼續(xù)求十位的值GE_VAL MOVFW TEMP MOVWF GE
68、160; ;個(gè)位的值 RETURN;*顯示程序*;入口參數(shù):BAI,SHI,GE;出口參數(shù):無DISPLAY MOVFW BAI ;顯示百位 CALL
69、60; TABLE MOVWF PORTD BCF PORTA,3 CALL DELAY CALL DELAY BSF PORTA,3
70、; MOVFW SHI ;顯示十位 CALL TABLE MOVWF PORTD BCF PORTA,4 C
71、ALL DELAY CALL DELAY BSF PORTA,4 MOVFW GE ;顯示個(gè)位 &
72、#160; CALL TABLE MOVWF PORTD BCF PORTA,5 CALL DELAY CALL DELAY BSF
73、 PORTA,5 RETURN;*延時(shí)程序*;入口參數(shù):無;出口參數(shù):無DELAY MOVLW 5FH MOVWF TEMP DECFSZ TEMP,1 GOTO $-1 RETURN;* END
74、0; ;程序結(jié)束串行AD轉(zhuǎn)換芯片與51單片機(jī)的接口電路及程序設(shè)計(jì) - 串行AD轉(zhuǎn)換芯片與51單片機(jī)的接口電路及程序設(shè)計(jì)AT89C51單片機(jī)系統(tǒng)經(jīng)常使用AD轉(zhuǎn)換器。雖然并行AD轉(zhuǎn)換器速度高、轉(zhuǎn)換通道多,但其價(jià)格高,占用單片機(jī)接口資源比串行AD轉(zhuǎn)換器多。工業(yè)檢測控制及智能化儀器儀表中經(jīng)常采用串行AD轉(zhuǎn)換器。ADS1110是一種精密、可連續(xù)
75、自校準(zhǔn)的串行AD轉(zhuǎn)換器,帶有差分輸入和高達(dá)16位的分辨率,其串行接口為I2C總線。AT89C51單片機(jī)通過軟件模擬I2C總線實(shí)現(xiàn)與ADS1110的連接。ADS1110的特點(diǎn)與內(nèi)部結(jié)構(gòu)ADS1110的特點(diǎn)完整的數(shù)據(jù)采集系統(tǒng)和小型SOT23-6封裝;片內(nèi)基準(zhǔn)電壓:精度2.048 V+0.05;片內(nèi)可編程增益放大器PGA;片內(nèi)振蕩器;16位分辨率;可編程的轉(zhuǎn)換速率15次秒240次秒;I2C總線接口(8個(gè)有效地址);電源電壓2.7 V5.5 V;低電流消耗240 A。ADS1110的引腳功能ADS1110串行AD轉(zhuǎn)換器采用6引腳貼片封裝,其引腳排列如圖1所示。VDD:電源端,通常接+5V;GND:模擬
76、地和數(shù)字地;VIN+、VIN-:采樣模擬信號輸入端,其范圍為2.048 V2.048 V;SCL:I2C總線時(shí)鐘線;SDA:I2C總線數(shù)據(jù)線。ADS1110的內(nèi)部結(jié)構(gòu)ADS1110是由帶有可調(diào)增益的-型轉(zhuǎn)換器內(nèi)核、2.048 V的電壓基準(zhǔn)、時(shí)鐘振蕩器和I2C總線接口組成。其內(nèi)部結(jié)構(gòu)如圖2所示。ADS1110的寄存器讀寫配置請參考:ADS110引腳功能,寄存器配置及應(yīng)用電路介紹 ADS1110的AD轉(zhuǎn)換器內(nèi)核是由差分開關(guān)電容-調(diào)節(jié)器和數(shù)字濾波器組成。調(diào)節(jié)器測量正模擬輸入和負(fù)模擬輸入的壓差,并將其與基準(zhǔn)電壓相比較。數(shù)字濾波器接收高速數(shù)據(jù)流并輸出代碼,該代碼是一個(gè)與輸入電壓成比例的數(shù)字,即AD轉(zhuǎn)換后
77、的數(shù)據(jù)。ADS1110片內(nèi)電壓基準(zhǔn)是2.048 V。ADS1110只能采用內(nèi)部電壓基準(zhǔn)該基準(zhǔn),不能測量,也不用于外部電路。ADS1110片內(nèi)集成時(shí)鐘振蕩器用于驅(qū)動-調(diào)節(jié)器和數(shù)字濾波器。ADS1110的信號輸入端設(shè)有可編程增益放大器PGA,其輸入阻抗在差分輸入時(shí)的典型值為2.8 M。硬件設(shè)計(jì)由于AT89C51單片機(jī)沒有I2C總線接口,可通過軟件模擬實(shí)現(xiàn)與I2C總線器件的連接。具體方法是將單片機(jī)的IO接口連接至I2C的數(shù)據(jù)線SDA和時(shí)鐘線SCL。通過軟件控制時(shí)鐘和數(shù)據(jù)傳輸,系統(tǒng)靈活性強(qiáng)。圖5所示是數(shù)據(jù)采集顯示系統(tǒng),采集工業(yè)現(xiàn)場的4路模擬信號并輪詢顯示。采用4個(gè)ADS1110作為AD轉(zhuǎn)換器,地址為E
78、D0ED3。具有I2C總線接口的EEPROM AT24C16作為存儲器。本系統(tǒng)有4位LED數(shù)碼顯示管和4個(gè)參數(shù)設(shè)定按鍵。采集數(shù)據(jù)經(jīng)數(shù)字濾波、16進(jìn)制工程值轉(zhuǎn)換后,送至數(shù)碼管輪詢顯示。ADS1110和AT24C16的I2C接口連ADSl110數(shù)據(jù)線SDA至單片機(jī)的P1.0,時(shí)鐘線SCL連接單片機(jī)的P1.1,上拉電阻阻值選10 k。軟件設(shè)計(jì)按照硬件電路,編寫AD轉(zhuǎn)換子程序?yàn)锳DS0,其中嵌套調(diào)用了START,為起始命令子程序,F(xiàn)SDZ1為向ADS1110發(fā)送單個(gè)字節(jié)命令的子程序,ADREAD是讀取輸出寄存器和配置寄存器的子程序,STOP是停止命令子程序。ADS0只對地址為ED0的ADS1110讀數(shù)
79、,如果要讀取其他ADS1110,只需更改地址即可。系統(tǒng)中ADS1110的工作方式選用默認(rèn)設(shè)置,即配置寄存器內(nèi)容為#8CH,所以程序未向配置寄存器寫入數(shù)據(jù)。程序代碼如下:5 結(jié)束語ADS1110是一款高性價(jià)比具有I2C總線接口的串行AD轉(zhuǎn)換器。ADS1110已在單片機(jī)系統(tǒng)中應(yīng)用,并用于現(xiàn)場。實(shí)踐證明,ADS1110和單片機(jī)組成的數(shù)據(jù)采集系統(tǒng),占用IO端口少、功耗低,適用無電源場合。但需注意的是,因I2C總線為串行擴(kuò)展總線,數(shù)據(jù)采集時(shí)不能用于實(shí)時(shí)速度要求較高的場合。上一篇:串行A/D轉(zhuǎn)換器ADSL1110引腳圖,特點(diǎn)及內(nèi)部結(jié)構(gòu)介紹 51寫的單片機(jī)程序,AD轉(zhuǎn)換,0809,具有記憶電壓功能,自動掃描
80、,智能掃描。想看就得靜下心來看2008-08-17 03:54;模數(shù)轉(zhuǎn)換8位,最小精度0.02,;ADC 0809;外部頻率500KHZ; -; 0.00.3位控制-|p0 p2 |-|-/8-顯示段控制; 0.40.7按鍵-| |; | |; &
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能技術(shù)在智能音頻廣告制作中的應(yīng)用與廣告吸引力提升
- 籃球教練授課協(xié)議書范本
- 2025年無菌技術(shù)試題及答案
- 終身補(bǔ)償協(xié)議書范本
- 民事糾紛賠償協(xié)議書范本
- 2025年建筑工程管理人員三級安全教育試題及答案
- 2025年《傳染病防治法》知識試題及答案
- 2025年員工夏季防暑降溫措施附急救知識考試題(附答案)
- 2025年機(jī)動車檢驗(yàn)檢測機(jī)構(gòu)授權(quán)簽字人考核試題及答案
- 2025年《處方管理辦法、處方審核規(guī)范》培訓(xùn)試題(附答案)
- 2025年工業(yè)互聯(lián)網(wǎng)工程技術(shù)人員考核試題題庫及答案
- 供貨組織方案范文
- 2025年《藥品經(jīng)營和使用質(zhì)量監(jiān)督管理辦法》培訓(xùn)試題及答案
- 2024年云南省縣鄉(xiāng)教師選調(diào)考試《教育學(xué)》真題匯編帶解析(原創(chuàng)題)
- 羊肚菌栽培及其管理課件
- 教師身體健康管理指南
- 2025高空作業(yè)考試試題及答案(完整版)
- 出租車車輛GPS定位承包合同范本
- 肝膿腫病人護(hù)理
- 膝關(guān)節(jié)炎的康復(fù)治療講課件
- 福建省廈門中煙益升華濾嘴棒有限責(zé)任公司招聘筆試題庫2025
評論
0/150
提交評論