基于单片机的简易计算器论文毕业设计文档格式.docx

上传人:b****6 文档编号:20070014 上传时间:2023-01-16 格式:DOCX 页数:33 大小:524.92KB
下载 相关 举报
基于单片机的简易计算器论文毕业设计文档格式.docx_第1页
第1页 / 共33页
基于单片机的简易计算器论文毕业设计文档格式.docx_第2页
第2页 / 共33页
基于单片机的简易计算器论文毕业设计文档格式.docx_第3页
第3页 / 共33页
基于单片机的简易计算器论文毕业设计文档格式.docx_第4页
第4页 / 共33页
基于单片机的简易计算器论文毕业设计文档格式.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

基于单片机的简易计算器论文毕业设计文档格式.docx

《基于单片机的简易计算器论文毕业设计文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的简易计算器论文毕业设计文档格式.docx(33页珍藏版)》请在冰豆网上搜索。

基于单片机的简易计算器论文毕业设计文档格式.docx

谭金平

二O—五年六月

学士学位论文原创性声明

本人郑重声明:

所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。

本人完全意识到本声明的法律后果由本人承担。

本人签名:

日期:

摘要

近年来随着科技的飞速发展,以单片机技术为基础的电子产品在不断推广和应用,单片机技术的发展也带来了传统计算方式的改变。

在目前市场上采用的计算器大部分都是基于单片机技术设计的,采用单片机结合软件编程技术实现的电子计算器,可以控制多种显示单元,同时可以根据需要方便对产品功能的升级和完善。

考虑到价格成本的约束,本系统中央处理器由市场上较为成熟的51单片机来承担,51单片机价格低廉操作简单,外围接口丰富,可以很好的实现系统的各项功能要求,键盘输入部分采用护4矩阵键盘来实现,16个按键分别完成0・9数字的输入和加、减、乘、除、等号、5个计算键的功能,最后一个按键实现清除计算内容的功能,显示单元采用LCD1602液晶显示屏显示,液晶显示效果相比数码管更加稳定,无闪烁同时显示字符内容丰富。

关键词:

单片机计算器液晶显示器

SimplecalculatordesignbaseonMCU

AbstractInrecentyearswiththerapiddevelopmentoftechnology,SCMtechnology-basedelectronicproductscontinuetospreadandtheapplicationofSCMtechnologydevelopmenthasalsobroughtachangeinthetraditionalmethodofcalculation.Inthecurrentcalculatormarket,mostofwhicharemicrocontroller-based,whichisdesignedbysingle-chipcombinationofsoftwareprogrammingtechnologyofelectroniccalculators,youcancontrolavarietyofdisplayunits,atthesametimealsoeasilytoupgradeandImproveproductfunctionalityrequired.Takingintoaccountconstraintsofthecostprice,thecentralprocessorofthesystemtakeuseofthemorematuremicrocontroller51inthemarket,whichhaslowpriceandrichperipheralinterfaces,alsosimpletooperate,soitcanbeverygoodtoachievethefunctionalrequirementsofthesystem,thekeyboardinputpart4*4matrixkeypad,or16keysare0-9completeinputandprocessing,subtraction,multiplication,division,equals,fivekeyfunctionstocalculate,calculatethefinalkeytoachieveclearcontentfeatures,thedisplayunitusingLCD1602display,LCDdigitaleffectscomparedtomorestable,flicker-freedisplayrichcharactercontentsimultaneously.

Keyword:

MCUcalculatorLCDdisplay

第一章前言8

1.1课题背景8

1.2课题研究的目的和意义8

1.3计算器设计的任务和要求9

第二章简易计算器的方案设计10

2.1系统设计方案论述10

2.2系统设计方案比较与论证12

2.2系统设计方选择13

第三章系统硬件电路设计14

3.1系统电源接口电路设计14

3.2单片机最小系统设计15

3.2.1系统单片机选型15

3.2.2系统单片机最小系统电路设计16

3.3系统显示电路设计17

3.3.1系统显示器件选择17

3.3.2系统显示电路设计18

3.4系统矩阵键盘输入电路设计18

3.5系统整体电路设计分析19

第四章计算器的软件系统设计21

4.1系统软件编程环境介绍21

4.2系统主程序流程图21

4.3系统子程序介绍23

第五章系统的仿真与调试25

5.1系统仿真软件介绍25

5.2系统仿真结果分析25

第六章实物的制作与调试28

6.1电路的安装过程28

6.2系统的调试及问题29

总结30

致谢31

参考文献32

附录A系统源程序33

附录B系统电路图42

附录C系统仿真图44

附录D系统实物图45

第一章前言

1.1课题背景

在人们的日常生活中,计算器的使用已经和人们的生活密切相关,当今人们对日常生活的便利性要求越来越高,传统的口算和珠算的计算方式由于诸多的不便已经不能满足人们对便利性的要求,携带方便,使用便捷的简易计算器是目前市场上最受消费者亲睐的产品。

计算是我们日常生活中不可避免的一个环节,小到市场买菜,大到买房置家,计算都会如影随形,因而计算器的开发具有广阔的应用市场,目前市场上的计算器种类己经很多,但是大多数计算器功能相对较多,体积较大,价格相对较贵,不利于家庭的推广和使用。

本文正是基于携带方便,功能简易,成本低廉为应用背景进行开发和设计,最终设计完成一款能够实现简单计算功能的廉价计算器。

1.2课题研究的目的和意义

计算是伴随人们日常生活的一个概念,计算工具是一个从古至今一直存在而又不断发展的。

在遥远的古代人们用简单的数字的多少来计算,这种计算在我们如今的日常生活中还能看到,当我们问三四岁的小孩简单的加法运算时,我们会发现大部分儿童还是会伸出手指来数数的多少来进行简单的加减运算,虽然计算的方式古老,但是却简单可行。

在后来,中国珠算的发明与使用使得计算的速度和准确性得到很大的提高,珠算在中国的计算领域有这悠久的历史,直到上个世纪80年代之前珠算还是大多从事会计与相关计算领域方面较为常用的工具,然而随着科技的进步,电子计算器的发明与使用是计算领域内的又一次革新,电子计算器无论在计算速度还是可靠性方面相比珠算都有了很大的提高,另外电子计算器操作简单,不需要专业的学习和培训即可操作,因而随着电子计算器的发明和使用,珠算很快便从中国一千多年的应用历史中退出了市场。

在现实生活中,我们总是会被各种繁琐的计算问题而烦心,由于生活节奏的提高,面对突然来到的计算问题,我们已经没有足够的时间和耐心拿上笔和纸进行计算了,计算器已经成为我们日常生活中不可或缺的计算工具了,在大多的工作场合我们会发现每个人的办公工具中,计算器已经是必不可少的了,因而如何结合所学电子知识,开发一款价格低廉,操作简单,计算准确可靠性高的计算器具有和好的开发价值和应用前景,设计完成一款价格低廉、操作方便的简易计算器对自己不仅具有很好的锻炼意义,同时也具有很好的市场需求,适当的进行完善即可推广到市场上应用。

1.3计算器设计的任务和要求

本设计采用宏晶科技公司生产的STC89C52单片机作为系统的核心控制单元,然后以此单片机为基础结合外围所需的硬件电路,最后在硬件设计平台上完成软件代码的验证,最终完成简易数字计算器各项功能要求。

此简易数字计算器主要电路模块包括:

单片机最小系统、矩阵键盘电路、液晶LCD显示电路、系统电源电路等单元组成。

系统所使用的主要元器件包括:

STC89C52单片机、4*4矩阵键盘、液晶显示屏LCD1602、DC直流电源等。

本设计主要实现的功能和要求包括:

(1)实现100000000以内的加法运算功能;

(2)实现100000000以内的减法运算功能;

(3)实现100000000的乘法运算功能;

(4)实现100000000的除法运算功能;

(5)系统计算时输入数字和符号以及运算结果显示功能;

(6)系统输入错误时具有清除的功能。

第二章简易计算器的方案设计

2.1系统设计方案论述

本次设计所要实现的功能主要有加减乘除的运算,能够实现上述运算的设计方案进行简要的介绍。

方案一:

以51单片机为基础,结合键盘输入电路、电源转换电路、单片机复位电路和晶体振荡电路以及液晶显示电路进行设计完成。

其硬件设计框图如图2-1所示。

矩阵

LCD液晶显

图2-1

方案二:

以51单片机为基础,结合键盘输入电路、电源转换电路、单片机复位电路和晶体振荡电路以及LED数码管显示电路进行设计完成。

其硬件设计框图如图2-2所示。

图2-2

方案三:

以ARM为平台,结合电源转换电路以及液晶LCD显示电路进行设计完成。

其硬件设计框图如图2—3所示。

矩阵一

系统电

图2-3

2.2系统设计方案比较与论证

方案一以51单片机为核心结合液晶显示电路来实现具有以下优点:

1、STC89C52单片机是目前市场上主流的51单片机型号,其价格低廉、10端口丰富,在很多中低端的电子产品上具有很广泛的应用。

2、以STC89C52单片机作为方案设计的控制核心,开发相对容易,开发周期相对较短,可以有效的节约开发时间。

3、采用液晶LCD作为系统的显示界面,液晶显示效果稳定,显示字符数相对较多,而且能够很好的显示运算符号。

方案二相比方案一来讲,采用LED数码管显示界面代替LCD液晶,相比方案一成本价格更为低廉,开发费用和周期更短,不足之处是数码管显示效果存在一定的闪烁现象,同时显示字符数有限,如果计算的位数较多就需要级联较多个数的数码管才能实现,同时市场上通用的数码管一般不能直接显示运算符,如需要直观的显示运算符则需要单独定做,这样又会使得设计成本得到提高。

方案三相比前两个方案讲,外围电路更加简单,由于ARM芯片内部已经集成了晶体振荡电路和看门狗复位电路,因而不需要在单独外接复位电路和晶振电路,这样使得外围电路更加简单,可以有效的缩减线路板的体积,使得整个设计体积更小,携带更为方便,除此之外,ARM处理器处理速度相比51单片机更为快捷,以ARM为控制核心的计算器反应灵敏度更高;

方案三的不足之处是ARM处理器价格相对较高,开发难度大、开发周期长。

2.2系统设计方选择

基于本文是以价格低廉、开发容易和使用方便为开发背景的前提下,经过对上述3种方案的论证和比较,方案一更能符合课题开发的背景,因而本文设计方案最终以方案一为基础进行设计。

 

第三章系统硬件电路设计

3.1系统电源接口电路设计

系统电源电路主要完成供电系统的稳压滤波和开关控制功能,此部分电路如图3-1所示。

J1

图3-1系统电源管理电路

图3-1为系统5V输出电压管理电路,其中J1为DC005电源输入接口,用于连接DC9V直流电源,SW1为系统电源开关,用于控制整个系统的电源的开启与关闭,C1为电解电容,一般取值在220uf到680uf之间,此电解电容是用于滤除电源线上存在的高频干扰,U1为三端稳压芯片LM7805,LM7805输入电压范围在7-16V情况下,稳定输出

直流5V电压,输出稳定度在5V正负0.05mv的波动内变化,能够很好的保证单片机系统电压的稳定性,电容C1和C4分别用于滤除输出电压上存下的低频干扰和高频干扰,LED为电源指示灯,当系统电源输出正常的情况下LED灯点亮,电阻R1为1K阻值的限流电阻,保证LED在允许的工作电流下工作,避免LED被电流过高造成的损坏,D0为整理二极管,在此是为了防止输入电源极性反接造成后续电路器件的烧坏,当电源极性反接时,二极管D0的反向截止功能可以对后续电路进行有效的保护。

3.2单片机最小系统设计

3.2.1系统单片机选型

单片机为整个系统的控制核心,单片机型号的选择好坏直接会影响到整个系统设计的成败,因而选择一款合适的单片机对整个系统设计的成功与否起着至关重要的作用,目前市场上单片机种类型号千差万别,从基础的8位单片机到高端的64位单片机,价格从几元到上百元不等,选择单片机要首先要考虑价格因素,由于本系统设计是简易型计算器,因而功能相对较少,不需要较多的10端口以及强大的存储空间,所以不需要选择价位较高的高端的单片机,考虑到目前市场上应用较为广泛的51位单片机完全能够达到设计的功能要求,因而本设计首选单片机是51单片机。

宏晶科技公司生产的STC89C52单片机是目前国产单片机中性价比较高的型号,此单片机价格低廉,端口丰富完全兼容国外大品牌Atmel公司的AT89S52单片机,价格相比Atmel公司的单片机只有其价格的一般,鉴于以上分析,本文最终选择宏晶科技的STC89C52单片机作为简易计算器的主控单片机,STC89C52单片机的引脚图如图3-2所示。

图3-2STC89C52引脚图

STC89C52单片机具有以下标准功能:

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

•与MCS-51单片机产品兼容

•8K字节在系统可编程Flash存储器

•1000次擦写周期

•全静态操作:

0Hz〜33Hz

•三级加密程序存储器

•32个可编程I/O口线

•三个16位定时器/计数器

•八个中断源

•全双工UART串行通道

•低功耗空闲和掉电模式

•掉电后中断可唤醒

•看门狗定时器

•双数据指针

•掉电标识符

3.2.2系统单片机最小系统电路设计

单片机最小系统电路是整个计算器系统的核心、单片机最小系统电路设计的好坏直接决定整个系统的设计成败因而在设计单片机最小系统电路之前一定要对单片机的工作原理有一个系统的学习,要知道单片机正常工作所需的必备条件,要了解单片机系统电路的组成以及各部分的主要功能。

单片机最小系统电路一般由单片机、晶振电路、复位电路组成,此部分设计完成的电路如图3・3所示。

图3-3单片机最小系统电路图

如图3-3所示,其中Y1为11.0592M的晶体振荡器,选择U.0592M是为了便于计

基于爪片机的简易计算器设计论文

算单片机运行的周期,Y1两端的电容C7,C8接在放大器的反馈回路中构成并联振荡电路。

电容C7和C8应选择瓷片电容,至于电容容值的大小没有严格的限定,只是电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程度及温度的稳定性。

如果使用石英晶体,推荐电容使用30pF士10pF。

STC89C52单片机为高电平复位使能,在单片机最小系统电路设计中需要保证上电的时候能够复位单片机,同时当系统运行过程中出现跑飞或者进入死循环的时候能够通过相应的按键实现单片机的复位,因而单片机复位需要有上电复位和按键复位两种复位方式,复位电路设计如图3-3所示,其中SO为复位按键。

上电复位的工作原理为:

通电时,电容两端相当于短路,于是单片机的复位引脚上为高电平,然后电源通过电阻对电容C6充电,单片机复位引脚端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作;

按键复位的工作原理为:

当SO被按下后,电容C6迅速放电,使单片机复位引脚为高电平,从而实现复位。

当SO弹起后,电源通过10KQ的电阻R5放电,电平变为低电平,复位停止。

3.3系统显示电路设计

3.3.1系统显示器件选择

目前市场上的计算器显示屏主要包括以下几种:

1、OLED段码液晶屏,此种液晶屏只能显示固定的数字和字符,由于简易计算器的运算符号种类较少,因而考虑到OLED段码液晶屏的价格相对较低,在一些简单的计算器上应用较多。

2、LED数码管显示屏,近年来随着LED技术的发展,LED数码管应用场合也逐渐增多,LED数码管显示亮度较高,同时LED颜色种类较多,客户可以根据自己的喜好选择自己喜欢的颜色,不足之处是LED数码管功耗较高,显示效果会有轻微的闪烁,长时间观看不利于眼睛的保护。

3、LCD液晶屏,目前市场上主要用到的液晶屏分为字符型液晶屏和中文汉字液晶屏,字符型LCD液晶显示,液晶显示模块具有体积小、功耗低、显示内容丰富等特点,现在字符型液晶显示模块已经是单片机应用设计中鼓常用的信息显示器件;

中文汉字液晶屏体积尺寸较大,同时价格较贵,考虑到价格和体积因素,字符型LCD液晶更适合本系统设计的需要,采用LCD液晶显示价格适中,显示效果稳定,不足是亮度效果会相对降低。

综合以上几种显示器件的优缺点,系统最终采用LCD液晶显示器做系统的显示器件,

系统选用字符型LCD1602作为显示部分。

3.3.2系统显示电路设计

系统显示电路主要包括单片机控制器、单片机P0口上拉电阻、LCD1602液晶显示器和对比度调节电阻器组成,此部分电路如图3-4所示。

SP1

IOK

图3-4系统显示器件电路图

由图3-4所示:

液晶LCD1602的1脚为接地端,2脚为电源引脚,此款液晶显示器采用DC5V电压供电,此处VCC接5V电压,3脚为液晶显示器的对比度调节引脚,通过电阻R6接地,R6阻值可以选择2.2K到4.7K之间的电阻,也可以接4.7K的可调电位器接地,可通过改变此电阻的阻值大小来调节液晶的对比度;

4脚、5脚、6脚为液晶片选控制引脚,分别连接到单片机的P25、P26、F27端口,7~14脚为数据接口,与单片机的P0口相连实现数据的传输,15、16、脚为液晶的背光控制脚,分别接到电源和地,如果悬空不接则不使用背光。

3.4系统矩阵键盘输入电路设计

按键输入电路用来完成密码的输入和修改,按键输入电路采用4*4矩阵键盘实现,矩阵键盘电路如图3-5所示。

图3-5系统矩阵键盘输入电路

系统矩阵键盘对应按键功能如图3-6所示。

图3-6系统矩阵键盘按键功能说明

如上表所示,0-9位数字键,当运算时按下对应数字的按键即可输入相应数字,符号键“+”“/”“二”号对应计算器的运算功能键,当输入完相应的数字后按下对应的运算符后即可执行相应的计算操作,清除键指的是当运算过程中如果操作错误可以按下清除键完成对本次运算的清除功能,按下清除键以后即可进行再次运算操作。

3.5系统整体电路设计分析

当系统各部分电路设计完成后,需要对各部分电路进行总体汇总,然后对完整的电路进行可行性分析论证,在保证系统电路的完整性和可靠性的前提下方可进行下一步的软件设计以及成品组装,系统汇总完成的总体电路如图3・7所示。

计算常电路图

图3・7系统整体电路图

图3-7为系统整体电路图,主要包括电源部分电路,矩阵键盘输入电路,单片机最小系统电路以及液晶显示电路4大部分组成,系统电源电路用了完成系统电压的稳压和滤波作用,因为单片机系统需要在比较稳定的5V电压系统下工作,因而要想保证整个系统能够稳定可靠的运行,首先要保证系统电源电路稳定可靠,所以增加稳压滤波电路是必不可少的环节;

考虑到计算器输入键盘部分由0-9共10个数字键,5个运算符号

键,一个清除键,共需要16个按键,因而系统设计键盘输入部分采用4*4的矩阵键盘,共16个按键完成;

显示界面采用LCD1602字符型液晶显示屏,LCD1602液晶能够显示2行32个字符,可以很好的满足系统设计的要求。

4.1系统软件编程环境介绍

系统软件设计采用C语言编程,编译环境为Keil。

Keilc51是美国Ke订Software公司出品的51系列兼容单片机C语言软件开发系统,和汇编相比,C在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。

Keilc51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。

另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keilc51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。

在开发大型软件时更能体现高级语言的优势。

KeilC51可以完成编辑、编译、连接、调试、仿真等整个开发流程。

开发人员可用IDE本身或其它编辑器编辑C或汇编源文件,然后分别有C51及A51编辑器编译连接生成单片机可执行的二进制文件(・HEX),然后通过单片机的烧写软件将HEX文件烧入单片机内。

软件主要三个方面:

一是初始化系统;

二是数据采集;

三是数据处理并进行显示。

这三个方面的操作分别在主程序中来进行。

程序采用模块化的结构,这样程序结构清楚,易编程和易读性好,也便于调试和修改。

4.2系统主程序流程图

系统主程序主要包括系统的初始化、键盘扫描、运算的执行以及液晶的显示等,系统主程序流程图如图4・1所示。

图4-1系统主程序流程图

系统主程序流程如图4・1所示,当系统上电后首先完成各个组件的初始化,一个系

统的初始化是程序运行必不可少的环节,系统初始化部分主要包括:

单片机初始化、液晶显示初始化、矩阵键盘初始化等;

初始化完成以后系统首先要扫描矩阵键盘,通过判断矩阵键盘对应的单片机IO端口是否发生变化来判断是否进入有效的运算操作,当按键扫描到有按键输入时,单片机通过键盘键值的判断来确定输入的是数字还是运算符,同时通过控制液晶屏实时显示输入的运算数字和运算符,当单片机判断到有键按下后开始执行运算符前后数字的相应运算,然后把运算的结果显示在液晶屏的符之后。

此时如果系统检测到清除功能键按下则系统返回到按键扫描状态,如果没有清除键按下,则一直保留此次运算的状态。

4.3系统子程序介绍

系统子程序主要包括按键扫描子程序和液晶显示子程序,按键扫描子程序是通过检测矩阵键盘所接的单片机10端口的电平变化来实现。

矩阵键盘电路设计成4X4矩阵式,在程序中可以先判断按键编码,然后根据编码将键盘代表的数值送到相应的存储单元,再进行功能选择或数据处理。

液晶显示子程序主要完成在显示字符发生变化时,通过单片机控制液晶的读写操作来完成显示字符的更新。

按键扫描子程序流程图如图4-2所

图4-2系统按键扫描子程序流程图

系统按键扫描是通过对矩阵键盘行列扫描的方式实现的,系统首先对行进行扫描,

检测出4行当中是否有一行对应的端口电平

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1