硬件课程设计 LCD版电子计算器

上传人:豆浆 文档编号:20498034 上传时间:2017-11-22 格式:DOC 页数:32 大小:4.92MB
返回 下载 相关 举报
硬件课程设计 LCD版电子计算器_第1页
第1页 / 共32页
硬件课程设计 LCD版电子计算器_第2页
第2页 / 共32页
硬件课程设计 LCD版电子计算器_第3页
第3页 / 共32页
硬件课程设计 LCD版电子计算器_第4页
第4页 / 共32页
硬件课程设计 LCD版电子计算器_第5页
第5页 / 共32页
点击查看更多>>
资源描述

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

1、硬件课程设计计算机科学与技术学院硬件课程设计电子计算器姓 名: 学 号: 班 级: 选择课题: LCD 电子计算器 指导教师: 二一五年一月十四日中国矿业大学计算机科学与技术学院硬件课程设计报告0摘 要电子计算器的设计主要分为键盘扫描与读取编码、LCD 显示和四则运算的编写。这次设计中我们采用可编程接口芯片 8255 链接 4*4 键盘和 LCD 显示,从键盘扫描读入数字,在显示屏上面显示出来,并通过 cpu 运算出结果显示在屏幕上。由于对汇编语言也不甚了解,只是进行一些简单的自然数的四则运算。由于本次实验中,实验箱是 TPC-ZK 综合微机开放式实验系统,微机接口实验仪采用模块化、积木式的结

2、构,各实块互不影响。但可通过连线将各实验模块有机组合起来,进行微机外围接口实验。这个实验选择的是 4*4 键盘连接上 8255A然后控制 LCD 显示。关键词:8255A ;LCD 显示屏 ;键盘 ;汇编语言 ;四则运算中国矿业大学计算机科学与技术学院硬件课程设计报告1目 录1 设计任务与要求21.1 选题21.2 需求分析21.3 设计任务22 硬件方案22.1 微处理器 8086 芯片22.2 可编程并行接口 8255A 芯片 32.3 4*4 矩阵键盘 52.4 LCD 显示屏 62.5 电路及其功能模块图 73 软件方案 83.1 流程图 84 问题与解决方案105 成果展示 116

3、心得体会 137 参考文献148.附录(代码)14中国矿业大学计算机科学与技术学院硬件课程设计报告21 设计任务与设计要求1.1 选题我选的题目是电子计算器,电子计算器的设计主要分为键盘编码、七段数码管显示、和四则运算法则这三部分。设计时用可编程接口芯片 8255A 链接 4*4 键盘和 LCD 显示器,8255 扫描键盘并通过 LCD 显示相应的数字,这其中需要一定的汇编程序作为核心支撑,才能正确的使各种功能运行正常。1.2 需求分析通过对选题的深入了解,电子计算器基本功能可以概括为:1. 可以进行简单的加、减、乘、除四则运算;2. 为了显示的人性化,按下每个数字都要进行反馈显示;3. 计算

4、器能判断个别简单的错误,如除数为零,显示报错;4. 计算器要有清零功能,可以在按键失误后重新按键。在显示屏上可以及时反馈按下数字,这需要扫描程序模块一直运行着,并能够及时调用显示程序模块,当有运算符号按下时还要及时给之前按下的数字进行组装成一个数值,组装键值模块也是程序的重要所在。等等这些都是在主程序下合理安排、运用流畅的,才能带来较完美的计算器体验。1.3 设计任务本次实验我分为电路设计和编码设计这两个任务模块来设计的。电路设计主要研究键盘按键位置设计和各个芯片器件之间的连线。编码设计主要分为键盘扫描读取编码、LCD 显示编码和四则运算编码。2 硬件方案2.1 微处理器 8086 芯片当引脚

5、接高电平时,CPU 工作于最小模式。此时,引脚信号 2431 的含义及其功能如下: (1)IO/M:存储器、I/O 端口选择控制信号。信号指明当前 CPU 是选择访问存储中国矿业大学计算机科学与技术学院硬件课程设计报告3器还是访问 I/O 端口。为高电平时访问存储器,表示当前要进行 CPU 与存储器之间的数据传送。为低电平时,访问 I/O 端口,表示当前要进行 CPU 与 I/O 端口之间的数据传送。 (2)WR:写信号,输出,低电平有效。信号有效时,表明 CPU 正在执行写总线周期,同时由信号决定是对存储器还是对 I/O 端口执行写操作。(3)INTA:可屏蔽中断响应信号,输出,低电平有效。

6、 CPU 通过信号对外设提出的可屏蔽中断请求做出响应。为低电平时,表示 CPU 已经响应外设的中断请求,即将执行中断服务程序。 (4)ALE:地址锁存允许信号,输出,高电平有效。 CPU 利用 ALE 信号可以把AD15 AD0 地址/数据、A19/S6A16/S3 地址/状态线上的地址信息锁存在地址锁存器中。 (5)DT:数据发送/接收信号,输出,三态。DT/信号用来控制数据传送的方向。DT/为高电平时,CPU 发送数据到存储器或 I/O 端口;DT/为低电平时,CPU 接收来自存储器或 I/O 端口的数据。 (6)DEN:数据允许控制信号,输出,三态,低电平有效。信号用作总线收发器的选通控

7、制信号。当为低电平时,表明 CPU 进行数据的读/写操作。 (7)HOLD:总线保持请求信号,输入,高电平有效。在 DMA 数据传送方式中,由总线控制器 8237A 发出一个高电平有效的总线请求信号,通过 HOLD 引脚输入到CPU,请求 CPU 让出总线控制权。 (8)HLDA:总线保持响应信号,输出,高电平有效。HLDA 是与 HOLD 配合使用的联络信号。在 HLDA 有效期间,HLDA 引脚输出一个高电平有效的响应信号,同时总线将处于浮空状态,CPU 让出对总线的控制权,将其交付给申请使用总线的 8237A控制器使用,总线使用完后,会使 HOLD 信号变为低电平,CPU 又重新获得对总

8、线的控制权。2.2 可编程并行接口 8255A 芯片8255A 可为 8086 微处理器与外部设备之间提供并行输入/输出的通道。通过编程可以设置芯片的工作方式,因此,用 8255A 连接外部设备时,通常不用再附加外部电路。并行接口是在多根数据线上,以数据字节/字与 I/O 设备交换信息。在输入过程中,输入设备把数据送给接口,并且使状态线“输入准备好”有效。接口把数据存放在“输入缓冲寄存器”中,同时使“输入回答”线有效,作为对外设的响应。外设在收到这个回答信号后,就撤消数据和“输入准备好”信号。数据到达接口中后,接口会在“状态寄存器”中设置输入准备好标志,或者中国矿业大学计算机科学与技术学院硬件

9、课程设计报告4向 CPU 发一个中断请求。CPU 可用查询方式或中断方式从接口中读取数据。接口中的数据被读取后,接口会自动清除状态寄存器中的标志,且撤消对 CPU 的中断请求。在输出过程中,每当输出寄存器可以接收数据,接口就会将状态寄存器中“输出准备好”状态置 1 或向 CPU 发一个中断请求,CPU 可用查询或中断方式向接口输出数据。当 CPU 输出的数据到达接口后,接口会清除“输出准备好”状态,把数据送往外设,并向外设发一个“数据输出准备好”信号。外设受到驱动后,便接收数据,并向接口电路发一个“输出回答”信号,接口收到该回答信号后,又将状态寄存器中“输出准备好”置位,以便 CPU 输出下一

10、个数据。(1)8255A 的一些引脚RESET:复位输入线,当该输入端外于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有 I/O 口均被置成输入方式。PA0PA7:端口 A 输入输出线,一个 8 位的数据输出锁存器/缓冲器, 一个 8 位的数据输入锁存器。PB0PB7:端口 B 输入输出线,一个 8 位的I/O 锁存器, 一个 8 位的输入输出缓冲器。PC0PC7:端口 C 输入输出线,一个 8 位的数据输出锁存器/缓冲器, 一个 8 位的数据输入缓冲器。端口 C 可以通过工作方式设定而分成 2 个 4 位的端口, 每个 4 位的端口包含一个 4 位的锁存器,分别与端口 A 和端口

11、B 配合使用,可作为控制信号输出或状态信号输入端口。CS:片选信号线,当这个输入引脚为低电平时,表示芯片被选中,允许 8255 与 CPU 进行通讯。图 2-1 8255A 管脚图RD:读信号线,当这个输入引脚为低电平时,允许 8255 通过数据总线向 CPU 发送数据或状态信息,即 CPU 从 8255 读取信息或数据。WR:写入信号,当这个输入引脚为低电平时,允许 CPU 将数据或控制字写 8255。中国矿业大学计算机科学与技术学院硬件课程设计报告5D0D7:三态双向数据总线,8255 与 CPU 数据传送的通道,当 CPU 执行输入输出指令时,通过它实现 8 位数据的读/写操作,控制字和

12、状态信息也通过数据总线传送。(2)8255A 的读写控制:8255A 的读/写控制逻辑电路接受 CPU 发来的控制口号 RD、WR、RESET 和地址信号A1A0。然后根据命令端口,控制信号的要求,将端口的数据读出选信 CPU 或者将CPU 送来的数据写入端口,各端口的工作状态。通过用输出指令对 8255A 的控制字寄存器编程,写入设定工作方式的控制字,可以让 3 个数据口以不同的方式工作,端口 A 可工作于 3 种方式的任一种,端口 B 只能工作于方式 0 和方式 1,端口 C 除了用于输入输出端口外,还能配合 A 口和 B 口工作,为这两个端口的输入输出操作提供联系信号。图 2-2 825

13、5A 控制字本次设计实验采用的控制字是 10001000,A 口输出、B 口输出、C 口高输出低输入。2.3 4*4 矩阵键盘键盘是信息输入元件,由一个个按钮组成,如果是独立按钮的话必须要需要一个 I/O 口对它进行检测。因为 44 矩阵键盘有 8 个管脚,为了扫描键盘判断键值的方便将八个管脚中的列接 PA 和行接 PC。因为进行键盘扫描一般要求有一部分的 I/O 口的工作方式是输入,另一部分 I/O 是输出,具体到 44 键盘则要求 4 个I/O 口输入,另外 4 个输出,这一点 PC 口刚好符合,低四位接行作为键盘 I/O 输入,PA 低四位接列作为键盘 I/O 输出。键盘有 16 个按键

14、,我们设计为 09 为数字键,ABCD 分别为+、-、*、/,E为=号,F 为清零键 CL。中国矿业大学计算机科学与技术学院硬件课程设计报告6识别键盘上哪个键被压下的过程的扫描步骤:1.检测是否所有键都都松开了,若没有则反复检测。2.但所有键都松开了,再检测是否有键压下,若无键按下则反复检测。3.如有键压下,要消除键抖动,确认有键压下。4.对压下的键位置进行判断,先判断是第几行有键按下,再判断第几列有键按下,键值=行号*4+列号。至此确定了哪个键按下,再接着进行后面的操作。图 2-3 4*4 矩阵键盘 表 2-1 键盘设计2.4 LCD 显示屏LCD12864 液晶模块 12864LCD 显示块是所说的点阵液晶显示模块,就是由 128*64 个液晶显示点组成的一个 128 列*64 行的阵列,所以也就叫成了 12864。每个显示点都对应着有一位二进制数,0 表示灭,1 表示亮。存储这些点阵信息的 RAM 被称为显示数据存储器。如果要显示某个图形或汉字就是将相应的点阵信息写入到对应的存储单元中。图形或汉字的点阵信息是由自己设计,这时候问题的关键是显示点在液晶屏上

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

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