计算器模拟系统设计-毕业设计
- 格式:doc
- 大小:453.50 KB
- 文档页数:27
简单的计算器模拟程序的设计和实现1.问题描述对任意给定的正确四则运算表达式,程序计算其结果值并输出。
程序无需查错功能,假定所输入的都是正确的四则运算表达式,并且表达式中运算分量均为无正负号整数,运算符为 +、-、*、/,表达式以字符 "=" 结束。
程序应有操作提示、输入和输出,界面追求友好,最好是菜单式的界面。
2.设计说明2.1简要的分析根据要求,要先输入包含有+,-,*,/的运算符的表达式,然后经过计算得到正确的答案。
从键盘中输入的是ASCII码,因此要将其转换为十进制的数据然后才能进行计算。
如果输入混合表达式,要将中缀式先变化成后缀式,然后再进行计算。
2.2概要分析2.2.1 定义的数据段用于定义一些中间变量,并将显示在试验界面上,以及提示信息。
data segmentstri db 50 dup(0)exp db 30 dup(0)track db 30 dup(0)instr db 100 dup(0)msg0 db 'please input your formular:',0dh,0ah,'$'msg1 db 0dh,0ah,'wrong input','$'msg2 db 0dh,0ah,') and ( does not match','$'msg3 db 0dh,0ah,'div zero error','$'msg4 db 0dh,0ah,'sorry,minus data appears','$'msg5 db 0dh,0ah,'any key to continue,esc to exit','$'data ends2.2.2 定义的堆栈段声明用于将中缀表达式转换为后缀表达式,以及进行后缀表达式求值过程用到的堆栈段。
单片机的简易计算器毕业设计简易计算器是一种基本、常见的电子设备,它能够对数字进行简单的加减乘除运算。
单片机作为一种小型、低功耗的微型计算机,非常适合用于设计和实现计算器的功能。
在本文中,我们将以单片机为基础,设计和实现一个简易计算器。
一、设计思路1.硬件设计:-使用单片机作为主控制器。
-接入键盘矩阵和显示器。
-使用LED灯作为指示灯,用于显示运算符和结果。
2.软件设计:-通过键盘输入数字和运算符。
-将输入的数字和运算符转换成相应的控制信号。
-进行运算,并将结果显示在屏幕上。
3.功能实现:-实现加法、减法、乘法和除法运算。
-提供清零、退格和等号等功能。
-支持小数和负数的输入和运算。
-提供错误提示功能,例如除数不能为零等。
二、具体实现1.硬件实现:-将键盘矩阵的行和列与单片机的IO口相连,通过扫描来检测按键的输入。
-将显示器与单片机的IO口相连,通过控制引脚来发送和接收数据。
-将LED灯与单片机的IO口相连,设置相应的引脚状态来显示不同的指示信号。
2.软件实现:-使用C语言编写程序,通过中断和轮询的方式,实现键盘输入的检测和数据的读取。
-将读取到的数据进行解析,并根据不同的按键进行相应的操作。
-根据输入的数字和运算符,进行相应的运算并输出结果。
3.功能实现:-加法、减法、乘法和除法运算可以通过相应的算法实现,例如加法可以通过循环和位运算来实现。
-清零功能可以将运算结果和输入的数字都清零,退格功能可以删除输入的最后一个数字或运算符。
-支持小数运算可以在运算过程中进行进位和进位操作,支持负数运算可以通过判断运算符来进行相应的处理。
-错误提示功能可以通过对输入的数据进行检查和判断来实现,例如判断除数是否为零。
三、总结通过上述的设计和实现,我们可以成功地设计和制作一个单片机的简易计算器。
通过这个计算器,用户可以进行简单的加减乘除运算,同时还具备清零、退格、小数和负数等功能。
这个计算器可以应用在日常生活中的计算场景,方便用户进行各种简单的运算操作。
摘要近几年单片机技术的发展很快,其中电子产品的更新速度迅猛。
计算器是日常生活中比较的常见的电子产品之一。
如何才能使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器呢。
本设计是以AT89S52单片机为核心的计算器模拟系统设计,输入采用4×4矩阵键盘,可以进行加、减、乘、除4位带符号数字运算,并在LCD1602上显示操作过程。
科技的进步告别了以前复杂的模拟电路,一块几厘米平方的单片机可以省去很多繁琐的电路。
现在应用较广泛的是科学计算器,与我们日常所用的简单计算器有较大差别,除了能进行加减乘除,科学计算器还可以进行正数的四则运算和乘方、开方运算,具有指数、对数、三角函数、反三角函数及存储等计算功能。
计算器的未来是小型化和轻便化,现在市面上出现的使用太阳能电池的计算器,使用ASIC设计的计算器,如使用纯软件实现的计算器等,未来的智能化计算器将是我们的发展方向,更希望成为应用广泛的计算工具。
[关键词] AT89S52 LCD1602 计算器矩阵键盘目录第一章前言 (1)1.1 系统开发背景 (1)1.2 系统开发意义 (1)1.3 设计目的 (1)第二章方案论证 (2)2.1 方案构思 (2)2.2 方案比较与选择 (2)第三章系统硬件设计及说明 (3)3.1系统组成及总体框图 (3)3.2元件简介 (3)3.2.1 AT89S52特点 (3)3.2.2 LCD1602液晶显示屏 (9)第四章设计原理分析 (12)4.1 设计方案的确定 (13)4.2计算器硬件方案及硬件资源分配 (13)4.2.1 硬件资源分配 (15)4.2.2 系统的硬件设计 (13)4.2.3 键盘电路的设计 (16)4.2.4 显示电路的设计 (16)第五章计算器的软件设计 (17)5.1计算器的软件规划 (17)5.2 键盘扫描的程序设计 (16)5.3 显示模块的程序设计 (18)5.4 主程序的设计 (19)5.5 软件的可靠性设计 (19)结束语 (19)参考文献 (20)第一章前言1.1 系统开发背景随着社会的发展,科学的进步,人们的生活水平在逐步的提高,尤其是微电子技术的发展,犹如雨后春笋般的变化。
计算器模拟系统设计学生:XXX 指导教师:XXX内容摘要:本设计是基于51系列的单片机进行的简易计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED 上相应的显示结果。
设计过程在硬件与软件方面进行同步设计。
硬件选择AT89C51单片机和74lS164,输入用4×4矩阵键盘。
显示用5位7段共阴极LED静态显示。
软件从分析计算器功能、流程图设计,再到程序的编写进行系统设计。
选用编译效率最高的Keil 软件用汇编语言进行编程,并用proteus仿真。
关键词:LED 计算器 AT89C51芯片 74LS164Calculator simulation system desig nAbstract:The design is a simple calculator based on 51 series microcontroller system design, to complete the calculator keyboard input, add, subtract, multiply, and in addition to three unsigned numeric simple four operations, and the corresponding result will be displayed on the LED.The design process of hardware and software aspects of the synchronous design. Hardware choose AT89C51 microcontroller and 74ls164--enter the 4 × 4 matrix keyboard. Static display with five 7-segment common cathode LED display. Software calculator function from the analysis, flow charts, design, and then program the preparation of system design. Selected to compile the most efficient Keil software in assembly language programming, and with proteus simulation.Keywords: LED calculator AT89C51 chip 74LS164目录前言 (1)1 设计任务和要求 (1)1.1 设计要求 (1)1.2 设计方案的确定 (2)2 单片机简要原理 (2)2.1 AT89c51介绍 (2)2.2 芯片74LS164介绍 (5)3 硬件设计 (6)3.1 键盘电路的设计 (6)3.2 显示电路的设计 (7)3.3 其他电路设计 (7)3.3.1 复位、时钟电路设计 (7)3.3.2 多位数码管电路显示的驱动电路 (8)4 软件设计 (9)4.1 主程序的设计 (9)4.2 显示、读键模块的设计 (10)4.3 其他内容说明 (11)4.3.1 定时查键的程序设计 (11)4.3.2 软件的可靠性设计 (12)4.4 源程序代码(见附录) (12)5 调试与仿真 (12)5.1 Keil C51单片机软件开发系统 (12)5.2 proteus的操作 (12)5.2.1 硬件电路图的接法操作 (12)5.2.2单片机系统PROTEUS设计与仿真过程 (13)6 结束语 (13)附录:计算器程序代码 (15)参考文献: (23)计算器模拟系统设计前言近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。
计算器毕业设计计算器毕业设计在现代科技高速发展的时代,计算器作为一种常见的电子设备,已经成为了人们日常生活中不可或缺的工具之一。
然而,市面上的计算器功能单一,无法满足人们多样化的需求。
因此,在我的毕业设计中,我决定设计一款功能强大、操作简便的计算器,以满足用户在各种场景下的计算需求。
首先,我将在设计中引入高级科学计算功能。
许多科学工作者、学生和研究人员需要进行复杂的数学计算,如三角函数、指数函数、对数函数等。
因此,我的计算器将提供这些高级科学计算功能,使用户能够方便地进行各种数学运算。
同时,为了提高计算器的可用性,我将设计一个直观的用户界面,使用户能够轻松地找到并使用这些功能。
其次,我将在设计中加入图形计算功能。
图形计算在许多领域中都有广泛的应用,如数学、物理、工程等。
因此,我的计算器将具备绘制各种图形的能力,如函数图像、曲线图等。
用户只需输入相应的函数表达式或数据,计算器就能自动绘制出对应的图形,帮助用户更好地理解和分析数据。
除了高级科学计算和图形计算功能,我还将在设计中加入单位换算功能。
单位换算是生活中常见的需求,如长度、重量、时间等。
我的计算器将提供各种常见单位之间的换算,如米与英尺、千克与磅等。
用户只需输入需要转换的数值和单位,计算器就能快速准确地进行换算,并给出结果。
这将大大方便用户在不同单位之间进行转换,节省时间和精力。
另外,我还将在设计中加入数据统计功能。
数据统计在许多领域中都有重要的应用,如市场调查、学术研究等。
我的计算器将能够对输入的数据进行各种统计分析,如平均值、方差、标准差等。
用户只需输入相应的数据,计算器就能自动进行统计分析,并给出结果。
这将帮助用户更好地理解和利用数据,提高工作效率和准确性。
最后,为了提高计算器的可靠性和稳定性,我将在设计中采用先进的算法和技术。
计算器的计算结果必须准确可靠,尤其是在复杂的计算过程中。
因此,我将对计算器的算法进行优化和改进,确保计算结果的准确性和稳定性。
存档编号XX水利水电大学毕业设计题目简易计算器的制作学院信息工程学院专业通信工程姓名XX学号2XXXX指导教师XX完成时间2014.5.14教务处制独立完成与诚信声明本人郑重声明:所提交的毕业设计(论文)是本人在指导教师的指导下,独立工作所取得的成果并撰写完成的,郑重确认没有剽窃、抄袭等违反学术道德、学术规范的侵权行为。
文中除已经标注引用的内容外,不包含其他人或集体已经发表或撰写过的研究成果。
对本文的研究做出重要贡献的个人和集体,均已在文中作了明确的说明并表示了谢意。
本人完全意识到本声明的法律后果由本人承担。
毕业设计(论文)作者签名:指导导师签名:签字日期:签字日期:毕业设计(论文)版权使用授权书本人完全了解华北水利水电大学有关保管、使用毕业设计(论文)的规定。
特授权华北水利水电大学可以将毕业设计(论文)的全部或部分内容公开和编入有关数据库提供检索,并采用影印、缩印或扫描等复制手段复制、保存、汇编以供查阅和借阅。
同意学校向国家有关部门或机构送交毕业设计(论文)原件或复印件和电子文档(涉密的成果在解密后应遵守此规定)。
毕业设计(论文)作者签名:导师签名:签字日期:签字日期:目录摘要 0Abstract (1)第一章绪论 (2)1.1 开发背景 (2)1.2 设计目的 (3)第二章方案论证与设计 (4)设计指标 (4)方案论证与设计 (4)第三章硬件模块介绍 (7)主控及运算模块 (7)显示模块 (12)输入模块 (15)第四章软件设计 (17)主程序的设计 (17)键盘扫描的程序设计 (18)显示模块程序设计 (20)运算模块程序设计 (22)第五章仿真及调试 (23)结束语 (24)致谢 (25)参考文献 (26)附录一:硬件实物图 (27)附录二:系统程序 (28)附录三:任务书 (39)附录四:开题报告 (41)附录五:外文原文与外文译文 (46)基于AT89C51单片机的简易计算器的设计摘要计算器在人们的日常生活中是较为常见的电子产品之一。
2012 届毕业设计说明书简易计算器设计系、部:电气与信息工程系学生姓名:***指导教师:戴日光职称老师专业:电子信息工程技术班级:电信0901班完成时间:2012/5/13摘要单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。
在工业生产中。
单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。
单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。
近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。
与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。
影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。
其中系统的抗干扰性能是系统可靠性的重要指标。
计算器在人们的日常中是比较的常见的电子产品之一。
在本次的毕业设计课题中,我以《MCS-51系列单片微型计算机及其应用》课程中所学知识为基础,设计了简易计算器。
本系统以MCS-51系列中的8051单片机为核心,能够实现两位数的四则运算。
该系统通过检测矩阵键盘扫描,判断是否按键,经数据转换把数值送入数码管动态显示。
关键词:计算器,51单片机,液晶显示屏,独立键盘ABSTRACTBecause of its small volume of single chip microcomputer and very low cost, widely used in home appliances, industry control, etc. In industrial production. Single chip microcomputers are microcomputer as an important branch, is also a vitality of the model. Single chip microcomputer hereinafter referred to as the single chip microcomputer, is particularly applicable to control field, so it is also called the micro controller. In recent years, microcontroller with its small size, inexpensive price, for the control and other unique advantages in a variety of industrial control, instrumentation, equipment, automation products, the intelligentaspects of a wide range of applications. At the same time, the reliability of the system ofmicrocomputer application to become an important issue of growing concern. Affect thereliability of many factors, such as to constitute the components of the system's reliability,the system itself is all part of the coupling between factors.Anti-interference performanceof the system which is an important indicator of system reliability. One of the calculator inpeople's daily in common electronic products. Calculator students are familiar with each and every one of us, from junior high to high school and then to the University.In the graduation design topic, I with "MCS-51 series single chip computer and its application" course knowledge as the foundation, the design the simple calculator. This system to MCS-51 of the 8051 series single chip microcomputer as the core, can achieve double-digit arithmetic. The system through the test matrix keyboard scan, judge whether key, the data transfer the numerical into digital tube dynamic display.Key words Calculator;51microcontroller; LCD display;separate keyboard目录1 方案论证与设计 (1)1.1设计目的与要求 (1)1.2方案论证与设计 (1)2 硬件模块介绍 (3)2.1单片机(AT89S52) (3)2.1.1 单片机(AT89S52)的引脚功能 (4)2.1.2 单片机(AT89S52)的引脚介绍 (5)2.1.3 单片机(AT89S52)的内部结构 (10)2.2输入模块 (11)2.3输出模块 (13)2.3.1 液晶介绍 (13)2.3.2 液晶显示功能介绍 (13)2.3.3 液晶显示的原理 (14)2.3.4 12864液晶显示功能具体参数 (15)2.3.5 12864液晶显示并行接口 (16)2.3.6 控制器接口信号 (17)2.3.7 字符显示 (18)2.4实物制作模块 (19)3 软件设计 (21)3.1软件总体设计 (21)3.2主程序流程图 (21)3.3键盘扫描及处理程序设计 (22)3.4中断子程序设计 (23)3.5液晶显示流程图 (24)3.6功能实现详解 (25)4.调试 (27)4.1硬件调试 (27)4.2软件调试 (27)5.总结 (28)参考文献 (29)致谢 (30)附录 (31)附录一简易计算器源程序 (31)附录二总电路原理图纸 (41)附录三总电路PCB图纸 (42)附录四按键PCB图纸 (43)附录五简易计算器系统实物图 (44)1方案论证与设计1.1 设计目的与要求此次设计的要求是通过利用我们在大学三年内所学到的电子信息方面的专业知识,来设计一个简易计算器,通过此简易计算器,我们所能达到的功能有:(1)此简易计算器能实现加减乘除的最基本运算任务,且精确程度需达到小数点后一位小数。
基于WinCE的计算器设计【摘要】计算器(calculator)大家已经很不陌生了吧,我们的日常生活之中在计算一些东西的时候都离不开它了,计算器分为普通计算器(进行一些简单的加、减、乘、除)和科学计算器(进行一些复杂的运算)。
计算器是能进行数学运算的手持机器,拥有集成电路芯片,但结构简单,可广泛运用于商业交易中,是必备的办公用品之一。
嵌入式计算器用途广泛,可以应用到PDA、手机等多个领域。
目前,嵌入式计算器已被广大用户所使用,给越来越多的人提供了便利,它做用到的嵌入式技术更是正逐渐的走向成熟。
本课题是在嵌入式操作系统Windows CE下,实现对嵌入式计算器的设计。
本设计最终实现了在嵌入式操作系统Windows CE中的嵌入式计算器的功能。
通过调试,成功实现了基本运算以及科学计算的功能。
设计的计算器不仅可以进行简单的四则运算(加、减、乘、除运算),还可以进行简单的科学计算(开方、平方、正弦、余弦、Tan的运算),可以保存上一次所计算的结果, C 表示初始化,界面主是Windwos Form 窗体结构,后台为C#代码,可用鼠标按键输入,也可用键盘输入,设计主要采用的Windows 。
【关键词】嵌入式系统;计算器;Windows CE;Windows窗体The design of Calculator based on WinCE 【Abstract】Calculator (calculator) everybody already very not unfamiliar right, our daily life in the calculation of some things are inseparable from it, calculator is divided into ordinary calculator (for some simple addition, subtraction, multiplication, and division) and scientific calculator (for some complex operation). Calculator is can mathematical operation, hand-held machine with IC chip, but simple structure, and can be widely used for business transactions, is one of the necessary office supplies. calculator has a wide range of uses, it can be applied to PDA, cell phone and other fields. At present, the embedded calculator has been used by the majority of users, and provides convenience for more and more people, embedded technology whitch it used is being gradually more and more mature. Embedded technology is referred to as embedded computer technology, since it has the specialty of small size, low power consumption, easy to carry, it has been applied to our production in many areas of life.This topic is in the embedded Windows CE operating system, to realize the design of embedded design realized the function of the embedded caculator whitch is in the Windows CE embedded operating system. Through the debugging, the calculator realized the basic computing functions, as well as scientific designed the simple calculator can not only four operations (add, subtract, multiply and divide operation), and simple operation of the scientific computing (root, square, sine, cosine, log and ln operation), can save the last time that the calculation result of initialization, CE said Lord is Form Windwos, interface for c #, backstage Form structure, can use the mouse button input code, usable also keyboard input, design mainly adopts the Form and the Windows.【Key Words】Embedded system; Calculator; Windows CE; Windows From;目录第1章绪论 0嵌入式计算机技术0移动智能手机平台及软件的应用1主要工作内容 2本次设计的目标 (2)论文内容 (3)第2章嵌入式系统 (4)嵌入式系统的介绍4嵌入式系统的定义及特点 (4)嵌入式系统的发展及前景 (6)WinCE系统的介绍 7Windows Mobile智能手机平台9开发环境的搭建10visual studio 2005 (10)c#语言 (11)Visual Studio 2005中建立WinCE环境 (12)Windows Mobile SDK (12)如何申请成为微软开发者12 (13) (13)第3章WinCE计算器的设计 (14)嵌入式WinCE计算器功能概述14主要功能的介绍14计算器 (15)单位换算 (17)汇率换算 (19)第4章系统实现与测试 (20)WinCE计算器的实现20WinCE计算器窗口实现 (20)计算器的实现 (20)单位换算的实现 (24)汇率换算的实现 (24)WinCE计算器的功能测试 25计算器的测试 (26)单位换算的测试 (28)汇率换算的测试 (29)结论 (31)参考文献 (32)附录 (33)致谢 (36)第1章绪论嵌入式计算机技术目前嵌入式系统技术已经成为了最热门的技术之一,吸引了大批的优秀人才投入其中。
第一章系统分析1.1 系统设计要求:1.利用Delphi开发工具制作一计算器,该计算器要现基本四则运算。
2.实现统计计算,三角运算,对数运算,逻辑运算。
3.实现十六进制,十进制,八进制,二进制的转换。
1.2 系统原理框图本次课程设计的原理框图如图1.1所示:图1.1系统原理框图1.3 系统设计原理计算器的制作的实现主要通过Delphi软件的添加基本控件以与编程序来实现基本四则运算,统计运算,三角运算,对数运算,逻辑运算以与进制间的转换第二章系统设计过程2.1 概要设计1. 各组件的基本使用该设计要求的主要是数学上的简单计算,需要输入的控件和输出的控件(显示结果)输入控件使用button。
而输出控件使用便于编辑的edit框来实现。
2.功能模块设计从界面上来看,程序分两个部分.菜单和按钮。
从软件构架上分为输入模块和输出模块。
输入模块程序的主要是按钮的单击事件。
输出模块主要是EDIT 框的text属性的变化。
2.2 详细设计1.基本四则运算实现加,减,乘,除.的运算.使用BUTTON按钮,给对应的按钮编上相应的程序。
核心原程序:vari:real;beginnum2:=strtonum(edit1.text,haob);if sign=1 thenbeginif num2=0 thenapplication.MessageBox('除数为零,不能运算!','提示信息',mb_ok)elsebeginnum3:=num1 / num2;edit1.Text:=numtostr(num3,haob);end;endelse if sign=2 thenbeginnum3:=num1*num2;edit1.text:=numtostr(num3,haob);else if sign=3 thenbeginnum3:=num1-num2;edit1.text:=numtostr(num3,haob);endelse if sign=4 thenbeginnum3:=num1+num2;edit1.text:=numtostr(num3,haob);end。
目录第一章计算器设计内容 (2)(一)任务内容 (2)(二)任务分析 (2)第二章方案的设计 (3)(一)方案设计论证 (3)(二)方案概述与原理硬件电路图 (3)第三章计算器设计基本原理 (5)(一)AT89C51系列单片机 (5)(二)LCD显示模块 (7)(三)运算模块 (7)(四)键盘接口电路 (8)第四章主程序设计 (9)第五章结论 (17)第六章致谢 (18)第七章参考文献 (19)第一章计算器设计内容(一)任务内容本设计就是充分利用了8051芯片的I/O引脚。
系统以采用MCS-51系列单片机Intel8051为中心器件来设计计算器控制器,实现了能根据实际输入值显示并存储的功能,计算程序则是参照教材。
至于位数和功能,如果有需要可以通过设计扩充原系统来实现。
具体设计如下:1.由于要设计的是简单的计算器,可以进行四则运算,为了得到教好的显示效果,采用LED显示数据和结果。
2.另外键盘包括数字键(0-9)、符号键(+、-、*、/)、等号键,故只需要16个按键即可,设计中采用手焊接的4*4矩阵键盘。
3.执行程序:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。
本计算器是以MCS-51系列8051单片机为核心构成的简易计算器系统。
该系统通过单片机控制,实现对4*4键盘扫描进行实时的按键检测,并把检测数据存储下来。
整个计算器系统的工作过程为:首先存储单元初始化,显示初始值和键盘扫描,判断按键位置,查表得出按键值,单片机则对数据进行储存与相应处理转换,之后送入LED显示器动态显示。
整个系统可分为三个主要功能模块:功能模块一,实时键盘扫描;功能模块二,数据转换成显示器显示;功能模块三,显示器动态显示。
(二)任务分析在本次设计中,主要完成如下方面的设计任务:1.简要阐述单片机技术发展的国内外现状及LED动态显示和矩阵键盘基本原理;2.掌握51系列某种产品的最小电路及外围扩展电路的设计方法;3.了解单片机数据转换功能及工作过程;4.完成主要功能模块的硬件电路设计及必要的参数确定;5.用PROTEUS软件完成原理电路图的绘制;通过本次课题设计,应用《单片机应用基础》、《计算机应用基础》等所学相关知识及查阅资料,完成简易计算器的设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。
基于Android的计算器毕业设计报告一、引言随着移动设备的普及,人们对于计算器的需求已经不再局限于桌面电脑。
特别是在Android平台上,由于其开放性和灵活性,使得开发人员可以方便地为其开发各种应用。
本次毕业设计就是开发一款基于Android平台的计算器应用,以满足人们在移动设备上进行基本数学计算的需求。
二、系统分析1.功能需求:本计算器应用需要满足基本数学计算需求,包括加减乘除四则运算,以及括号、百分比、平方、立方等特殊运算。
同时,还需要提供清除、撤销等便捷操作。
2.性能需求:为了保证应用的流畅性和稳定性,需要保证应用的响应速度和计算准确性。
同时,考虑到移动设备的电池寿命,还需要优化电量消耗。
3.用户界面需求:界面需要简洁明了,易于操作。
色彩和图标设计也需要符合Android平台的规范和用户习惯。
三、系统设计1.界面设计:采用Material Design风格,主界面包括数字按键区和操作符选择区。
为了方便用户操作,还添加了滑动输入功能,用户可以通过滑动数字或运算符来选择所需的数字或运算符。
2.算法设计:为了保证计算的准确性,我们采用了双精度浮点数存储数据,并使用Java的BigDecimal类进行运算。
这样既可以保证计算的精度,又可以避免由于浮点数运算产生的误差。
3.数据库设计:为了保存用户的计算历史记录,我们使用了Android的SQLite数据库来存储数据。
每个记录包括计算式和计算结果两个字段。
四、系统实现1.界面实现:我们使用了Android的原生开发方式,通过XML布局文件定义界面结构,通过Java代码实现界面逻辑。
同时,为了提高用户体验,我们还添加了一些动画效果和音效。
2.算法实现:我们使用了Java的BigDecimal类进行数学运算。
通过BigDecimal的multiply()和divide()方法可以实现乘法和除法运算,通过add()和subtract()方法可以实现加法和减法运算。
计算器模拟系统设计姓名:学号:专业班级:指导老师:所在学院:2010年7月5日摘要本设计是利用MCS-51系列单片机完成计算器数字输入、显示以及简单计算的模拟系统设计,该模拟系统可以完成对计算器的数字信息的输入并且显示在相应的LED上,可以进行简单的四则运算。
这次做的课程设计先是利用proteus软件将电路路画出来,然后利用c语言进行编写程序,再在keil软件下进行程序的修改和调试,生成可以在proteus 软件下能执行的程序,然后又在proteus软件下进行很长时间的调试,其中请教了老师和同学,终于完成了这次课程设计的内容。
单片机是一种特殊的计算机,它是在一块半导体芯片上集成了CPU、存储器RAM、ROM以及输入与输出接口电路,这种芯片习惯上被称为单片机(Single Chip Microcomputer)。
单片机具有:性能价格比最佳、控制功能强、抗干扰能力强和环境适应能力强等众多优点,使单片机得到广泛推广,目前已成为测量控制应用系统中的优选机种和新电子产平的关键部件。
在众多的单片机中,MCS-51系列单片机具有系统结构完整、特殊功能寄存器规范化以及指令系统的控制功能强等特色,使其成为单片机中的主流机型。
我做的计算器模拟系统是4×4键盘,分别表示0~9、+、-、×、/ 、=和清零键CL,能够显示8位的数字,开机远行时,数码管最低位显示为“0”,其余位全部不显示,第一次按下时,显示“D1”;第二次按下时,显示“D1D2”;第三次按下时,显示“D1D2D3”,可以进行加减乘除四则运算。
在指导老师的指导下,完成了这次课程设计,基本上符合了课程设计的要求。
目录1 概述 (3)2 系统总体方案及硬件设计 (3)2.1 系统框图 (3)2.2 总体电路设计 (4)3 软件设计 (5)3.1程序流程图 (5)3.2键盘程序的设计 (6)3.3四则运算程序 (9)4 Proteus软件仿真 (9)4.1数据的输入 (9)4.2加法计算 (10)4.3乘法仿真 (11)5课程设计体会 (11)参考文献 (11)附1:源程序代码 (12)附2:计算器模拟系统电路图 (25)1 概述采用单片机设计一个计算器模拟系统,完成计算器数字输入、显示以及简单计算的模拟系统设计,该模拟系统可以完成对计算器的数字信息的输入并且显示在相应的LED 上,可以进行简单的加法计算。
引言根据毕业设计论文——“基于C的简易计算器程序设计”这个课题所需涉及到的知识以及如何用这些知识完成需要达到的任务或目标,我决定将毕业设计论文(以下简称“论文”)分为2章,即论文内容包括:①。
●第1章:将大致介绍“基于C的”知识即C语言的基础知识和在本课题中的应用●第2章:根据论文所涉到的具体任务或目标,将介绍如何把第1篇的知识具体应用到“计算器程序设计”中。
对于论文课题的实现,可以大致归纳为以下几个方面的关键词,即论文相关:◆设计目的:设计一个基于C的简易计算器程序,在功能上尽量模拟windows操作系统中的计算器,系统界面不做强制要求。
◆所需知识:全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、选择、循环三种结构及数组、函数、指针和文件的操作,把编程和实际结合起来,对不同的问题运用和灵活选择合适的数据结构以及算法描述,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法。
◆一般步骤:a、确定数据结构b、确定算法c、编程d、调试e、总结。
②:◆采用工程模式即模块化,文件包括四个重要组成部分➢(运算主函数头文件,包括各运算符的操作以及其辅助函数)。
➢(窗体类的声明头文件)。
➢(工程初始化文件)。
➢(代码主文件,包括各空间操作的函数)以及一些其它附属文件,包括dll动态链接库。
◆计算器程序实现功能:在参考了Windows里的计算器以后,决定在我的课程设计中实现:0~9的数字输入功能(小数点除外);实现:加、减、乘、整除、取模、阶乘、位运算左移、x的y次方、与、异或、x立方、x平方运算功能;二进制、八进制、十进制、十六进制转换功能;正负转换功能;退格、归零等功能。
①说明:由于需要使功能尽量模仿Windows下的计算器,而很多功能要以图形界面实现,故用Borland C++ Builder编写。
所以用的是面向对象程序设计。
但因为这是C语言的课程设计,所以除了面向对象的使用以外,所有语法都是按照C语言的格式编写。
目录课程设计任务书 (I)摘要 (1)关键词 (1)引言 (2)1 课程设计用的仪器和器件 (3)1.1 单片机的选择方案和论证 (3)1.2 显示器的选择方案和论证 (3)1.3 按键部分的选择方案和论证 (3)2课程设计方法和内容 (3)3 元件介绍 (4)3.1 STC89C51单片机特点及引脚图 (4)3.2 LCD1602液晶显示器 (5)3.2.1LC D1602基本组成 (5)3.2.2 LCD1602基本参数及引脚功能 (6)3.2.3LCD1602指令说明及时序 (6)4系统概述 (7)4.1系统设计结构图 (7)4.2 简易计算器工作流程 (7)5系统硬件设计 (7)5.1时钟电路 (8)5.2复位电路 (8)5.3键盘电路 (9)5.4显示电路 (9)6 程序流程图 (10)7.课程设计总结 (11)参考文献 (12)附录 (13)简易计算机系统设计简易计算器系统设计摘要:本文主要介绍了简易计算器系统设计,用51单片机作为主控芯片,通过矩阵键盘作为输入,计算器可以进行2位数的四则运算。
在设计过程中,选择STC89C51系列单片机,单片机通过采集键盘上的输入,自行判断运算数字和运算法则。
同时将输入的结果和运算结果通过1602显示屏输出。
简易计算器的设计,极大的降低了人们的计算量,尤其在大数据的计算上有明显的优势,计算器还具有连续计算功能,能提高人们的工作效率。
关键词:单片机;矩阵键盘;1602显示;The Design Of Simple Calculator SystemAbstract:This paper mainly introduces the design of simple calculator system ,the system chooses the 51 single chip microcomputer as main control chip and uses the matrix keyboard as input, the calculator can compute in 2 digits. The design process chooses STC89C51 microcontroller series and the single-chip microcomputer judge crunching Numbers and algorithms automatically through acquisition on the keyboard input,.At the same time 1602 display can output the input results and computation results .The design of simple calculator greatly reduces the burden of the human’s computing especially in the big data’compution and the calculator can also compute continuously in that enhance people's working efficiency.Key words: singlechip;matrix keyboard;1602display;引言当今时代,是一个新技术层出不穷的时代。
毕业设计题目简易加减乘除计算器系别专业班级姓名学号指导教师日期设计任务书设计题目:简易加减乘除计算器设计要求:1.根据所学内容运用编程做一个简易加减乘除计算器,实现加、减、乘、除、等以及清零的功能。
2.设置一组数码管, 使其能够显示程序运行,按键动作的内容。
3.设置一组按键,使其键依次对应0——9、“+”、“-”、“*”、“/”、“=”和清除键。
4.可以进行小于255的数的加减乘除运算,并可连续运算。
当键入值大于255时,将自动清零,可重新输入。
设计进度要求:第一周:确定题目,寻找单片机和计算器设计的相关资料;第二周:读懂资料,有初步的设计思路;第三周:绘制硬件电路图;第三周:设计软件框图;第四周:相应软件设计(程序设计);第五周:进行程序调试并且修改;第六周:写毕业设计论文;第七周:修改并提交毕业设计;第八周:准备论文答辩;指导教师(签名):摘要在很多领域的数据处理中要用到数学运算,作为计算机自动处理系统更显得重要。
此项目设计以单片机为核心部件的计算器,采用4*4矩阵式键盘,16个键依次对应0——9、“+”、“-”、“*”、“/”、“=”和清除键。
使用单片机最小应用系统1模块,简单方便。
采用静态显示,显示器由5个共阴极数码管组成。
输入只有两个信号,它们是串行数据线DIN和移位信号CLK。
5个串/并行移位寄存器芯片74LS164首尾相连。
每片的并行输出作为LED数码管的段码。
本计算器系统简单,实用性强,成本低,使用维护方便,软件功能强,运行稳定可靠等优点。
关键词:单片机,计算器,键盘,静态显示前言随着半导体集成工艺的不断发展,单片机的集成度将更高、体积将更小、功能将更强。
在单片机家族中,80C51系列是其中的佼佼者,加之Intel公司将其MCS –51系列中的80C51内核使用权以专利互换或出售形式转让给全世界许多著名IC制造厂商,如Philips、 NEC、Atmel、AMD、华邦等,这些公司都在保持与80C51单片机兼容的基础上改善了80C51的许多特性。
基于android的计算器毕业设计报告1. 引言计算器是一种常用的电子设备,用于进行各种数学计算和运算,如加减乘除、平方根、百分比等。
随着智能手机的普及,人们越来越倾向于使用手机上的计算器应用进行数学计算,因此开发一款基于Android平台的计算器应用成为一项有意义的毕业设计。
2. 设计目标本计算器应用的设计目标是满足用户对于高效、准确计算需求的同时,具备友好的用户界面和良好的用户体验。
3. 功能设计3.1 基本计算功能用户可以通过输入数字和运算符,进行基本的加减乘除运算。
计算器应能正确解析用户输入的表达式,并给出准确的结果。
3.2 科学计算功能计算器还应该具备科学计算功能,如平方根、立方根、指数运算、对数运算等。
用户可以通过在界面上选择相应的按钮进行科学计算。
3.3 历史记录功能计算器应能保存用户的历史计算记录,以便用户可以回顾之前的计算过程和结果。
用户可以随时查看特定的历史记录,并可以清除历史记录。
3.4 单位转换功能计算器还应该具备单位转换功能,如长度单位之间的转换,重量单位之间的转换等。
用户可以在界面上选择需要进行的单位转换,并输入相应的数值,计算器将给出转换后的结果。
4. 用户界面设计4.1 主界面主界面应该简洁清晰,并具备直观明了的操作按钮,供用户选择进行不同的计算。
4.2 科学计算界面科学计算界面应该设计为可选展示的,用户可以通过选择按钮在主界面和科学计算界面之间切换。
4.3 历史记录界面历史记录界面应该能够展示用户之前的计算过程和结果,并提供删除历史记录的功能。
4.4 单位转换界面单位转换界面应该设计为可选展示的,用户可以通过选择按钮在主界面和单位转换界面之间切换。
5. 开发技术和工具本计算器应用基于Android平台进行开发,开发工具可选用Android Studio。
开发语言选择Java,使用Android SDK进行开发。
设计界面可以使用XML或者Android布局进行设计。
单片机的简易计算器毕业设计设计题目:基于单片机的简易计算器设计目的和意义:计算器是人们日常生活中必不可少的工具之一、通过设计一个基于单片机的简易计算器,可以帮助学生更好地理解计算机的原理和工作原理,同时也能提高他们的计算能力和逻辑思维能力。
此外,通过此设计可以加深对单片机的了解,并能提高学生的动手实践能力。
设计内容和要求:1.设计一个基于单片机的简易计算器,能完成基本的四则运算;2.能够输入和显示数字和运算符号;3.根据输入的数字和运算符号进行运算,得到正确的计算结果;4.能够处理异常情况,如除数为零等;5.设计一个简单的界面,使用户能够方便地进行操作;6.设计合理的电源管理系统,能够延长电池寿命;7.系统要求具有一定的误差范围,能够容忍一定的计算误差。
设计原理和方法:1.首先,选择一个合适的单片机作为主控制器,例如常用的51单片机;2.设计合适的输入和输出电路,使用户能够方便地输入和显示数字和运算符号;3.利用单片机的IO口进行数字和运算符号的输入和输出控制;4.设计算法,根据输入的数字和运算符号进行正确的四则运算,并得到正确的计算结果;5.根据实际情况进行运算结果的显示和存储,可以使用LCD液晶显示模块或LED数码管进行显示;6.设计异常处理程序,处理除数为零等异常情况;7.设计合理的电源管理系统,合理利用低功耗模式和休眠模式,延长电池寿命;8.对计算结果进行一定的误差范围控制,使其能够容忍一定的计算误差。
设计步骤和流程:1.确定设计的硬件平台和软件开发环境;2.进行电路设计,包括输入和输出电路的设计;3.进行程序开发,包括输入和输出控制、四则运算和异常处理程序的编写;4.进行整体系统调试,测试输入和输出的功能是否正常;5.进行算法调试,测试四则运算的正确性;6.进行界面设计,设计一个简单易用的用户界面;7.进行电源管理系统的设计和调试,测试功耗和电池寿命;8.完善设计文档,撰写设计报告。
设计结果和展示:通过以上设计,完成了一个基于单片机的简易计算器。
计算器模拟系统设计学生:XXX 指导教师:XXX内容摘要:本设计是基于51系列的单片机进行的简易计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除3位无符号数字的简单四则运算,并在LED 上相应的显示结果。
设计过程在硬件与软件方面进行同步设计。
硬件选择AT89C51单片机和74lS164,输入用4×4矩阵键盘。
显示用5位7段共阴极LED静态显示。
软件从分析计算器功能、流程图设计,再到程序的编写进行系统设计。
选用编译效率最高的Keil 软件用汇编语言进行编程,并用proteus仿真。
关键词:LED 计算器 AT89C51芯片 74LS164Calculator simulation system desig nAbstract:The design is a simple calculator based on 51 series microcontroller system design, to complete the calculator keyboard input, add, subtract, multiply, and in addition to three unsigned numeric simple four operations, and the corresponding result will be displayed on the LED.The design process of hardware and software aspects of the synchronous design. Hardware choose AT89C51 microcontroller and 74ls164--enter the 4 × 4 matrix keyboard. Static display with five 7-segment common cathode LED display. Software calculator function from the analysis, flow charts, design, and then program the preparation of system design. Selected to compile the most efficient Keil software in assembly language programming, and with proteus simulation.Keywords: LED calculator AT89C51 chip 74LS164目录前言 (1)1 设计任务和要求 (1)1.1 设计要求 (1)1.2 设计方案的确定 (2)2 单片机简要原理 (2)2.1 AT89c51介绍 (2)2.2 芯片74LS164介绍 (5)3 硬件设计 (6)3.1 键盘电路的设计 (6)3.2 显示电路的设计 (7)3.3 其他电路设计 (7)3.3.1 复位、时钟电路设计 (7)3.3.2 多位数码管电路显示的驱动电路 (8)4 软件设计 (9)4.1 主程序的设计 (9)4.2 显示、读键模块的设计 (10)4.3 其他内容说明 (11)4.3.1 定时查键的程序设计 (11)4.3.2 软件的可靠性设计 (12)4.4 源程序代码(见附录) (12)5 调试与仿真 (12)5.1 Keil C51单片机软件开发系统 (12)5.2 proteus的操作 (12)5.2.1 硬件电路图的接法操作 (12)5.2.2单片机系统PROTEUS设计与仿真过程 (13)6 结束语 (13)附录:计算器程序代码 (15)参考文献: (23)计算器模拟系统设计前言近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。
与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。
影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。
其中系统的抗干扰性能是系统可靠性的重要指标。
本设计采用AT89C51 芯片,实现了利用单片机进行了一个简单计算器设计。
允许对输入数据进行加减乘除运算及LED 显示。
如果设计对象是更为复杂的计算器系统,其实际原理与方法与本设计基本相同。
另外,实例所设计的计算器是用LED 数码管显示的,当然也可以用其他的器件显示,如LED 显示屏,这样就可以显示出更多的字符,在此基础上,还可以编写更加完善的程序来实现更多的计算功能。
设计的关键所在,必须非常熟悉单片机的原理与结构,同时还要对整个设计流程有很好的把握,将单片机和其他模块完整的衔接。
简易计算器的原理与设计是单片机课程设计课题中的一个。
在完成理论学习和必要的实验后,我们掌握了单片机的基本原理以及编程和各种基本功能的应用,但对单片机的硬件实际应用和单片机完整程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。
单片机课程设计既巩固了课本学到的理论,还学到了单片机硬件电路和程序设计,简易计算器课程设计通过自己动手用计算机电路设计软件,编写和调试,最后仿真,来加深对单片机的认识,充分发挥我们的个人创新和动手能力,并提高我们对单片机的兴趣,时学习查阅资料、参考资料的方1 设计任务和要求1.1 设计要求本次课程设计,我选择的课题是单片机数字计算器硬软件设计,设计任务为:◊扩展4*4键盘,其中10个数字,5个功能键,1个清零;◊使用五位数码管接口电路;◊完成十进制的四则运算(加、减、乘、除);◊实现低于三位小于255数字的连续运算;◊使用keil软件编写程序;◊最后用ptoteus仿真;1.2 设计方案的确定按照设计要求,本课题需要使用数码管显示和扩展4*4键盘,由于实验箱的硬件电路已经固定,故选择串行静态显示和用P1口扩展4*4键盘,扩展的4*4键盘定义十个数字键,六个功能键,使用串行静态显示显示运算结果。
主程序进行初始化,采用定时器0进行查键,每次按键后调用显示子程序。
2 单片机简要原理2.1 AT89c51介绍图2.1-1 AT89C51管脚图芯片AT89C51的外形结构和引脚图如2—1所示。
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU 和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
主要特性:◊8051 CPU与MCS-51 兼容◊4K字节可编程FLASH存储器(寿命:1000写/擦循环)◊全静态工作:0Hz-24KHz◊三级程序存储器保密锁定◊128*8位内部RAM◊32条可编程I/O线◊两个16位定时器/计数器◊5个中断源◊可编程串行通道◊低功耗的闲置和掉电模式◊片内振荡器和时钟电路管脚说明◊VCC:供电电压(图中未画出)◊GND:接地。
◊P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
◊P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
◊P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
◊P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
管脚备选功能◊P3.0 RXD(串行输入口)◊P3.1 TXD(串行输出口)◊P3.2 /INT0(外部中断0)◊P3.3 /INT1(外部中断1)◊P3.4 T0(记时器0外部输入)◊P3.5 T1(记时器1外部输入)◊P3.6 /WR(外部数据存储器写选通)◊P3.7 /RD(外部数据存储器读选通)◊P3口同时为闪烁编程和编程校验接收一些控制信号。
◊RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
◊ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令时才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
◊/PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
◊/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
◊XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
◊XTAL2:来自反向振荡器的输出引脚。
2.2 芯片74LS164介绍74LS164是一个串入并出的8位移位寄存器,他常用于单片机系统中,下面结束一下这个元件的基本知识。