实验五 DAAD转换实验 完整版

合集下载

AD,DA转换实验

AD,DA转换实验

的启动信号“ STR”是由控制计算机定时输出方波来实现的。

这里用
#定时器的输出,通过“OUT1”排针引出,方波周期=定时器时常×2。

芯片输入选通地址码A、B、C为“1”状态,选通输入通道IN7;通过单次阶A/D转换器输入-5V ~ +5V的模拟电压;系统定时器定时1ms输出方波转换器,并将A/D转换完后的数据量读入到控制计算机中,最后保存到变量中。

OUT1
OUT2
图 1.1-3
以上电路是TLC7528双极性输出电路,输出范围-5V ~ +5V。

“W101”和“ W102”
路的调零电位器,实验前先调零,往TLC7528的A口和B口中送入数字量80H 和“W102”电位器,用万用表分别测“ OUT1”和“OUT2”的输出电压,应在0mV 实验内容:
编写实验程序,实现D/A转换产生周期性三角波,并用示波器观察波形。

:
1.实验名称、实验目的、实验设备、实验原理及内容由教师确定,实验前学生填好;
2.实验步骤、实验结果及分析由学生记录实验的过程,包括操作过程、实验结果、遇到哪些问题以及如何
解决等;
3.实验总结由学生在实验后填写,总结本次实验的收获、未解决的问题以及体会和建议等。

ad da转换实验报告

ad da转换实验报告

ad da转换实验报告AD-DA转换实验报告摘要:本实验旨在通过AD-DA转换器,将模拟信号转换为数字信号,然后再转换回模拟信号,以验证转换器的性能和精度。

实验结果表明,转换器具有较高的精度和稳定性,能够准确地将模拟信号转换为数字信号,并且能够将数字信号准确地转换回模拟信号,为数字信号处理提供了可靠的基础。

引言:AD-DA转换器是现代电子设备中常用的一种电子元件,它能够将模拟信号转换为数字信号,然后再将数字信号转换回模拟信号。

这种转换器在数字信号处理、通信系统、音频设备等领域具有广泛的应用。

本实验旨在通过实际操作,验证AD-DA转换器的性能和精度,以便更好地了解其工作原理和特点。

实验步骤:首先,我们使用函数发生器产生一个模拟信号,并将其输入到AD-DA转换器中。

然后,转换器将模拟信号转换为数字信号,我们将数字信号输入到计算机中进行处理。

接着,我们将处理后的数字信号再次输入到AD-DA转换器中,转换器将数字信号转换回模拟信号,并将其输出到示波器上进行观测和分析。

实验结果:经过实验操作和数据分析,我们发现AD-DA转换器具有较高的精度和稳定性,能够准确地将模拟信号转换为数字信号,并且能够将数字信号准确地转换回模拟信号。

在不同频率和幅度的模拟信号输入下,转换器都能够保持良好的性能,没有出现明显的失真和误差。

这表明,AD-DA转换器在实际应用中具有较高的可靠性和稳定性,能够为数字信号处理提供可靠的基础。

结论:通过本次实验,我们验证了AD-DA转换器的性能和精度,得出了转换器具有较高的可靠性和稳定性的结论。

这为我们更好地理解和应用AD-DA转换器提供了重要的实验数据和经验,也为数字信号处理和通信系统的设计和应用提供了可靠的支持。

希望通过本次实验,能够更好地推动AD-DA转换器的研究和应用,为电子技术的发展做出更大的贡献。

d a转换器实验报告

d a转换器实验报告

d a转换器实验报告DA转换器实验报告引言:DA转换器(Digital-to-Analog Converter)是一种将数字信号转换为模拟信号的设备。

在现代电子技术中,DA转换器被广泛应用于各种领域,如通信、音频处理、自动控制等。

本实验旨在通过搭建DA转换器电路并进行实际测试,来深入了解其工作原理和性能特点。

一、实验目的本实验的目的是通过搭建DA转换器电路,了解其工作原理以及性能特点,并通过实际测试来验证其转换准确性和稳定性。

二、实验原理DA转换器的基本原理是将输入的数字信号转换为模拟信号输出。

常见的DA转换器有两种类型:并行式和串行式。

并行式DA转换器将输入的二进制数字信号同时转换为相应的模拟信号,而串行式DA转换器则是逐位地将二进制数字信号转换为模拟信号。

在本实验中,我们将使用串行式DA转换器。

串行式DA转换器由一个计数器和一个数字模拟转换器组成。

计数器用于逐位地将二进制数字信号输出,而数字模拟转换器则将二进制数字信号转换为相应的模拟信号输出。

三、实验步骤1. 搭建DA转换器电路:按照实验指导书上的电路图,连接计数器和数字模拟转换器。

2. 设置输入信号:通过调节计数器的输入信号,设置所需的二进制数字信号。

3. 测试输出信号:将数字模拟转换器的输出信号连接到示波器上,并观察输出信号的波形和幅度。

4. 记录实验数据:记录不同输入信号对应的输出信号波形和幅度,并进行分析。

四、实验结果与分析通过实验,我们得到了不同输入信号对应的输出信号波形和幅度数据。

根据实验数据,我们可以得出以下结论:1. 准确性:通过比对输入信号和输出信号的对应关系,可以发现DA转换器在转换过程中几乎没有误差,转换准确性非常高。

2. 稳定性:在实验过程中,我们发现无论输入信号如何变化,输出信号始终保持稳定,没有明显的波动或漂移现象。

五、实验总结通过本次实验,我们深入了解了DA转换器的工作原理和性能特点。

DA转换器在现代电子技术中起着重要的作用,广泛应用于各个领域。

AD转换与DA转换实验

AD转换与DA转换实验

XX学院实验报告实验名称姓名学号班级教师日期一、实验内容与要求1.1 实验内容本次实验包括A/D转换实验与D/A转换实验。

(1)A/D转换实验:编写实验程序,将ADC单元中提供的0V~5V信号源作为ADC0809的模拟输入量,进行A/D转换,转换结果通过变量进行显示;(2)D/A转换实验:设计实验电路图实验线路并编写程序,实现 D/A 转换,要求产生锯齿波、脉冲波,自行设计波形,并用示波器观察电压波形。

1.2 实验要求(1)A/D转换实验:将ADC单元中提供的0V~5V信号源作为ADC0809的模拟输入量,进行A/D转换,转换结果通过变量进行显示。

同时可以使用万用表对比判断结果是否正确;(2)D/A转换实验:实现 D/A 转换,通过编程,自行设计一个波形,在示波器上显示并观察波形。

二、实验原理与硬件连线2.1 实验原理ADC0809 包括一个 8 位的逐次逼近型的 ADC 部分,并提供一个 8 通道的模拟多路开关和联合寻址逻辑。

用它可直接输入8个单端的模拟信号,分时进行A/D转换,在多点巡回检测、过程控制等应用领域中使用非常广泛。

ADC0809 的主要技术指标为:分辨率:8 位单电源:+5V总的不可调误差:±1LSB转换时间:取决于时钟频率模拟输入范围:单极性 0~5V时钟频率范围:10KHz~1280KHzADC0809的外部管脚如图4-1所示,地址信号与选中通道的关系如表4-1 所示。

图4-1 ADC0809外部引脚图表4-1 地址信号与选中通道的关系模/数转换单元电路图如图4-2所示:AD +5VADJ +5V图4-2 模/数转换单元电路图D/A 转换器是一种将数字量转换成模拟量的器件,其特点是:接收、保持和转换的数字信息,不存在随温度、时间漂移的问题,其电路抗干扰性较好。

大多数的D/A 转换器接口设计主要围绕 D/A 集成芯片的使用及配置响应的外围电路。

DAC0832是8位芯片,采用CMOS 工艺和R-2RT 形电阻解码网络,转换结果为一对差动电流Iout1和Iout2输出,其主要性能参数如表4-2示,引脚如图4-3所示。

试验五AD、DA转换实验

试验五AD、DA转换实验

试验五. A/D、D/A转换实验一、实验目的1. 学习理解模/数信号转换和数/模转换的基本原理。

2. 掌握模/数转换芯片ADC0804和数/模转换芯片DAC0832的使用方法。

二、实验设备TD-PITE实验装置(带面包板)一套,实验用转换芯片两片,±12V稳压电源一台、运放两片、温度传感器、电位器(5.1KΩ)一个、电阻若干,面包板用导线若干,排线若干,万用表一个。

三、实验内容(1)设计A/D转换电路,采集可调电阻的输出电压。

连+5V电源,调节后的输出电压作为ADC0804的模拟输入量,然后进行A/D转换,转换结果由发光二极管上显示。

请填写实验数据表格:(2)将LM35 精密摄氏度温度传感器连+5V电源,输出电压直接作为ADC0804 的模拟输入量,然后进行A/D转换,转换结果经过计算得到摄氏度值放在内存变量上。

(多数温度传感器是针对绝对温度的,且线形较差。

LM35的输出电压与摄氏温度值成正比例关系,每10 mV 为 1 摄氏度。

)(3)设计D/A 转换,要求产生锯齿波、三角波、脉冲波,并用示波器观察电压波形。

四、实验原理1. 模数转换器ADC0804 简介ADC0804是用CMOS集成工艺制成的逐次比较型模数转换芯片。

分辨率为8位,转换时间为100μs,输入参考电压范围为0~5V。

芯片内有输出数据锁存器,与计算机连接时,转换电路的输出可以直接连接在CPU数据总线上。

图5.1 ADC0804引脚图启动信号:当CS#有效时,WR#可作为A/D转换的启动信号。

WR#高电平变为低电平时,转换器被清除;当WR#回到高时,转换正式启动。

转换结束:INTR#跳转为低电平表示本次转换已经完成,可作为微处理器的中断或查询信号。

RD#用来读A/D转换的结果。

有效时输出数据锁存器三态门DB0~DB7各端上出现8位并行二进制数码。

转换时钟:见下图,震荡频率为f CLK ≈ 1 / 1.1RC。

其典型应用参数为:R = 10KΩ,C = 150pF,f CLK≈ 640KHz,8位逐次比较需8×8 = 64个时钟周期,转换速度为100μs。

微机实验报告——AD转换器

微机实验报告——AD转换器

上海大学微机实践报告实验五A/D转换器实验【实验目的】了解模/数转换基本原理,掌握ADC0809的使用方法。

掌握A/D转换与计算机的接口方法,了解ADC0809芯片的转换性能及编程,了解计算机如何进行数据采集。

【实验内容】编写程序,用查询方式采样输入模拟电压(模拟量电压从实验装置的电位器接入),并将其转换为二进制数字量,用发光二极管显示。

【实验区域电路连接图】PA0→L2;PA1→L6;PA2→L10;PA3→L14;绿灯PA4→L3;PA5→L7;PA6→L11;PA7→L15;红灯IN0→AOUT1(可调电压,VIN→+5V);IOWR→IOWR;IORD→IORD;CLK→500K(单脉冲与时钟单元);ADDA、ADDB、ADDC→GND;CS4→8000HJX6→JX17(数据总线)当采用查询模式时:EOC→PB3【实验步骤】1、按连线图接好,检查无误后打开试验箱电源。

通过在计算机上进行设置将试验箱与电脑连接。

2、根据功能要求在 PC 端软件开发平台上编写程序代码,编译通过后下载到试验箱。

在试验箱上检测程序运行的结果。

3、在试验箱上检测程序运行的结果。

即运行程序后,通过调节电压旋转旋钮,改变输入电压的大小,LED灯的亮灭也会随之而改变。

观察LED灯的亮灭情况并记录不同电压值下LED灯的亮灭情况。

4、如果运行结果不正确就要检查连线和程序,修改直到正确。

【程序框图】【程序代码】CODE SEGMENTASSUME CS:CODEORG 11E0HSTART: MOV DX,0FF2BHMOV AL,10000000B //设置8255方式字:A口出OUT DX,ALLOP1: MOV DX, 8000H //0809口地址MOV AL,0 //选择通道0OUT DX,ALMOV BL,100DELAY: DEC BLJNZ DELAYMOV DX,8000H //读取0809转换结果IN AL,DXNOT ALMOV DX,0FF28HOUT DX,AL //将AL的值输出到A口JMP LOP1CODE ENDSEND START//采用查询方式CODE SEGMENTASSUME CS:CODEORG 11E0HSTART: MOV DX,0FF2BHMOV AL,10000010B //设置8255方式字:A口出OUT DX,ALLOP1: MOV DX, 8000H //0809口地址MOV AL,0 //选择通道0OUT DX,ALLOP2:MOV DX,0FF29HIN AL,DXTEST AL,00001000BJZ LOP2MOV DX,8000HIN AL,DXNOT ALMOV DX,0FF28HOUT DX,AL //将AL的值输出到A口JMP LOP1CODE ENDSEND START【问答题】1、0809获取A/D转换数据的方法有哪几种?比较这些方法的优劣。

单片机AD与DA转换实验报告

单片机AD与DA转换实验报告

AD与DA转换实验报告一.实验目的⑴掌握A/D转换与单片机接口的方法;⑵了解A/D芯片0809转换性能及编程方法;⑶通过实验了解单片机如何进行数据采集。

⑷熟悉DAC0832 内部结构及引脚。

⑸掌握D/A转换与接口电路的方法。

⑹通过实验了解单片机如何进行波形输出。

二.实验设备装有proteus的电脑一台三.实验原理及内容1.数据采集_A/D转换(1)原理①ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。

多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。

三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。

②ADC0809引脚结构:D7 ~ D0:8位数字量输出引脚。

IN0 ~ IN7:8位模拟量输入引脚。

VCC:+5V工作电压。

GND:地。

REF(+):参考电压正端。

REF(-):参考电压负端。

START:A/D转换启动信号输入端。

ALE:地址锁存允许信号输入端。

(以上两种信号用于启动A/D转换).EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。

OE:输出允许控制端,用以打开三态数据输出锁存器。

CLK:时钟信号输入端(一般为500KHz)。

A、B、C:地址输入线。

(2)内容和步骤1.硬件电路设计:设计基于单片机控制的AD转换应用电路。

AD转换芯片采用ADC0809。

ADC0809的通道IN3输入0-5V之间的模拟量,通过ADC0809转换成数字量在数码管上以十进制形成显示出来。

ADC0809的VREF接+5V电压。

2. 软件设计:程序设计内容(1) 进行A/D转换时,采用查询EOC的标志信号来检测A/D转换是否完毕,经过数据处理之后在数码管上显示。

(2) 进行A/D转换之前,要启动转换的方法:ABC=110选择第三通道。

ST=0,ST=1,ST=0产生启动转换的正脉冲信号2.D/A转换及数字式波形发生器(1)原理典型D/A转换DAC0832芯片V cc 芯片电源电压, +5V ~+15V VREF 参考电压, -10V ~+10VRFB 反馈电阻引出端, 此端可接运算放大器输出端 AGND 模拟信号地 DGND 数字信号地DI7~ DI0数字量输入信号。

ADDA转换实验报告

ADDA转换实验报告

华北电力大学实验报告实验名称A/D、D/A转换实验课程名称计算机控制技术与系统专业班级:自动化1505学生姓名:张春雪崔雨小学号:201502020525成绩:201502020502指导教师:张妍老师实验日期:2018.04.08(一)A/D转换一、实验目的及要求1、利用ADC0809做A/D转换器,将模拟量转换成二进制数字量,用延时查询方式读入A/D转换结果,用8255的PA口输出到发光二极管显示。

2、熟练掌握各种接口芯片的基本功能及实现方法二、所用仪器设备计算机、protus软件、emu8086软件三、实验内容1、实验接线如下图所示:2、实验程序如下:mode equ082hPA equ09000hCTL equ09006hCS0809equ08000hcode segmentassume cs:codestart:mov al,modemov dx,CTLout dx,al;8255初始化again:mov al,0mov dx,CS0809out dx,al;起动A/Dmov cx,40hloop$;延时>100usin al,dx;读入结果mov dx,PA;8255A口输出out dx,aljmp again;重复code endsend start3、实验步骤:(1)按图接线,对源程序进行编译,执行程序;(2)依次调节滑动变阻器使输入模拟量从0---+5V变化,观察对应输出的数字量,并填到下表中;(3)分析误差产生的原因。

次数内容123456模拟量(V)0V1V2V3V4V5V000000000011001101100110100110011100110011111111数字量(测量值)4、实验运行结果如下:(1)模拟量1V(2)模拟量2V(3)模拟量3V(4)模拟量4V(5)模拟量5V5、实验符合最初设想(二)D/A转换一、实验目的及要求1、利用DAC0832生成锯齿波。

AD转换和DA转换实验

AD转换和DA转换实验

实验六、A/D 转换和D/A 转换实验一、实验目的1、熟悉A/D 转换与D/A 转换的基本原理2、掌握ADUC812的技术指标和常用的方法3、熟悉DSP 对ADUC812的操作二、实验设备计算机、ZYE1801C 实验箱,连接线若干。

三、实验原理1、ADUC812的主要性能特点ADUC812是全集成的12位数据采集系统,它在单个芯片内包含了高性能的自校准多通道ADC (8路)、2个12位的DAC 以及可编程的8位MCU (与8051兼容)。

片内有8K 的闪速/电擦除程序存储器、640B 的闪速/电擦除数据存储器、256B 数据SRAM (支持可编程)以及与8051兼容的内核。

另外MCU 支持的功能包括看门狗定时器、电源监视器以及ADC DMA 功能。

为多处理器接口和I/O 扩展提供了32条可编程的I/O 线、与I 2C 兼容的串行接口、SPI 串行接口和标准的UART 串行接口。

MCU 内核和模拟转换器二者均有正常、空闲以及掉电工作模式,它提供了适合于低功率应用的、灵活的电源管理方案。

器件包括在工业温度范围内用3V 和5V 电压工作的两种规格,有52脚、塑料四方扁平封装形式(PQTP )可供使用。

2、A/D 转换实验原理对ADUC812的第8路模拟输入通道提供不同的模拟电压值n ,由ADUC812进行A/D 转换后,把数字值通过12位的数据线发送个DSP ,DSP 把接收到的数字值通过串行口发送到PC 机, DSP 教学实验系统软件把收到的数字值转换为电压值在软件上进行显示。

其中传递的数字值为:4095()2.5()n v m v ⨯= 比较实际输入的电压值n 与显示电压值,计算A/D 转换误差。

3、D/A 转换实验原理在DSP 教学实验系统软件上输入0-4095数字值m ,通过串行口发送给DSP ,DSP 把接收到的数字值通过12位数据线发送到ADUC812,由ADUC812进行D/A 转换后,通过模拟输出通道0输出。

ADDA转换实验报告

ADDA转换实验报告

华北电力大学实验报告实验名称A/D、D/A转换实验课程名称计算机控制技术与系统专业班级:自动化1505学生姓名:张春雪崔雨小学号:201502020525成绩:201502020502指导教师:张妍老师实验日期:2018.04.08(一)A/D转换一、实验目的及要求1、利用ADC0809做A/D转换器,将模拟量转换成二进制数字量,用延时查询方式读入A/D转换结果,用8255的PA口输出到发光二极管显示。

2、熟练掌握各种接口芯片的基本功能及实现方法二、所用仪器设备计算机、protus软件、emu8086软件三、实验内容1、实验接线如下图所示:2、实验程序如下:mode equ082hPA equ09000hCTL equ09006hCS0809equ08000hcode segmentassume cs:codestart:mov al,modemov dx,CTLout dx,al;8255初始化again:mov al,0mov dx,CS0809out dx,al;起动A/Dmov cx,40hloop$;延时>100usin al,dx;读入结果mov dx,PA;8255A口输出out dx,aljmp again;重复code endsend start3、实验步骤:(1)按图接线,对源程序进行编译,执行程序;(2)依次调节滑动变阻器使输入模拟量从0---+5V变化,观察对应输出的数字量,并填到下表中;(3)分析误差产生的原因。

次数内容123456模拟量(V)0V1V2V3V4V5V000000000011001101100110100110011100110011111111数字量(测量值)4、实验运行结果如下:(1)模拟量1V(2)模拟量2V(3)模拟量3V(4)模拟量4V(5)模拟量5V5、实验符合最初设想(二)D/A转换一、实验目的及要求1、利用DAC0832生成锯齿波。

ad与da实验报告

ad与da实验报告

ad与da实验报告AD与DA实验报告一、引言AD(模拟-数字)和DA(数字-模拟)转换技术在现代电子领域中起着重要的作用。

AD转换将连续的模拟信号转换为数字信号,而DA转换则将数字信号转换为模拟信号。

本实验旨在通过AD与DA转换器的实际应用,深入了解其原理和性能。

二、实验目的1. 理解AD转换原理和工作方式;2. 理解DA转换原理和工作方式;3. 学习使用AD和DA转换器进行模拟信号和数字信号的转换;4. 掌握AD转换器和DA转换器的性能评估方法。

三、实验装置1. AD转换器:采用XX型号的AD转换器;2. DA转换器:采用XX型号的DA转换器;3. 信号发生器:用于产生模拟信号;4. 示波器:用于观察和分析信号波形。

四、实验步骤1. 连接实验装置:将信号发生器输出端连接至AD转换器的输入端,将DA转换器的输出端连接至示波器,确保连接正确无误;2. 设置信号发生器:根据实验要求,设置信号发生器的频率、幅度和波形等参数;3. 进行AD转换实验:将信号发生器输出的模拟信号输入AD转换器,观察并记录数字信号的输出结果;4. 进行DA转换实验:将数字信号输入DA转换器,观察并记录模拟信号的输出结果;5. 分析结果:根据实验数据,分析AD和DA转换器的性能,如分辨率、信噪比等。

五、实验结果与分析通过实验,我们观察到AD转换器将连续的模拟信号转换为离散的数字信号。

数字信号的输出结果与信号发生器输入的模拟信号存在一定的误差,这是由于AD转换器的分辨率和量化误差所导致的。

分辨率越高,AD转换器对模拟信号的采样精度越高,输出的数字信号越接近原始模拟信号。

而DA转换器则将数字信号转换为模拟信号。

我们观察到,数字信号经过DA 转换后,输出的模拟信号与原始模拟信号基本一致。

这是因为DA转换器能够根据数字信号的数值精确地还原出模拟信号的波形。

然而,在实际应用中,DA 转换器也存在一定的失真,如量化误差和抖动等。

根据实验数据,我们可以计算AD和DA转换器的性能参数。

实验五DA转换0832应用实验

实验五DA转换0832应用实验

实验五 4.6 D/A转换0832应用实验系别专业:电子系12级电信2班学号:3121003210姓名:李书杰指导老师:刘志群老师4.6.1 实验要求1. 复习D/A转换的工作原理。

2. 复习DAC0832的应用及编写程序的方法。

4.6.2 实验设备PC 机一台,TD-NMC+教学实验系统,示波器一台4.6.3 实验目的1. 进一步熟悉单片机仿真实验软件Keil C51调试硬件的方法。

2. 掌握D/A转换器件与单片机接口的方法。

3. 了解D/A转换芯片DAC0832的性能、内部结构、工作原理,掌握其编程方法。

4. 了解运放在电流型D/A中的使用方法。

4.6.4 实验内容实验1根据TD-NMC+实验平台的单元电路,构建一个硬件系统,并编写实验程序实现如下功能:利用DAC0832输出一个幅值为5V、周期为1kHz的连续方波。

程序如下:ORG 0000HSJMP STARTORG 0030HSTART: MOV DPTR,#7FFFH ;设置D/A口地址LOOP: MOV A,#0FFH ;给A送最大值MOVX @DPTR,A ;D/A输出相应模拟量ACALL DELAY500us ;延时MOV A,#00H ;给A送最小值MOVX @DPTR , A ;D/A输出相应模拟量ACALL DELAY500us ;延时AJMP LOOP ;返回循环DELAY500us:MOV R2, #0F8HNOPDELAY1:DJNZ R2, DELAY1RETEND实验2根据TD-NMC+实验平台的单元电路,构建一个硬件系统,并编写实验程序实现如下功能:利用DAC0832输出一个幅值为5V的连续三角波(周期随意)。

以上两个实验均要求使用示波器查看输出波形并记录波形。

程序如下:ORG 0000HSJMP STARTORG 0030HSTART: MOV DPTR,#7FFFH ;设置D/A口地址MOV A,#00H ;输入数字量00H到A(初值为00H)LOOP1: MOVX @DPTR,A ;输出对应于A内容的模拟量INC A ;修改A的内容(原来值加1)CJNE A,#0FFH,LOOP1LOOP2: MOVX @DPTR,A ;输出对应于A内容的模拟量DEC ACJNE A,#00H,LOOP2AJMP LOOP1END4.6.5 实验单元电路及连线4.6.6 实验说明1. 影响DAC(D/A转换器)的主要性能指标有:分辨率、转换精度、偏移量误差、线性度、转换速度。

ADDA转换实验

ADDA转换实验

计算机控制技术实验报告A/D和D/A转换一.实验目的1、了解串行A/D和D/A转换器的工作原理。

2、掌握A/D和D/A转换器程序设计方法以及与单片机的接口电路。

3、掌握A/D和D/A转换实验上机调试方法。

4、熟悉韦弗实验箱的使用。

二.实验内容1、通过编辑程序输出三角波。

2、通过编辑程序输出方波。

3、通过编辑程序输出锯齿波。

4、通过编辑程序输出梯形波。

三、仪器、设备和材料1、韦弗实验箱2、计算机3、示波器4、导线四、实验内容1.A/D转换org 0000hCS0809 equ 08000hmov dptr, #CS0809mov a, #0hmovx @dptr, a ; 起动 A/Dmovx a, @dptr ; 读入结果mov p1,acall delayljmp 0000hDelay:mov r6, #0mov r7, #0 DelayLoop:djnz r6, DelayLoop djnz r7, DelayLoop retend2.方波CS0832 equ 0a000hmov dptr, #CS0832 mov r2, #0ffhloop1: mov a,#0hmovx @dptr, adjnz r2,loop1mov r3,#0ffhloop2: mov a,#0ffhmovx @dptr,adjnz r3,loop2ljmp 0000hend3.三角波与锯齿波org 0000hCS0832 equ 0a000hmov dptr , #cs0832 mov a, #0loop1: movx @dptr, ainc acjne a,#0ffh,loop1LOOP2:movx @dptr, adec acjne a,#0h,loop2ljmp 0000hend4.梯形波org 0000hmain:mov dptr,#0a000hstep: mov r6,#19hmovr4,#0ahmov a,0loop1: movx @dptr,a ;选通地址acall delay ;延时adda,r6 ;每次以19H的梯度增加djnz r4,loop1 ;梯度等待的时间ajmpstep ;循环delay:d2: mov 31h,#0ffhd1: djnz 31h,d1retend五、实验结果1) 正弦信号)s i n (ϕω+=t A y ,ωπ2=T ,经编程得到如下图。

实验五 DAAD转换实验 完整版

实验五 DAAD转换实验 完整版

实验五 D/A、A/D转换实验一、实验目的了解数/模、模/数转换基本原理,掌握DAC0832、ADC0809的使用方法;掌握定时数据采集程序的编制方法。

二、实验内容1、D/A转换实验通过0832D/A转换输出一个从0V开始逐渐升至5V,再从5V降至0V的可变电压输出驱动直流电机。

(1)实验接线图D/A转换实验接线图(2)实验程序框图(3)实验程序清单CODE SEGMENT ;H0832-2.ASM 0-->5vASSUME CS:CODEDAPORT EQU 0FF80hPA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口ORG 1110HSTART: JMP START0BUF DB ?,?,?,?,?,?data1: db 0c0h,0f9h,0a4h,0b0h,99h,92hdb 82h,0f8h,80h,90h,88h,83h,0c6h,0a1hdb 86h,8eh,0ffh,0ch,89h,0deh,0c7hdb 8ch,0f3h,0bfh,8FHSTART0: call buf1DACON0: MOV AL,00HDACON1: MOV DX,DAPORTOUT DX,ALpush axcall convMOV CX,0040HDISCON: PUSH CXcall dispPOP CXLOOP DISCONpop axINC ALCMP AL,00HJNZ DACON1MOV AL,0FFHDACON2: MOV DX,DAPORTOUT DX,ALpush axcall convMOV CX,0040HDISCON2: PUSH CXcall dispPOP CXLOOP DISCON2pop axDEC ALCMP AL,0FFHJNZ DACON2JMP DACON0CONV: MOV AH,ALAND AL,0FHMOV BX,OFFSET BUFMOV [BX+5],ALMOV AL,AHAND AL,0F0HMOV CL,04HSHR AL,CLMOV [BX+4],ALRETDISP: MOV AL,0FFH ;00HMOV DX,PAOUT DX,ALMOV CL,0DFH ;20H; 5ms显示子程序MOV BX,OFFSET BUFDIS1: MOV AL,[BX]MOV AH,00HPUSH BXMOV BX,OFFSET DATA1ADD BX,AXMOV AL,[BX]POP BXMOV DX,PBOUT DX,ALMOV AL,CLMOV DX,PAOUT DX,ALPUSH CXDIS2: MOV CX,00A0HDELAY: LOOP DELAYPOP CXCMP CL,0FEH ;01HJZ LX1INC BXROR CL,1 ;SHR CL,1JMP DIS1LX1: MOV AL,0FFHMOV DX,PBOUT DX,ALRETBUF1: MOV BUF,00HMOV BUF+1,08HMOV BUF+2,03HMOV BUF+3,02HMOV BUF+4,00HMOV BUF+5,00HRETDELY: PUSH CXDEL2: PUSH CXDEL3: PUSH CXLOOP $POP CXLOOP DEL3POP CXLOOP DEL2POP CXLOOP DELYRETCODE ENDSEND START2、A/D转换实验利用实验系统上电位器提供的可调电压作为0809模拟信号的输入,编制程序,将模拟量转换为数字量,通过数码管显示出来。

单片机AD与DA转换实验报告

单片机AD与DA转换实验报告
void juchibo();
void main()
{
P1=0xff;
while(1)
{
if(key1==0)
sanjiaobo();
if(key2==0)
fangbo();
if(key3==0)
juchibo();
}
}
void sanjiaobo()
{
unsigned int i;
char flag=0;
EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。
OE:输出允许控制端,用以打开三态数据输出锁存器。
CLK:时钟信号输入端(一般为500KHz)。
A、B、C:地址输入线。
C
B
A
选择模拟通道

0
0
IN0
0
0
1
IN1
0
1
0
IN2
0
1
1
IN3
1
0
0
IN4
1
0
1
IN5
1
1
0
IN6
1
1
1
三.实验原理及内容
1.数据采集_A/D转换
(1)原理
①ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
IOUT2模拟电流输出端2,IOUT1 + I OUT2 =常数
(2)内容和步骤
1内容
1.AT89C51控制DAC0832实现数/模转换(D/A)转换。从单片机输出数据到DAC0832,经其转换成模拟量输出。

实验五 AD、DA转换实验

实验五 AD、DA转换实验

实验五A/D、D/A转换实验
一、实验目的及要求
1、了解A/D转换的基本原理,掌握A/D转换的连接方法;
2、熟悉一种ADC芯片ADC0809,掌握A/D转换芯片0809的编程方法;
3、了解D/A转换的基本原理,掌握D/A转换的连接方法;
4、熟悉一种DAC芯片ADC0832,掌握D/A转换芯片0832的编程方法。

二、实验重点与难点
重点:A/D、D/A转换的基本原理及编程应用。

难点:A/D、D/A转换的编程应用。

三、实验环境
硬件:单片机开发板,计算机一台;
软件:Keil uVsion4。

四、实验内容
1、ADC0809模数转换与显示
使用ADC0809采样通道3输入的模拟量(也可自行选择采用通道,设计相应电路图),通过T0定时器中断给ADC0809提供时钟信号,转换后的结果显示在数码管上。

2、DAC0832波形发生器
软件控制DAC输出波形,通过不同按键产生锯齿波、三角波和方波,按键的检测采用中断工作方式。

五、实验步骤及要求
1.描述出程序运行后的结果;
2.画出算法流程图;
3.加程序注释。

4.学生按实验内容和实验报告编写格式中的规范,认真做好实验记录以便编写实验报告。

AD转换和DA转换实验

AD转换和DA转换实验

汇编程序01:AD转换器此为0.01精度ORG 0000HLJMP MAINORG 0013HLJMP LOOPMAIN:MOV SP,#30HSETB IT1SETB EASETB EX1MOV DPTR,#0FEF8HMOVX @DPTR,AHERE:LCALL DISPLAYAJMP HERELOOP:MOV DPTR,#0FEF8HMOVX A,@DPTRMOVX @DPTR,ALCALL DSP ;对接收的数据进行处理LCALL DSP1LCALL DISPLAY ;显示转换的数据LJMP LOOPDSP: MOV B,#100MUL ABMOV R7,BMOV R6,AMOV R5,#00HMOV R4,#33HMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV R5,#00HMOV R4,#64HMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV 73H,R6 ;百位电压值MOV A,R3MOV R7,AMOV A,R2MOV R5,#00HMOV R4,#0AHMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV 72H,R6 ;十位电压值MOV A,R3MOV R7,AMOV A,R2MOV R6,AMOV R5,#00HMOV R4,#01HMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV 71H,R6 ;个位电压值RETDIV2BY: MOV 20H,#16 ;双字节除法DIV2B:CLR C ;商存在R7R6,余数存R3R2 MOV A,R6RLC AMOV R6,AMOV A,R7RLC AMOV R7,AMOV A,R2RLC AMOV R2,AMOV A,R3RLC AMOV R3,ACLR CMOV A,R2SUBB A,R4MOV R0,AMOV A,R3SUBB A,R5JC NEXTCLR CMOV A,R0MOV R2,AMOV A,R6ADD A,#01HMOV R6,AMOV A,R7ADDC A,#00HMOV R7,ANEXT:DJNZ 20H,DIV2BRETDSP1:MOV R0,#71HMOV A,@R0CLR CCJNE A,#10,EXIT1 ;个位加1等于10?等于10,是则个位清零CLR AMOV @R0,AINC R0 ;指向十位MOV A,@R0INC A;十位加1MOV @R0,ACJNE A,#10,EXIT1CLR AMOV @R0,AINC R0MOV A,@R0INC AMOV @R0,ACJNE A,#10,EXIT1CLR AMOV @R0,AINC R0MOV A,@R0INC AMOV @R0,ACJNE A,#10,EXIT1CLR AMOV @R0,AEXIT1:RETDISPLAY:MOV R1,#74H ;指向数据显示缓冲区MOV R5,#0FEH ;显示位选择PLAY:MOV A,R5MOV P2,AMOV A,@R1MOV DPTR,#TABMOVC A,@A+DPTRCJNE R1,#73H,POWXRL A,#80H;输出点.POW: MOV P1,ALCALL DL1MSDEC R1MOV A,R5JNB ACC.3,ENDOUTRL AMOV R5,AAJMP PLAYENDOUT:RETTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDL1MS:MOV R6,#20DL1:MOV R7,#50DL2:DJNZ R7,DL2DJNZ R6,DL1RETENDDA转换实验ORG 0000HLJMP MAINMAIN: MOV SP,#30HMOV 74H,#00HKEY:ACALL KS;键盘扫描程序段JNZ LK1;有键闭合LCALL DELAYAJMP KEY ;没有键闭合LK1:LCALL DELAY;驱动显示程序防抖LCALL DELAYACALL KS;确认有键闭合?JNZ LK2 ;真有键闭合LCALL DELAY;没有键闭合是误按回去!AJMP KEYLK2:MOV 74H,ALCALL DELAYJNZ SKAJMP KEY;不是!不与理睬KS:MOV A,P1;键盘扫描子程序CPL AANL A,#0FFHRETSK: ACALL KSJNZ SKLCALL DELAYLCALL DELAYACALL KSJNZ SKMOV A,74HJB ACC.0,MAIN1JB ACC.1,MAIN2JB ACC.2,MAIN3JB ACC.3,MAIN4JB ACC.4,MAIN5LCALL DELAYAJMP KEYMAIN1:MOV DPTR,#7000H;方波MOV R0,#00HABCD: MOV A,R0MOVX @DPTR,AINC R1MOV R7,P1CJNE R7,#0FFH,KEYXYZ: CJNE R1,#10,ABCDCPL AMOV R0,AAJMP ABCDMAIN2:MOV DPTR,#7000H;锯齿波MOV R0,#00HABCD2:MOV A,R0MOVX @DPTR,AINC R0MOV R7,P1CJNE R7,#0FFH,KEYLJMP ABCD2MAIN3:MOV DPTR,#7000H ;三角波MOV R0,#00HABCD3:MOV A,R0MOVX @DPTR,AINC R0CJNE R0,#0FFH,ABCD3MOV R7,P1CJNE R7,#0FFH,CNM ABCF3:DEC R0MOV A,R0MOVX @DPTR,ACJNE R0,#00H,ABCF3MOV R7,P1CJNE R7,#0FFH,CNMAJMP ABCD3MAIN4:MOV DPTR,#7000H ;正弦波MOV R0,#00HAAA:MOV A,R0INC R0MOV DPTR,#CCCMOVC A,@A+DPTRMOV DPTR,#5000HMOVX @DPTR,ACJNE R0,#100,AAAMOV R7,P1CJNE R7,#0FFH,CNMLJMP BBBBBB:MOV A,R0DEC R0MOV DPTR,#CCCMOVC A,@A+DPTRMOV DPTR,#5000HMOVX @DPTR,ACJNE R0,#00,BBBMOV R7,P1CJNE R7,#0FFH,CNMLJMP AAACNM:LJMP KEYMAIN5:MOV DPTR,#7000H;梯形波MOV R0,#00HABCD4:MOV A,R0MOVX @DPTR,AINC R0CJNE R0,#064H,ABCD4MOV R1,#0FFHAAA1: NOPDJNZ R1,AAA1ABCF4:DEC R0MOV A,R0MOVX @DPTR,ACJNE R0,#00H,ABCF4MOV R1,#0FFHAAA2: NOPDJNZ R1,AAA2MOV R7,P1CJNE R7,#0FFH,CNMJMP ABCD4DELAY:MOV R6,#0AHLOOP7:MOV R4,#64HLOOP8:NOPNOPNOPDJNZ R4,LOOP8DJNZ R6,LOOP7RETCCC:DB 00H,00H,01H,02H,04H,06H,09H,0CH,10H,14HDB 18H,1DH,23H,28H,2EH,35H,3BH,42H,49H,51HDB 58H,60H,68H,70H,77H,80H,88H,8FH,97H,9FHDB 0A7H,0AEH,0B6H,0BDH,0C4H,0CAH,0D1H,0D7H,0DCH,0E2H DB 0E7H,0EBH,0EFH,0F3H,0F6H,0F9H,0FBH,0FDH,0FEH,0FFHDB 0FFH,0FFH,0FEH,0FDH,0FBH,0F9H,0F6H,0F3H,0EFH,0EBHDB 0E7H,0E2H,0DCH,0D7H,0D1H,0CAH,0C4H,0BDH,0B6H,0AEH DB 0A7H,9FH,97H,8FH,88H,80H,77H,70H,68H,60HDB 58H,51H,49H,42H,3BH,35H,2EH,28H,23H,1DHDB 18H,14H,10H,0CH,09H,06H,04H,02H,01H,00HENDAD转换器此为0.001精度ORG 0000HLJMP MAINORG 0013HLJMP LOOPMAIN:MOV SP,#30HSETB IT1SETB EASETB EX1MOV DPTR,#0FEF8HMOVX @DPTR,AHERE:LCALL DISPLAYAJMP HERELOOP:MOV DPTR,#0FEF8HMOVX A,@DPTRMOVX @DPTR,ALCALL DSP ;对接收的数据进行处理LCALL DSP1LCALL DISPLAY;显示转换的数据LJMP LOOPDSP: MOV B,#196MUL ABMOV R7,BMOV R6,AMOV R3,#00HMOV R2,#00HMOV R5,#27HMOV R4,#10HLCALL DIV2BYMOV 73H,R6 ;千位电压值MOV A,R3MOV R7,AMOV A,R2MOV R6,AMOV R5,#03HMOV R4,#0E8HMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV 72H,R6 ;百位电压值MOV A,R3MOV R7,AMOV A,R2MOV R6,AMOV R5,#00HMOV R4,#64HMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV 71H,R6 ;十位电压值MOV A,R3MOV R7,AMOV A,R2MOV R6,AMOV R5,#00HMOV R4,#0AHMOV R3,#00HMOV R2,#00HLCALL DIV2BYMOV 70H,R6 ;个位电压值RETDIV2BY: MOV 20H,#16 ;双字节除法DIV2B:CLR C ;商存在R7R6,余数存R3R2 MOV A,R6RLC AMOV R6,AMOV A,R7RLC AMOV R7,AMOV A,R2RLC AMOV R2,AMOV A,R3RLC AMOV R3,ACLR CMOV A,R2SUBB A,R4MOV R0,AMOV A,R3SUBB A,R5JC NEXTCLR CMOV R3,AMOV A,R0MOV R2,AMOV A,R6ADD A,#01HMOV R6,AMOV A,R7ADDC A,#00HMOV R7,ANEXT:DJNZ 20H,DIV2BRETDSP1:MOV R0,#70HMOV A,@R0CLR CSUBB A,#05HJC EXIT1 ;为1则小于5,退出INC R0 ;指向十位MOV A,@R0INC A;十位加1MOV @R0,ACJNE A,#10,EXIT1 ;十位加1等于10?等于10,是则十位清零CLR AMOV @R0,AINC R0 ;指向百位MOV A,@R0INC A;百位加1MOV @R0,ACJNE A,#10,EXIT1CLR AMOV @R0,AINC R0 ;指向千位MOV A,@R0INC A;千位加1MOV @R0,ACJNE A,#10,EXIT1CLR AMOV @R0,AEXIT1:RETDISPLAY:MOV R1,#73H ;指向数据显示缓冲区MOV R5,#0FEH ;显示位选择PLAY:MOV A,R5MOV P2,AMOV A,@R1MOV DPTR,#TABMOVC A,@A+DPTRCJNE R1,#73H,POWXRL A,#80H;输出点.POW: MOV P1,ALCALL DL1MSDEC R1MOV A,R5JNB ACC.3,ENDOUTRL AMOV R5,AAJMP PLAYENDOUT:RETTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90HDL1MS:MOV R6,#20 DL1:MOV R7,#50 DL2:DJNZ R7,DL2DJNZ R6,DL1 RETEND。

AD与DA转换实验

AD与DA转换实验

华北电力大学实验报告实验名称: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 082hPA equ 09000hCTL equ 09003hCS0809 equ 08000hcode segmentassume cs:codestart proc nearmov al, modemov dx, CTLout dx, al ;8255初始化again:mov al, 0mov dx, CS0809out dx, al ; 起动 A/Dmov cx, 40hloop $ ; 延时 > 100usin al, dx ; 读入结果mov dx, PA ;8255A口输出out dx, aljmp again ;重复code endsend start三、实验结果与分析调节电位器使输入模拟量从0--- +5V变化时,对应输出的数字量记录如下表:(测量数字中x代表该灯闪烁;理论值中x代表该位近似,理论上应该闪烁)误差分析:由表格可知误差基本在允许范围内,些许误差可能如下原因:1、本次实验所采用的是延迟程序等待ADC0809模数转换,这种设计是存在缺陷的,不如利用EOC引脚来判定转换是否结束比较准确,可能会造成部分数值的误差;2、实验设备老旧引起的系统误差,仪器的损坏以及电路中元件参数不准确也可能造成实验结果的误差。

a d转换实验报告

a d转换实验报告

a d转换实验报告A/D转换实验报告概述:本实验旨在通过对A/D转换器的实验研究,深入了解其工作原理、应用场景和性能特点。

通过实际操作,我们能够更好地理解A/D转换器在数字信号处理中的重要性和作用。

实验原理:A/D转换器是将模拟信号转换为数字信号的设备。

它通过采样和量化的方式,将连续变化的模拟信号转换为离散的数字信号。

A/D转换器的精度主要由采样率和量化位数决定。

采样率越高,转换的数字信号越接近原始模拟信号;量化位数越多,转换的数字信号的精度越高。

实验步骤:1. 连接实验设备:将A/D转换器与模拟信号源、数字显示器等设备连接好,并确认连接无误。

2. 设置采样率:根据实验需求,设置合适的采样率。

一般情况下,采样率越高,转换的数字信号越接近原始模拟信号。

3. 设置量化位数:根据实验需求,设置合适的量化位数。

量化位数越多,转换的数字信号的精度越高。

4. 开始转换:启动A/D转换器,开始对模拟信号进行转换。

5. 观察结果:通过数字显示器等设备观察转换后的数字信号,并记录相关数据。

实验结果:在本次实验中,我们选择了一个正弦波作为模拟信号源,采样率为10kHz,量化位数为8位。

经过A/D转换后,我们观察到数字显示器上显示的数字信号呈现出与原始模拟信号相似的波形。

通过进一步分析,我们发现转换后的数字信号的精度较低,这是由于量化位数较少所致。

如果我们提高量化位数,数字信号的精度将会得到显著提高。

讨论与分析:A/D转换器在现代电子设备中起着至关重要的作用。

它可以将模拟信号转换为数字信号,从而方便数字信号的处理和传输。

在实际应用中,A/D转换器广泛应用于数据采集、音频处理、图像处理等领域。

不同的应用场景需要不同的采样率和量化位数,以满足对数字信号精度和处理速度的要求。

总结:通过本次实验,我们深入了解了A/D转换器的工作原理和应用特点。

实际操作让我们更好地理解了A/D转换器在数字信号处理中的重要性和作用。

我们还发现了A/D转换器的精度与采样率、量化位数之间的关系,这对于实际应用中的参数选择具有重要的参考价值。

dsp实验_ad_da转换实验报告

dsp实验_ad_da转换实验报告

一、实验题目AD转换与DA转换实验基础任务:a) 分别采集两路AD信号并叠加后进行观测b) 生成两路DA信号(三角波和方波)连接到示波器进行观测附加任务:用C语言生成正弦波二、实验内容1. 实验原理中断处理:利用定时器,当计数器到达设定值时,产生一个中断信号,程序从运行的指令跳出,中断响应函数开始执行,当完成中断响应函数后,重新回跳出指令,继续执行。

定时器:数时钟脉冲的计数器,当计数到计数周期时,产生一个中断,然后立即重新清零,重新计数。

叠加原理:中断时改变读取的通道,将相邻两次中断记录的采样值相加得到叠加后的值,并存到对应。

灯的反转:异或语句,用于翻转LED亮灭状态。

2. 实验步骤分步骤列举代码分析(1)初始化EMIF接口和CTR,初始化中断向量,初始化定时器;(2)中断产生,进行中断服务响应:A.改变定时器周期:根据拨码开关的数量,进行简单枚举,改变定时器周期;B.控制指示灯:1)根据开关的值,判断低四位中,开关在关的状态的数量;2)LBDS通过&运算(例:LBDS &= 0x05),得到响应灯对应位的值,其他位变为0;3)灯的状态判断是否为全0,或已经是所希望的值(LBDS==5),否则,LBDS设置为所期待灯的状态(例:LBDS=5);4)灯状态反转:进行异或运算(例:LBDS^=5)(3)中断服务结束,回到中断前指令的下一条指令。

三、实验结果简要概述实验现象,分析现象产生原因。

基础实验任务实现:当拨上任意一个开关到On,第一盏LED灯每0.5秒闪烁一次;任意拨上两个开关到On,第一盏LED灯每0.25秒闪烁一次;以此类推。

没有拨开关到on时,默认保持计时器的周期不变,灯闪烁的频率不变。

附加任务实现:拨上最左边的开关,则最左边的LED灯每0.5秒闪烁一次;当拨上最右两个开关,则最右边的两个LED灯每0.25秒闪烁一次,闪烁频率加快。

只要关键部分,其余不要截图最关键的步骤可以特别注明。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验五 D/A、A/D转换实验一、实验目的了解数/模、模/数转换基本原理,掌握DAC0832、ADC0809的使用方法;掌握定时数据采集程序的编制方法。

二、实验内容1、D/A转换实验通过0832D/A转换输出一个从0V开始逐渐升至5V,再从5V降至0V的可变电压输出驱动直流电机。

(1)实验接线图D/A转换实验接线图(2)实验程序框图(3)实验程序清单CODE SEGMENT ;H0832-2.ASM 0-->5vASSUME CS:CODEDAPORT EQU 0FF80hPA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口ORG 1110HSTART: JMP START0BUF DB ?,?,?,?,?,?data1: db 0c0h,0f9h,0a4h,0b0h,99h,92hdb 82h,0f8h,80h,90h,88h,83h,0c6h,0a1hdb 86h,8eh,0ffh,0ch,89h,0deh,0c7hdb 8ch,0f3h,0bfh,8FHSTART0: call buf1DACON0: MOV AL,00HDACON1: MOV DX,DAPORTOUT DX,ALpush axcall convMOV CX,0040HDISCON: PUSH CXcall dispPOP CXLOOP DISCONpop axINC ALCMP AL,00HJNZ DACON1MOV AL,0FFHDACON2: MOV DX,DAPORTOUT DX,ALpush axcall convMOV CX,0040HDISCON2: PUSH CXcall dispPOP CXLOOP DISCON2pop axDEC ALCMP AL,0FFHJNZ DACON2JMP DACON0CONV: MOV AH,ALAND AL,0FHMOV BX,OFFSET BUFMOV [BX+5],ALMOV AL,AHAND AL,0F0HMOV CL,04HSHR AL,CLMOV [BX+4],ALRETDISP: MOV AL,0FFH ;00HMOV DX,PAOUT DX,ALMOV CL,0DFH ;20H; 5ms显示子程序MOV BX,OFFSET BUFDIS1: MOV AL,[BX]MOV AH,00HPUSH BXMOV BX,OFFSET DATA1ADD BX,AXMOV AL,[BX]POP BXMOV DX,PBOUT DX,ALMOV AL,CLMOV DX,PAOUT DX,ALPUSH CXDIS2: MOV CX,00A0HDELAY: LOOP DELAYPOP CXCMP CL,0FEH ;01HJZ LX1INC BXROR CL,1 ;SHR CL,1JMP DIS1LX1: MOV AL,0FFHMOV DX,PBOUT DX,ALRETBUF1: MOV BUF,00HMOV BUF+1,08HMOV BUF+2,03HMOV BUF+3,02HMOV BUF+4,00HMOV BUF+5,00HRETDELY: PUSH CXDEL2: PUSH CXDEL3: PUSH CXLOOP $POP CXLOOP DEL3POP CXLOOP DEL2POP CXLOOP DELYRETCODE ENDSEND START2、A/D转换实验利用实验系统上电位器提供的可调电压作为0809模拟信号的输入,编制程序,将模拟量转换为数字量,通过数码管显示出来。

(1)实验接线图D/A转换实验接线图(2)编程指南ADC0809的START端为A/D转换启动信号,ALE端为通道选择地址的锁存信号,实验电路中将其相连,以便同时锁存通道地址并开始A/D采样转换,其输入控制信号为CS和WR,故启动A/D转换只须如下两条指令:MOV DX,ADPORT ;ADC0809端口地址OUT DX,AL ;发CS和WR信号并送通道地址用延时方式等待A/D转换结果,使用下述指令读取A/D转换结果。

MOV DX,ADPORT ;ADC0809端口地址 IN AL,DX循环不断采样A/D转换的结果,边采样边显示A/D转换后的数字量。

(3)实验程序框图(4)实验步骤①将0809 CS4插孔连到译码输出FF80H插孔、连JX6→JX17。

②将通道0模拟量输入端IN0连电位器W1的中心插头AOUT1(0-5V)插孔,8MHZ→T。

③运行实验程序如在PC机和实验系统联机状态下,运行该实验程序,可用鼠标左键单击菜单栏“文件”或工具栏“打开图标”,弹出“打开文件”的对话框,然后打开598K8ASM文件夹,点击H0809.ASM文件,单击“确定”即可装入A/D转换实验源文件,再单击工具栏中编译装载,即可完成源文件自动编译、装载目标代码功能,再单击“调试”中“R运行”或工具图标运行,即开始运行程序。

如果在没有PC机的情况下,则在8086K系统显示监控提示符“P.”时,用户段地址固定为0000(省略输入),按SCAL键,输入起始偏移地址1000,按EXEC键,在系统上显示“0809 XX”。

“XX”表示输入模拟量转换后的数字量。

④调节电位器Wl, 显示器上会不断显示新的转换结果。

模拟量和数字量对应关系的典型值为:0V→00H+2.5V→80H +5V→FFH⑤按RST键退出。

以上两种方式运行结果完全一致,因此,在下面的实验中,不管按何种方式均能运行实验程序。

(5)实验程序清单CODE SEGMENT ;H0809.ASMASSUME CS:CODEADPORT EQU 0FF80hPA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口ORG 1000HSTART: JMP START0BUF DB ?,?,?,?,?,?data1:db 0c0h,0f9h,0a4h,0b0h,99h,92h,82hdb 0f8h,80h,90h,88h,83h,0c6h,0a1hdb 86h,8eh,0ffh,0ch,89h,0deh,0c7hdb 8ch,0f3h,0bfh,8FHSTART0: CALL BUF1ADCON: MOV AL,00MOV DX,ADPORTOUT DX,ALMOV CX,0500HDELAY: LOOP DELAYMOV DX,ADPORTIN AL,DXCALL CONVERSCALL DISPJMP ADCONCONVERS: MOV AH,ALAND AL,0FHMOV BX,OFFSET BUFMOV [BX+5],ALMOV AL,AHAND AL,0F0HMOV CL,04HSHR AL,CLMOV [BX+4],ALRETDISP: MOV AL,0FFH ;00HMOV DX,PAOUT DX,ALMOV CL,0DFH ;20H 初始数位MOV BX,OFFSET BUFDIS1: MOV AL,[BX]MOV AH,00HPUSH BXMOV BX,OFFSET DATA1ADD BX,AXMOV AL,[BX]POP BXMOV DX,PBOUT DX,ALMOV AL,CLMOV DX,PAOUT DX,ALPUSH CXDIS2: MOV CX,00A0HLOOP $POP CXCMP CL,0FEH ;01HJZ LX1INC BXROR CL,1 ;SHR CL,1JMP DIS1LX1: MOV AL,0FFHMOV DX,PBOUT DX,ALRETBUF1: MOV BUF,00HMOV BUF+1,08HMOV BUF+2,00HMOV BUF+3,09HMOV BUF+4,00HMOV BUF+5,00HRETCODE ENDSEND START3、数据采集实验要求:用8253定时器1通道定时,每隔半秒使从ADC0809的0通道IN0采集一个数据,若模拟电压在0-2V范围内(0-102),则使LED显示器L7-L4亮;若模拟电压大于2V,小于3V,则使L5-L2亮;若模拟电压大于等于3V,则使LED显示器L3-L0亮。

(主程序重复所采集的数据)(1)实验接线图(2)实验程序框图主程序流程图中断程序流程(3)实验程序清单CODE SEGMENT ;H0809.ASM ASSUME CS:CODEINTPORT1 EQU 0FF80HINTPORT2 EQU 0FF81HINTQ3 EQU INTREEUP3TCONTR0 EQU 0043HTCON1 EQU 0041H ;定时器的口地址IOCONPT EQU 0FF2BHIOBPT EQU 0FF29HIOAPT EQU 0FF28HPA EQU 0FF20H ;字位口PB EQU 0FF21H ;字形口PC EQU 0FF22H ;键入口ADPORT EQU 0FE00HORG 12D0HSTART: JMP START0BUF DB ?,?,?,?,?,?intcnt db ?RES DB ?data1 db 0c0h,0f9h,0a4h,0b0h,99h,92h,82hdb 0f8h,80h,90h,88h,83h,0c6hdb 0a1h,86h,8eh,0ffh,0ch,89h,0dehdb 0c7h,8ch,0f3h,0bfh,8FHSTART0: CLDCALL BUF1CALL WRINTVER ;WRITE INTRRUPT ;装填中断向量MOV AL,13HMOV DX,INTPORT1OUT DX,ALMOV AL,08HMOV DX,INTPORT2OUT DX,ALMOV AL,09HOUT DX,ALMOV AL,0F7HOUT DX,ALMOV intcnt,25 ;软件计数25(0.5秒=20ms*25)MOV DX,TCONTR0MOV AL,74H ;8253初始化011110100方式二,频率发生器,自动OUT DX,ALMOV DX,TCON1 ;计数器1定时20msMOV AX,40000OUT DX,ALMOV AL,AHOUT DX,ALMOV DX,0FF2BHMOV AL,80H ;8255初始化10000000OUT DX,ALSTIWATING: CALL DISP ;DISP 0809XXJMP WATINGWRINTVER: MOV AX,0HMOV ES,AXMOV DI,002CHLEA AX,INTQ3STOSWMOV AX,0000hSTOSWRETINTREEUP3: DEC INTCNT ;重装计数值JNZ INTRE2MOV INTCNT, 25 ;重装计数值ADCON: MOV AX,00 ;选通道MOV DX,ADPORT ;启动A\DOUT DX,ALMOV CX,0500HDELAY: LOOP DELAYMOV DX,ADPORTIN AL,DXMOV RES,ALCALL CONVERSMOV AL,RESCMP AL, 66H ;是否为2VJA NEXT1MOV AL, 0F0H ;小于2V时,左边四个灯亮MOV DX, IOAPTOUT DX,ALJMP INTRE2NEXT1: CMP AL, 99H ;是否为3VJA NEXT2MOV AL, 0C3H ;中间四个灯亮MOV DX, IOAPTOUT DX,ALJMP INTRE2NEXT2: MOV AL, 0FH ; 大于3V时,右边四个灯亮MOV DX, IOAPTOUT DX,ALINTRE2: MOV AL,20HMOV DX,INTPORT1OUT DX,ALIRETCONVERS: MOV AH,ALAND AL,0FHMOV BX,OFFSET BUFMOV [BX+5],ALMOV AL,AHAND AL,0F0HMOV CL,04HSHR AL,CLMOV [BX+4],ALRETDISP: MOV AL,0FFH ;00HMOV DX,PAOUT DX,ALMOV CL,0DFH ;20HMOV BX,OFFSET BUFDIS1: MOV DX,PCOUT DX,ALMOV AL,[BX]MOV AH,00HPUSH BXMOV BX,OFFSET DATA1ADD BX,AXMOV AL,[BX]POP BXMOV DX,PBOUT DX,ALMOV AL,CLMOV DX,PAOUT DX,ALPUSH CXDIS2: MOV CX,00A0HLOOP $POP CXCMP CL,0FEH ;01HJZ LX1INC BXROR CL,1JMP DIS1LX1: MOV AL,0FFHMOV DX,PBOUT DX,ALRETBUF1: MOV BUF,00HMOV BUF+1,08HMOV BUF+2,00HMOV BUF+3,09HMOV BUF+4,00HMOV BUF+5,00HRETCODE ENDSEND START思考题:用IN4采集数据,当电压大于4.5V,使PA口的LED全亮实验报告:要求:用8253定时器1通道定时,每隔半秒从ADC0809的2通道IN2采集一个数据存于RES单元。

相关文档
最新文档