模 数(A D)转换器(微机实验报告)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模/数(A/D)转换器
一、实验目的
1、掌握ADC0809模数转换芯片与计算机的连接方法;
2、了解ADC0809芯片的功能及编程方法;
3、了解计算机如何进行数据采集。
二、实验设备
1、PC机一台
2、TPC-H微机接口实验系统实验箱一台
3、连接导线若干
三、实验内容
1、实验电路原理图如图1。
ADC0809是8位A/ D转换器,每采集一次一般需100 s。
由于ADC0809 A/ D转换器转换结束后会自动产生EOC信号(高电平有效)。
通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。
启动IN0开始转换: O 298, 0
读取转换结果: I 298
图1 模数转换电路
2、编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进制数)。
3、将JP3的1、2短接,使IN1处于双极性工作方式,并给IN1输入一个低频交流信号(幅度为±5V),编程采集这个信号数据并在屏幕上显示波形。
四、编程提示
1、ADC0809的IN0口地址为298H,IN1口地址为299H。
2、IN0单极性输入电压与转换后数字的关系为:
其中Ui为输入电压,UREF为参考电压,这里的参考电压为PC机的+5V电源。
3、一次A/D转换的程序可以为
MOV DX,口地址
OUT DX,AL ;启动转换
;延时
IN AL,DX ;读取转换结果放在AL
五、参考流程图
图2 流程图1
图3 流程图2
六、实验源程序
code segment
assume cs:code
start:
mov dx,298h ;启动A/D转换器
out dx,al
mov cx,0ffh ;延迟
delay:
loop delay
in al,dx ;从A/D转换器输入数据
mov bl,al ;将Al保存到BL
mov cl,4
shr al,cl ;将AL右移四位
call disp ;将显示子程序显示其高四位 mov al,bl
and al,0fh
call disp ;调显示子程序显示其低四位
mov ah,02
mov dl,20h ;加回车符
int 21h
push dx
mov ah,06h ;判断是否有键按下
mov dl,0ffh
int 21h
pop dx
je start ;若没有转start
mov ah,4ch ;退出
int 21h
disp proc near ;显示子程序
mov dl,al
cmp dl,9 ;比较DL是否大于9
jle ddd ;若不大于则为“0”-“9”,加30h为其ASCⅡ码 add al,7 ;否则为“A”-“F”,再加7
ddd:
add dl,30h ;显示
mov ah,0h
int 21h
ret
disp endp
code ends
end
七、实验总结
通过实验,掌握ADC0809模数转换芯片与计算机的连接方法;了解ADC0809芯片的功能及编程方法;了解计算机如何进行数据采集。
实验中,连接电路,利用代
码控制实验电路,深对课本理论的理解。