硬件课程设计报告(电子计算器)

上传人:公**** 文档编号:511106912 上传时间:2023-02-21 格式:DOCX 页数:28 大小:7.09MB
返回 下载 相关 举报
硬件课程设计报告(电子计算器)_第1页
第1页 / 共28页
硬件课程设计报告(电子计算器)_第2页
第2页 / 共28页
硬件课程设计报告(电子计算器)_第3页
第3页 / 共28页
硬件课程设计报告(电子计算器)_第4页
第4页 / 共28页
硬件课程设计报告(电子计算器)_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《硬件课程设计报告(电子计算器)》由会员分享,可在线阅读,更多相关《硬件课程设计报告(电子计算器)(28页珍藏版)》请在金锄头文库上搜索。

1、中国矿业高校计算机科学与技术学院硬件课程设计报告计算机科学与技术学院硬件课程设计报告姓 名: 学 号: 专 业: 计算机科学与技术 班 级: 计科 班 设计题目: 电子计算器 成 员: 指导老师: 职 称: 年 月 课程设计指导老师评阅书指导老师评语:成 绩: 指导老师签字: 年 月 摘 要电子计算器的设计主要分为键盘扫描与读取编码、七段LED数码管显示和四则运算的编写。这次设计中我们采纳可编程接口芯片8255链接4*4键盘和LED显示屏,从键盘扫描读入数字,在显示屏上面显示出来,并通过cpu运算出结果显示在屏幕上。由于对汇编语言也不甚了解,只是进行一些简洁的自然数的四则运算。由于本次试验中,

2、试验箱是TPC-ZK综合微机开放式试验系统,微机接口试验仪采纳模块化、积木式的结构,各实块互不影响。但可通过连线将各试验模块有机组合起来,进行微机外围接口试验。这个试验选择的是4*4键盘连接上8255A然后限制LED显示。关键词:8255A ;七段LED数码管 ;键盘 ;汇编语言 ;四则运算目 录1 设计任务与要求3 1.1选题3 1.2需求分析3 1.3设计任务32硬件方案3 2.1微处理器8086芯片3 2.2 可编程并行接口8255A芯片4 2.3 4*4矩阵键盘6 2.4 七段LED数码管7 2.5 电路及其功能模块图83软件方案10 3.1流程图10 3.2源程序代码114 问题与解

3、决方案265 成果展示266 总结277 心得体会与收获278参考文献271 设计任务与设计要求1.1选题我选的题目是电子计算器,电子计算器的设计主要分为键盘编码、七段数码管显示、和四则运算法则这三部分。设计时用可编程接口芯片8255A链接4*4键盘和七段LED数码管,8255扫描键盘并通过数码管显示相应的数字,这其中须要肯定的汇编程序作为核心支撑,才能正确的使各种功能运行正常。1.2需求分析通过对选题的深化了解,电子计算器基本功能可以概括为:1. 可以进行简洁的加、减、乘、除四则运算;2. 为了显示的人性化,按下每个数字都要进行反馈显示;3. 数码管只有四位显示,运算数和结果应尽量小于四位数

4、,不然显示不全;4. 计算器能推断个别简洁的错误,如除数为零,显示报错;5. 计算器要有清零功能,可以在按键失误后重新按键。在显示屏上可以刚好反馈按下数字,这须要扫描程序模块始终运行着,并能够刚好调用显示程序模块,当有运算符号按下时还要刚好给之前按下的数字进行组装成一个数值,组装键值模块也是程序的重要所在。等等这些都是在主程序下合理支配、运用流畅的,才能带来较完备的计算器体验。1.3设计任务本次试验我分为电路设计和编码设计这两个任务模块来设计的。电路设计主要探讨键盘按键位置设计和各个芯片器件之间的连线。编码设计主要分为键盘扫描读取编码、七段数码管显示编码和四则运算编码。2 硬件方案2.1微处理

5、器8086芯片当引脚接高电平常,CPU工作于最小模式。此时,引脚信号2431的含义及其功能如下: (1)IO/M:存储器、I/O端口选择限制信号。信号指明当前CPU是选择访问存储器还是访问I/O端口。为高电平常访问存储器,表示当前要进行CPU与存储器之间的数据传送。为低电平常,访问I/O端口,表示当前要进行CPU与I/O端口之间的数据传送。 (2)WR:写信号,输出,低电平有效。信号有效时,表明CPU正在执行写总线周期,同时由信号确定是对存储器还是对I/O端口执行写操作。(3)INTA:可屏蔽中断响应信号,输出,低电平有效。 CPU通过信号对外设提出的可屏蔽中断恳求做出响应。为低电平常,表示C

6、PU已经响应外设的中断恳求,即将执行中断服务程序。 (4)ALE:地址锁存允许信号,输出,高电平有效。 CPU利用ALE信号可以把AD15 AD0地址/数据、A19/S6A16/S3地址/状态线上的地址信息锁存在地址锁存器中。 (5)DT:数据发送/接收信号,输出,三态。DT/信号用来限制数据传送的方向。DT/为高电平常,CPU发送数据到存储器或I/O端口;DT/为低电平常,CPU接收来自存储器或I/O端口的数据。 (6)DEN:数据允许限制信号,输出,三态,低电平有效。信号用作总线收发器的选通限制信号。当为低电平常,表明CPU进行数据的读/写操作。 (7)HOLD:总线保持恳求信号,输入,高

7、电平有效。在DMA数据传送方式中,由总线限制器8237A发出一个高电平有效的总线恳求信号,通过HOLD引脚输入到CPU,恳求CPU让出总线限制权。 (8)HLDA:总线保持响应信号,输出,高电平有效。HLDA是与HOLD协作运用的联络信号。在HLDA有效期间,HLDA引脚输出一个高电平有效的响应信号,同时总线将处于浮空状态,CPU让出对总线的限制权,将其交付给申请运用总线的8237A限制器运用,总线运用完后,会使HOLD信号变为低电平,CPU又重新获得对总线的限制权。2.2 可编程并行接口8255A芯片8255A可为8086微处理器与外部设备之间供应并行输入/输出的通道。通过编程可以设置芯片的

8、工作方式,因此,用8255A连接外部设备时,通常不用再附加外部电路。并行接口是在多根数据线上,以数据字节/字与I/O设备交换信息。 在输入过程中,输入设备把数据送给接口,并且使状态线“输入打算好”有效。接口把数据存放在“输入缓冲寄存器”中,同时使“输入回答”线有效,作为对外设的响应。外设在收到这个回答信号后,就撤消数据和“输入打算好”信号。数据到达接口中后,接口会在“状态寄存器”中设置输入打算好标记,或者向CPU发一个中断恳求。CPU可用查询方式或中断方式从接口中读取数据。接口中的数据被读取后,接口会自动清除状态寄存器中的标记,且撤消对CPU的中断恳求。 在输出过程中,每当输出寄存器可以接收数

9、据,接口就会将状态寄存器中“输出打算好”状态置1或向CPU发一个中断恳求,CPU可用查询或中断方式向接口输出数据。当CPU输出的数据到达接口后,接口会清除“输出打算好”状态,把数据送往外设,并向外设发一个“数据输出打算好”信号。外设受到驱动后,便接收数据,并向接口电路发一个“输出回答”信号,接口收到该回答信号后,又将状态寄存器中“输出打算好”置位,以便CPU输出下一个数据。(1) 8255A的一些引脚RESET:复位输入线,当该输入端外于高电平常,全部内部寄存器(包括限制寄存器)均被清除,全部I/O 口均被置成输入方式。PA0PA7:端口A 输入输出线,一个8 位的数据输出锁存器/缓冲器, 一

10、个 8 位的数据输入锁存器。PB0PB7:端口B 输入输出线,一个8 位的I/O 锁存器, 一个 8 位的输入输出缓冲器。PC0PC7:端口C 输入输出线,一个8 位的数据输出锁存器/缓冲器, 一个 8 位的数据输入缓冲器。端口C 可以通过工作方式设定而分成2 个4 位的端口, 每个 4 位的端口包含一个4 位的锁存器,分别与端口A 和端口B 协作运用,可作为限制信号输出或状态信号输入端口。CS:片选信号线,当这个输入引脚为低电平常,表示芯片被选中,允许8255 与CPU 进行通讯。 图2-1 8255A管脚图RD:读信号线,当这个输入引脚为低电平常,允许8255 通过数据总线向CPU 发送数

11、据或状态信息,即CPU 从8255 读取信息或数据。WR:写入信号,当这个输入引脚为低电平常,允许CPU 将数据或限制字写8255。D0D7:三态双向数据总线,8255 与CPU 数据传送的通道,当CPU 执行输入输出指令时,通过它实现8 位数据的读/写操作,限制字和状态信息也通过数据总线传送。(2) 8255A的读写限制:8255A的读/写限制逻辑电路接受CPU 发来的限制口号RD、WR、RESET 和地址信号A1A0。然后依据吩咐端口,限制信号的要求,将端口的数据读出选信CPU 或者将CPU送来的数据写入端口,各端口的工作状态。通过用输出指令对8255A 的限制字寄存器编程,写入设定工作方

12、式的限制字,可以让3个数据口以不同的方式工作,端口A 可工作于3 种方式的任一种,端口B 只能工作于方式0 和方式1,端口C 除了用于输入输出端口外,还能协作A 口和B 口工作,为这两个端口的输入输出操作供应联系信号。图2-2 8255A限制字本次设计试验采纳的限制字是10010000,A口输入、B口输出、C口输出。2.3 4*4矩阵键盘键盘是信息输入元件,由一个个按钮组成,假如是独立按钮的话必须要须要一个I/O口对它进行检测。因为44矩阵键盘有8个管脚,为了扫描键盘推断键值的便利将八个管脚中的列接PA和行接PC。因为进行键盘扫描一般要求有一部分的I/O口的工作方式是输入,另一部分I/O是输出

13、,详细到44键盘则要求4个I/O口输入,另外4个输出,这一点PC口刚好符合,低四位接行作为键盘I/O输入,PA低四位接列作为键盘I/O输出。键盘有16个按键,我们设计为09为数字键,ABCD分别为+、-、*、/,E为=号,F为清零键CL。识别键盘上哪个键被压下的过程的扫描步骤:1.检测是否全部键都都松开了,若没有则反复检测。2.但全部键都松开了,再检测是否有键压下,若无键按下则反复检测。3.如有键压下,要消退键抖动,确认有键压下。4.对压下的键位置进行推断,先推断是第几行有键按下,再推断第几列有键按下,键值=行号*4+列号。至此确定了哪个键按下,再接着进行后面的操作。0123456789+-*/=CL 图2-3 4

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号