文档介绍:创新性实验研究报告实验项目名称__基于51单片机的简易计算器设计_山东科技大学电工电子实验教学中心创新性实验研究报告一、实验摘要通过对51单片机汇编指令、STC89C52RC单片机片上各功能模块、常用外部可编程芯片的学习和应用训练,进一步熟悉51单片机汇编程序设计,串行总线接口程序设计以及外部可编程芯片的使用方法。学习创新性实验报告的撰写方法。二、实验目的1、基于STC89C52RC单片机设计制作简易计算器,能完成绝对值小于100的有符号整数的加减乘除四则运算,运算结果均保留小数点后一位。2、要求有加、减、乘、除、负号、归零、等号键。3、利用6位LED显示参加运算的数据和运算结果,显示运算结果超限提示,消隐未使用位。4、鼓励进行探索。可在了解实验室器材并能实现题目基本要求的情况下,对题目进行创新设计三、实验场地及仪器、设备和材料:1、实验场地:J11-3242、实验仪器、设备和材料:PC兼容机一台、80C52单片机实验箱一台、2*8键盘一个、6个共阳极的数码管、连线若干四、实验内容1、实验原理根据功能和指标要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,为了得到较好的显示效果,采用LED显示数据和结果。(2)另外键盘包括数字键(0~9)、符号键(+、-、×、÷)、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算键盘。(3)执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。系统模块图:山东科技大学电工电子实验教学中心创新性实验研究报告2、实验内容(一)、总体硬件设计本设计选用AT89C52单片机为主控单元。显示部分:采用六位LED动态数码管显示。按键部分:采用2*8键盘;利用2*8的键盘扫描子程序,读取输入的键值。(二)、键盘接口电路计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。矩阵键盘采用两条I/O线作为行线,八条I/O线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为2×8个。这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。矩阵键盘的工作原理:计算器的键盘布局如图2所示:一般有16个键组成,在单片机中正好可以用一个P口和另一个P口的两个管脚实现16个按键功能,这种形式在单片机系统中也最常用。矩阵键盘布局图:矩阵键盘内部电路图如下图所示:山东科技大学电工电子实验教学中心创新性实验研究报告(三)、LED显示模块本设计采用LED数码显示来显示输出数据。通过D0-D7引脚向LED写指令字或写数据以使LED实现不同的功能或显示相应数据。(四)运算模块(单片机控制)MCS-51单片机是在一块芯片中集成了CPU、RAM、ROM、定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智能,高效率,以及高可靠性!因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。山东科技大学电工电子实验教学中心创新性实验研究报告3、实验步骤总流程图:开始初始化参数初始化LED显示有键输入?读取键码LED显示数字键清零键功能键状态清零输入数值数值送显示缓冲YN等待数值输入结果送显示缓冲根据上次功能键和输入的数据计算结本次功能键?等待数值输入结果送显示缓冲等待数值输入结果送显示缓冲山东科技大学电工电子实验教学中心创新性实验研究报告详细算术运算程序设计流程图:山东科技大学电工电子实验教学中心创新性实验研究报告五、实验结果与分析1、实验现象、数据记录经过反复测试调整,该计算器可简单进行100以内的加减乘除计算,以及清零功能,结果能保留小数点后一位,能显示计算结果的正负,完成了实验要求。测试结果记录:加法运算:15+23=38减法运算:65-22=43乘法运算:12*51=612除法运算:99/23=、对实验现象、数据及观察结果的分析与讨论:该实验达到了实验的基本要求,但是需要改进和提高的还有很多,设计的计算器能进行100以内的加减乘除计算,以及清零功能,结果