標(biāo)題: 單片機(jī)ADC0809模數(shù)轉(zhuǎn)換實(shí)驗(yàn)程序與Proteus仿真 [打印本頁]
作者: cliff2009 時間: 2021-11-3 20:40
標(biāo)題: 單片機(jī)ADC0809模數(shù)轉(zhuǎn)換實(shí)驗(yàn)程序與Proteus仿真
1、了解A/D轉(zhuǎn)換與單片機(jī)的接口;
2、了解ADC0809轉(zhuǎn)換性能及編程方法;
3、通過實(shí)驗(yàn)了解單片機(jī)如何進(jìn)行數(shù)據(jù)采集。
4、熟練Proteus仿真軟件的使用;
5、熟練單片機(jī)實(shí)驗(yàn)箱的實(shí)驗(yàn)操作。
二、實(shí)驗(yàn)預(yù)習(xí)要求1、掌握ADC0808的工作原理;
2、掌握數(shù)碼管顯示的原理。
三、實(shí)驗(yàn)設(shè)備和器件PC機(jī) 一臺
PROTEUS仿真軟件 一套
實(shí)驗(yàn)箱 一臺
ISP下載器 一臺
51仿真器 一臺(可選)
四、實(shí)驗(yàn)要求1、利用ADC0808/(0809)做A/D轉(zhuǎn)換器,由實(shí)驗(yàn)板上的電位器提供模擬量輸入,編寫程序?qū)⒛M量轉(zhuǎn)換成二進(jìn)制數(shù)字量,用P1口輸出到發(fā)光二極管顯示,或通過八段碼數(shù)碼管將數(shù)值顯示出來。實(shí)物板中使用ADC0809芯片,它與ADC0808是全兼容的。
五、實(shí)驗(yàn)原理A/D 是模擬量到數(shù)字量的轉(zhuǎn)換,依靠的是模數(shù)轉(zhuǎn)換器(Analog to Digital Converter),簡稱ADC。A/D轉(zhuǎn)換器大致有三類:一是雙積分A/D轉(zhuǎn)換器,優(yōu)點(diǎn)是精度高,抗干擾性好,價(jià)格便宜,但速度慢;二是逐次逼近A/D轉(zhuǎn)換器,精度、速度、價(jià)格適中;三是并行A/D轉(zhuǎn)換器,速度快,價(jià)格也昂貴。
圖:ADC0808
上圖所示就是ADC0808。實(shí)驗(yàn)用的ADC0808屬第二類,是含8 位A/D 轉(zhuǎn)換器、8 路多路開關(guān),以及與微型計(jì)算機(jī)兼容的控制邏輯的CMOS組件,其轉(zhuǎn)換方法為逐次逼近型。ADC0808的精度為 1/2LSB。在AD 轉(zhuǎn)換器內(nèi)部有一個高阻抗斬波穩(wěn)定比較器,一個帶模擬開關(guān)樹組的256 電阻分壓器,以及一個逐次通近型寄存器。8 路的模擬開關(guān)的通斷由地址鎖存器和譯碼器控制,可以在8 個通道中任意訪問一個單邊的模擬信號。具體的引腳功能如下:
1~5和26~28(IN0~I(xiàn)N7):8路模擬量輸入端。
8、14、15和17~21:8位數(shù)字量輸出端。
22(ALE):地址鎖存允許信號,輸入,高電平有效。
6(START): A/D轉(zhuǎn)換啟動脈沖輸入端,輸入一個正脈沖(至少100ns寬)使其啟動(脈沖上升沿使0808復(fù)位,下降沿啟動A/D轉(zhuǎn)換)。
7(EOC): A/D轉(zhuǎn)換結(jié)束信號,輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸出一個高電平(轉(zhuǎn)換期間一直為低電平)。
9(OE):數(shù)據(jù)輸出允許信號,輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時,此端輸入一個高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。
10(CLK):時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。
12(VREF(+))和16(VREF(-)):參考電壓輸入端。
11(Vcc):主電源輸入端。
13(GND):地。
23~25(ADDA、ADDB、ADDC):3位地址輸入線,用于選通8路模擬輸入中的一路。
查詢ADC0808的數(shù)據(jù)手冊可以知道其時序圖,如下圖所示。根據(jù)時序圖來編寫程序。
圖:ADC0808ADC的時序圖
六、Proteus使用的元器件七、原理圖設(shè)計(jì)總原理圖:
1.在Proteus中繪制單片機(jī)最小系統(tǒng),包括主控芯片、晶振電路和復(fù)位電路。
2. 添加ADC0808芯片,IN0端口連接可調(diào)電位器,ADDA、B、C三個端口接地,VREF+接電源,VREF-接地,EOC、CLOCK通過標(biāo)號連接到單片機(jī)的P3.0和P3.1口,8個輸出口通過標(biāo)號連接到單片機(jī)的P0口,P0口需要添加上拉排阻。
3.添加74LS02,2和6引腳共同連接到P2.7口,并添加電阻上拉;3引腳通過標(biāo)號連接到P3.6,5引腳了解到P3.7,1引腳接入0808的START端口,4引腳接入0808的OE端口。
3.添加4位共陽數(shù)碼管,A-DP通過標(biāo)號連接到P1口,1-4位選通過標(biāo)號連接到P2.0-P2.3。
八、程序流程圖九、硬件連接圖1. 硬件電路
圖:8位共陽數(shù)碼管
圖:ADC0809模數(shù)轉(zhuǎn)換
2.硬件連接表
十、實(shí)驗(yàn)步驟1、新建原理圖
- 打開Proteus 8,點(diǎn)擊新建工程;
- 命名工程,最好用英文或數(shù)字命名;
- 創(chuàng)建原理圖,選擇DEFAULT;
- 選擇不創(chuàng)建PCB設(shè)計(jì);
- 創(chuàng)建固件項(xiàng)目,系列選擇8051,控制器選擇AT89C52,編譯器選擇Keil for 8051;
- 點(diǎn)擊藍(lán)色的P圖標(biāo)進(jìn)入元器件選取界面;
- 在左上角輸入所需元器件關(guān)鍵字,并在右側(cè)列表雙擊選取所需器件,點(diǎn)擊確定;
- 選取后,左側(cè)的器件欄窗口會有相應(yīng)元器件列表;
- 參考原理圖設(shè)計(jì)步驟完成器件的排布和連線。
2、新建程序
- 根據(jù)程序流程圖,在main.c文件中輸入完整程序代碼。
3、Proteus中編譯和仿真
- 在快捷工具欄中的下拉列菜單Debug /Release/配置選項(xiàng)中,選擇Debug。
- 然后在工程中,右鍵單擊AT89C52,在出現(xiàn)的下拉列表中選擇構(gòu)建工程,或點(diǎn)擊工具欄構(gòu)建工程圖標(biāo)(或快捷鍵Ctrl+F7)進(jìn)行構(gòu)建工程,等待編譯完成。
- 編譯成功后,切換到原理圖狀態(tài)下點(diǎn)擊運(yùn)行按鈕(或快捷鍵F12),可通過人機(jī)接口觀察程序的仿真結(jié)果,如下圖所示。
4、硬件實(shí)驗(yàn)
- 連接ISP下載器一端到PC機(jī)USB接口,另一端連到目標(biāo)板。
- 在快捷工具欄中的下拉列菜單Debug /Release/配置選項(xiàng)中,選擇Release。
- 點(diǎn)擊工程設(shè)置,并按如下步驟設(shè)置,設(shè)置完成后點(diǎn)擊確定;
- 出現(xiàn)固件上傳完成提示,表示程序上傳成功。
- 實(shí)驗(yàn)現(xiàn)象參考附件視頻。
十一、參考程序參考程序見光盤
十二、實(shí)驗(yàn)現(xiàn)象程序下載并運(yùn)行后,數(shù)碼管顯示當(dāng)前電壓值,調(diào)節(jié)電位器在0—5V調(diào)節(jié)電壓,數(shù)碼管跟隨顯示。附GIF圖和實(shí)驗(yàn)視頻。
實(shí)驗(yàn)13現(xiàn)象.gif (492.36 KB, 下載次數(shù): 57)
下載附件
2021-11-4 04:06 上傳
Proteus仿真只能用8.1版本打開,
Keil程序下載:
ADC0809模數(shù)轉(zhuǎn)換實(shí)驗(yàn).rar
(731.2 KB, 下載次數(shù): 150)
2021-11-3 20:39 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
作者: 1250751980 時間: 2021-12-23 14:54
你好,我是一名大二的學(xué)生,今年剛開始接觸單片機(jī),我們有一個實(shí)驗(yàn)和你這個實(shí)驗(yàn)是類似的,不過我還要用到8255A來輸出,轉(zhuǎn)換的模擬信號,在數(shù)碼管上后兩位上顯示出來顯示出來。但我我的protues電路圖仿真那個IN0口的模擬輸入一直沒有轉(zhuǎn)換出來,代碼是師傅給的,沒有給電路圖,是我自己編的,我不知道是我連線的問題還怎么樣,看到你這個帖子,我就想來請教下你,可不可以幫我看看
作者: s985643662 時間: 2024-11-23 10:10
太感謝樓主了,幫大忙了
作者: yyyykkkk123 時間: 2024-12-16 19:56
太感謝樓主了,幫大忙了
作者: cra_cra 時間: 2025-6-17 15:35
講得很仔細(xì),贊
| 歡迎光臨 (http://m.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |