单片机课程设计报告多功能计算器

上传人:s9****2 文档编号:421705938 上传时间:2022-12-09 格式:DOC 页数:24 大小:595.50KB
返回 下载 相关 举报
单片机课程设计报告多功能计算器_第1页
第1页 / 共24页
单片机课程设计报告多功能计算器_第2页
第2页 / 共24页
单片机课程设计报告多功能计算器_第3页
第3页 / 共24页
单片机课程设计报告多功能计算器_第4页
第4页 / 共24页
单片机课程设计报告多功能计算器_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《单片机课程设计报告多功能计算器》由会员分享,可在线阅读,更多相关《单片机课程设计报告多功能计算器(24页珍藏版)》请在金锄头文库上搜索。

1、 单片机课程设计报告多功能计算器姓 名: 学 号: 专业班级: 日 期: 2011年3月29日目 录第一章 绪论21.1 课题简介21.2 设计目的21.3 设计任务21.4 设计方法3第二章 设计内容及要求4第三章 方案论证与比较53.1 控制部分的设计方案论证与选择-53.2 键盘设计方案与选择-6第四章 硬件系统设计74.1 键盘接口电路74.2 7段LED数码管84.3 程序下载接口84.4 数码管驱动芯片84.5、单片机时钟电路84.6、单片机复位电路9第五章 软件设计105.1 汇编语言和C语言的特点及选择105.2 键扫程序设计105.3 算术运算程序设计115.4 LED显示原

2、理12第六章 系统调试与存在的问题136.1 硬件调试136.2 软件调试13总 结14参考文献15 附录-16 第一章 绪论1.1 课题简介当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品,大型复杂的计算能力是人脑所不能胜任的,而且比较容易出错。计算器作为一种快速通用的计算工具方便了用户的使用。计算器可谓是我们最亲密的电子伙伴之一。本设计着重在于分析计算器软件和开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。单片机由于其微小的体积和极低的成本,广泛的应用于家用电器、工业控制等领域中。在工业生产

3、中。单片微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片微型计算机简称单片机,特别适用于控制领域,故又称为微控制器。本系统就是充分利用了8051芯片的I/O引脚。系统以采用MCS-51系列单片机Intel8051为中心器件来设计计算器控制器,实现了能根据实际输入值显示并存储的功能,计算程序则是参照教材。至于位数和功能,如果有需要可以通过设计扩充原系统来实现 。1.2 设计目的通过本次课题设计,应用单片机原理及应用等所学相关知识及查阅资料,完成简易计算器的设计,以达到理论与实践更好的结合、进一步提高综合运用所学知识和设计的能力的目的。通过本次设计的训练,可以使我在基本思路和基本方

4、法上对基于MCS-51单片机的嵌入式系统设计有一个比较感性的认识,并具备一定程度的设计能力。1.3 设计任务在本次课程设计中,主要完成如下方面的设计任务:1、简要阐述单片机技术发展的国内外现状及LED动态显示和矩阵键盘基本原理;2、掌握MCS-51系列某种产品(例如8051)的最小电路及外围扩展电路的设计方法;3、了解单片机数据转换功能及工作过程;4、完成主要功能模块的硬件电路设计及必要的参数确定;5、用protel软件完成原理电路图的绘制;1.4 设计方法电路采用动态显示,由八位共阳极数码管通过P0口,P2口与单片机分别相连,且数码管A,B,C,D,E,F,G分别依次与单片机的P0口相连,P

5、0口做为字码控制端,数码管的1,2,3,4,5,6,7,8各引脚分别与单片机的P2.0P2.7相连,P2口做为数码管的位控制端,动态显示是每次数码管只显示一位,由于人的视觉停留是0.05到0.2秒之间,当数码管依次点亮各个位时,使循环的频率高于人的视觉停留时间,人们就会认为数码管是同时点亮的,就可以达到动态显示的效果。输入键盘采用4*4键盘。采用软件识别键值并执行相应的操作,程序运行时依次扫描各行,查询是否有键按下,如果有则进入键盘识别处理程序,实现相应的运算,然后通过数码管输出结果,如果没有按键就调用显示程序显示一个0,等待按键按下,在进入按键扫描程序。这样循环执行。 第二章 设计内容及要求

6、基本功能:利用89c51作为主控器组成一个四则运算的计算器。可选器件:51系列单片机、6264、7段LED数码管、74LS244或74LS240、与非门等51系列单片机4*4键盘8位LED显示6264RAM扩展复位电路晶振电路等 第三章 方案论证与比较3.1控制部分的设计方案论证与选择根据设计要求,控制器主要用于红外信号的接收和辨认、控制步进电机的动作,控制显示步进电机的转速等。对于控制器的选择有以下三种方案。方案一:采用计算器专用芯片实现。用计算器专用芯片进行设计并编程实现。这种设计方案计算效率高、速度快、而且成本也相对较低,是厂家做计算器的最佳方案。但是本人对计算器专用芯片掌握的不够,还不

7、足以实现设计计算器,所以这个方案不可去。方案二:采用FPGA(现场可编程门阵列)作为系统的控制器。FPGA将所有器件集成到一块芯片上,体积小,节省空间,提高了稳定性;直接面向用户,具有极大的灵活性和通用性,使用方便,硬件测试和实现快捷,开发效率高,工作可靠性好。可以实现各种复杂的逻辑功能,规模大,密度高,采用并行的输入输出方式,系统处理速度高,适合作为大规模实时系统的控制核心。由FPGA内部编程实现计算器功能,本设计对数据处理速度的要求不是很高,FPGA的高速处理的优势得不到充分的体现,由于其集成度高,使其成本偏高,同时由于芯片的引脚较多,实物电路板布线复杂,加重了电路设计和实际焊接的工作。并

8、且FPGA的价格相对较高,性价比太低。方案三、用单片机实现。由于单片机集成了运算器电路、控制电路、存储器、中断系统、定时器/计数器以及输入/输出口电路等,所以用单片机设计控制电路省去了很多分立元器件。由于单片机是可编程芯片,并且它可以运用C语言编写,对于一些复杂的计算功能,可以调用C语言库函数。使编写程序变得非常简单。所以该课题用单片机实现,不仅功能易于实现,而且精确度高,稳定性好,抗干扰能力强。并且由于其成本低、体积小、技术成熟和功耗小等优点,且技术比较成熟。性价比也相当高。更重要的是本人经过几年的学习,对单片机已有深刻的理解,并且可以灵活运用。综上所述,并通过各个方面综合比较为达到最佳效果

9、。我们采用方案三利用单片机控制器。3.2键盘设计方案与选择方案一:独立键盘。独立键盘为一端接地,另一端接I/O口,并且要接上拉电阻。这种键盘的硬件都很容易实现,但每一个按键就要用一个I/O口,非常的浪费单片机的I/O口资源,不适合本次设计。方案二:自制编码键盘。编码键盘的电路如图1-9所示,这种键盘有编程简单,占用资源少,但其硬件比较复杂,要用很多的二极管,不是很理想。 图1-9、自制编码键盘电路图方案三:4*4矩阵式键盘。其电路图如图图1-10所示,这种键盘的硬件简单,使用的I/O口也不多,而且这种键盘的编程方法已很成熟。所以本次设计采用这种矩阵式键盘。第四章 硬件系统设计硬件系统是指构成微

10、机系统的实体和装置,通常由运算器、控制器、存储器、输入接口电路和输入设备、输出接口电路和输出设备等组成。单片机实质上是一个硬件的芯片,在实际应用中,通常很难直接和被控对象进行电气连接,必须外加各种扩展接口电路、外部设备、被控对象等硬件和软件,才能构成一个单片机应用系统。本设计选用以AT89S51单片机为主控单元。显示部分:采用7段LED动态显示。按键部分,采用4*4键盘。 4.1 键盘接口电路计算机输入数字和其他功能按键时要用到很多按键,在这种情况下,编程会很简单,但是会占用大量的I/O口资源,因此在很多情况下都不采用这样的方式,而是采用矩阵键盘的方式。矩阵键盘采用四条I/O线作为行线,四条I

11、/O线作为列线组成键盘,在行线和列线的每个交叉点上设置一个按键。这样键盘上按键的数量就为4*4个。这样行列式键盘结构能有效的提高单片机系统中I/O口的利用率。计算器的键盘布局如图3.2所示:一般有16个键组成,在单片机中正好有一个P端口实现16个按键功能,这种形式在单片机系统中最常用。图3.2 矩阵键盘内部电路4.2 7段LED数码管利用集成的LED数码管(四位)4.3 程序下载接口利用串行口芯片232烧录入程序4.4 数码管驱动芯片利用244芯片驱动数码管显示4.5、单片机时钟电路时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电

12、路应在唯一的时钟信号控制下严格地按时序进行工作。在MCS-51芯片内部有一个高增益反相放大器,其输入端为芯片引脚X1,输出端为引脚X2,在芯片的外部跨接晶体振荡器和微调电容,形成反馈电路,就构成了一个稳定的自激振荡器。 此电路采用12MHz的石英晶体。时钟电路如下图2-2: 图2.2时钟电路4.6、单片机复位电路复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误是系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。RST引脚是单片机复位信号的输入端,复位信号是高电平有效,其有效时

13、间应持续24个振荡周期(即2个机器周期)以上,若使用频率为12MHz的晶振,则复位信号持续时间应超过4s才能完成复位操作。复位操作有上电自动复位和按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的。按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的。在本设计中采用了按键电平复位方式,其复位电路如下图2-3。图2-3、复位电路第五章 软件设计5.1 汇编语言和C语言的特点及选择本设计是硬件电路和软件编程相结合的设计方案,选择合适的编程语言是一个重要的环节。在单片机的应用系统程序设计时,常用的是汇编语言和C语言。机硬件,程序可读性和可移植性比较差。而C语言虽然执行效率没有

14、汇编语言高,但语言简洁,使用方便,灵活,运算丰富,表达化类型多样化,数据结构类型丰富,具有结构化的控制语句,程序设计自由度大,有很好的可重用性,可移植性等特点。在本设计中采用C语言编写软件程序。主程序的设计详见附录三。 YN开始有键闭合否?去抖动确有键按下判断键号释放返回返回YNYN5.2 键扫程序设计键扫程序的过程为:开始时,先判断是否有键闭合,无键闭合时,返回继续判断,有键闭合时,先去抖动,然后确定是否有键按下,若无键按下,则返回继续判断是否有键闭合,若有键按下,则判断键号,然后释放,若释放按键完毕,则返回,若没有释放按键,则返回继续释放。其流程图如图4.1所示。图4.1 键扫程序流程图5.3 算术运算程序设计开始运算符是?加乘减除运算结溢出?是否溢出错误信息清零,不显示数值送显示缓冲YYNN算术运算程序的过程为:先判断输入的运算符是+、-、*、/ 中的哪一个,若是+或-,则要判断运算结果是否溢出,溢出则显示错误信息,没溢出就显示运算结果,若是/,则要先判断除数是否为零,为零就显示错误信息,不为零则显示运算结果,若是-,则直接显示运算结果。其流程图

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

当前位置:首页 > 大杂烩/其它

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