简易计算器设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
郑州科技学院
《单片机原理及应用》课程设计
题目基于单片机简易设计与实现
学生姓名
专业班级
学号
院(系)
指导老师
完成时间年月日
目录
0.引言 (1)
1.设计方案 (2)
1.1方案论证 (2)
1.2方案比较与选择 (2)
2.系统设计 (3)
2.1系统组成及总体框图 (3)
2.2硬件原理 (4)
2.2.1.单片机最小系统 (4)
2.2.2键盘电路 (10)
2.2.3显示电路 (12)
2.3.软件流程 (13)
2.3.1主程序控制流程 (14)
2.3.2键盘扫描子程序 (14)
2.3.3LCD1602显示控制流程 (16)
2.4仿真与实物制作 (20)
3.结论 (21)
参考文献 (22)
附录一:总体电路原理图 (23)
附录二: 元器件 (23)
附录三:源程序 (24)
基于单片机简易设计与实现
0.引言
随着社会的发展,科学的进步,人们的生活水平在逐步的提高,尤其是微电子技术的发展,犹如雨后春笋般的变化。电子产品的更新速度快就不足惊奇了。计算器在人们的日常中是比较的常见的电子产品之一。如何使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器,使其更好的为各个行业服务,成了如今电子领域重要的研究课题[1]。
今天,人们的日常生活中已经离不开计算器了,社会的各个角落都有它的身影,比如商店,办公室,学校……。因此设计一款简单实用的计算器会有很大的实际意义。
本设计对字符液晶显示模块的工作原理,如初始化、清屏、显示、调用及外特性有较清楚的认识,并会使用LCD(液晶显示模块)实现计算结果的显示;掌握液晶显示模块的驱动和编程,设计LCD和单片机的接口电路,以及利用单片机对液晶模块的驱动和操作;在充分分析内部逻辑的概念,进行软件和调试,学会使用,并能够以其为平台设计出具有四则运算能力简易计算器的硬件电路和软件程序。
同时在进一步掌握单片机理论知识,理解嵌入式单片机系统的硬软件设计,加强对实际应用系统设计的能力。通过本设计的学习,使我掌握单片机程序设计和微机接口应用的基本方法,并能综合运用本科阶段所学软、硬件知识分析实际问题,提高解决毕业设计实际问题的能力,为单片机应用和开发打下良好的基础。
本设计可以采用两种方案,一种是以FPGA为核心处理芯片,配备相应的外设;另外一种是以STC89C51处理器,配备相应的外设。
1.1方案论证
(1)方案一:采用FPGA控制
FPGA是一种高密度的可编程逻辑器件,自从Xilinx公司1985年推出第一片FPGA以来,FPGA的集成密度和性能提高很快,其集成密度最高达500万门/片以上,系统性能可达200MHz。由于FPGA器件集成度高,方便易用,开发和上市周期短,在数字设计和电子生产中得到迅速普及和应用,并一度在高密度的可编程逻辑器件领域中独占鳌头。
但是而基于SRAM编程的FPGA,其编程信息需存放在外部存储器上 ,需外部存储器芯片 ,且使用方法复杂 ,保密性差,而其对于一个简单的计算器而言,实用FPGA有点大材小用,成本太高。
(2)方案二:采用STC89C51
单片机是单片微型机的简称,故又称为微控制器MCU(Micro Control Unit)。通常由单块集成电路芯片组成,内部包含有计算机的基本功能部件:中央处理器CPU,存储器和I/O接口电路等。因此,单片机只要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。单片机广泛用于智能产品,智能仪表,测控技术,智能接口等,具有操作简单,实用方便,价格便宜等优点,而其中STC89C51以MCS-51为内核,是单片机中最典型的代表,应用于各种控制领域[5]。
1.2方案比较与选择
通过以上两种方案论证和比较,从设计的实用性,方便性和成本出发,选择了以STC89C51单片机作为中央处理单元进行计算器的设计,这样设计能够实现对四位加减乘除和除法四位小点数的运算。
为了更好的实现系统得功能,硬件电路的设计应该遵循以下原则:(1)优化硬件电路
采用软件设计与硬件设计相结合的方法;尽管采用软件来实现硬件系统的功能时,也许响应时间会比单纯使用硬件时长,而且还要占用微处理器(MCU)的时间;但是,用软件实现硬件的功能可以简化硬件结构,提高电路的可靠性。所以,在设计本系统得时候,在满足可靠性和实时性的前提下,尽可能的通过软件来实现硬件功能[8]。
(2)可靠实用性
根据可靠性及实用性设计理论,系统所用芯片数量越少,系统的平均无故障时间越长。而且,所用芯片数量越少,地址和数据总线在电路板上受干扰的可能性也就越小。因此,系统的设计思想是在满足功能的情况下力争使用较少数量的芯片。
(3)灵活的功能扩展
功能扩展是否灵活是衡量一个系统优劣的重要指标。一次设计往往不能完全考虑到系统的各个方面,系统需要不断完善以及进行功能升级。进行功能扩展时,应该在原有设计的基础上,通过修改软件程序和少量硬件完成。对于本系统而言,就是要求在系统硬件不变的情况下,能够通过修改软件程序,完成功能的升级和扩展[7]。
2.1系统组成及总体框图
计算器主要由STC89C51单片机组成的最小系统、1602LCD液晶显示屏及编码键盘构成。P1、P3口:做为输出口,控制LCD液晶显示屏显示数据的结果;P2口:做为输入口,与键盘连接,实现数据的输入LCD液晶显示屏显示输出,总体框图如下。
LCD液晶显示屏模块
STC89C51
最小系统控制
图2-1 系统组成及总体框图
2.2硬件原理
硬件设计是整个计算器的设计基础,只有在硬件设计完成后,才能给整个电路下载程序,从而完成该作品的完整设计。
2.2.1.单片机最小系统
最小系统的设计即单片机最小系统,对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。下面给出一个51单片机的最小系统电路图。
P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST
9P3.0(RXD)10P3.1(T XD)11P3.2(INT 0)12P3.3(INT 1)13P3.4(T 0)14P3.5(T 1)15P3.6(WR)16P3.7(RD)17XT AL218XT AL119GND 20
(A8)P2.0
21
(A9)P2.122(A10)P2.223(A11)P2.324(A12)P2.425(A13)P2.526(A14)P2.627(A15)P2.728PSEN 29AL E/PROG
30EA/VPP 31(AD7)P0.732(AD6)P0.633(AD5)P0.534(AD4)P0.435(AD3)P0.336(AD2)P0.237(AD1)P0.138(AD0)P0.039VCC 40U3
89C51/C52
12M H z
C22
30
C2330
R2710K +C110uF
123
4
KS
RE SET
VCC VCC
123456789J?CON9
图2-2 单片机最小系统
电源模块
4X4键盘模块