键控数据采集及数值显示电路设计微机原理.docx

上传人:b****4 文档编号:3637375 上传时间:2022-11-24 格式:DOCX 页数:8 大小:124.66KB
下载 相关 举报
键控数据采集及数值显示电路设计微机原理.docx_第1页
第1页 / 共8页
键控数据采集及数值显示电路设计微机原理.docx_第2页
第2页 / 共8页
键控数据采集及数值显示电路设计微机原理.docx_第3页
第3页 / 共8页
键控数据采集及数值显示电路设计微机原理.docx_第4页
第4页 / 共8页
键控数据采集及数值显示电路设计微机原理.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

键控数据采集及数值显示电路设计微机原理.docx

《键控数据采集及数值显示电路设计微机原理.docx》由会员分享,可在线阅读,更多相关《键控数据采集及数值显示电路设计微机原理.docx(8页珍藏版)》请在冰豆网上搜索。

键控数据采集及数值显示电路设计微机原理.docx

键控数据采集及数值显示电路设计微机原理

二○一二~二○一三学年第一学期

信息科学与工程学院

自动化系

课程设计计划书

 

班级:

自动化1006班

课程名称:

微机原理及应用课程设计

姓名:

指导教师:

二○一二年月十二日

 

一、设计题目

键控数据采集及数值显示电路设计

二、设计任务

按不同的数字键(0、1、2、3、4、5、6、7)采集0809相应数据通道的模拟量,并在LED数码管上显示值。

设定输入模拟量在0—5V范围内,显示值在0—255范围内。

三、设计要求

1.画出连接线路图或功能模块引脚连接图。

2.采用8088CPU作主控制器,0809作A/D转换器,采用直接地址译码方法,给各芯片分配地址,选取芯片中必须包含有8255。

3.采用3个共阴极型LED动态显示,只需显示0—255范围内的值。

四、设计思想及需要用的主要芯片

1、设计思想

首先通过编程对8255初始化,然后通过8255对ADC0809转换器初始化,通过0~7号按键(在这里0~7号按键用开关实现,有按键的过程中会有抖动,所以需要加入一个74LS244芯片,用于缓冲),经8088微处理器处理后选择ADC0809的模拟通道,将0~5V内的模拟量通过选择的模拟通道传递给模数转换器,通过转换器把模拟量转换为0~255之间的数字量,将数字量通过可编程并行接口8255(在这里端口A作为数据输入端,端口B作为数据输出端,端口C作为控制端),送给LED数码管显示。

2.主要芯片及其功能

ADC0809是8位逐次逼近式A/D转换器。

片内有8路模拟开关及地址锁存与译码电路、8位A/D转换和三态输出锁存缓冲器。

其芯片引脚图如下

 

8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。

具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。

  。

74LS244是数据输入三态缓冲器。

外设输入的数据和状态信号,通过数据输入三态缓冲器井经过数据总线传递给微处理器。

8个数据输入端与外设相连,8个数据输出端与微型计算机的数据总线相连。

其引脚图如下

74LS273是数据输出寄存器。

8个输入端微型计算机的数据总线相连,8个数据输出端与外设相连,由时终端控制数据的写入。

其引脚图如下

六、流程图:

 

七、源程序代码

STACKSEGMENT

DW32DUP(0)

STACKENDP

DATASEGMENG

BUFDB40H,79H,24H,30H,19H,12H,02H,78H,00H,18H;0~9的字形码

IBUFDB4,0,4DUP(0);分配空间,为存储数据做准备

DATAENDS

CODESEGMENT

STARTPROCFAR

ASSUMECS:

CODE,DS:

DATA,SS:

STACK

PUSHDS

SUBAX,AX

PUSHAX

MOVAX,DATA

MOVDS,AX

MOVDX,383H;8255控制字寄存器的端口地址

MOVAL,83H;方式选择字

OUTDX,AL

LOP1:

MOVAL,0

MOVDX,005H;读74LS244芯片地址

INAL,DX;读74LS244端口地址

ANDAL,OFFH

JZLOP5

MOVBL,0

LOP2:

CMPAL,01H;将按键转化成相应的数字

JELOP3

SHRAL,1

INCBL

JMPLOP2

LOP3:

MOVAL,BL

OUTDX,AL;启动A/D转换并选择通道

MOVDX,382H;PC端口地址

LOP4:

INAL,DX

TESTAL,01H;为1表示转换结束,否则继续等待

JZLOP4

MOVDX,383H;控制字寄存器的端口地址

MOVAL,80H;写OE让其有效

OUTDX,AL

MOVAL,1;PC端口选择位置位字

OUTDX,AL;将ADC0809的EOC改为高电平有效

MOVAL,0BH;

OUTDX,AL;使OE有效,允许输出

MOVDX,383H

MOV90H;将PA端口设置为输入

OUTDX,AL

MOVDX,380H;写PA端口,将转化结果写入8255

INAL,DX

MOVDX,383H;设置控制字,将PB端口设置为输出

MOVAL,80H

OUTDX,AL

MOVDX,381H;读PB端口

OUTDX,AL

LOP5:

MOVCL,10

MOVAH,0

BEGIN:

DIVCL

MOVBP,OFFSETIBUF;依次将百位,十位,个位存入IBUF

MOV[BP+4],AH

MOVAH,0

DIVCL

MOV[BP+3],AH

MOVAH,0

DIVCL

MOV[BP+2],AH

MOV[BP+5],0DH;存入回车符

MOVAH,04H;用于操作七段显示器的位码

SHOW:

MOVBL,DS:

[BP+2]

MOVBH,0

MOVAL,BUF[BX];取出BCD数七段显示码,用于显示

MOVDX,380H;74LS273端口地址,输出端码

OUTDX,AL

MOVAL,AH

MOVDX,384H;输出位码

OUTDX,AL

MOVCX,1000;延时

LOOP$

INCBP;调整指向BCD码的指针,用于显示下一个数字

SHRAH,1;调整位码指针,是的下一个七段显示器有效

ANDAH,AH;判断三位数字是否已经完全输出

JNZSHOW;没有输入完,则跳转至SHOW

MOVAH,11;检测有无输入

INT21H

CMPAL,0

JNZLOP1;若有按键,则返回继续选择通道继续执行

RET

STARTENDP

CODEENDS

ENDSTART

 

八、实验小结

此次试验对于我来说是一次历练,由于我们在做实验时做的题目相对于这一次的课程设计来说要简单,所以开始拿到题目是有一些茫然。

冷静下来后开始分析题目,首先得知道题目究竟要我们做什么,实现什么功能。

然后拿着我们的《微机原理、汇编与接口技术》课本,分析一个个学过的芯片,看它能够实现什么功能,分析芯片的引脚应该怎样连接。

除了已经要求必须要用到的主要芯片,还需要找出一些辅助芯片,看究竟用哪一个芯片,能够是连接的电路图能够更加的简介。

在画硬件电路图上我也遇到了问题,由于没有选修电子电路CAD那门课,我一开始对Protel软件完全不熟悉,所以开始完全不知道图怎么画,最后请教的同学,他们教我怎样选择芯片、怎样选择一些元器件、怎样连接试图看起来更加清晰。

在Protel软件里面所有芯片内部的接Vcc的引脚和接地的引脚都没有显示,再此加以说明。

在实现功能的时候自己也遇到了一些麻烦,比如我们一般做试验的时候,实验室里面不需要我们对如何实现8086芯片的功能进行连线,只需把相应的数据总线等与其他的芯片连接起来即可,且许多芯片的内部已经接好,不需要我们另外连接。

在该课程设计中模拟量是0~5V,我在这里在ADC0809的ref(+)和ref(-)端分别接+5V和地,在在它们之间接一个滑动变阻器来实现。

 

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 营销活动策划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1