课程名称:微机原理课程设计题目:51单片机共阴极数码管计算器课程设计报告2摘要近几年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面的知识是不够的,还应根据具体硬件结合,加以完善。本设计是基于51系列的单片机进行的十进制计算器系统设计可以完成计算器的键盘输入进行加、减、乘、除的简单四则运算并在4位数码管上相应的显示结果。硬件方面从功能考虑首先选择内部存储资源丰富的STC89C52单片机输入采用4×4矩阵键盘。显示采用4位7段共阴极数码管动态显示。软件方面从分析计算器功能、流程图设计再到程序的编写进行系统设计。编程语言方面选用C语言进行编写,并选用全球编译效率最高的KEIL公司的μVision2软件,采用C语言进行编程并用Proteus仿真。通过最后的调试和测试,本计算器可以实现简单的四位数的加减乘除功能。关键词:单片机,计算器,共阴极数码管,矩阵键盘3目录一、设计任务要求.......................................................................................................41.1设计任务............................................................................................................................41.2设计的目的........................................................................................................................41.3设计要求............................................................................................................................4二、方案总体设计.......................................................................................................52.1系统模块图........................................................................................................................52.2总体方案工作原理............................................................................................................5三、硬件设计...............................................................................................................63.1整个单片机的接口电路....................................................................................................63.2单片机STC89C52说明....................................................................................................63.3引脚说明............................................................................................................................73.4计算器系统现状................................................................................................................83.5最小系统原理图................................................................................................................93.6显示电路..........................................................................................................................113.7按键输入电路..................................................................................................................13四、软件设计.............................................................................................................15五、系统仿真与调试.................................................................................................165.1采用KEIL开发的89c52单片机应用程序步骤..........................................................165.2硬件电路图的接法操作..................................................................................................165.3单片机系统Proteus设计与仿真过程............................................................................165.4STC-ISP程序烧录软件...................................................................................................175.5实物图..............................................................................................................................185.6仿真图..............................................................................................................................195.7计算展示..........................................................................................................................19六、设计总结.............................................................................................................22七、参考文献.............................................................................................................234一、设计任务要求1.1设计任务满足计算器的基本要求,可以基本的运算(加减乘除),数据归零,利用51系列单片机设计符合功能的计算器,并用LED码管显示数据,4*4的矩阵键盘实现数据输入。在进行运算时,按等号键能将最后结果输送给数码管并显示出来。设计仿真和调试要用到Protues、Keil等软件。1.2设计的目的通过对简易计算器的设计制作与调试,学习掌握1)单片机系统的整体设计流程;2)单片机系统的硬件、软件调试方法及相关工具的使用;3)Protues绘制电路原理图的方法;4)各种常见元器件的选择及使用。1.3设计要求通过简易计算器制作,使计算器能够进行加、减、乘、除简单的四则运算。5二、方案总体设计本设计是基于52系列单片机来进行的数字计算器系统设计,可以完成计算器的键盘输入,键盘电路采用4*4矩阵键盘电路,进行加、减、乘、除基本四则运算,并在4位共阴极数码管显示相应的结果;设计电路采用STC89C52单片机为主要控制芯片,利用软件方面使用C语言编程,并用Protues仿真。2.1系统模块图图1系统模块图2.2总体方案工作原理本系统选用以STC89C52C单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。系统框图如下图2图2系统框图6三、硬件设计单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。通常,单片机由单个集成电路芯片构成,内部包含有计算机的基本功能部件,中央处理器,存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。随着社会的发展,科学的进步,人们的生活水平在逐步的提高,尤其是微电子技术的发展,犹如雨后春笋般的变化。单片机的应用已经越来越贴近生活,用单片机来实现一些电子设计也变得容易起来。计算器在人们的日常中是比较的常见的电子产品之一。可是它还在发展之中,以后必将出现功能更加强大的计算器,基于这样的理念,本次设计是用单片机来设计的计算器。3.1整个单片机的接口电路P0用于显示输出;P1用于键扫描输入;P2用于数码管位选控制。3.2单片机STC89C52说明STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。具有以下标准功能:8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,3个16位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外STC89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作