单片机实现计算器设计:STC89C54RD+与LCD1602应用

0 下载量 173 浏览量 更新于2024-06-23 收藏 1.1MB DOCX 举报
"计算器单片机技术课程设计" 这篇文档详细阐述了一个基于单片机的计算器设计项目,旨在帮助学生掌握单片机技术的实际应用。设计的计算器采用了STC89C54RD+单片机作为核心处理器,配合4*4矩阵键盘和6个独立按键进行输入,使用LCD1602液晶显示器进行结果显示,并通过USB接口进行充电供电。设计的计算器功能丰富,包括基础的加、减、乘、除、平方、开方运算,以及三角函数运算和十进制与十六进制的转换。 在硬件系统设计部分,文档介绍了以下几个关键模块: 1. STC89C54RD+单片机:这是一种常见的8位微控制器,具备丰富的I/O口和内部RAM,适合用于控制和处理计算器的各种功能。 2. 电源模块:为计算器提供稳定的工作电压,可能包含升压或降压电路,以及USB充电接口。 3. 复位模块:确保单片机在启动时能正确初始化,以避免因异常状态导致的错误。 4. 时钟模块:为单片机提供运行所需的时钟信号,通常由晶体振荡器产生。 5. 下载模块:用于通过编程器将程序代码烧录到单片机中。 6. 显示模块:使用LCD1602液晶显示器显示计算结果和其他信息,如系统提示符" P."。 7. 输入模块:通过4*4矩阵键盘和独立按键收集用户输入。 8. 电路原理图和实物图提供了设计的详细电路布局和实际组装的样子。 9. 元器件清单列出了所有必要的电子元件。 软件系统设计方面,主要涉及以下程序模块: 1. 单片机资源使用:描述了如何有效地利用STC89C54RD+的内部资源,如RAM和ROM。 2. 监控函数模块:负责系统的初始化和异常处理。 3. 显示模块:处理LCD1602的显示逻辑,包括清屏、显示数字和符号等功能。 4. 键扫模块:识别和处理键盘输入,包括矩阵键盘的扫描和独立按键的检测。 5. 延时模块:提供精确的时间延迟,用于某些需要等待的操作,如按键去抖。 6. 定时模块:实现定时功能,可能用于定时更新显示或处理特定事件。 7. 系统程序清单给出了完整的程序代码结构。 在后续章节中,作者详细描述了实物调试过程,包括操作说明、测试步骤、误差分析和设计心得。最后,附录部分提供了电路图、元件清单和程序代码清单,为读者提供了全面的设计参考资料。 这个课程设计项目不仅锻炼了学生的硬件电路设计和软件编程能力,还让他们了解了单片机在实际产品中的应用,为日后的工程实践打下了坚实的基础。通过这样的实践,学生能够深入理解单片机工作原理,并将理论知识转化为实际成果。
2023-02-27 上传
目录 单片机课程设计计算器设计全文共22页,当前为第1页。 单片机课程设计计算器设计全文共22页,当前为第1页。 一、设计总绪 设计思想 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,但仅单片机方面的知识是不够的,还应根据具体硬件结构、软硬件结合,来加以完善。? 计算机在人们的日常生活中是比较常见的电子产品之一。可是它还在发展之中,以后必将出现功能更加强大的计算机,基于这样的理念,本次设计是用AT89c51单片机、LCD显示器、控制按键为元件来设计的计算器。利用此设计熟悉单片机微控制器及汇编语言编程,对其片资源及各个I/O端口的功能和基本用途的了解。掌握应用程序开发环境,常用的LCD显示器的使用方法和一般键盘的使用方法 此设计是基于单片机技术的简易计算器的方案,本次设计所提出的一种基于单片机技术的简易计算器的方案,采用具有数据处理能力的中央处理器CPU,随机存储器ROM,多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统——单片机,配以汇编语言编写的执行程序,能更好的解决计算机计算的问题,随着数字生活的到来,单片机在生活中越来越重要,它能将大量的逻辑功能集成与一个集成电路中,使用起来十分方便。 设计说明 单片机课程设计计算器设计全文共22页,当前为第2页。本次课程设计讨论了单片机技术的计算器构思,设计方案,工作原理,主要系统包括单片机80C51,排阻RESPACK—8,开关,六位数码管显示器等,主要组成部分包括:键盘输入模块,运算模块,控制模块,显示模块。通过键盘输入数值,单片机进行运算后在数码管显示出结果。 单片机课程设计计算器设计全文共22页,当前为第2页。 关键词:矩阵键盘,单片机,数码管显示,汇编语言 设计目的 通过本次课程设计,运用《单片机微型计算机原理及应用》所学到的知识及查询相关资料,完成简易计算器的设计,进一步提高单片机的系统设计和开发能力,达到理论知识与实践更好的结合,提高综合运用所学知识和设计能力的目的。 设计要求 要求设计一个单片机应用系统,利用keil和proteus软件完成系统软硬件的设计及模拟调试。实现五位数(可为带小数点)的加减乘除运算,通过按键输入十进制数据。利用六位数码管显示运算结果。并实现复位操作。由于要设计的是简单的计算器,可以进行四则运算,为了得到教好的显示效果,采用LCD显示数据和结果。、另外键盘包括数字键(0-9)、符号键(+、-、*、/)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算机键盘来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果,执行程序:开机显示零,等待键入数值,当键入数字,通过LCD显示出 单片机课程设计计算器设计全文共22页,当前为第3页。 单片机课程设计计算器设计全文共22页,当前为第3页。 二、设计方案 硬件电路设计方案 基本结构 计算器一般由运算器、控制器、键盘、显示器、电源和一些可选外围设备及电子配件通过人工或机器设备组成。键盘是计算器的输入部件,一般采用接触式或传感式。显示器是计算器的输出部件,有发光二极管显示器或液晶显示器等。除显示计算结果外,还常有溢出指示、错误指示等。计算器电源采用交流转换器或电池。计算器都采用CMOS工艺制作的大规模集成电路。 本次课程设计中我是采用了以MCS—51系列的单片机AT89C51单片机为核心构成的简易计算器。该系统通过单片机控制,实现对4*4键盘进行实时扫描的按键检测,并把检测数据存储下来。整个计算器系统的工作过程为:首先存储单元初始化,显示初始值和键盘扫描,判断按键位置,查表得出按键值,单片机则对数据进行储存与相应处理转换,之后送入数码管动态显示。整个系统可分为三个主要功能模块:功能模块一,实时键盘扫描;功能模块二,数据转换成显示器显示;功能模块三,计算控制模块。功能模块四:显示模块。 系统框架图 控制 控制 运算 键盘 显示 运算 键盘 显示 单片机课程设计计算器设计全文共22页,当前为第4页。 图 系统总体框架图 单片机课程设计计算器设计全文共22页,当前为第4页。 工作流程图 开始 开始 初始化 初始化 键盘列扫描 键盘列扫描 有键按下 复位键 有键按下 复位键 数字键 数字键 记忆对应键值 运算功能键 记忆对应键值 运算功能键 其他键数码管显示 是" ="? No 其他键 数码管显示 是" ="? 记忆其运算符 数码管显示 计算最后结果 Yes 记忆其运算符 数码管显示 计算最后结果 单片机课程设计计算器设计全文共22页,当前为第5页。 图 系统工作流程图 单