基于单片机的计算器的论文

  • 格式:docx
  • 大小:659.61 KB
  • 文档页数:65

目录一、系统设计 (4)1.1、功能介绍 (4)1.1.1、基本功能 (4)1.2、总体设计方案 (4)1.2.1、总体设计思路 (4)1.2.2、方案论证与比较 (5)1.2.2.5、键盘设计方案与选择 (8)二、重要器件的知识介绍 (10)2.1、单片机的知识介绍 (10)2.1.1、单片机的主要性能 (10)2.1.2、单片机的功能特性描叙 (10)2.1.3、单片机的部结构方框图及芯片引脚图 (11)2.1.4、单片机各引脚功能说明 (11)2.1.5、单片机时钟电路 (14)2.1.6、单片机复位电路 (15)2.1.7、单片机下载口电路 (15)三、程序流程图 (17)3.1、程序清单 (19)产品使用说明 (20)设计体会 (21)参考文献 (23)附录1、元器件清单 (23)附录2、系统原理图 (25)附录3、程序清单 (26)致 (65)基于单片机的计算器电子工程专业学生勾艳玲指导教师曾实现摘要:本设计采用单片机作为控制芯片,用C语言对其进行编程实现,输入由4*4矩阵式键盘控制,输出采用人性化的SBY12864K-ZK型液晶实现。

该计算器为多功能计算器,在未进行计算时,它是一个万年历时钟,并且带脑钟和星期显示,所以数据均可随时进行校准,校准数据采用的是独立式键盘,是将4*4矩阵式键盘的一根线拉低,然后读取与这根线交叉的4根线的所处状态来判断按键是否被按下,而这4个按键中只有3个按键用于万年历的校准和对脑钟的控制,另一个按键则用来切换进入计算模式。

对于计算这个部分我采用的是矩阵键盘,10个数字键,一个小数点键,四个符号键,一个多功能键,通过判别该多功能键连续按的次数来决定该键此时的命令。

由于C语言库函数繁多,所以我采用调用C语言库函数来解决多种运算类型,这样编程更简单,运行起来也更可靠。

关键字:单片机,点阵图形液晶,矩阵键盘,C语言库函数。

Student majoring in×××× NameTutor Name(小四Times New Romar)Abstract:The design uses a single-chip microcomputer as the control chip, using C programming language of its input from 4 * 4 matrix keyboard control, the output of the use of human SBY12864K-ZK-type liquid crystal to achieve. Multi-function calculator for the calculator, before the calculation, it is a calendar clock and bell and weeks with the brain showed that there may at any time calibration data, calibration data is used in stand-alone keyboard, is a 4 * 4 matrix keyboard down one line, and then read with the root of the cross-line 4-line state to determine which button has been pressed, which is only four keys for the three calendar button calibration and the control of the brain clock, and the other button is used to switch into the mode of calculation.For this part of the calculation I used the keyboard matrix, 10 numeric keys, a decimal point key, four symbol keys, a multi-function keys, multi-function through the identification of the row by the number of keys to determine the order of the key at this time. C language library function as a result of many, so I used to call C language library function to solve a wide range of operator types, such programming is much simpler, it is also more reliable.Keywords: Single-chip, dot-matrix graphic LCD, matrix keyboard, C language library function.引言说起计算器,值得我们骄傲的是,最早的计算工具诞生在中国。

中国古代最早采用的一种计算工具叫筹策,又被叫做算筹。

这种算筹多用竹子制成,也有用木头,兽骨充当材料的。

约二百七十枚一束,放在布袋里可随身携带。

直到今天仍在使用的珠算盘,是中国古代计算工具领域中的另一项发明,明代时的珠算盘已经与现代的珠算盘几乎相同。

17世纪初,西方国家的计算工具有了较大的发展,英国数学家纳皮尔发明的"纳皮尔算筹",英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺不仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,这些计算工具不仅带动了计算器的发展,也为现代计算器发展奠定了良好的基础,成为现代社会应用广泛的计算工具。

一、系统设计1.1、功能介绍1.1.1、基本功能根据所学知识,自行设计一个计算器,要求自行设计供电电源,该计算器能够实现加减乘除四则混合运算,能够实现连续计算。

1.1.2、扩展功能(1)、该计算器能够实现浮点数的运算。

(2)、该计算器在不进行计算时能够当时钟用,并且该时钟可显示星期和日历,同时能够修改其值。

(3)、该计算器能够实现加减乘除以外的其他运算。

1.2、总体设计方案1.2.1、总体设计思路本设计主要采用以下基本模块来实现,控制器模块,输入模块,输出模块和电源模块。

通过对控制器进行编程。

使其对输入模块的信号进行处理计算,然后通过输出模块反馈给使用者以计算结果。

1.2.2、方案论证与比较1.2.2.1、控制部分的设计方案论证与选择根据设计要求,控制器主要用于红外信号的接收和辨认、控制步进电机的动作,控制显示步进电机的转速等。

对于控制器的选择有以下二种方案。

方案一:采用计算器专用芯片实现。

用计算器专用芯片进行设计并编程实现。

这种设计方案计算效率高、速度快、而且成本也相对较低,是厂家做计算器的最佳方案。

但是本人对计算器专用芯片掌握的不够,还不足以实现设计计算器,所以这个方案不可去。

方案二、用单片机实现。

由于单片机集成了运算器电路、控制电路、存储器、中断系统、定时器/计数器以及输入/输出口电路等,所以用单片机设计控制电路省去了很多分立元器件。

由于单片机是可编程芯片,并且它可以运用C语言编写,对于一些复杂的计算功能,可以调用C语言库函数。

使编写程序变得非常简单。

所以该课题用单片机实现,不仅功能易于实现,而且精确度高,稳定性好,抗干扰能力强。

并且由于其成本低、体积小、技术成熟和功耗小等优点,且技术比较成熟。

性价比也相当高。

更重要的是本人经过几年的学习,对单片机已有深刻的理解,并且可以灵活运用。

综上所述,并通过各个方面综合比较为达到最佳效果。

我们采用方案二利用单片机控制器。

1.2.2.3、显示电路的设计方案论证与选择方案一:数码管显示方案。

数码管显示使用两个四位一体动态数码管显示方案,此设计电路如图1-1所示。

采用动态数码管显示,具有程序简单,对外界环境要求低,易于维护,同时其精度比较高,精确可靠,操作简单。

显示直观的特点。

但只能显示数字和一些代码,不能显示汉字及一些常用的符号,且硬件设计比较复杂。

图1-1、两个四位一体数码电路图方案二:采用汉字图形点阵液晶显示器RT12864M显示方案。

RT12864M汉字图形点阵液晶显示模块,可显示汉字及图形。

供电电源为3.3V~+5V(置升压电路,无需负压),能采用并行和串行两种通信方式。

并有光标显示、画面移位、自定义字符、睡眠模式等功能。

综上所叙,12864的显示效果好、功能齐全,所以我们选用12864液晶显示。

其与单片机的接口电路如图1-2所示。

图1-2、12864与单片机的接口电路1.2.2.4、单片机电源部分的设计方案论证与选择由于本次设计中单片机工作电源为5V,所以需要稳压,对于5V电源这里有以下两种方案。

方案一:用固定式三端稳压器7805。

如图1-5,7805系列稳压器输出固定的正电压5V,输入端接电容C1可以进一步滤除纹波,输出端接电容C2能改变负载的瞬态影响,使电路稳定工作C1、C2最好采用漏电流小的钽电容。

如果采用电成。

基极相连,图1-5、4*4矩阵式键盘电路图1.2.3、系统组成经过方案比较与论证,最终确定的系统组成框图如图1-6所示。

其中单片机作为主控设备对采集输入信号后并进行处理,最后通过输出设备输出给使用者。

,该系统的结构框图如图。

单片机键盘电源显示电路图1-6、系统组成方框图二、重要器件的知识介绍2.1、单片机的知识介绍由于ATMEL公司生产的AT89S52型单片机是即便于下载又好用,而且能够满足本设计的要求。

所以我选择AT89S52型单片机。

2.1.1、单片机的主要性能2.1.2、单片机的功能特性描叙2.1.3、单片机的部结构方框图及芯片引脚图图2-1、单片机的部结构方框图及2.1.4、单片机各引脚功能说明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口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。