当前位置:文档之家› 计算器详细设计说明书

计算器详细设计说明书

计算器详细设计说明书
计算器详细设计说明书

江西工业职业技术学院

毕业综合实践

课题名称:安卓手机计算器

作者:廖杰学号:20112715分院:电子与信息工程分院

专业:计算机网络技术

指导老师:占华为专业技术职务讲师

2013年 10 月 28日

目录

1引言 (3)

1.1 编写目的 (3)

1.2 项目背景 (3)

1.3 参考资料 (3)

2软件结构概述 (3)

3模块设计 (4)

3.1 模块1(简单计算功能) (4)

3.1.1功能 (4)

3.1.2性能 (4)

3.1.3输入项 (4)

3.1.4输出项 (5)

3.1.5流程图 (5)

3.1.6接口 (5)

3.1.7测试要点 (6)

3.2 模块2(简单操作) (6)

3.2.1功能 (6)

3.2.2输入项 (6)

3.2.3输出项 (6)

3.2.4接口 (6)

3.2.5尚未解决的问题 (6)

4需求跟踪 (7)

5用户界面设计 (8)

5.1 用户界面图 (8)

5.2 用户界面与模块关系 (8)

1 引言

1.1编写目的

方便有计算需求的用户使用。

1.2项目背景

这个项目是计算器系统。

本项目方便所有有计算要求的用户使用,能够处理加,减,乘,除,开方,并且能求百分数,求倒数,求相反数。还具有一定的容错功能,例如:除数不能为0,被开方数不能为负数,不可以连续输入小数点以及多个运算符输入只保留第一个运算符。交互功能比较好,界面友好,简洁易懂。

1.3参考资料

Java语言与面向对象程序设计王行言清华大学出版社

2软件结构概述

功能模块图:

3 模块设计

3.1 模块1(简单计算功能) 3.1.1 功能

进行简单数字运算。能够处理加,减,乘,除,开方,并且能求百分数,求倒数,求相反数。还具有一定的容错功能,例如:除数不能为0,被开方数不能为负数,不可以连续输入小数点以及多个运算符输入只保留第一个运算符。

3.1.2 性能

输入以及输出的数字为double 型,能保存32为数据。

3.1.3 输入项

计算器界面

1简单计算 2 简单操作

11加

12减13乘14除

15求倒 16开方 17百分数 18相反数

21编辑 23查看 24帮助

22清零

输入项可以是0-9的数字,也可以是运算符如+,-,*,/, % , 1/x , sqrt , +/- ,清零运算,后退键,清空运算。

3.1.4输出项

输出项是运算的数字结果,如果输入有误或者出现差错,则输出报错的结果。

3.1.5流程图

3.1.6接口

开始

输入

连加?

将上次结果作为

第一个数

保存第一个数和

运算符

输入

保存运算符运算符

保存数与运算符

运算并显示结果

Y

N

Y

N

程序接口:Actionlistener进行监听。

3.1.7测试要点

除数为0,负数求其开方数,连续输入小数点。

3.2模块2(简单操作)

3.2.1功能

进行简单操作:编辑功能,查看功能,帮助功能,清空,后退。

3.2.2输入项

输入项可以是编辑功能的复制或者粘贴项目,或者帮助功能的帮助项目。

3.2.3输出项

输出项是粘贴的结果或者帮助项目的界面。

3.2.4接口

程序接口:Actionlistener进行监听。

3.2.5尚未解决的问题

由于技术以及时间的限制,所以查看项目以及帮助项目的功能没有实现,编辑功能也有待完善。

4 需求跟踪

功能需求程序模块功能

需求

1

功能

需求

2

功能

需求

3

功能

需求

4

功能

需求

5

功能

需求

6

功能

需求

7

求8

功能

需求

9

功能

需求

10

功能

需求

11

功能

需求

12

程序模块11 加法

程序模块12 减法

程序模块13 乘法

程序模块14 除法

程序模块15 求倒

程序模块16 开方

程序模块17 百分

程序模块18 相

程序模块21 编辑

程序模块22 清零

程序模块23 查看

程序模块24 帮助

5 用户界面设计

5.1用户界面图

预达到的界面如上图所述。

5.2用户界面与模块关系

用户界面名

简要说明

数字键输入数字

运算符输入运算符

窗口进行简单操

图5.1

计算器说明书

Java程序设计说明书 设计题目:Java计算器 学生姓名: 指导教师: 专业名称:计算机科学与技术所在院系:

目录 摘要2第1章计算器概述 1.1设计目的 4 1.2功能模块设计 4 1.3系统功能图 4 设计实现的详细步骤 2.2.1 计算器界面7 2.2.2 界面设计代码7 2.3程序运行效果9 第3章设计中遇到的重点及难点 (13) 3.1 设计中的重点 (13) 3.2 设计中的难点 (13) 3.2.1 设计难点1:布局 (13) 3.2.2 设计难点2:代码 (13) 3.2.3设计难点3:运行结果 (14) 3.3 本章总结 (14) 第4章本次设计中存在不足与改良方案 (15) 4.1设计不足 (15) 4.2改良方案 (15) 4.3本章总结 (18) 结论 (19) 参考文献 (20)

JAVA课程设计说明书 摘要 一、计算器概述 1、1设计计算器的目的: 该计算器是由Java语言编写的,可以进行十进制下的四则运算(加、减、乘、除)、开平方、百分号、求倒数,还可以实现其他按钮的功能。添加了一个编辑、查看、帮助的主菜单并能实现其功能。Backspace 表示逐个删除,CE 表示全部清除,C 表示一次运算完成后,单击“C”按钮即可清除当前的运算结果,再次输入时可开始新的运算,MC 表示清除储存数据,MR 表示读取储存的数据,MS 表示将所显示的数存入存储器中,存储器中原有的数据被冲走,M+ 表示计算结果并加上已经储存的数。界面类似Windows 自带的计算器。 该计算器围绕Java编程语言在编程方面的具体应用,论述了使用面向对象方法,对计算器程序进行需求分析、概要设计、详细设计,最后使用Java编程实现的全过程。在编程使用Java语言,是目前比较流行的编程语言。在当今这个网络的时代,java语言在网络编程方面的优势使得网络编程有了更好的选择。Java语言最大的特点是具有跨平台性,使其不受平台不同的影响,得到了广泛的应用。 关键词:Java语言、标准、计算器

基于单片机的简易计算器设计

目录 引言 (1) 第一章设计原理及要求 (2) 1.1设计方案的确定 (2) 1.2系统的设计方案 (2) 1.3系统的设计要求 (2) 第二章硬件模块设计 (4) 2.1单片机AT89C51 (4) 2.1.1 AT89C51芯片的特点 (5) 2.1.2 管脚说明 (5) 2.1.3 振荡器特性 (7) 2.1.4 芯片擦除 (7) 2.2键盘控制模块 (7) 2.2.1 矩阵键盘的工作原理 (8) 2.2.2 键盘电路主要器件介绍 (8) 2.3LCD显示模块 (10) 2.3.1 显示电路 (11) 2.3.2 LCD1602主要技术参数 (11) 2.3.3 引脚功能说明 (11) 2.4运算模块(单片机控制) (12) 第三章软件设计 (14) 3.1功能介绍 (14) 3.2系统流程图 (14) 3.3程序 (16) 第四章系统调试 (17) 4.1软件介绍 (17) 4.1.1 Keil uVision2仿真软件简介 (17) 4.1.2 protues简介 (17)

4.2软件调试 (18) 4.2.1 软件分析及常见故障 (18) 4.2.2 仿真结果演示 (20) 4.3硬件调试 (21) 结束语 (23) 参考文献 (24) 附录 (25) 致谢 (36)

引言 计算工具最早诞生于中国,中国古代最早采用的一种计算工具叫筹策,也被叫做算筹。这种算筹多用竹子制成,也有用木头,兽骨充当材料的,约二百七十枚一束,放在布袋里可随身携带。另外直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。 17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的“纳皮尔算筹”,英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加、减、乘、除、乘方和开方运算,甚至可以计算三角函数、指数函数和对数函数。这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。1642年,年仅19岁的法国伟大科学家帕斯卡引用算盘的原理,发明了第一部机械式计算器,在他的计算器中有一些互相联锁的齿轮,一个转过十位的齿轮会使另一个齿轮转过一位,人们可以像拨电话号码盘那样,把数字拨进去,计算结果就会出现在另一个窗口中,但是它只能做加减运算。1694年,莱布尼兹在德国将其改进成可以进行乘除的计算。此后,一直到20世纪50年代末才有电子计算器的出现。

单片机课程设计计算器

课程设计说明书 课程设计名称:单片机课程设计 课程设计题目:四位数加法计算器的设计学院名称:电气信息学院 专业班级: 学生学号:

学生姓名: 学生成绩: 指导教师: 课程设计时间:至

格式说明(打印版格式,手写版不做要求) (1)任务书三项的内容用小四号宋体,倍行距。 (2)目录(黑体,四号,居中,中间空四格),内容自动生成,宋体小四号。 (3)章的标题用四号黑体加粗(居中排)。 (4)章以下的标题用小四号宋体加粗(顶格排)。 (5)正文用小四号宋体,倍行距;段落两端对齐,每个段落首行缩进两个字。 (6)图和表中文字用五号宋体,图名和表名分别置于图的下方和表的上方,用五号宋体(居中排)。(7)页眉中的文字采用五号宋体,居中排。页眉统一为:武汉工程大学本科课程设计。 (8)页码:封面、扉页不占页码;目录采用希腊字母Ⅰ、Ⅱ、Ⅲ…排列,正文采用阿拉伯数字1、2、3…排列;页码位于页脚,居中位置。 (9)标题编号应统一,如:第一章,1,,……;论文中的表、图和公式按章编号,如:表、表……;图、图……;公式()、公式()。

课程设计任务书 一、课程设计的任务和基本要求 (一)设计任务(从“单片机课程设计题目”汇总文档中任选1题,根 据所选课题的具体设计要求来填写此栏) 1. 系统通过4x4的矩阵键盘输入数字及运算符。 2. 可以进行4位十进制数以内的加法运算,如果计算结果超过4位十进制数,则屏幕显示E。 3. 可以进行加法以外的计算(乘、除、减)。 4. 创新部分:使用LCD1602液晶显示屏进行显示,有开机欢迎界面,计算数据与结果分两行显示,支持小数运算。 (二)基本要求 1.有硬件结构图、电路图及文字说明; 2.有程序设计的分析、思路说明; 3.有程序流程框图、程序代码及注释说明; 4.完成系统调试(硬件系统可以借助实验装置实现,也可在Proteus 软件中仿真模拟); 5.有程序运行结果的截屏图片。

单片机设计简易计算器

简易计算器 Simply Calculator 1 设计思想 此计算器有键盘部分、单片机、显示部分三部分组成,键盘部分主要完成输入功能;单片机主要完成数据处理功能,包括确定按键,完成运算,以及输出数据;显示器部分主要完成单片机输出的显示。 本设计的思路是利用单片机性能好,稳定性强的优点来实现系统的运行。设计大致可以分为三个步骤:第一步,硬件的选取和设计;第二步,程序的设计和调试;第三步,Protues 系统仿真。 硬件是设计的骨骼,不仅关系到设计总体方向的确定,还要综合考虑节能,环保,以及稳定性和经济性等各种因素。因此需要花费大量的时间。硬件的选取最为重要,包括选用的芯片,显示设备的选取,输入设备的选取等。本设计是通过单片机来实现的,因此选用了ATMEGA16单片机作为主体,输入设备选用矩阵键盘。程序是硬件的灵魂,是实现设计的中心环节。本设计使用的程序语言是C语言,在“ICC AVR”中运行,调试,直到运行出正确结果,然后输出后缀名为.HEX格式的文件,以备在Protues中仿真使用。程序是设计的关键,程序的调试需要大量的时间,耐心,还够要有足的细心才能成功。本设计中就出现了大量的错误,经过认真修改,最终才能运行出正确结果。最后的系统仿真是设计是否成功的验证,是设计不可缺少的重要环节。这就要求能掌握Protues的一些基本操作。2原理分析 矩阵键盘的扫描 —

》 图矩阵键盘图 如图所示,单片机的8个I/O口和矩阵键盘相连,用8个I/O口来控制矩阵键盘的16个按键是非常有意思的,首先我们设置单片机的PD0—PD7为输出,且PD0—PD3依次设置为低电平,而PD4—PD7设置为高电平,然后我们设置PD4—PD7为输入,而PD0—PD3仍然为输出,假如此时M1键按下,则PD0与PD4相连,因为PD0是低电平,而PD4是输入,所以PD4会被拉为低电平,同理,如果M2被按下,则PD5会被拉低,M3按下,PD6会被拉低,M4按下,PD7被拉低。这是判断有无键盘按下的过程,当我们判断是那一个键盘按下时,我们首先设置8个I/O口为输出,输出为FE,即,PD0为低电平,其他全为高电平,然后我们设置PD4—PD7为输入,如果M1被按下,则PD4会比被拉为低电平,此时会变成EE,同理可以知道M2被按下时会变为DE,M3被按下时会变为BE,M4被按下时会变为7E。同理我们可以设置8个I/O口输出FD来检测M5—M8是否被按下,设置8个I/O口输出FC来来检测M9—M12,设置8个I/O口输出F7来检测M13—M16,如果M1—M4没有被按下,就继续检测M4—M8,一次类推,就可以检测出16个按键了。在这次设计中,16个按键M1—M16所对应检测值分别为:EE,DE,BE,7E,ED,DD,BD,7D,EB,DB,BB,7B,E7,D7,B7,77。 数字显示与计算 本次设计选用的显示器是1602液晶显示器,此液晶显示器能显示32个字符,VSS接地,VDD接电源正极,E为时使能信号,R/W为读写选择端(H/L),RS为数据/命令选择端(H/L),D0—D7为数据I/O口。 首先我们初始化液晶显示器,然后显示出第一个被按下的数,并且使光标右移,如果有第二个数按下,则据继续显示,以此类推,然后把所有显示出来的数换算成一个数,如果按下“+”号,则显示出“+”,并且同理显示出“+”号后面按下的数字,然后调用加子程序,运算出结果,如果按下的是“-”,则调用减子程序,如果按下“*”,则调用乘子程序,如果按下“/”,则调用除子程序。然后再调用显示结果子程序,显示出结果。 《

简单计算器的设计与实现

C/C++程序设计课程设计设计说明书 简单计算器的设计与实现 学生姓名 学号 班级 成绩 指导老师 计算机科学与技术系 2010年11月22日

C/C++程序设计课程设计评阅书

课程设计任务书 2010—2011学年第一学期 专业:计算机科学与技术学号:姓名: 课程设计名称: C/C++程序设计课程设计 设计题目:简单计算器的设计与实现 完成期限:自2010 年 11月 15 日至 2010 年 11 月 26 日共2 周 设计内容及要求: 要求用C/C++语言设计一个简易的计算器程序,对输入的数据进行加、减、乘、除、开平方等操作。 设计要求及功能如下: 1.阐述设计思想,画出流程图; 2.实现功能: (1)对输入的数据进行加法运算; (2)对输入的数据进行减法运算; (3)对输入的数据进行乘法运算; (4)对输入的数据进行除法运算; (5)对输入的数据进行开平方根运算。 最终设计成果形式为: 1.编写好的程序; 2.撰写课程设计说明书一份,打印并装订成册。 指导教师(签字):教研室主任(签字): 批准日期:年月日

摘要 设计了一个简单的计算器程序,该计算器具有简单的四则混合运算以及复杂的数学表达式的功能。该计算器采用VC++作为软件开发环境,采用算数表达式处理算法来实现加、减。乘、除四则混合运算。操作简单,界面清晰,易于用户使用,容易被他们所接受的。 关键词:计算器;VC++;数学表达式

目录 1课题描述 (1) 2问题分析和任务制定 (2) 3详细设计 (3) 3.1头文件设计 (3) 3.2简单计算器的设计与实现函数设计 (3) 4 程序调试与测试 (8) 4.1主界面测试 (8) 4.2基本功能的测试 (8) 5结果分析 (12) 总结 (13) 参考文献 (14)

多项式程序

实习一 一、课程题目 一元稀疏多项式计算器 二、需求分析 1、一元稀疏多项式简单计算器的功能是: 1.1 输入并建立多项式; 1.2 输出多项式,输出形式为整数序列:n,c1,e1,c2,e2,………cn,en, 其中n是多项式的项数,ci和ei分别是第i项的系数和指数,序列按指数降序排列; 1.3 计算多项式在x处的值; 1.4多项式a和b相加,建立多项式a+b; 1.5 多项式a和b相减,建立多项式a-b。 2、设计思路: 2.1 定义线性表的动态分配顺序存储结构; 2.2 建立多项式存储结构,定义指针*next 2.3利用链表实现队列的构造。每次输入一项的系数和指数,可以输出构 造的一元多项式 2.4演示程序以用户和计算机的对话方式执行,即在计算机终站上显示 “提示信息”之后,由用户在键盘上输入演示程序中规定的运行命令;最后根据相应的输入数据(滤去输入中的非法字符)建立的多项式以及多项式相加的运行结果在屏幕上显示。多项式显示的格式为:c1x^e1+c2x^e2+… +cnx^en 3、设计思路分析 要解决多项式相加,必须要有多项式,所以必须首先建立两个多项式,在这里采用链表的方式存储链表,所以我将结点结构体定义为 运用尾插法建立两条单链表,以单链表polyn p和polyn h分别表示两个一元多项式a和b,a+b的求和运算等同于单链表的插入问题(将单链表polyn p中的结点插入到单链表polyn h中),因此“和多项式”中的结点无须另生成。 为了实现处理,设p、q分别指向单链表polya和polyb的当前项,比较p、q结点的指数项,由此得到下列运算规则:

① 若p->expnexpn,则结点p所指的结点应是“和多项式”中的一项, 令指针p后移。 ② 若p->expn=q->expn,则将两个结点中的系数相加,当和不为0时修改结 点p的系数。 ③ 若p->expn>q->expn,则结点q所指的结点应是“和多项式”中的一项, 将结点q插入在结点p之前,且令指针q在原来的链表上后移。 四、概要设计 1、元素类型、结点类型和指针类型: typedef struct Polynomial{ float coef; //系数 int expn; //指数 struct Polynomial *next; }*Polyn,Polynomial; 2、建立一个头指针为head、项数为m的一元多项式, 建立新结点以接收数据, 调用Insert函数插入结点: Polyn CreatePolyn(Polyn head,int m){ int i; Polyn p; p=head=(Polyn)malloc(sizeof(struct Polynomial)); head->next=NULL; for(i=0;icoef,&p->expn); Insert(p,head); } return head; } 3、主函数和其他函数: void main() { int m,n,a,x; char flag; Polyn pa=0,pb=0,pc; } float ValuePolyn(Polyn head,int x) //输入x值,计算并返回多项式的值 五、调用关系图 六、程序代码:

2位数计算器程序-汇编语言课程设计

信息学院课程设计题目:2位数计算器程序设计 __ 姓名: __ _____ 学号: ____ ___ 班级: 课程:汇编语言 ________ 任课教师:侯艳艳 ____ 2011年12月

课程设计任务书及成绩评定

目录 摘要 (2) 1.设计目的………………………………………………………………………………………………?2 2.概要设计………………………………………………………………………………………………?3 2.1系统总体分析…………………………………………………………………………?3 2.2程序流程图 (3) 3.详细设计......................................................................................................? (4) 3.1主程序及子程序说明 (4) 3.2程序代码编写 (4) 4.程序调试 (6) 4.1运行界面分析 (6) 4.2算法的分析 (6) 4.3调试过程及分析 (6) 5.心得体会 (7) 5.1设计体会...................................................................................................? (7) 5.2系统改进...................................................................................................? (7) 参考文献 (8)

51单片机的简单计算器设计和仿真

基于单片机的简易计算器设计与仿真

设计题目:基于单片机的简易计算器设计与仿真 一、设计实验条件: 地点:自动化系实验室 实验设备:PC机(装有Keil;Protues;Word ;Visio ) 二、设计任务: 本系统选用AT89C51单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下: (1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LCD 显示数据和结果。 (2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示围时,计算器会在LCD上提示overflow;当除数为0时,计算器会在LCD上提示error。 设计要求:分别对键盘输入检测模块;LCD显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真 分析其设计结果。 三、设计时间与设计时间安排:

1、设计时间:6月27日~7月8日 2、设计时间安排: 熟悉课题、收集资料:3天(6月27日~6月29日) 具体设计(含上机实验):6天(6月30日~7月5日) 编写课程设计说明书:2天(7月6日~7月7日) 答辩:1天(7月8日) 四、设计说明书的容: 1、前言:(自己写,组员之间不能相同,写完后将红字删除,排版时注意对齐) 本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除基本四则运算,并在LCD上显示相应的结果;设计电路采用AT89C51单片机为主要控制电路,利用MM74C922作为计算器4*4键盘的扫描IC读取键盘上的输入;显示采用字符LCD静态显示;软件方面使用C语言编程,并用PROTUES仿真。 2、设计题目与设计任务: 现实生活中人们熟知的计算器,其功能主要如下:(1)键盘输入;(2)数值显示;(3)加、减、乘、除四则运算;(4)对错误的控制及提示。 针对上述功能,计算器软件程序要完成以下模块的设计:(1)键盘输入检测模块;(2)LCD显示模块;(3)算术运算模块;(4)错误处理及提示模块。 3、主体设计部分: (1)、系统模块图:

Windows下的计算器设计说明书

课程设计说明书Windows环境下的计算器 学院名称:机械工程学院 专业班级:测控0901 学生姓名:李彧文 指导教师姓名:张世庆 指导教师职称:副教授 2011年6月

摘要

课程设计任务书 Windows环境下的计算器 一、课程设计题目:设计一个windows附件中所示的计算器 二、目的与要求: 1、目的: (1)要求学生达到熟练掌握C++语言的基本知识和C++调试技能; (2)基本掌握面向对象程序设计的基本思路和方法; (3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。 2、基本要求: (1)求利用面向对象的方法以及C++的编程思想来完成系统的设计; (2)要求在设计的过程中,对windows环境下的编程有一个基本的认识。 3、创新要求: 在基本要求达到后,可进行创新设计,如增加计算器的函数功能。 4、写出设计说明书 按照设计过程写出设计说明书。 三、设计方法和基本原理: 1、问题描述(功能要求): 要求所编写的计算器能够完成基本的加、减、乘、除运算,类似于Windows下附件中的计算器。 2、问题的解决方案(参考): 根据题目的要求,可以将问题解决分为以下步骤: (1)完成界面的设计,要求界面要美观实用; (2)添加成员变量和成员函数(消息映射函数); (3)利用结构化程序的设计思路完成按键的判断和数据的移位以及计算功能; (4)程序功能调试; (5)完成系统总结报告以及系统使用说明书。

四、程序设计和调试: 五、答辩与评分标准: 1、完成基本功能:40分; 2、设计报告及使用说明书:30分; 3、设置错误或者按照要求改变结果:15分; 4、回答问题:15分。

简易计算器设计说明书

摘要 单片机的出现是计算机制造技术高速发展的产物,它是嵌入式控制系统的核心。如今,它已广泛的应用到我们生活的各个领域,电子、科技、通信、汽车、工业等。计算器的出现给我们的生活带来了巨大的便利,计算器在我们的生活中随处可见,也是我们日常生活中不可缺少的工具。本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除简单的基本四则运算,并在LCD上显示相应的结果。设计电路采用AT89C51单片机为主要控制电路,利用按键作为计算器的键盘的输入。显示采用字符LCD 静态显示。软件方面使用C语言编程,并用PROTUES仿真。 单片微型计算机简称单片机。它是在一块芯片上集成中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、定时/计数器及I/O接口电路等部件,构成一个完整的微型计算机。它的特点是:高性能,高速度,体积小,价格低廉,稳定可靠,应用广泛。单片机比专用处理器最适合应用于嵌入式系统,因此它得到了最多的应用。本文介绍了单片机的产生发展、功能特点、应用开发等内容。 【关键词】简单计算器单片机 LCD 应用发展

背景 近年来,单片机以其体积小、价格廉、面向控制等独特优点,在各种工业控制、仪器仪表、设备、产品的自动化、智能化方面获得了广泛的应用。与此同时,单片机应用系统的可靠性成为人们越来越关注的重要课题。影响可靠性的因素是多方面的,如构成系统的元器件本身的可靠性、系统本身各部分之间的相互耦合因素等。其中系统的抗干扰性能是系统可靠性的重要指标。 本设计采用80c51 芯片,实现了利用单片机进行了一个简单计算器设计。允许对输入数据进行加减乘除运算及LCD 显示.如果设计对象是更为复杂的计算器系统,其实际原理与方法与本设计基本相同。LCD液晶显示器是Liquid Crystal Display 的简称,LCD 的构造是在两片平行的玻璃基板当中放置液晶盒,下基板玻璃上设置TFT(薄膜晶体管),上基板玻璃上设置彩色滤光片,通过TFT上的信号与电压改变来控制液晶分子的转动方向,从而达到控制每个像素点偏振光出射与否而达到显示目的。 现在LCD已经替代CRT成为主流,价格也已经下降了很多,并已充分的普及。故采用LCD.设计的关键所在,必须非常熟悉单片机的原理与结构,同时还要对整个设计流程有很好的把握,将单片机和其他模块完整的衔接。本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除基本四则运算,并在LCD上显示相应的结果;设计电路采用AT89C51单片机为主要控制电路,显示采用字符LCD静态显示;软件方面使用C 语言编程,并用PROTUES仿真i。

简单计算器设计

计算机程序训练任务书简单计算器设计 学院:材料科学与工程学院 专业:材料成型及控制工程 班级:07050103 学号:0705010318 姓名:郭炯

目录 一.训练目的 二.设计内容和要求 三.设计思路 四.该程序功能分析 五.系统用到的数据类型及函数六.基本算法 七.程序流程图及屏幕运行截图八.参考文献 九.设计心得 十.源程序代码

计算机程序训练设计报告 一.训练目的: 计算机程序设计训练是学习完《计算机程序设计》课程后进行的一次全面的综合性上机实验。其目的在于为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。 二.设计内容和要求: 用C语言作为工具制作一个简单的windows计算器,根据课程设计1周时间的安排选择适当大小的设计课题,根据题目的基本需求,画出流程图,编写程序,并写出详细的设计说明书。最后上机调试通过,并进行验收,交上机报告和程序的原代码。 设计题目设计一个简单计算器 具体内容在功能上功能尽量模拟windows操作系统中的计算器,系统界面 不做强制要求。 三.设计思路 大体框架是用两个while语句来实现相应的计算,用goto 语句来实现多次进入while语句进行相应的计算,第一个while语句用于新的两个数来进行计算,第二个while语句是用上一次储存的计算结果来与另外的数进行相应的运算。 每个while语句嵌套switch语句来实现加减乘除以及三角函数等运算。 每种运算都是调用自定义的函数来实现相应运算的。 四.该程序功能分析: 该程序主要功能是计算简单运算,以及简单的三角函数的计算,优点是一次运算结束后会提醒是否将运算的结果储存下来,如果储存则与另外的数继续进行下一次运算,如果不储存,则会执行新的运算,如果不计算了即可跳出界面。同时计算开方。 五.系统用到的数据类型及其函数: 1.整型变量num 用于判断需要进行什么运算。 整型变量l 用于决定进入哪个while循环语句。 实型变量a,b,x,t a,b,x用于放置需要计算的数,t用于放置每次运算的结果。

VB课程设计报告+计算器

目录 ●概要设计说明 (3) ●总体设计分析 (3) ●小组成员及分工方法....................................3 -4 ●功能模块图 (4) ●负责模块的程序设计分析 (5) ●负责模快的程序源代码及流程图.....................5-12 ●公共系统使用说明及截图..............................13-16 ●结束语、心得体会 (17) ●课程设计结评分表…………………………………18-19

一、概要设计说明 本组设计的科学计算器具有科学型和标准型两种类型,适合不同需要。科学型中包含弧度与角度的计算,同时兼具2、8、10、16进制的运算。在标准型中,编辑菜单(edit)包含复制(copy)、粘贴(paste)。查看菜单包含标准型(standar)、科学型(scientific)。帮助菜单中包含关于(about)(内含开发制作者信息) 二、总体设计分析(含功能模块图) 一.小组成员分工 1 科学型角度弧度和进制的调用,由小组成员共同完成 2 科学计算器中,x^2,x^3,x^y,1/x,n!,Log按键,及八进制转二 进制,八进制转十进制,由**负责。 3科学计算器中,BackSpance、CE、C和运算符号+、-、*、/、.、-/+、=以及标准型计算器由***负责 4 科学计算器中,sin,cos,tan,Rnd,Exp,ATn按钮以sin/cos/tan 计算时角度和弧度的转换由**负责。 5 科学行计算器中,Copy,Pst,Not,And,Xor,Int,Or, Abe,Exit按钮;将十进制转化为二进制,制转化为十进制,将二进制转化为八进制由**负责。

单片机简易计算器课程设计

课程设计 题目名称简易计算器设计 课程名称单片机原理及应用 学生姓名 班级学号 2018年6 月20日

目录 一设计目的 本设计是基于51系列单片机来进行的简单数字计算器设计,可以完成计算器的键盘输入,进行加、减、乘、除六位整数数范围内的基本四则运算,并在LED上显示相应的结果。软件方面使用C语言编程,并用PROTUES仿真。 二总体设计及功能介绍 根据功能和指标要求,本系统选用MCS-51系列单片机为主控机,实现对计算器的设计。具体设计及功能如下: 由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LED显示数据和结果; 另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算键盘; 执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。

三硬件仿真图 硬件部分比较简单,当键盘按键按下时它的那一行、那一列的端口为低电平。因此,只要扫描行、列端口是否都为低电平就可以确定是哪个键被按下。 四主程序流程图 程序的主要思想是:将按键抽象为字符,然后就是对字符的处理。将操作数分别转化为字符串存储,操作符存储为字符形式。然后调用compute()函数进行计算并返回结果。具体程序及看注释还有流程图 五程序源代码 #include #include #include/* isdigit()函数*/ #include/* atoi()函数*/ #define uchar unsigned char #define uint unsigned int

基于51单片机的计算器设计说明

目录 第一章引言 (3) 1.1 简述简易计算器 (3) 1.2 本设计主要任务 (3) 1.3 系统主要功能 (4) 第二章系统主要硬件电路设计 (4) 2.1 系统的硬件构成及功能 (4) 2.2 键盘电路设计 (5) 2.3 显示电路设计 (6) 第三章系统软件设计 (7) 3.1 计算器的软件规划 (7) 3.2 键盘扫描的程序设计 (7) 3.3 显示模块的程序设计 (8) 3.4 主程序的设计 (9) 3.5 软件的可靠性设计 (9) 第四章调试 (9) 第五章结束语 (10) 参考文献 (11) 附录源程序 (11)

第一章引言 1.1 简述简易计算器 近几年单片机技术的发展很快,其中电子产品的更新速度迅猛。计算器是日常生活中比较的常见的电子产品之一。如何才能使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器呢? 本设计是以AT89S52单片机为核心的计算器模拟系统设计,输入采用4×6矩阵键盘,可以进行加、减、乘、除9位带符号数字运算,并在LCD1602上显示操作过程。 科技的进步告别了以前复杂的模拟电路,一块几厘米平方的单片机可以省去很多繁琐的电路。现在应用较广泛的是科学计算器,与我们日常所用的简单计算器有较大差别,除了能进行加减乘除,科学计算器还可以进行正数的四则运算和乘方、开方运算,具有指数、对数、三角函数、反三角函数及存储等计算功能。计算器的未来是小型化和轻便化,现在市面上出现的使用太阳能电池的计算器, 使用ASIC设计的计算器,如使用纯软件实现的计算器等,未来的智能化计算器将是我们的发展方向,更希望成为应用广泛的计算工具。 1.2 本设计主要任务 以下是初步设定的矩阵键盘简易计算器的功能: 1.扩展4*6键盘,其中10个数字,5个功能键,1个清零 2.强化对于电路的焊接 3.使用五位数码管接口电路 4. 完成十进制的四则运算(加、减、乘、除); 5. 实现结果低于五位的连续运算; 6. 使用keil 软件编写程序,使用汇编语言; 7. 最后用ptoteus模拟仿真; 8.学会对电路的调试

单片机简易计算器设计

单片机简易计算器设计 Company Document number:WTUT-WT88Y-W8BBGB-BWYTT-19998

一、设计要求 1.设计4*4的键盘,其中10个数字键0~9,其余6个为“+”“-”“*”“/”“=”和“C” 2.设计2位LED接口电路 3.实现1位数的简单运算 二、硬件系统设计 1、LED接口电路 简易计算器需要2位8段码LED显示电路。用8031单片机经8255A扩展2位8段码LED显示器,用8255A的A口作为段码(字形代码)数据口,PB0和PB1作为位控制端口。在位控制口加集电极开路的反相高压驱动器74LS06以提供驱动LED显示器所需的足够大的电流,然后接至各数码显示器的共阴极端。同理,在段码数据口集电极开路的正相高压驱动器74LS07提供足够大的电流,然后接到数码显示器的各段。逻辑电路结构如下:

2、键盘接口电路 简易计算器需要4*4的行列式键盘。用8031单片机经8255A扩展4*4行列式键盘,8255A的B口和C口用于扩展键盘接口,B口高4位作为输出口,C口低4位作为输入口。逻辑电路结构如下: 3、计算器逻辑电路图 将LED接口电路和键盘接口电路结合到一起就是简易计算器的逻辑电路图,如下: 三、软件设计 1、LED显示程序设计 LED显示器由七段发光二极管组成,排列成8字形状,因此也成为七段LED显示器,器排列形状如下图所示:

为了显示数字或符号,要为LED显示器提供代码,即字形代码。七段发光二极管,再加上一个小数点位,共计8段,因此提供的字形代码的长度正好是一个字节。简易计算器用到的数字0~9的共阴极字形代码如下表: 0~9七段数码管共阴级字形代码 2位LED显示的程序框图如下: 2、读键输入程序设计 为了实现键盘的数据输入功能和命令处理功能,每个键都有其处理子程序,为此每个键都对应一个码——键码。为了得到被按键的键码,现使用行扫描法识别按键。其程序框图如下: 3、主程序设计 (1)数值送显示缓冲程序设计 简易计算器所显示的数值最大位两位。要显示数值,先判断数值正负,如果是负值,则符号位显示“-”,然后将数值除以10,余数送显最最低位,判断商是否为0,若为0则返回,若不为0,则将商除以10,将余数送显高位。程序框图如下: (2)运算主程序设计

数据结构一元多项式的计算

课程设计成果 学院: 计算机工程学院班级: 13计科一班 学生姓名: 学号: 设计地点(单位): 设计题目:一元多项式的计算 完成日期:年月日 成绩(五级记分制): _________________ 教师签名:_________________________ 目录 1 需求分析 ......................................................................... 错误!未定义书签。 2 概要设计 ......................................................................... 错误!未定义书签。 2.1一元多项式的建立 ............................................................... 错误!未定义书签。 2.2显示一元多项式 ................................................................... 错误!未定义书签。 2.3一元多项式减法运算 ........................................................... 错误!未定义书签。 2.4一元多项式加法运算 ........................................................... 错误!未定义书签。 2.5 设计优缺点.......................................................................... 错误!未定义书签。3详细设计 .......................................................................... 错误!未定义书签。 3.1一元多项式的输入输出流程图........................................... 错误!未定义书签。 3.2一元多项式的加法流程图................................................... 错误!未定义书签。 3.3一元多项式的减法流程图.................................................. 错误!未定义书签。 3.4用户操作函数....................................................................... 错误!未定义书签。4编码 .................................................................................. 错误!未定义书签。5调试分析 .......................................................................... 错误!未定义书签。4测试结果及运行效果...................................................... 错误!未定义书签。5系统开发所用到的技术.................................................. 错误!未定义书签。参考文献 ............................................................................. 错误!未定义书签。附录全部代码................................................................... 错误!未定义书签。

计算机课程设计说明书(C++,包括代码)

数学与计算机学院 课程设计说明书 课程名称: 面向对象程序设计-课程设计课程代码: 题目: 计算器 年级/专业/班: 学生姓名: 学号: 开始时间:2011 年 5 月28日 完成时间:2011 年6月 27 日 课程设计成绩: 学习态度及平时成绩(30)技术水平与实际 能力(20) 创新(5)说明书撰写质量(45) 总分 (100) 指导教师签名:年月日 目录 1 引言 (1) 1.1问题的提出 (1) 1.2任务与分析 (1)

2.1加法功能 (2) 2.2减法功能 (2) 2.3乘法功能 (2) 2.4除法功能 (2) 2.5开平方功能 (2) 2.6四则混合运算功能 (2) 2.7显示功能 (2) 3 程序运行平台 (3) 4 总体设计 (3) 5 程序类的说明 (4) 6 模块分析 (6) 6.1加法模块 (6) 6.2减法模块 (7) 6.3乘法模块 (8) 6.4除法模块 (10) 6.5开方模块 (11) 6.6求余模块 (13) 6.7四则混合运算模块 (14) 7 系统测试 (22) 8 结论 (27)

参考文献 (28) 摘要 本课程设计是为了实现一个简单计算器,该计算器类似于windows附件中自 带的计算器。分析了现在人们对数据的处理需求,利用系统平台Windows 2000XP, 程序设计语言采用面向对象程序设计语言C++,利用Visual C++编程实现了该系 统。该系统具有数据录入,数据修改,数据处理,数据显示等功能。用户根据系

统界面提示,输入需要处理的数据,系统根据要求实现加、减、乘、除以及开方等功能。 关键词:计算器;程序设计;C++

基于AT89C51的简单计算器设计

设计题目:基于单片机的简易计算器设计与仿真 一、设计实验条件: 地点: 实验设备:PC机(装有Keil;Protues;Word ;Visio ) 二、设计任务: 本系统选用AT89C51单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计,具体设计如下: (1)由于设计的计算器要进行四则运算,为了得到较好的显示效果,经综合分析后,最后采用LCD 显示数据和结果。 (2)采用键盘输入方式,键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键(on\c)和等号键(=),故只需要16 个按键即可,设计中采用集成的计算键盘。 (3)在执行过程中,开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。 (4)错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD上提示overflow;当除数为0时,计算器会在LCD上提示error。 设计要求:分别对键盘输入检测模块;LCD显示模块;算术运算模块;错误处理及提示模块进行设计,并用Visio画系统方框图,keil与protues仿真 分析其设计结果。 三、设计时间与设计时间安排: 1、设计时间:6月27日~7月8日 2、设计时间安排: 熟悉课题、收集资料:3天(6月27日~6月29日)

具体设计(含上机实验):6天(6月30日~7月5日) 编写课程设计说明书:2天(7月6日~7月7日) 答辩:1天(7月8日) 四、设计说明书的内容: 1、前言:(自己写,组员之间不能相同,写完后将红字删除,排版时注意对齐) 本设计是基于51系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除基本四则运算,并在LCD上显示相应的结果;设计电路采用AT89C51单片机为主要控制电路,利用MM74C922作为计算器4*4键盘的扫描IC读取键盘上的输入;显示采用字符LCD静态显示;软件方面使用C语言编程,并用PROTUES仿真。 2、设计题目与设计任务: 现实生活中人们熟知的计算器,其功能主要如下:(1)键盘输入;(2)数值显示;(3)加、减、乘、除四则运算;(4)对错误的控制及提示。 针对上述功能,计算器软件程序要完成以下模块的设计:(1)键盘输入检测模块;(2)LCD显示模块;(3)算术运算模块;(4)错误处理及提示模块。3、主体设计部分: (1)、系统模块图:

相关主题
文本预览
相关文档 最新文档