8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc

上传人:wj 文档编号:262724 上传时间:2023-04-28 格式:DOC 页数:15 大小:1.27MB
下载 相关 举报
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第1页
第1页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第2页
第2页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第3页
第3页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第4页
第4页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第5页
第5页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第6页
第6页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第7页
第7页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第8页
第8页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第9页
第9页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第10页
第10页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第11页
第11页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第12页
第12页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第13页
第13页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第14页
第14页 / 共15页
8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc

《8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc》由会员分享,可在线阅读,更多相关《8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc(15页珍藏版)》请在冰点文库上搜索。

8086简易计算器的设计-微机原理-计硬报告Word文件下载.doc

1、设计主要程序,编写;

2、查找资料验证修改;

1、选择需要用的各个芯片;

2、设计硬件原理图;

1、各个芯片功能的资料查找;

2、设计程序流程图

四.设计方案以及论证:

利用程序不断扫描所设的按钮键盘是不是有输入,如果没有就一直扫描,如果有就调用子程序进行判断,是数值则进行存储并同时进行显示,是运算符号等就调用相应的子程序进行操作,操作后则继续利用程序不断扫描键盘是不是有输入,从而实现部分十进制数的加、减、乘、除的运算。

运算完成后根据程序将运算的结果储存到锁存器中并显示到LED显示器上。

主要器件选择是采用8086CPU做主控制器,8255作为并行接口电路实现按键扫描以及数码管的显示。

通过8255A的C口和A口实现键盘的接入,通过键盘的不断扫描,如果有键按下,通过查表法分别将输入的数据读到AL中并保存在第一个和第二个数里,将8255A的B端口接上共阴极LED灯,将输入的数据通过查表法,将四段码送共阴极LED灯显示,当按下‘=’时,通过判断字符,8086来实现不同的操作,并将结果在LED灯上显示,当按下“C”时,将数据先清零,同时LED灯上显示为“00”。

五.硬件原理图(包括芯片的选型介绍):

芯片选型及介绍:

(1)8086CPU:

8086通过数据总线、地址总线、控制总线完成对8253和8255的读写工作,与接口部件实现数据传送,让接口部件实现预计的功能.

8086CPU的40条引脚信号可按功能分可分为四类,它们是:

地址总线,数据总线,控制总线,其它(时钟与电源)。

最小模式下一些引脚功能(MN/MX接+5V):

AD15~AD0,地址/数据总线

A19/S6~A16/S3,地址/状态总线

RD,读信号

WR,写信号

M/IO,存储器/输入输出控制信号

ALE,地址锁存允许信号

READY(Ready),准备就绪信号

INTR,可屏蔽中断请求信号

INTA,中断响应信号

NMI,非屏蔽中断请求信号

RESET,系统复位信号

DEN,数据允许信号

DT/R,数据发送/接收控制信号

HOLD,总线保持请求信号输入

HLDA,总线保持响应信号

TEST,测试信号

CLK,时钟输入信号

VCC(+5V),GND

(2)8255A可编程并行接口芯片:

Intel8086/8088系列的可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。

它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。

8255A的通用性强,使用灵活,通过它CPU可直接与外设相连接。

8255A可为8086微处理器与外部设备之间提供并行输入/输出的通道。

通过编程可以设置芯片的工作方式,并行接口是在多根数据线上,以数据字节/字与I/O设备交换信息。

8255A由数据总线缓冲器、读/写控制逻辑电路、A组和B组控制电路以及数据端口A、B和C组成。

数据总线缓冲器是8255A与系统数据总线的接口,CPU输入输出的数据、CPU输出的控制字和外设的状态信息都是通过这个缓冲器传送的。

读/写控制逻辑电路把CPU的控制命令或输出数据送至相应的端口,把外设的状态信息或输入数据通过相应的端口送至CPU。

数据端口PA和PB都包含一个8位输出锁存器/缓冲器和一个8位输入锁存器,

(3)74HC373:

其中D0-D7为数据输入端,Q0-Q7为输出端。

当三态允许控制端OE为低电平时,Q0-Q7为正常逻辑状态,可用来驱动负载或总线,当OE为高电平时,Q0-Q7成高阻态,不驱动总线。

当锁存允许端LE为高电平时,Q随数据D而变,当LE为低电平D被锁存在已建立的数据电平。

(4)74HC138:

74HC138是一款高速CMOS器件,74HC138引脚兼容低功耗肖特基TTL(LSTTL)系列。

74HC138译码器可接受3位二进制加权地址输入(A0,A1和A2),并当使能时,提供8个互斥的低有效输出(Y0至Y7)。

74HC138特有3个使能输入端:

两个低有效(E1和E2)和一个高有效(E3)。

除非E1和E2置低且E3置高,否则74HC138将保持所有输出为高,74HC138为反相输出,它按照三位二进制输入码和赋能输入条件,从8个输出端中译出一个低电平输出。

两个低电平有效的赋能输入端和一个高电平有效的赋能输入端减少了扩展所需要的外接门或倒相器。

六.程序流程图:

七.程序清单

DATASEGMENT

NUM1DB03HDUP(0)

NUMDB03HDUP(0)

DATAENDS

STACKSEGMENT

DW100DUP(0)

STACKENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA,SS:

STACK

PORTAEQU30H

PORTBEQU32H

PORTCEQU34H

PORT8255EQU36H

MAINPROCFAR

START:

MOVAX,DATA

MOVDS,AX

MOVDX,PORT8255

MOVAL,81H

OUTDX,AL

LOPL:

XORAH,AH

CALLKEY

CMPAH,00H

JZLOPL

CMPAL,0FH

JZCCCL

CMPAL,0AH

JNCLOPL

OUT32H,AL

LOPL2:

LEASI,NUM

MOV[SI],AL

PUSHAX

LOPL1:

XORAH,AH

JZLOPL1

JZXX1

CMPAL,0BH

JZXX2

CMPAL,0CH

JZXX3D

CMPAL,0DH

JZXX4D

JMPLOPL1

CCCL:

MOVAL,00H

JMPLOPL

XX3D:

CALLXX3

XX4D:

CALLXX4

MAINENDP

XX1PROC

NOP;

LOPL3:

JZLOPL3

JZCCCL

JNCLOPL3

MOV[SI+1],AL

LOPL4:

JZLOPL4

CMPAL,0EH

JZXXX1

JMPLOPL4

XXX1:

LEASI,NUM

MOVAL,[SI]

ANDAL,0FH

MOVDL,[SI+1]

ANDDL,0FH

ADDAL,DL

DAA

XX1ENDP

XX2PROC

NOP;

LOPL5:

JZLOPL5

JNCLOPL5

LOPL6:

XORAH,AH

JZLOPL6

JZCCCL7

JZXXX2

JMPLOPL6

XXX2:

SUBAL,DL

ADDAL,00H

CCCL7:

XX2ENDP

XX3PROC

LOPL7:

CALLKEY;

JZLOPL7

JZCCCL2

JNCLOPL7

LOPL8:

JZLOPL8

JZCCCL3

JZXXX3

JMPLOPL8

XXX3:

MULDL

AAM

MOVCL,4

SALAH,CL

ORAL,AH

CCCL2:

CCCL3:

XX3ENDP

XX4PROC;

LOPL9:

JZLOPL9

JZCCCL5

JNCLOPL9

LOPL10:

XORAH,AH

JZLOPL10

JZCCCL4

JZXXX4

JMPLOPL10

XXX4:

MOVBL,[SI+1]

ANDBL,0FH

ANDAX,000FH

DIVBL

CCCL4:

CCCL5:

XX4ENDP

KEYPROC

NOP

LEASI,NUM1

MOVAL,0EH

OUT30H,AL

INAL,34H

CMPAL,07H

JZLL7

CMPAL,0BH

JZLL8

CMPAL,0DH

JZLL9

CMPAL,0EH

JZLDIV

SS1:

MOVAL,0DH

JZLL4

JZLL5

JZLL6

CMPAL,0EH

JZLMUL

SS2:

MOVAL,0BH

JZLL1

JZLL2

JZLL3

JZLSUB

SS3:

MOVAL,07H

JZSCLC

JZLL0

JZLEQU

JZLADD

JMPKCLC

LDIV:

MOVAL,0DH

JMPLCLC

LL0:

MOVAL,00H

LL1:

MOVAL,01H

LL2:

MOVAL,02H

LL3:

MOVAL,03H

LL4:

MOVAL,04H

LL5:

MOVAL,05H

LL6:

MOVAL,06H

LL7:

MOVAL,07H

LL8:

MOVAL,08H

LL9:

MOVAL,09H

LADD:

MOVAL,0AH

LSUB:

MOVAL,0BH

LMUL:

MOVAL,0CH

LEQU:

MOVAL,0EH

SCLC:

MOVAL,0FH

LCLC:

MOV[SI],AL

MOVAH,01H

KCLC:

RET

KEYENDP

CODEENDS

ENDSTART

八.程序运行结果分析与预测:

连接完线路图后把编好的程序关联到8086CPU中进行运行调试,肯定可以实现加减乘除运算,例如3+8=11,通过按键分别输入“3”,“+”,“8”,“=”后,LED灯上将显示出“11”.能实现清零操作,当按下“ON/C”时,LED上显示“00”。

如图

3+8=11

当输入“3”,“*”,“8”,“=”后,LED灯上将显示出“24”.如图

3*8=24

十.结果评述:

本期刚学过微机原理,学得不是很深入,仅限于课本知识的掌握,而此次课程设计将会是一个很好的机会,来考察自己对课本知识的掌握以及应用情况。

本次课程设计是二到三人人一组,并且自由选择设计课题,我们小组选择了简易计算器的课题,在做的过程中也遇到很多困难。

通过本次课程设计实验我们初步接触了较复杂程序的设计。

在实验中用程序对8255进行控制键盘和LED显示的控制,完成计算器加减法的应用。

在程序编写中,明白和掌握程序的原理和实现方式。

学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2