创新性试验结题报告——简易计算器

上传人:cn****1 文档编号:511396485 上传时间:2023-12-12 格式:DOCX 页数:23 大小:680.91KB
返回 下载 相关 举报
创新性试验结题报告——简易计算器_第1页
第1页 / 共23页
创新性试验结题报告——简易计算器_第2页
第2页 / 共23页
创新性试验结题报告——简易计算器_第3页
第3页 / 共23页
创新性试验结题报告——简易计算器_第4页
第4页 / 共23页
创新性试验结题报告——简易计算器_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《创新性试验结题报告——简易计算器》由会员分享,可在线阅读,更多相关《创新性试验结题报告——简易计算器(23页珍藏版)》请在金锄头文库上搜索。

1、山东科技大学电工电子实验教学中心创新性实验结题报告课程名称一单片机原理及应用一一实验项目名称一简易计算器姓名*学号手机*Email*专业*班级指导教师及职称*#*#*开课学期2011至一2012学年_2_学期提交时间2011年1月5日、实验摘要通过对51.单片机汇编指令、STC89c52RC单片机片上各功能模块、常用外部可编程芯片的学习和应用训练,进一步熟悉51单片机汇编程序设计,串行总线接口程序设计以及外部可编程芯片的使用方法。学习创新性实验报告的撰写方法。、实验目的工、基于STC89C52RC单片机设计制作简易计算器,能完成绝对值小于100的有符号整数的加减乘除四则运算,运算结果均保留小数

2、点后一位。2、要求有加、减、乘、除、负号、归零、等号键。3、利用6位LED显示参加运算的数据和运算结果,显示运算结果超限提示,消P急未使用位。4、鼓励进行探索。可在了解实验室器材并能实现题目基本要求的情况下,对题目进行创新设计。二、实验场地及仪器、设备和材料工、实验场地:J11-3242、实验仪器、设备和材料:PC兼容机一台、051单片机实验箱一台、2*8键盘一个、6个共阳极的数码管、连线若干Ui、实验内容1、实验原理:根据功能和指标要求,本系统选用MCS-51系列单片机为主控机。通过扩展必要的外围接口电路,实现对计算器的设计。具体设计如下:(1)由于要设计的是简单的计算器,可以进行四则运算,

3、为了得到较好的显示效果,采用LED显示数据和结果。(2)另外键盘包括数字键(。9)、符号键(+、-、X、勺、清除键和等号键,故只需要16个按键即可,设计中采用集成的计算键盘。(3)执行过程:开机显示零,等待键入数值,当键入数字,通过LED显示出来,当键入+、-、*、/运算符,计算器在内部执行数值转换和存储,并等待再次键入数值,当再键入数值后将显示键入的数值,按等号就会在LED上输出运算结果。系统模块图:单片机输入模块运算模块显示模块罔1系统方茎国2、实验内容(一)、总体硬件设计本设计选用AT89C52单片机为主控单元。显示部分:采用六位LED动态数码管显示。按键部分:采用2*8键盘;利用2*8

4、的键盘扫描子程序,读取输入的键值。(二)、键盘接口电路计算器输入数字和其他功能按键要用到很多按键,如果采用独立按键的方式,在这种情况下,编程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这种方式,而是采用矩阵键盘的方案。矩阵键盘采用两条I/O线作为行线,八条I/O线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的个数就为2X8个。这种行列式键盘结构能有效地提高单片机系统中I/O口的利用率。矩阵键盘的工作原理:计算器的键盘布局如图2所示:一般有16个键组成,在单片机中正好可以用一个P口和另一个P口的两个管脚实现16个按键功能,这种形式在单片机系统中也最

5、常用。矩阵键盘布局图:矩阵键盘内部电路图如下图所示:(三)LED显示模块本设计采用LED数码显示来显示输出数据。通过D0-D7弓I脚向LED写指(四)运算模块(单片机控制)MCS-51单片机是在一块芯片中集成了CPURAMROM定时器/计数器和多功能I/O等一台计算机所需要的基本功能部件。如果按功能划分,它由如下功能部件组成,即微处理器(CPU、数据存储器(RAM、程序存储器(ROM/EPROM并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR。单片机是靠程序运行的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,通过使用单片机编写的程序可以实现高智

6、能,高效率,以及高可靠性!因此我们采用单片机作为计算器的主要功能部件,可以很快地实现运算功能。详细算术运算程序设计流程图:五、实验结果与分析1、实验现象、数据记录经过反复测试调整,该计算器可简单进行100以内的加减乘除计算,以及清零功能,结果能保留小数点后T立,能显示计算结果的正负,完成了实验要求。测试结果记录:(1)加法运算:64+37=001010减法运算:1286=010140(3)乘法运算:99*99=(4)除法运算:65/2仁2、对实验现象、数据及观察结果的分析与讨论:该实验达到了实验的基本要求,但是需要改进和提高的还有很多,设计的计算器能进行100以内的加减乘除计算,以及清零功能,

7、结果能保留小数点后一位,能显示计算结果的正负,但是只能进行两个操作数的操作,而不能进行连续计算,比如连加、连乘,并且不能进行有符号数的计算,即输入的两个操作数必须是正号的,也不能输入带小数点的操作数,对此,我会课下继续对它进行研究改进,争取做出具有更多功能的更先进的计算3、关键点:实验过程中由于对单片机的了解的不彻底,想法太简单遇到了很多的阻碍,开始只是简单的觉得只有显示和键盘这两个模块不了解,很难弄,其余的部分只是简单的加减乘除,几句简单程序就行,结果后来在四位数的显示上出了问题,跟本就不是简单的结果除以1000得出千位,于是又重新编制计算部分,后来在同学的帮助下做出了觉得很正确的程序,不过

8、试验还是失败,最后从头重来,一步步研究,一步步计算,终于显示出了正确结果,该程序的逻辑性很强,每个细节都要考虑到,需要一遍遍测试显示结果,知道得出最终正确的答案。六、实验结论课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二A一世纪的大学来说掌握单片机的开发技术是十分重要的。回顾起此次单片机课程设计,我仍感慨颇多,的确,从选题到定稿,从理论到实践,可以说得是苦多于甜,但是可以学到很多很多的的东西。通过这

9、次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。通过这次课程设计使我得到了一次用专业知识、专业技能分析和解决问题全面系统的锻炼。使我们在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步,为日后成为合格的应用型人才打下良好的基础。七、指导老师评语及得分:签名:年月日附件:源程序;P0接位选,P1接段选YSEQU20HYGEQU21HERSEQU22HEGEQU23H;第一个数十;第一个数

10、个;第二个数十;第二个数个YIEQU24HEREQU25HJFEQU26HJQEQU27HJBAEQU28HJSEQU29HJGEQU30HJXEQU31HJG1EOU32H;结果负号位;结果千位;结果百位;结果十位;结果个位;结果小数位ORG0000HMAIN:MOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOVMOV20H,#00H21H,#00H22H,#00H23Hz#00H24H,#00H25H/#00H26H,#0C0H27Hz#00H28Hz#00H29H,#00H30Hz#00H31Hz#00H32H,#00HONELCLRCACALLKEYSCANJBPS

11、W.5,ONE1CINEA,#11QNE11SJMPMAINONEILCINEA,#10QNE12SJMPONE1ONE12JNCONE1MOV21H,AACALLDELAYONE2:ACALLXS1ACALLKEYSCANJBPSW.5QNE2CJNEAZ#11,ONE22SJMPMAINONE22:CJNEA/#10,ONE23SJMPONE2ONE23JNCONE31MOV20H,21HMOV21H,A0NE3:/OWAYACALLKEYSCANJBPSW.5,ONE3CJNEA,#11,ONE33SJMPMAINONE33:CINEA,#10,ONE30ACALLDELAYACALLX

12、S1SJMPONE3ONE30JCONESJNZ KP3POP ACC 已经松开,弹回键码!;对应的行码+对;保护已经得到;继续扫描;A值不等于0 ,表;A值等于0 ,手;下一列列码加1ACC.7,KEYSCAN ;歹I至I最后歹IONE31:MOVR5,A;R5为符号位,表示加或减或乘或除ONE4:ACALLXS2ACALLKEYSCANJBPSW.5QNE4CJNEAZ#11,ONE44SJMPMAINONE44:CJNEA/#10/ONE45SJMPONE4ONE45JNCONE4MOV23H,AONE5:ACALLXS4ACALLKEYSCANJBPSW.5,ONE5CJNEA,#11

13、,ONE55UMPMAINONE55:CJNEA,#10,ONE56SJMPONE66ONE56JNCONE5MOV22H,23HMOV23HAACALLDELAYONE6:ACALLXS5ACALLKEYSCANJBPSW.5QNE6CJNEA,#11QNE66UMPMAINONE66:CJNEA,#10QNE6ACALLGNONE61:ACALLKEYSCANJBPSW.5,ONE60LJMPMAINONE60:ACALLXS3SJMPONE61ACALLDELAYMOVA.ROMOVP,A;送列扫描信号MOVAZP2;回读行信号JBACC。LI;不是第一行,转第二行MOVA,#00H;是第一行,行吗=0AJMPKP5L1:;JBACC.1,L2;不是第二行,转第三行JBACC.LNEXTMOVA,#08H;是第二行,行码=8AJMPKP5KP5:ADDA,R4应的列码二键码PUSHAC

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 市场营销

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号