《汇编与接口技术》实验六 ADC0809+中8086+0808+8255电路

本文讲述了使用ADC0808进行模拟量采集实验,涉及硬件设计(包括EOC查询电路)、软件编程(查询方式下采集程序和七段数码管显示)以及寻址方式和显示原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 一、实验目的

    1、ADC0809是很常用的一款8位的模数转换芯片,ADC0808是0809的简化版,主要的不同点是0808的转换输出OUT0~7与常用的输出端高低位是相反的,即0809的最低位是OUT0,0808的最低位是OUT7。因为0809在proteus里面没有模型库,因此本次实验以ADC0808为目标芯片进行仿真。
    2、熟练掌握附件中8086+0808+8255电路的工作原理,硬件连接及程序流程,掌握0808查询方式下的硬件连接和软件编程的方法。
  • 二、实验任务

设计并实现查询方式下的ADC0808模拟量采集程序。具体工作如下:

1. 硬件设计。修改硬件连接,为ADC0808设计EOC管脚状态查询电路。设计提示:可参考课件例程为EOC分配状态查询地址,或利用8255查询。

2. 软件设计。在前一步硬件连接的基础上,编写程序采集第IN_i路输入的模拟量,这里,IN_i为0808的第i个模拟量输入引脚,i为你学号最后一位进行模8运算的结果。然后,根据0808的工作过程设计采集程序,当EOC有效时,采集数据并在七段数码管上显示,精确到小数点后两位(目前的示例程序只精确到小数点后1位)。

  • 三、思考题

  1. 解释0808的寻址方式,给出查询方式的程序流程图.

寻址方式:片选端口IO2被选中之后,如果是WR状态有效,则ALE为高电平,这时通过ADD A、ADD B、ADD C进行通道选择,并使得START为高电平, 0808开始转换;如果是RD状态有效,则会使得OE为高电平,即0808的转换结果允许输入。

程序流程图:

2、示例程序中使用的4位七段数码管的显示原理是什么?试给出解释说明。

接口1234确定输入区域,低电平有效,通过8255C的高四位确定每次的输入。

接口ABCDEFG控制显示字段。通过向8255的B口输入数据。

四、实验过程

1、修改硬件连接:

 查询程序:

WAIT1:	mov dx,a8255
in al,dx
test al,01H		;注意EOC高电平有效
jz WAIT1
mov dx, adc0808
in al,dx
mov [si],al
jmp here

2、

i=7%8=7

输入引脚IN_7

引脚连接为IN_7

代码:

mon: mov al,[si]   
 mov ah,0      
 mov bl,51         
 div bl          
 mov bx,offset segdata
 xlat
 or al,80h    
 mov dx, b8255
 out dx, al   
 mov al,11011111b
 mov dx,c8255
 out dx,al
  call DELAY_1S

 MOV AL,0ffH               ;清屏
        OUT dx,AL
 mov al,ah       
 mov ah,0
 mov bl,10
 mul bl
 mov bl,51
 div bl
 mov bx,offset segdata
 xlat
 mov dx, b8255
 out dx, al
 mov al, 10111111b
 mov dx,c8255
 out dx,al
  call DELAY_1S
  
 MOV AL,0ffH               ;清屏
        OUT dx,AL
 mov al,ah
 mov ah,0
        mov bl,10
 mul bl
 mov bl,51
 div bl 
 mov bx,offset segdata
  xlat
 mov dx, b8255
 out dx, al
 mov al, 01111111b
 mov dx,c8255
 out dx,al
  call DELAY_1S

 mov dx,c8255
 MOV AL,0ffH               ;清屏
        OUT dx,AL
     call DELAY_1S
     loop mon
 
 mov dx, adc0808
     in al,dx
  mov [si],al
     jmp here     

运行结果截图:

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值