同济大学微机原理实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《微机原理与接口技术》上机实验报告学号:姓名:班级:
课程名称:微型计算机原理与接口技术上机内容:模/数转换器
实验性质:□综合性实验□设计性实验■验证实验
实验时间: 年12月19 日实验地点:汽车学院107 实验设备TPC—2003A微机实验箱
示波器
实验报告:(包括目的、方法、原理、结果或实验小节等)。
一、实验目的
了解模/数转换的基本原理,掌握ADC0809的使用方法。
二、实验内容
1、实验电路原理图如图12-1。通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道0(IN0),利用debug 的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。
启动IN0开始转换: Out 0298 0
读取转换结果: In 0298
2、编程采集IN0输入的电压,在屏幕上显示出转换后的数据(用16进制数)。
三、实验提示
1、ADC0809的IN0口地址为298H,IN1口地址为299H。
2、IN0单极性输入电压与转换后数字的关系参考原理图:
其中Ui为输入电压,UREF为参考电压,这里的参考电压为PC机的+5V电源。
3、一次A/D转换的程序可以为
MOV DX,口地址
OUT DX,AL ;启动转换
;延时
IN AL,DX ;读取转换结果放在AL中
;*******************************;
;*接收A/D转换器数据在屏幕上显示*;
;*******************************;
io0809a equ298h
code segment
assume cs:code
start:mov dx,io0809a ;启动A/D转换器
out dx,al
mov cx,0ffh;延时
delay:loop delay
in al,dx;从A/D转换器输入数据
mov bl,al;将AL保存到BL
call disp ;调显示子程序显示其高四位
mov al,bl
and al,0fh
call disp ;调显示子程序显示其低四位
mov ah,02
mov dl,20h;加回车符
int21h
mov dl,20h
int21h
push dx
mov ah,06h;判断是否有键按下
mov dl,0ffh
int21h
pop dx
je start ;若没有转START
mov ah,4ch;退出
int21h
disp proc near;显示子程序
mov dl,al
cmp dl,9;比较DL是否>9
jle ddd ;若不大于则为'0'-'9',加30h为其ASCII码
add dl,7;否则为'A'-'F',再加7
ddd: add dl,30h;显示
mov ah,02
int21h
ret
disp endp
code ends
end start
五、实验小结
通过实验,了解和掌握模/数转换的工作原理,熟悉汇编代码的编写。在实验过程中,我们小组相互帮助,共同连接电线,第一次并没有达到理想的结果,在老师们的帮助下,我们及时更正了错误,最终完成了实验,通过实验的过程,让我们对于课本的理论知识有了进一步了解。
实验图片
实验十二模/数转换器
一、实验目的
了解模/数转换的基本原理,掌握ADC0809的使用方法。
二、实验内容
1、实验电路原理图如图12-1。通过实验台左下角电位器RW1输出0~5V直流电压送入ADC0809通道
0(IN0),利用debug的输出命令启动A/D转换器,输入命令读取转换结果,验证输入电压与转换后数字的关系。
启动IN0开始转换: Out 0298 0
读取转换结果: In 0298
2、将JP3的1、2短接,使IN2处于双极性工作方式,并给IN1输入一个低频交流信号(幅度为±5V),编程采集这个信号数据并在屏幕上显示波形。
三、实验提示
1、ADC0809的IN0口地址为298H,IN1口地址为299H。
2、IN0单极性输入电压与转换后数字的关系请参考原理图:
3、一次A/D转换的程序可以为
MOV DX,口地址
IN AL,DX ;读取转换结果放在AL中
;****************************;
;* AD转换器2--示波器 *;
;* 采集数据在屏幕是作图 *;
;****************************;
io0809b equ299h
code segment
assume cs:code
start: mov ax,0012h;设屏幕显示方式为VGA 640X480模示int10h
start1:
mov ax,0600h
int10h;清屏
and cx,0;cx为横坐标
draw: mov dx,io0809b ;启动A/D转换器通道1
out dx,al
mov bx,200;500 ;延时
delay: dec bx
jnz delay
in al,dx;读入数据
mov ah,0
mov dx,368;dx为纵坐标
sub dx,ax
mov al,0ah;设置颜色
mov ah,0ch;画点
int10h
cmp cx,639;一行是否满
jz start1 ;是则转start
inc cx;继续画点
push dx
mov ah,06h;是否有键按下
mov dl,0ffh
int21h
pop dx
je draw ;无,则继续画点
mov ax,0003;有恢复屏幕为字符方式
int10h
mov ah,4ch;返回
int21h
code ends
end start