ADC0832

ADC0832

電子工業芯片産品
ADC0832是美國國家半導體公司生産的一種8位分辨率、雙通道A/D轉換芯片。由于它體積小,兼容性,性價比高而深受單片機愛好者及企業歡迎,其目前已經有很高的普及率。學習并使用ADC0832可是使我們了解A/D轉換器的原理,有助于我們單片機技術水平的提高。
  • 中文名:ADC0832
  • 外文名:
  • 所屬品牌:
  • 産品類型:
  • 分辨率:8位
  • A/D轉換器:逐次逼近式
  • A/D轉換:雙通道

特點

·輸入輸出電平與TTL/CMOS相兼容;

·5V電源供電時輸入電壓在0~5V之間;

·工作頻率為250KHZ,轉換時間為32μS;

·一般功耗僅為15mW;

·8P、14P—DIP(雙列直插)、PICC多種封裝;

·商用級芯片溫寬為0°Cto+70°C,工業級芯片溫寬為−40°Cto+85°C;

芯片接口說明:

·CS_片選使能,低電平芯片使能。

·CH0模拟輸入通道0,或作為IN+/-使用。

·CH1模拟輸入通道1,或作為IN+/-使用。

·GND芯片參考0電位(地)。

·DI數據信号輸入,選擇通道控制。

·DO數據信号輸出,轉換數據輸出。

·CLK芯片時鐘輸入。

·Vcc/REF電源輸入及參考電壓輸入(複用)。

ADC0832為8位分辨率A/D轉換芯片,其最高分辨可達256級,可以适應一般的模拟量轉換要求。其内部電源輸入與參考電壓的複用,使得芯片的模拟電壓輸入在0~5V之間。芯片轉換時間僅為32μS,據有雙數據輸出可作為數據校驗,以減少數據誤差,轉換速度快且穩定性能強。獨立的芯片使能輸入,使多器件挂接和處理器控制變的更加方便。通過DI數據輸入端,可以輕易的實現通道功能的選擇。

控制原理

單片機對ADC0832的控制原理

正常情況下ADC0832與單片機的接口應為4條數據線,分别是CS、CLK、DO、DI。但由于DO端與DI端在通信時并未同時有效并與單片機的接口是雙向的,所以電路設計時可以将DO和DI并聯在一根數據線上使用。當ADC0832未工作時其CS輸入端應為高電平,此時芯片禁用,CLK和DO/DI的電平可任意。當要進行A/D轉換時,須先将CS使能端置于低電平并且保持低電平直到轉換完全結束。此時芯片開始轉換工作,同時由處理器向芯片時鐘輸入端CLK輸入時鐘脈沖,DO/DI端則使用DI端輸入通道功能選擇的數據信号。在第1個時鐘脈沖的下沉之前DI端必須是高電平,表示起始信号。在第2、3個脈沖下沉之前DI端應輸入2位數據用于選擇通道功能,其功能詳見官方資料

如資料所示,當此2位數據為“1”、“0”時,隻對CH0進行單通道轉換。當2位數據為“1”、“1”時,隻對CH1進行單通道轉換。當2位數據為“0”、“0”時,将CH0作為正輸入端IN+,CH1作為負輸入端IN-進行輸入。當2位數據為“0”、“1”時,将CH0作為負輸入端IN-,CH1作為正輸入端IN+進行輸入。到第3個脈沖的下沉之後DI端的輸入電平就失去輸入作用,此後DO/DI端則開始利用數據輸出DO進行轉換數據的讀取。從第4個脈沖下沉開始由DO端輸出轉換數據最高位DATA7,随後每一個脈沖下沉DO端輸出下一位數據。直到第11個脈沖時發出最低位數據DATA0,一個字節的數據輸出

完成。也正是從此位開始輸出下一個相反字節的數據,即從第11個字節的下沉輸出DATA0。随後輸出8位數據,到第19個脈沖時數據輸出完成,也标志着一次A/D轉換的結束。最後将CS置高電平禁用芯片,直接将轉換後的數據進行處理就可以了。

作為單通道模拟信号輸入時ADC0832的輸入電壓是0~5V且8位分辨率時的電壓精度為19.53mV。如果作為由IN+與IN-輸入的輸入時,可是将電壓值設定在某一個較大範圍之内,從而提高轉換的寬度。但值得注意的是,在進行IN+與IN-的輸入時,如果IN-的電壓大于IN+的電壓則轉換後的數據結果始終為00H。

簡單應用

圖1

上圖中說明了,ADC0832的封裝以及工作模式的選取...

圖2

此圖說明了ADC0832的工作時序..時鐘與DI,DO輸入,輸出的關系..

下面是測試程序,選擇CH1,單片機晶振為,18.432MHz

;ADC0832簡單測試(改)

A_0832_CSEQUP1.0;CS

A_0832_CLKEQUP1.1;CLK

A_0832_DIEQUP1.2;DI

A_0832_DEQUP1.3;DO

A_0832_TEQU40H;讀取時的脈沖計數

A_0832_DAEQU41H;數據所存位置

ORG0

LJMPMAIN

ORG30H

MAIN:LCALLADC_RD

MOVA,A_0832_DA

AJMP$

ADC_RD:

MOVA_0832_T,#8

CLRA_0832_CLK

CLRA_0832_CS

SETBA_0832_DI;START

SETBA_0832_CLK;第一個上升沿

NOP

NOP

NOP

CLRA_0832_CLK

NOP

NOP

SETBA_0832_DI;選擇CH1,通過組合選取通道(SGL/DIF)

NOP

SETBA_0832_CLK;第二個上升沿

NOP

NOP

NOP

CLRA_0832_CLK

NOP

NOP

SETBA_0832_DI;選擇CH1,通過組合選取通道(ODD/SIGN)

NOP

SETBA_0832_CLK;第三個上升沿

NOP

NOP

NOP

CLRA_0832_CLK;首個下降沿

NOP

NOP

NOP

SETBA_0832_CLK

NOP

NOP

A_0832_RD:;讀取前,8位

CLRA_0832_CLK

NOP

NOP

NOP

SETBA_0832_CLK

MOVC,A_0832_D

RLCA

DJNZA_0832_T,A_0832_RD

MOVA_0832_DA,A

RRA

MOVA_0832_T,#7

A_0832_RD1:;讀後7位,+前1位

CLRA_0832_CLK

NOP

NOP

NOP

SETBA_0832_CLK

MOVC,A_0832_D

RRCA

DJNZA_0832_T,A_0832_RD1

CJNEA,A_0832_DA,ADC_RD

SETBA_0832_CS

RET

END

相關詞條

相關搜索

其它詞條