《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計[圖]
基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計[圖]
摘要: 給出了采用8051單片機為核心來實現(xiàn)多路數(shù)據(jù)采集與通信控制的設(shè)計方法。該方法將8路被測電壓通過通用ADC0809模數(shù)轉(zhuǎn)換來實現(xiàn)對采集到的數(shù)據(jù)進行模擬量到數(shù)字量的轉(zhuǎn)換,然后由單片機對數(shù)據(jù)進行處理,再將數(shù)據(jù)通過串行口傳輸?shù)絇C機上,同時采用MAX232接口芯片來實現(xiàn)MCU與PC機間的電平匹配,最后由PC機完成數(shù)據(jù)的接收和顯示。
Abstract:
Key words :
“數(shù)據(jù)采集”是指將溫度、壓力、流量、位移等模擬物理量采集并轉(zhuǎn)換成數(shù)字量后,再由計算機進行存儲、處理、顯示和打印的過程,相應(yīng)的系統(tǒng)稱為數(shù)據(jù)采集系統(tǒng)。

本文的主要任務(wù)是對0~5V的直流電壓進行測量并送到遠(yuǎn)端的PC機上進行顯示。由于采集的是直流信號,對于緩慢變化的信號不必加采樣保持電路,因此選用市面上比較常見的逐次逼近型ADC0809芯片,該芯片轉(zhuǎn)換速度快,價格低廉,可以直接將直流電壓轉(zhuǎn)換為計算機可以處理的數(shù)字量。同時選用低功耗的LCD顯示器件來滿足其在終端顯示采集結(jié)果的需求。終端鍵盤控制采用盡可能少的鍵來實現(xiàn)控制功能,為了防止鍵盤不用時的誤操作,設(shè)計時還設(shè)置了鎖鍵功能,在鍵盤的輸入消抖方面,則采用軟件消抖方法來降低硬件開銷,提高系統(tǒng)的抗干擾能力。軟件設(shè)計方面則采用功能模塊化的設(shè)計思想;鍵盤模數(shù)轉(zhuǎn)換等采用中斷方式來實現(xiàn),從而大大提高了單片機的效率以及實時處理能力。

1 數(shù)據(jù)采集系統(tǒng)的硬件結(jié)構(gòu)

數(shù)據(jù)采集系統(tǒng)的硬件結(jié)構(gòu)一般由信號調(diào)理電路、多路切換電路、采樣保持電路、A/D轉(zhuǎn)換器以及單片機等組成。本文主要完成功能的系統(tǒng)硬件框圖如圖1所示。

基于ADC0809和51單片機的<a class=多路數(shù)據(jù)采集系統(tǒng)設(shè)計" height="153" src="http://files.chinaaet.com/images/20110701/466ce790-2dfb-4624-8b03-90156e5907a8.jpg" width="300" />

2 ADC0809模數(shù)轉(zhuǎn)換器簡介

2.1 ADC0809的結(jié)構(gòu)功能

本數(shù)據(jù)采集系統(tǒng)采用計算機作為處理器。電子計算機所處理和傳輸?shù)亩际遣贿B續(xù)的數(shù)字信號,而實際中遇到的大都是連續(xù)變化的模擬量,模擬量經(jīng)傳感器轉(zhuǎn)換成電信號后,需要模/數(shù)轉(zhuǎn)換將其變成數(shù)字信號才可以輸入到數(shù)字系統(tǒng)中進行處理和控制,因此,把模擬量轉(zhuǎn)換成數(shù)字量輸出的接口電路,即A/D轉(zhuǎn)換器就是現(xiàn)實信號轉(zhuǎn)換的橋梁。

目前,世界上有多種類型的A/D轉(zhuǎn)換器,如并行比較型、逐次逼近型、積分型等。本文采用逐次逼近型A/D轉(zhuǎn)換器,該類A/D轉(zhuǎn)換器轉(zhuǎn)換精度高,速度快,價格適中,是目前種類最多,應(yīng)用最廣的A/D轉(zhuǎn)換器。逐次逼近型A/D轉(zhuǎn)換器一般由比較器、D/A轉(zhuǎn)換器、寄存器、時鐘發(fā)生器以及控制邏輯電路組成。

ADC0809就是一種CMOS單片逐次逼近式A/D轉(zhuǎn)換器,其內(nèi)部結(jié)構(gòu)如圖2所示。該芯片由8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型D/A轉(zhuǎn)換器、逐次逼近寄存器、三態(tài)輸出鎖存器等電路組成。因此,ADC0809可處理8路模擬量輸入,且有三態(tài)輸出能力。該器件既可與各種微處理器相連,也可單獨工作。其輸入輸出與TTL兼容。

基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計

ADC0809是8路8位A/D轉(zhuǎn)換器(即分辨率8位),具有轉(zhuǎn)換起??刂贫耍D(zhuǎn)換時間為100μs采用單+5V電源供電,模擬輸入電壓范圍為0~+5V,且不需零點和滿刻度校準(zhǔn),工作溫度范圍為-40~+85℃功耗可抵達(dá)約15mW。

ADC0809芯片有28條引腳,采用雙列直插式封裝,圖3所示是其引腳排列圖。各引腳的功能如下:

基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計

IN0~IN7:8路模擬量輸入端;
     D0~D7:8位數(shù)字量輸出端;
     ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路;
     ALE:地址鎖存允許信號,輸入,高電平有效;
     START:A/D轉(zhuǎn)換啟動信號,輸入,高電平有效;
     EOC:A/D轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平);
     OE:數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平才能打開輸出三態(tài)門,輸出為數(shù)字量;
     CLK:時鐘脈沖輸入端。要求時鐘頻率不高640kHz;
     REF(+)、REF(-):基準(zhǔn)電壓;
     Vcc:電源,單一+5V;
     GND:地。

ADC0809工作時,首先輸入3位地址,并使ALE為1,以將地址存入地址鎖存器中。此地址經(jīng)譯碼可選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位;下降沿則啟動A/D轉(zhuǎn)換,之后,EOC輸出信號變低,以指示轉(zhuǎn)換正在進行,直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)束,并將結(jié)果數(shù)據(jù)存入鎖存器,這個信號也可用作中斷申請。當(dāng)OE輸入高電平時,ADC的輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量可輸出到數(shù)據(jù)總線。

A/D轉(zhuǎn)換器的位數(shù)決定著信號采集的精度和分辨率。對于8通道的輸入信號,其分辨率為0.5%。8位A/D轉(zhuǎn)換器的精度為:

基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計

2.2 ADC0809的工作時序

圖4所示是ADC0809的工作時序圖。從該時序圖可以看出,地址鎖存信號ALE在上升沿將三位通道地址鎖存,相應(yīng)通道的模擬量經(jīng)過多路模擬開關(guān)送到A/D轉(zhuǎn)換器。啟動信號START上升沿復(fù)位內(nèi)部電路,START的下降沿啟動轉(zhuǎn)換,此時轉(zhuǎn)換結(jié)束信號EOC呈低電平狀態(tài),由于逐位逼近需要一定過程,所以,在此期間,模擬輸入量應(yīng)維持不變,比較器要一次次比較,直到轉(zhuǎn)換結(jié)束,此時變?yōu)楦唠娖?。若CPU發(fā)出輸出允許信號OE(輸出允許為高電平),則可讀出數(shù)據(jù)。另外,ADC0809具有較高的轉(zhuǎn)換速度和精度,同時受溫度影響也較小。

基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計

2.3 ADC0809與MCS-51單片機的接口電路

ADC0809與MCS-51系列單片機的接口電路如圖5所示。圖中,74LS373輸出的低3位地址A2、A1、A0加到通道選擇端A、B、C,可作為通道編碼。其通道基本地址為0000H~0007H。8051的WR與P2.7經(jīng)過或非門后,可接至ADC0809的START及ALE引腳。8051的RD與P2.7經(jīng)或非門后則接至ADC0809的OE端。ADC0809的EOC經(jīng)反相后接到8051單片機的P3.3(INT1)。

基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計

3 單片機與PC機的互連

目前的串行通信接口標(biāo)準(zhǔn)都是在RS-232標(biāo)準(zhǔn)的基礎(chǔ)上經(jīng)過改進而形成的。RS-323C標(biāo)準(zhǔn)是美國EIA(電子工業(yè)聯(lián)合會)與BELL等公司一起開發(fā)通信協(xié)議。它適合于數(shù)據(jù)傳輸速率在0~20000b/s范圍內(nèi)的通信。這個標(biāo)準(zhǔn)對串行通信接口(如信號線功能、電器)特性都作了明確規(guī)定。由于通行設(shè)備廠商都生產(chǎn)與RS-232C制式兼容的通信設(shè)備,因此,它作為一種標(biāo)準(zhǔn),目前已在微機通信接口中廣泛采用。

3.1 電氣特性

EIA-RS-232C對電器特性、邏輯電平和各種信號線功能都作了規(guī)定。在TxD和RxD上,邏輯1(MARK)電平為-3V~-15V,邏輯0(SPACE)電平為+3~+15V;而在RTS、CTS、DSR、DTR和DCD等控制線上,信號有效(接通,ON狀態(tài),正電壓)電壓為+3V~+15V,信號無效(斷開,OFF狀態(tài),負(fù)電壓)電壓為-3V~-15V。

以上規(guī)定說明了RS-323C標(biāo)準(zhǔn)對邏輯電平的定義。對于數(shù)據(jù)(信息碼):邏輯“1”(傳號)的電平低于-3V,邏輯“0”(空號)的電平高于+3V;對于控制信號;接通狀態(tài)(ON)即信號有效的電平高于+3V,斷開狀態(tài)(OFF)即信號無效的電平低于-3V,也就是說,當(dāng)傳輸電平的絕對值大于3V時,電路才可以有效地檢查出來,介于-3~+3V之間的電壓無意義。低于-15V或高于+15V的電壓也認(rèn)為無意義,因此,實際工作時,應(yīng)保證電平在±(3~15)V之間。

對于EIA-RS-232C與TTL的轉(zhuǎn)換,由于EIARS-232C是用正負(fù)電壓來表示邏輯狀態(tài),它與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計算機接口或與終端的TTL器件連接,就必須在EIA-RS-232C與TTL電路之間進行電平和邏輯關(guān)系的變換。實現(xiàn)這種變換的方法可用分立元件,也可用集成電路芯片。

3.2 DB-9連接器

DB-9連接器作為提供多功能I/O卡或主板上COM1和COM2兩個串行接口的連接器。它只提供異步通信的9個信號。由于DB-9型連接器的引腳分配與DB-25型引腳信號完全不同。因此,若要與配接DB-25型連接器的DCE設(shè)備進行連接,就必須使用專門的電纜線。

設(shè)計時對電纜長度的要求是在通信速率低于20kb/s時,RS-232C所直接連接的最大物理距離應(yīng)為15m(50英尺)。

根據(jù)RS-232C標(biāo)準(zhǔn)規(guī)定,若不使用MODEM,在碼元畸變小于4%的情況下,DTE和DCE之間的最大傳輸距離為15m(50英尺)。由于這個最大距離是在碼元畸變小于4%的前提下給出的。因此,為了保證碼元畸變小于4%的要求,本接口標(biāo)準(zhǔn)在電氣特性中規(guī)定,驅(qū)動器的負(fù)載電容應(yīng)小于2500pF。

3.3 單片機與MAX232的連接

MAX232是一種雙組驅(qū)動器/接收器,該芯片可完成TTL←→EIA雙向電平轉(zhuǎn)換。其片內(nèi)含有一個電容性電壓發(fā)生器,可以在單+5V伏電壓供電時提供EIA/TIA-232-E電平。每個接收器都應(yīng)將EIA/TIA-232-E電平轉(zhuǎn)換為5VTTL/CMOS電平。這些接收器具有1.3V的典型門限值及0.5V的典型遲滯,而且可以接收30V輸入。每個驅(qū)動器都應(yīng)將TTL/CMOS輸入電平轉(zhuǎn)換為EIA/TIA-232-E電平。所有的驅(qū)動器,接收器及電壓發(fā)生器都可以在德州儀器公司的元件庫中得到標(biāo)準(zhǔn)單元。MAX232的工作溫度范圍為0~70℃。

基于ADC0809和51單片機的多路數(shù)據(jù)采集系統(tǒng)設(shè)計

圖6所示是MAX232芯片的工作電路圖。在實際應(yīng)用中,該器件對電源的噪聲很敏感。圖中的四個取同樣數(shù)值的電解電容(1.0μF/16V),用以提高抗干擾能力。本設(shè)計可從MAX232芯片中的兩路發(fā)送接收器中選用一路作為接口,但設(shè)計時應(yīng)注意發(fā)送與接收的對應(yīng)。

4 結(jié)束語

本文給出了一個基于AD0809和單片機的多路數(shù)據(jù)采集系統(tǒng)的硬件實現(xiàn)方法,該方法在終端采用8051單片機為核心來控制數(shù)據(jù)采集及數(shù)據(jù)上傳工作,并通過A/D轉(zhuǎn)換器將0~5V的直流電壓轉(zhuǎn)換為計算機可以進行處理的數(shù)字信號,然后經(jīng)過單片機對其進行處理,從而完成在終端顯示以及將數(shù)據(jù)上傳等功能。系統(tǒng)中的上位機完成對所采集的數(shù)據(jù)進行顯示及對下位機的控制等功能。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。