ADC0809数据采集与显示 下载本文

内容发布更新时间 : 2024/5/19 17:02:32星期一 下面是文章的全部内容请认真阅读。

一.用ADC0809数据采集与显示设计说明书

1、 方案论证

(1) 有关实验台的说明

CPU挂箱插8086 CPU模块 ①.地址分配表

CS0 片选信号,地址04A0~04AF 偶地址有效 CS1 片选信号,地址04B0~04BF 偶地址有效

ADC0809 A/D转换芯片一片,其地址、通道1—8输入对用户开放。 一路0---5V连续可调模拟量输出(AN0)

8位简单输入接口74LS244一个,8位简单输出接口74LS273一个,其地址对用户开放。 实验连线

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

(2) ADC0809工作原理

ADC0809的工作时序如下图所示。外部时钟信号通过CLK端进入其内部控制逻辑电路,作为转换时的时间基准。由时序图可以看出ADC0809的工作原理:

(3) 软件延时程序编写方法

delay:

mov cx,311 ;time delay

delay1: nop

nop

mov bx,cx

delay2: dec bx jnz delay2

9

dec cx

jnz delay1

(4)DOS调用显示字符。

2、 程序设计 (1) 硬件设计

八路八位A/D实验电路由一片ADC0809,一片74LS04,一片74LS32组成,该电路中,ADIN0—ADIN7是ADC0809的模拟量输入插孔,CS0809是0809的AD启动和片选的输入插孔,EOC是0809转换结束标志,高电平表示转换结束。齐纳二极管LM336-5提供5V的参考电源,ADC0809的参考电压,数据总线输出,通道控制线均已接好

硬件电路图及说明

10

(2) 程序设计 流程图

程序代码及注释

data segment at 200h ;定义数据段,段基址为200h org 10h ;偏移地址为10h result db 50 dup(? ) ;结果设置50个内存单元 data ends

code segment public

assume cs:code ,ds:data

org 100h start:

mov si,offset result ;结果的偏移地址传送到si中 start1: mov ax,data

mov ds,ax

mov dx,04a0h ;片选信号送到dx mov ax,34h ;操作数传送到ax out

dx,ax

;启动通道 0 wait1: mov dx,04b0h ;CS244

in

ax,dx

;读 EOC

and ax,1 ;高位清零 cmp ax,1 jne

wait1

;如果EOC=0,waiting....

mov dx,04a0h ; in ax,dx

;读转换结果

and ax,0ffh ;高位清零 低位保持不变

11

mov [si],al inc si nop delay:

mov cx,311 ;time delay延时程序

delay1: nop

nop

mov bx,cx

delay2: dec bx

jnz delay2 bx自减一若为零 执行delay2

dec cx

jnz delay1

jmp

start1

code ends end start

3.程序调试步骤与结果

(1) 实验台的软件安装 (2) 编辑源程序

(3) 汇编、连接、下载程序 (4) 运行与调试程序 (5).程序运行结果

12