华北电力大学
实
验
报
告
实验名称:A/D转换与D/A转换实验
课程名称:计算机控制系统
专业班级:自动实1401 学生姓名:张娅楠 学号:201402020526 实验日期:2017.3.14 指导老师:程海燕老师
A/D转换与D/A转换
实验报告
●实验一:A/D转换实验
一、实验要求
1、了解模/数转换基本原理,掌握ADC0809的使用方法。
2、了解ADC0809芯片的转换性能及编程,用延时查询方式读入A/D转换结果,并用8255的PA口输出到发光二极管显示。 3、对汇编语言的编程的应用,有了更熟练的掌握。
二、实验内容
1、使用设备
万用表 一块;PC计算机 一台; Wave6000计算机实验培训系统 一套 2、实验过程
?按连线图接好,检查无误后打开试验箱电源。通过在计算机上进行设置将试验箱与电脑连接。
?在 PC 端软件开发平台上编写程序代码,编译通过后下载到试验箱,在试验箱上检测程序运行的结果。
?运行程序后,通过调节电位器,改变输入电压的大小,观察LED灯的亮灭情况并记录不同电压值下LED灯的亮灭情况。 3、实验接线图
4、使用的参考程序
mode equ 082h PA equ 09000h CTL equ 09003h CS0809 equ 08000h
code segment
assume cs:code start proc near
mov al, mode mov dx, CTL
out dx, al ;8255初始化 again:
mov al, 0
mov dx, CS0809
out dx, al ; 起动 A/D mov cx, 40h
loop $ ; 延时 > 100us
in al, dx ; 读入结果
mov dx, PA ;8255A口输出 out dx, al
jmp again ;重复
code ends end start
三、实验结果与分析
调节电位器使输入模拟量从0--- +5V变化时,对应输出的数字量记录如下表:(测量数字中x代表该灯闪烁;理论值中x代表该位近似,理论上应该闪烁)
模拟量(V) 1 2 3 4 5 1.0 2.0 01101010 0110101x 3.0 4.0 4.78 数字量(测量值) 00110110 数字量(理论值) 00110110
10011111 110101xx 111111x1 1001111x 110101xx 11111111 误差分析:
由表格可知误差基本在允许范围内,些许误差可能如下原因: 1、本次实验所采用的是延迟程序等待ADC0809模数转换,这种设计是存在缺陷的,不如利用EOC引脚来判定转换是否结束比较准确,可能会造成部分数值的误差;
2、实验设备老旧引起的系统误差,仪器的损坏以及电路中元件参数不准确也可能造成实验结果的误差。
3、试验线路连接不稳定,或接触点电阻引起的误差。
●实验二:D/A转换实验
一、实验要求
1、利用DAC0832生成锯齿波、倒锯齿波、三角波以及方波。 2、对汇编语言的编程应用进一步熟悉与掌握。
二、实验内容
1、使用设备 示波器 一台; PC计算机 一台;
Wave6000 计算机实验培训系统 一套 2、实验步骤
? 按连线图接好,检查无误后打开试验箱电源。通过在计算机上进行设置将试验箱与电脑连接。
?在 PC 端软件开发平台上编写程序代码,编译通过后下载到试验箱,在试验箱上检测程序运行的结果,调节示波器,得到锯齿波形;
? 修改程序使示波器一次产生倒锯齿波、三角波和方波。