找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3796|回复: 1
打印 上一主题 下一主题
收起左侧

基于8088CPU的八路输入模拟信号的数值显示电路设计

[复制链接]
跳转到指定楼层
楼主
ID:402055 发表于 2018-11-2 11:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
八路输入模拟信号的数值显示电路设计
一、 设计任务及要求
    采用8088CPU作主控制器,0809作A/D转换器。开机后能自动依次轮流显示8路输入的模拟电压值,每采集一个通道则立即显示该通道经A/D转换后的数值。输入模拟电压在0—5V范围内,显示值在0—255范围内。四个LED分别显示通道号(0-8)、百位数、十位数、个位数。
要求:
1.四个LED均为共阴极型,采用动态显示法。
2.采用直接地址译码方法,给0809芯片,段选端口,位选端口分配地址。其中段选端口,位选端口均采用74LS273芯片。
3.采用无条件传送方式即启动转换后等待超过100微秒读取转换结果。
4.画出连接线路图或功能模块引脚连接图

二:硬件连接图

总体效果图


(1)ADC0808

ADC0808是CMOS单片型逐次逼近式A/D转换器,它有8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器。

2)显示部分
采用共阴极接法,
  • 主控电路
8088在访问存储器或I/O设备时,首先将存储单元或I/O端口的地址发送到地址线上,由于8088的低八位地址和数据共享着AD7-AD0八条引线,所以无法同时传送数据和地址,若不将8088先送出的第八位地址锁存,则必然丢失,故用8088组建系统,必然用地址锁存器,此处用74ls373


  • 电源部分
将220V电压转换为0~5V电压
(5)74ls138
E1,E2,E3是使能端,负责选通74LS138,A,B,C的作用是选通Y0~Y7哪一个工作
  • 结果

  • 设计说明及程序流图
在刚上电时,数码管显示值都为0000,当进行一次测量后,将显示出A/D转換值。数据显示时间在1秒左右。主程序在调用显示程序和测试程之间循环 采用动态扫描法实现四位数码管的数值显示。测量所得的 A/D转換数据放在70H-77H内存单元中,测量数据在显示时需经过转換成为十进制 BCD码放在78H-7BH中,寄存器 用来作8路循环控制 A/D转換由集成电路 0808完成, 0808具有8路模拟输入端口, 地址线(23-25脚)可决定对哪一路模拟输入作 A/D转換, 22脚为地址锁存控制, 当输入为高电平时,对地址信号进行锁存。6脚为测试控制,当输入一个高电平脉冲时,就开始 A/D转換, 7脚为 A/D转換结束标志,当 A/D转換结束时, 7脚输出高电平。9脚为A/D转換数据输出允许控制,当0E脚为高电平时, A/D转換数据从端口输出 。10脚为 0808的时钟输入端,单片机的 P1、 P3端口作四位 LED数码管显示控制,P0端口作A/D读入用。模拟量送人寄存器,转换成数字量,将其与输入的模拟量进行比较,逐次逼近直到生成量等于输入量,ADC0809对8个通道进行进行循环采集,然后对采集的数据进行转换,转换为非压缩的BCD码放入数据缓冲区,然后对其分别依次输出采集的通道号、百位、十位和个位。用不同的地址完成输出采集的代码。

  • 程序代码
  1. STACK SEGMENT STACK
  2.               DW 32 DUP(?)
  3. STACK ENDS
  4. CODE SEGMENT
  5.   OBUF DB 3 DUP(0)
  6.   assume CS:CODE,SS:STACK
  7.               PA EQU 60H
  8.               PB EQU 62H
  9.               PC EQU 64H
  10.               PD EQU 66H
  11.       MODE EQU 80H  8255a方式控制字10000000,A,B,C做输出口
  12.   START PROC
  13.               MOV AL,MODE
  14.               MOV DX,PD
  15.               OUT DX,AL
  16.               MOV SI,0300H
  17.       S:MOV AX,255H
  18.               MOV DX,SI
  19.               OUT DX,AL
  20.               CALL DELAY   
  21.               IN AL,DX      
  22.               MOV AH,0
  23.               MOV CL,64H
  24.               DIV CL
  25.               MOV OBUF+2,AL
  26.               MOV AL,AH
  27.               AAM         
  28.               MOV OBUF+1,AH
  29.               MOV OBUF,AL
  30.         MOV DX,PC     
  31.         OUT DX,AL
  32.         MOV DX,PB   
  33.         MOV AL,OBUF+1
  34.               OUT DX,AL
  35.               MOV DX,PA     
  36.         MOV AL,OBUF+2
  37.               OUT DX,AL
  38.         INC SI
  39.               CMP SI,0307H
  40.               JNA S
  41.               MOV SI,0300H
  42.               JMP S
  43.               ret
  44. START  ENDP
  45. DELAY              PROC FAR   
  46.       PUSHF
  47.       PUSH BX
  48.       PUSH CX
  49.       PUSH SI
  50.       MOV BX,180H   
  51. LP2:  MOV CX,176H  
  52. LP1:  PUSHF
  53.       POPF
  54.       LOOP LP1     
  55.       DEC BX
  56.       JNZ LP2
  57.       POP SI
  58.       POP CX
  59.       POP BX
  60.       POPF
  61.       RET
  62. DELAY ENDP
  63. CODE ENDS
  64.               END START
复制代码

五:实验小结
此次设计做的不是很顺利,首先是8255的用法没有很好的学习好,导致用的时候没有融会贯通,其次在程序的理解和设计上还有困难,总值最大的问题是学习上的理论知识不是非常扎实,而这次设计让我学到了很多,特别是编程方面,多亏有同学的帮助让我明白了很多课堂上学不到的东西,但愿以后能够有更大的进步吧


完整的Word格式文档51黑下载地址:
基于8088的八路输入模拟信号的数值显示电路设计.doc (485.5 KB, 下载次数: 21)


评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:770645 发表于 2020-6-12 10:02 | 只看该作者
很好楼主  赞赞赞
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表