您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 桂电单片机课设论文(简易计算器)
单片机课程设计报告书课题:简易计算器院(系):机电工程学院专业:电气工程及其自动化学生姓名:学号:题目类型:理论研究实验研究工程设计工程技术研究软件开发2013年12月24日1/30目录1设计任务...................................................................................................................21.1设计任务..............................................................................................................22设计方案....................................................................................................................22.1任务分析..............................................................................................................22.2方案设计..............................................................................................................23系统硬件设计...........................................................................................................43.1时钟电路设计......................................................................................................43.2复位电路设计......................................................................................................43.3E2PROM电路设计.............................................................................................53.4矩阵键盘电路设计.............................................................................................53.5液晶显示电路设计.............................................................................................63.6蜂鸣器电路设计.................................................................................................64系统软件设计...........................................................................................................74.1定时器服务子程序.............................................................................................74.2E2PROM子程序.................................................................................................84.3矩阵键盘子程序.................................................................................................95仿真与性能分析......................................................................................................105.1仿真结果图........................................................................................................105.2仿真结果...........................................................................................................116心得体会..................................................................................................................12参考文献.....................................................................................................................13附录1系统原理图....................................................................................................14附录2系统PCB图..................................................................................................15附录3程序清单........................................................................................................16(1)主程序部分..........................................................................................................................16(2)LCD12864库文件................................................................................................................26(3)AT24C02库文件................................................................................................272/301设计任务1.1设计任务利用单片机完成计数器的设计,有0-9和加、减、乘、除、等于十五个按键和八位数字显示,并能够进行整数的加减乘除。图1.1简易计算器示意图1.基本要求(1)有0-9和加、减、乘、除、等于十五个按键和八位数字显示。(2)可以完成整数的加、减、乘、除。2.发挥部分(1)不进行计算操作时能显示时间,并可以实现断电可记忆功能。(2)操作出现逻辑等类型错误时能够进行提示。(3)可连续进行运算。2设计方案2.1任务分析简易计算器就是利用单片机来控制矩阵键盘和显示器,能实现简单的整数运算功能。2.2方案设计1.硬件方案根据设计的要求可知,系统的硬件原理框图如图2.1所示。3/30图2.1系统的硬件原理框图单片机可选用AT89C51,它与8051系列单片机全兼容,但其内部带有4KB的FLASHROM,设计时无需外接程序存储器,为设计和调试带来极大的方便。键盘系统可以根据系统的需要设置不同的键的个数,可以选择矩阵式键盘。E2PROM电路可采用ATMEL公司的AT24C02芯片,可解决数据保存问题。显示部分可采用LCD1602液晶,显示清楚明了,且能够显示两行16位的字符,满足设计需求。2.软件方案根据设计要求,程序框图如图2.2所示,软件设计由C语言完成。软件设计可以分为以下几个功能模块:主程序:液晶、定时器、AT24C02初始化及键盘监控。计时程序模块:为定时器的中断服务子程序,可以实现时钟功能,包括年月日和时分秒。E2PROM模块:AT24C02的驱动程序,主要包括数据的储存和读取部分,能够实现断电记忆功能。显示程序模块:显示程序模块为液晶LCD1602的驱动程序,包括写数据和写地址部分。键盘扫描程序模块:判断是否有键按下,并求取键号,同时执行相应操作。主程序流程图:4/303系统硬件设计3.1时钟电路设计如上图所示,采用内部时钟产生方式,在XTAL1和XTAL2两端跨接晶体或陶瓷振荡器,与内部反相器构成稳定的自击震荡。其发出的时钟脉冲直接送入片内定时控制部件。3.2复位电路设计如上图所示,采用上电+按钮电平复位方式,当按下按钮时,RST管脚高电平触发。为保证复位可靠,RC时间常数应大于两个机器周期,电容取10uF,电阻取10K欧。5/303.3E2PROM电路设计如上图所示,E2PROM电路应用ATMEL公司的AT24C02芯片。AT24C02芯片支持I2C,总线数据传送协议I2C,总线协议规定任何将数据传送到总线的器件作为发送器。任何从总线接收数据的器件为接收器。数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,由于A0、A1和A2可以组成000~111八种情况,即通过器件地址输入端A0、A1和A2可以实现将最多8个AT24C02器件连接到总线上,通过进行不同的配置进行选择器件。3.4矩阵键盘电路设计6/30矩阵键盘如上图所示,又称为行列式键盘,是用4条I/O线作为行线,4条I/O线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。这样键盘中按键的个数是4×4个。这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率,16个按键刚好满足简易计算器的功能需求,包括0~9数字键,加减乘除等于和一个功能键。3.5液晶显示电路设计液晶显示电路如上图所示,1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块,其显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。具有微功耗、体积小、显示内容丰富、超薄轻巧等优点,常用在袖珍式仪表和低功耗应用系统中。在本设计中,LCD1602可满足计算过程显示和时间显示的要求。3.6蜂鸣器电路设计蜂鸣器电路如上图所示,本设计采用无源蜂鸣器,由于单片机的I/O口是无法直接驱动的,因此采用了PNP三极管进行电流放大,利用I/O定时翻转电平7/30产生驱动波形对蜂鸣器进行驱动。4系统软件设计4.1定时器服务子程序要实现时间显示,首先需要实现1S的计时,采用89C51内部的定时/计数器T0,工作在方式1,定时时间计算公式为:zΣ(216-计数初值)×晶振周期x12或扛(2-6-计数初值)×机器周期其最大定时时间为131ms,离ls还差很远。因此.把秒计时用硬
本文标题:桂电单片机课设论文(简易计算器)
链接地址:https://www.777doc.com/doc-2295943 .html