1、毕业设计论文基于单片机的科学计算器设计基于单片机的科学计算器设计摘要在现代科技迅猛发展的当今,计算器依然是人们日常生活中不可或缺的电子产品之一。计算器始终在不断发展及完善之中,功能必将更加强大。基于这样的理念,本设计采用AT89C51单片机作为主控芯片,使用C语言为系统进行编程,采用4*4矩阵键盘作为输入模块,输出模块采用LCD1602液晶显示,从而实现基于单片机的基本功能。矚慫润厲钐瘗睞枥庑赖。本设计重点说明以下几个方面内容:1. 基于单片机的计算器所具备哪些基本功能,对矩阵键盘输入原理及液晶显示原理进行简单的阐述。2. 介绍系统的整体设计理念,展示系统设计的流程框图,并对功能模块的划分,及
2、所选用的元器件性能参数进行详细说明。聞創沟燴鐺險爱氇谴净。3. 对系统的每个功能模块的软硬件设计,进行详细说明。 关键词 单片机,AT89C52,LCD1602液晶,矩阵键盘,C语言ABSTRACTIn the rapid development of modern science and technology today, the calculator is still one of the electronic products is an integral part of peoples daily life. The calculator always among the contin
3、uous development and improvement, the function will certainly be more powerful. Based on this concept, the design uses AT89C51 microcontroller as the master chip, using the C programming language for the system, with 4 * 4 matrix keyboard as an input module, output module LCD1602 LCD display, in ord
4、er to achieve the basic functions of the MCU.This design highlights the following aspects:1.microcontroller-based calculator with basic functions, the principle of a simple exposition of principle and LCD matrix keyboard input.2.describes the systems overall design concept, showing the flow diagram
5、of the system design, the and function module framing, and optional Component performance parameters described in detail.3.of each functional module of the system hardware and software design in detail.Key words microcontroller AT89C52,LCD1602 LCD,matrix keyboard,C language残骛楼諍锩瀨濟溆塹籟。1 绪论1.1课题的研究背景及
6、意义计算器一般由运算器,存储器,控制器,键盘,显示器,电源和一些外围设备及电子配件组成。低档的计算器的运算器,控制器由数字逻辑电路实现简单的串行运算。其随机存储器只有一到二个单元,供累加存储用。高档计算器由只读存储器和微处理器一同实现各种复杂的运算程序。且有较多的随机存储单元用来存放输入程序和数据。键盘是计算器的输入部件,采用接触式或传感式。显示器是计算器的输出部件,有发光二极管显示器或液晶显示器等。除显示计算结果外,还常有溢出指示、错误指示等显示。计算器电源采用电池或者交流转换器池。为节省电能,计算器都采用CMOS工艺制作的大规模集成电路(见互补金属-氧化物-半导体集成电路),并在内部装有定
7、时不操作自动断电电路。计算器可选用的外围设备有盒式磁带机,微型打印机,磁卡机等等。谚辞調担鈧谄动禪泻類。计算器的基本类型:1. 算术型计算器:可进行加、减、乘、除等简单的四则运算,又称简单计算器。2. 科学型计算器:可进行乘方、开方、指数、对数、三角函数、统计等方面的运算,又称函数计算器。3. 程序计算器:可以编程序,把较复杂的运算步骤贮存起来,进行多次重复的运算。当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品,大型复杂的计算能力是人脑所不能胜任的,而且比较容易出错。计算器作为一种快速通用的计算工具方便了用户的使用。嘰
8、觐詿缧铴嗫偽純铪锩。计算器这一程序机器实际上是从计算机中割裂出来的衍生品,但因其方便快捷的操作模式,已经被广泛应用于商业等日常生活中,极大的方便了人们对于数字的整合运算。起源和发展最早的计算工具诞生在中国。筹策是中国古代最早采用的一种计算工具,又被称之为做算筹。这种算筹的制作材料多是竹子,木头,或兽骨一束约二百七十枚,使用时可以放在布袋里面随身携带。直到科技发达的今天,中国群众任然有很多在使用珠算盘,珠算盘是中国古代计算工具领域中的另一项发明,到明代时期。珠算盘的结构已经几乎与现代的珠算盘相同。熒绐譏钲鏌觶鷹緇機库。在17世纪初期,计算工具在西方国家的有了非常大的发展,英国数学家-纳皮尔发明了
9、纳皮尔算筹,英国牧师-奥却德发明了圆柱型对数计算尺,这种计算尺能够实现多种计算功能,不仅能够实现基本的四则运算,也可以进行乘方和开方运算。更为强大的是,这种计算尺还可以计算三角函数,指数函数和对数函数。这些计算工具积极推动了计算器的发展,为现代计算器的发展奠定了非常良好的基础,慢慢演变,成为现代社会中广泛应用的计算工具。鶼渍螻偉阅劍鲰腎邏蘞。在1642年, 19岁的法国科学家-帕斯卡引用了算盘的原理,发明了世界上第一部机械式计算器,他的计算器装置中有一些齿轮互相联锁,当其中此轮转过十位之后,就会使与其相连接的另一个齿轮转过一位,使用者可以像使用电话号码拨盘那样,直接把数字拨进去,此后计算结果就
10、可以出现在另一个窗口中,但是只可以做加减计算,不能做乘除运算。纣忧蔣氳頑莶驅藥悯骛。在1694年,德国的莱布尼兹将机械式计算器进行了改进,使其可以进行乘除运算。自此此后,一直等到20世纪50年代末,电子计算器才开始出现。颖刍莖蛺饽亿顿裊赔泷。1.2本课题研究的主要内容本设计主要研究的是,基于单片机的简易计算器,采用AT89C52单片机作为主控器件,矩阵键盘输入,液晶显示器讲计算过程及结果显示输出,通过C语言编程,实现建议简易计算器的功能。濫驂膽閉驟羥闈詔寢賻。2 设计任务及方案2.1设计任务1.对计算器硬件系统进行设计,利用AT89C52作为主控器件,组成一个能进行简单四则运算的计算器,能进行
11、数据归零,按键提示。銚銻縵哜鳗鸿锓謎諏涼。2.运用keil进行计算器软件系统的设计。3.在protues仿真平台上,对软件进行调试及仿真。2.2设计方案按照系统设计的功能的要求,确定设计系统由主控模块、显示模块、键盘扫描接口电路、按键提示电路4个模块组成。挤貼綬电麥结鈺贖哓类。系统构成框图如图2.1所示:图2.1系统构成框图3 系统硬件设计3.1单片机最小硬件系统单片机最小系统就是支持主芯片正常工作的最小电路部分,包括主控芯片、复位电路和时钟电路。3.1.1主控芯片AT89C52单片机简介AT89C52引脚图如图3.1所示:图3.1AT89C52引脚图AT89C52是ATMEL公司生产的51系
12、列单片机,是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可以反复擦写的Flash 只读程序存储器和256 bytes的随机存取数据存储器(RAM)。赔荊紳谘侖驟辽輩袜錈。AT89C52的主要功能特性: 兼容MCS51指令系统 8k可反复擦写 Flash ROM塤礙籟馐决穩賽釙冊庫。32个双向 I/O口 及 256x8bit 内部RAM3个16位 可编程定时/计数器 中断 时钟频率0-24MHz裊樣祕廬廂颤谚鍘羋蔺。2个 串行 中断 ,可编程 UART串行通道仓嫗盤紲嘱珑詁鍬齊驁。2个 外部 中断源 , 共6个 中断源2个 读写 中断口线 , 3级 加密位低功耗 空闲和掉电
13、模式 ,软件设置睡眠及唤醒功能AT89C52的主要管脚有:XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。绽萬璉轆娛閬蛏鬮绾瀧。XTAL2:振荡器反相放大器的输出端。外接12MHz 晶振。VCC和VSS:为供电端口,分别接+5V电源的正负端。骁顾燁鶚巯瀆蕪領鲡赙。RST/Vpd:为复位输入端口,外接电阻电容组成的复位电路。瑣钋濺暧惲锟缟馭篩凉。P0 口:8 位漏极开路型双向I/O 口, 地址/数据总线复用口。作为输出口用时,每位可以用吸收电流的方式来驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可以作为高阻抗输入端使用。在访问外部数据存储器或者程序存储器的时候,分时转换地址低8
14、位,和数据总线复用。在访问期间激活内部的上拉电阻。鎦诗涇艳损楼紲鯗餳類。P1 口:带有内部上拉电阻的8 位 双向I/O 口, P1的输出缓冲级 可以驱动(吸收电流或输出电流)的4 个TTL 逻辑门电路。对端口写“1”时,通过内部的上拉电阻可以把端口拉到高电平,可作输入口使用。当作为作输入口使用时,因为内部存在有上拉电阻,因此某个引脚被外部信号拉低,会输出一个电流(IIL)。与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)。参见表1:栉缏歐锄棗鈕种鵑瑶锬。 表1:引脚 功能特性P1.0T2 时钟输出P2.
15、0T2EX (定时器/计数器2)P2 口:为带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可以驱动(吸收电流或输出电流)4 个TTL逻辑门电路。当对端口P2 写“1”时,通过内部的上拉电阻可以把端口拉到高电平去,此时可作输入口使用,当作输入口使用时,因为其内部存在有上拉电阻,当某个引脚被外部信号拉低的时候会输出一个电流(IIL)。辔烨棟剛殓攬瑤丽阄应。P3 口:为带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收电流或输出电流)4 个TTL逻辑门电路。当对P3 口写入“1”时,它们会被内部上拉电阻拉高并且可以作为输入端口。此时,当被外部拉低的P3 口将用上拉电阻
16、输出电流(IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能P3 口还可以接收一些用于Flash 闪速存储器编程及程序校验的控制信号。峴扬斕滾澗辐滠兴渙藺。ALE/PROG:当访问数据存储器或者外部程序存储器的时候,ALE(地址锁存)允许输出脉冲用在锁存地址的低8 位字节。一般情况之下,ALE 仍然以时钟振荡频率的六分之一来 输出固定的脉冲信号。因此它可以用来为外部输出时钟或者用来作为定时目的。值得大家注意的是:每当来访问外部的数据存储器时,将会跳过一个ALE 脉冲。在对Flash 存储器编程的期间,该引脚还可以用于输入编程脉冲(PROG)。如果有必要,还可通过对特殊功能寄存器(SFR)区域中的8
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1