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

  • 格式:doc
  • 大小:489.50 KB
  • 文档页数:10

下载文档原格式

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

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

信息科学与工程学院

自动化系

课程设计计划书

班级:自动化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个数据输出端与微型计算机的数据总线相连。其引脚图如下

1G 1A121Y118A241Y216A361Y314A481Y4

12

2G 19B 1112Y19B 2132Y27B 3152Y35B 417

2Y4

3

U?

74LS273是数据输出寄存器。8个输入端微型计算机的数据总线相连,8个数据输出端与外设相连,由时终端控制数据的写入。其引脚图如下

C LR 1C LK 111

D 31Q 22D 42Q 53D 73Q 64D 84Q 95D 135Q 126D 146Q 157D 177Q 168D 18

8Q

19

U?

六、流程图:

七、源程序代码

STACK SEGMENT

DW 32 DUP(0)

STACK ENDP

DA TA SEGMENG

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

IBUF DB 4,0,4 DUP(0) ;分配空间,为存储数据做准备DA TA ENDS

CODE SEGMENT

START PROC FAR

ASSUME CS:CODE,DS:DATA,SS:STACK

PUSH DS

SUB AX,AX

PUSH AX

MOV AX,DA TA

MOV DS,AX

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

MOV AL,83H ;方式选择字

OUT DX,AL

LOP1: MOV AL,0

MOV DX,005H ;读74LS244芯片地址

IN AL,DX ;读74LS244端口地址

AND AL,OFFH

JZ LOP5

MOV BL,0

LOP2:CMP AL,01H ;将按键转化成相应的数字

JE LOP3

SHR AL,1

INC BL

JMP LOP2

LOP3:MOV AL,BL

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

MOV DX,382H ;PC端口地址

LOP4:IN AL,DX

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

JZ LOP4

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

MOV AL,80H ;写OE让其有效

OUT DX,AL

MOV AL,1 ;PC端口选择位置位字

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

MOV AL,0BH;

OUT DX,AL ;使OE有效,允许输出

MOV DX,383H

MOV 90H ;将PA端口设置为输入

OUT DX,AL

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

IN AL,DX

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

MOV AL,80H

OUT DX,AL

MOV DX,381H ;读PB端口

OUT DX,AL

LOP5:MOV CL,10

MOV AH,0

BEGIN:DIV CL

MOV BP,OFFSET IBUF ;依次将百位,十位,个位存入IBUF MOV [BP+4],AH

MOV AH,0