日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ADC0809实验

發布時間:2024/1/1 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ADC0809实验 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實驗十 ADC0809實驗

?

一、實驗目的

熟悉A/D轉換的基本原理,掌握ADC0809的使用方法。

二、實驗設備

MUT—Ⅲ型實驗箱、8086CPU模塊。

三、實驗內容

從ADIN0輸入一路模擬信號,啟動A/D轉換,用簡單輸入口(74LS244)查詢EOC信號,轉換結束后查看轉換結果。同時用萬用表測量輸入的模擬電壓,與轉換后的數字量比較。作圖,橫坐標是模擬電壓,縱坐標是轉換的數字量,檢查A/D轉換的線性度。

其它通道實驗與通道0類似,相應修改地址即可。

四、實驗原理介紹

本實驗用到兩部分電路:簡單I/O口擴展電路、A/D電路

八路八位A/D實驗電路由一片ADC0809,一片74LS04,一片74LS32組成,該電路中,ADIN0—ADIN7是ADC0809的模擬量輸入插孔,CS0809是0809的AD啟動和片選的輸入插孔,EOC是0809轉換結束標志,高電平表示轉換結束。齊納二極管LM336-5提供5V的參考電源,ADC0809的參考電壓,數據總線輸出,通道控制線均已接好。

五、實驗步驟

1、實驗連線

AN0 ? ADIN0?? CS0 ?CS0809? CS1 ?CS244? EOC ?IN0

用實驗箱左上角的“VERF.ADJ”電位器調節ADC0809 12腳上的參考電壓至5V。

3、編寫程序并全速運行。

4、檢查顯示數據是否與電位器輸出的電壓相符合。

六、實驗提示

實驗電路中啟動信號START與地址鎖存信號相連,所以啟動A/D轉換的方法為:

MOV? DX,ADDRESS????? ;ADDRESS是ADC0809的端口地址

??????? OUT? ?DX, ?AL???????? ??;發片選及IOW信號,啟動0通道

七、實驗結果

在輸入電壓AN0分別為0V,1V,2V,3V,4V,5V時顯示數據分別為00H,33H,66H,99H,0CCH,0FFH(數據低位略有偏差屬正常現象)。

以下圖為當模擬電壓為4V時,輸出的數據量為CFH。

?

八、程序框圖

?

九、實驗程序

con8279 equ 0492hdat8279 equ 0490hassume cs:codecode segment publicorg 100hstart:jmp start1segcod db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,77h,7ch,39h,5eh,79h,71hstart1:mov dx,04a0hout dx,ax ;啟動通道 0wait1: mov dx,04b0h ;CS244in ax,dx ;讀 EOCand ax,1cmp ax,1jne wait1 ;如果EOC=0,waiting....mov dx,04a0hin ax,dx ;讀轉換結果and ax,0ffhmov bx,axnopdisp: mov di,offset segcodmov ax,08h ;工作方式,16位,左入mov dx,con8279out dx,axmov ax,90h mov dx,con8279out dx,ax ;寫顯示RAM命令,地址自增mov dx,dat8279push bxand bx,0f0h ;取高4位mov cl,4shr bx,cladd di,bxmov al,cs:[di]mov ah,0out dx,ax ;寫RAM0nopnopmov di,offset segcodpop bxand bx,0fh ;取低4位add di,bxmov al,cs:[di]mov ah,0out dx,ax ;寫RAM1delay: mov cx,0ffffh ;time delaydelay1: nopnoploop delay1jmp start1code endsend start

?? ?

十、實驗拓展

1、查詢方式

????? (1)程序流程圖

(2)程序清單

assume cs:code code segment publicorg 100h start: start1: mov dx,00hmov ax,00hout dx,ax ;啟動通道0 wait1: mov dx,20h ;in ax,dx ;讀 EOCand ax,1cmp ax,1jne wait1 ;如果EOC=0,waiting....mov dx,00hin ax,dx ;讀轉換結果mov dx,40hout dx,al code ends end start

?

(3)仿真實驗連線圖

2、中斷方式

(1)程序流程圖

(2)程序清單

assume cs:codecode segment publicorg 100hstart: cli;設置中斷向量mov ax,0mov es,axmov si,60h*4mov ax,offset int0mov es:[si],axmov ax,800h ;8086仿真模型中程序裝入段地址mov es:[si+2],ax;8259初始化mov dx,20h ;8259偶地址,設置ICW1mov al,13h ;邊沿觸發,單片,ICW4 NEEDEDout dx,al mov dx,22h ;8259奇地址,設置ICW2mov al,60h ;中斷類型號為60hout dx,al mov al,03h ;ICW4,自動清除中斷,8086CPUout dx,al mov al,00h ;OCW1, 開放所有中斷out dx,al ;設置指示燈的初始狀態mov bl,1mov al,blmov dx,40hout dx,almov dx,00hout dx,ax stilp:jmp lpint0: mov dx,00hin ax,dx ;讀轉換結果mov dx,40hout dx,aliret ;返回主程序retcode endsend start

(3)仿真實驗連線圖

?

十一、實驗總結

(1)proteus中ADC0809和下圖中第一個ADC0808不支持仿真。

(2)實驗臺中斷方式不成功。仿真實驗中斷方式能進行成功,然而在實驗臺上,我們正確連好線路,將程序拷貝過來(中斷向量程序裝入段地址已改),實驗進行失敗,小燈亮的情況為設置的初始狀態。

?

?

?

總結

以上是生活随笔為你收集整理的ADC0809实验的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。