您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 51单片机简易计算器论文
华侨大学厦门工学院单片机控制系统课程设计报告题目:基于51单片机的简易计算器专业、班级:通信3班学生姓名:学号:指导教师:2014年月日1目录一、设计任务目的........................................................................................................2二、计任务要求............................................................................................................2三、设计方案选取与论证............................................................................................2四、电路设计................................................................................................................34.1总体电路图.......................................................................................................34.2硬件设计..........................................................................................................44.2.1矩阵按键.................................................................................................44.2.2STC89C52主芯片..................................................................................44.2.3LCD显示................................................................................................64.3软件设计...........................................................................................................74.3.1键盘模块................................................................................................74.3.2计算模块................................................................................................84.3.3显示模块................................................................................................9五.制作及调试过程.......................................................................................................95.1制作过程......................................................................................................105.2软件调试........................................................................................................105.3硬件调试........................................................................................................11结论..............................................................................................................................12致谢..............................................................................................................................13参考文献......................................................................................................................13附件..............................................................................................................................14附录1.程序代码...................................................................................................14附录2.元器件清单...............................................................................................222一、设计任务目的设计一个计算器,可以进行简易的四则运算。二、计任务要求1、能够进行简单的四则运算,包括带负数的运算。用LCD显示数据和结果(6位即可)2、采用键盘输入方式,键盘包括数字键(0~9)、符号(+、-、×、÷)、清除键(c)和等号键(=),故只需要16个按键即可。3、在执行过程中,开机显示零,等待键入数值,当键入数字,通过LCD显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LCD上输出运算结果。4、错误提示:当计算器执行过程中有错误时,会在LCD上显示相应的提示,如:当输入的数值或计算得到的结果大于计算器的表示范围时,计算器会在LCD上提示OV;当除数为0时,计算器会在LCD上提示ERR。三、设计方案选取与论证根据功能和指示要求,本系统选用51单片机为主控机。通过扩展必要的外围电路接口实现计算的设计。具体如下:1、由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LCD显示数据和结果。2、另外键盘包括数字键(0~9)、符号键(+、-、*、/)、清除键和等号键,故采用4*4按键。3、执行程序:开机显示字符串,等待键入数值,当键入数值,通过LCD显示,当键入+、-、*、/时计算器在内部执行数值转换和存储,并等待再次键入数值并等待执行等号程序。整个系统可分为三个主要的功能模块:一、实时键盘扫描;二、数据转换成显示器显示;三、显示器的动态显示。其系统结框图如下:3根据设计的电路流程选择的系统方案是:(1):采用STC89C52作为主控芯片;(2):显示模块使用LCD1602液晶显示;(3):输入模块使用4*4矩阵键盘输入;选取此种设计方案,可以基本满足任务要求,并且在电路板焊接中更清晰明了的知道该如何去焊接电路。但是,这种方案还是存在着不足,如:①按键的缺少导致取消了一些特殊函数的实现。和我们真正可以的计算器有很大的差距,功能的单一,在实际中没有使用价值。②使用3字节的浮点数表示,不可避免的带来了数表示的不精确,加上有效数字比较少,因此计算结果很容易产生误差,尤其是进行连续多次运算后。四、电路设计4.1总体电路图根据方案的选取,其硬件的电路图在protues软件中设计如下图所示,本电路图可以满足设计要求。44.2硬件设计4.2.1矩阵按键键盘是单片机系统中最常用的人机对话输入设备,用户通过按键向单片机输入指令和数据。该模块利用16个的小按键,提供0-9,+、-、*、/、=、清零键。键盘控制程序需完成的任务有:给电路提供输入的符号,让LCD显示屏显示输入的按键是什么。在编写的程序中,可以检查是否有按键按下,有键按下时,如无硬件去抖动电路时,应用软件延时方法消除按键抖动;当有多个按键按下时,只响应一个按键,不管持续多长时间,仅执行一次按键功能程序。其结构图如下所示:矩阵键盘结构图4.2.2STC89C52主芯片STC89C52是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-FlashProgramableandErasableReadOnlyMemory)的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。ST89C52单片机包含中央处理器、程序存储器、数据存储器、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线。时钟电路:STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图4—2(a)所示,在RXD和TXD引脚5上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。外部方式的时钟电路如图4—2(b)所示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。(a)外部方式时钟电路(b)内部方式时钟电路复位及复位电路:(1)复位操作,复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。除PC之外,复位操作还对其他一些寄存器有影响,;(2)复位信号及其产生,RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。复位操作有上电自动复位相按键手动复位两种方式。本系统的复位电路采用上电复位方式。STC89C52具体介绍如下:①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(根)
本文标题:51单片机简易计算器论文
链接地址:https://www.777doc.com/doc-6339086 .html