基于MSC51单片机计算器毕业设计论文.docx
- 文档编号:25779123
- 上传时间:2023-06-13
- 格式:DOCX
- 页数:65
- 大小:308.58KB
基于MSC51单片机计算器毕业设计论文.docx
《基于MSC51单片机计算器毕业设计论文.docx》由会员分享,可在线阅读,更多相关《基于MSC51单片机计算器毕业设计论文.docx(65页珍藏版)》请在冰豆网上搜索。
基于MSC51单片机计算器毕业设计论文
哈尔滨远东理工学院
学士学位论文
题目:
基于MSC-51单片机计算器
分 院:
工学院
专 业:
电子信息工程
二0年月日
毕业设计(论文)评语及成绩
一.指导教师评语:
是否同意参加答辩:
指导教师签字:
20年月日
二.评阅人评语:
是否同意参加答辩:
评阅教师签字:
20年月日
三.答辩委员会评语:
是否建议授予学士学位:
答辩委员会成员签字:
1.2.3.
4.5.6.
7.8.9.
20年月日
四.答辩委员会主任单位
答辩委员会主任职称
答辩委员会主任签字
20年月日
五.毕业设计(论文)成绩:
学生所在分院盖章:
20年月日
哈尔滨远东理工学院
毕业设计(论文)任务书
学生姓名
学号
分院
专业
任务起止时间:
年月日至年月日
毕业设计(论文)题目:
毕业设计(论文)工作内容:
毕业设计(论文)进度安排:
1.查阅中外文文献资料,写出文献综述阶段:
2012年12月10日——2013年1月10日
2.调查.设计.实验.研究阶段:
2013月1月11日——2013年3月31日
3.设计(论文)撰写与整理阶段:
2013年4月1日——2013年5月31日
指导教师意见与要求:
签字:
年月日
主任意见:
签字:
年月日
摘要
近年来,伴随着计算机在大规模集成电路的发展和社会领域的渗透,单片机应用正在不断地走向深入.由于它具有功能强,体积小,功耗低,性价比高,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域.
作为微型机的一个主要分支,单片机在结构上的最大特点是把CPU.RAM和ROM存储器.定时器和多种I/O接口电路集成在一块超大规模集成电路芯片上.从它的组成和功能来看,一块单片机芯片其实就是一台计算机.
本次设计是采用MSC-51单片机来设计的四位数计算器,采用C语言进行程序编写实现计算器功能.外接4X4的键盘,通过键盘扫描来完成输入数的控制,利用驱动电路使数值与结果在七段共阴极数码管上正常显示,并设有清零键可随时完成计算与显示的清零.计算器将完成的0至9999整数的一次加/减/乘/除运算.
关键词:
MSC-51单片机四位数计算器C语言
Abstract
Inrecentyears,alongwiththepenetrationofcomputerLSIdevelopmentandsocialfields,SCMapplicationsareconstantlydeepening.Becauseofitsstrongfunction,smallsize,lowpowerconsumption,cost-effective,easytousefeatures,itisparticularlysuitableinrelationtothecontrolofthesystem,moreandmorewidelyusedinautomaticcontrol,intelligentinstruments,instrumentation,dataacquisition,militaryproductsaswellashouseholdappliancesandotherfields.
Themostimportantfeatureofthemicrocontrolleronthestructureasamajorbranchofthemicrocomputer,CPU,RAMandROMmemory,timers,andmultipleI/OinterfacecircuitintegratedinaVLSIchip.Fromitscompositionandfunctionofasinglechipisactuallyacomputer.
Thedesignisafour-digitcalculatorMSC-51microcontrollerdesign,usingClanguageprogrammingcalculatorfunction.External4X4keyboard,thekeyboardscantocompletecontrolofthenumberofinputbythedrivecircuittothenumericalresultsontheseven-segmentcommoncathodeLEDdisplayproperly,andhasclearedtheclearkeyatanytimetocompletethecalculationanddisplay.Calculatorwillbecompleted0-9999integeradd/subtract/multiply/divideoperations.
Keywords:
MSC-51single-chipfour-digitcalculatorClanguage
第1章绪论
1.1单片机的发展历史和趋势
1.1.1发展历史
继1971年微处理器的研制成功不久以后,就出现了单片机,但最早的单片机是1位的,当时因为工艺限制,单片机采用双片的形式而且功能比较简单.如果我们以8位单片机的推出作为起点,那么单片机的发展历史大致可分为以下几个阶段.[1]
1.第一阶段(1976-1978)
单片机的初级阶段.以Intel公司的MCS–48为代表.MCS–48的推出是在工业控制领域的控索,参与这一控索的公司还有Motorola.Zilog等,都取得了满意的效果.这就是SCM的诞生年代,“单机片”一词即由此而来.
2.第二阶段(1978-1982)
单片机的完善阶段.Intel公司在MCS–48基础上推出了完善的.典型的单片机系列MCS–51.它在以下几个方面奠定了典型的通用总线型单片机体系结构.
完善的外部总线.MCS-51设置了经典的8位单片机的总线结构,包括8位数据总线.16位地址总线.控制总线及具有很多机通信功能的串行通信接口;
CPU外围功能单元的集中管理模式;
③体现工控特性的位地址空间及位操作方式;
④指令系统趋于丰富和完善,并且增加了许多突出控制功能的指令.
3.第三阶段(1982-1990)
8位单片机的巩固发展及16位单片机的推出阶段,也是单片机向微控制器发展的阶段.Intel公司推出的MCS–96系列单片机,将一些用于测控系统的模数转换器.程序运行监视器.脉宽调制器等纳入片中,体现了单片机的微控制器特征.随着MCS–51系列的广应用,许多电气厂商竞相使用8051为内核,将许多测控系统中使用的电路技术.接口技术.多通道A/D转换部件.可靠性技术等应用到单片机中,增强了外围电路路功能,强化了智能控制的特征.
4.第四阶段(1990—现在)
微控制器的全面发展阶段.随着单片机在各个领域全面深入地发展和应用,出现了高速.大寻址范围.强运算能力的8位/16位/32位通用型单片机,以及小型廉价的专用型单片机.[2]
1.1.2发展趋势
目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化.低功耗.小体积.大容量.高性能.低价格和外围电路内装化等几个方面发展.下面是单片机的主要发展趋势.
CMOS化:
近年来由于CHMOS技术的进小,大大地促进了单片机的CMOS化.CMOS芯片除了低功耗特性之外,还具有功耗的可控性,使单片机可以工作在功耗精细管理状态.这也是今后以80C51取代8051为标准MCU芯片的原因.因为单片机芯片多数是采用CMOS(金属栅氧化物)半导体工艺生产.CMOS电路的特点是低功耗.高密度.低速度.低价格.采用双极型半导体工艺的TTL电路速度快,但功耗和芯片面积较大.随着技术和工艺水平的提高,又出现了HMOS(高密度.高速度MOS)和CHMOS工艺.CHMOS和HMOS工艺的结合.目前生产的CHMOS电路已达到LSTTL的速度,传输延迟时间小于2ns,它的综合优势已在于TTL电路.因而,在单片机领域CMOS正在逐渐取代TTL电路.
低功耗化:
单片机的功耗已从Ma级,甚至1uA以下;使用电压在3~6V之间,完全适应电池工作.低功耗化的效应不仅是功耗低,而且带来了产品的高可靠性.高抗干扰能力以及产品的便携化.
低电压化:
几乎所有的单片机都有WAIT.STOP等省电运行方式.允许使用的电压范围越来越宽,一般在3~6V范围内工作.低电压供电的单片机电源下限已可达1~2V.目前0.8V供电的单片机已经问世.
低噪声与高可靠性:
为提高单片机的抗电磁干扰能力,使产品能适应恶劣的工作环境,满足电磁兼容性方面更高标准的要求,各单片厂家在单片机内部电路中都采用了新的技术措施.
大容量化:
以往单片机内的ROM为1KB~4KB,RAM为64~128B.但在需要复杂控制的场合,该存储容量是不够的,必须进行外接扩充.为了适应这种领域的要求,须运用新的工艺,使片内存储器大容量化.目前,单片机内ROM最大可达64KB,RAM最大为2KB.
高性能化:
主要是指进一步改进CPU的性能,加快指令运算的速度和提高系统控制的可靠性.这类单片机的运算速度比标准的单片机高出10倍以上.由于这类单片机有极高的指令速度,就可以用软件模拟其I/O功能,由此引入了虚拟外设的新概念.
小容量.低价格化:
与上述相反,以4位.8位机为中心的小容量.低价格化也是发展动向之一.这类单片机的用途是把以往用数字逻辑集成电路组成的控制电路单片化,可广泛用于家电产品.
外围电路内装化:
这也是单片机发展的主要方向.随着集成度的不断提高,有可能把众多的各种处围功能器件集成在片内.除了一般必须具有的CPU.ROM.RAM.定时器/计数器等以外,片内集成的部件还有模/数转换器.声音发生器.监视定时器.液晶显示驱动器.彩色电视机和录像机用的锁相电路等.
串行扩展技术:
在很长一段时间里,通用型单片机通过三总线结构扩展外围器件成为单片机应用的主流结构.随着低价位OTP(OneTimeProgramble)及各种类型片内程序存储器的发展,加之处围接口不断进入片内,推动了单片机“单片”应用结构的发展.特别是IC.SPI等串行总线的引入,可以使单片机的引脚设计得更少,单片机系统结构更加简化及规范化.
1.2MCS-51单片机系统简介
1.2.1单片机的基本特点
由于单片机的这种结构形式及它所采取的半导体工艺,使其具有很多显著的特点,因而在各个领域都得到了迅猛的发展.单片机主要有如下特点:
有优异的性能价格比;
②集成度高.体积小.有很高的可靠性.单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连线,大大提高了单片机的可靠性与抗干扰能力.另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作;
③控制功能强.为了满足工业控制的要求,一般单片机的指令系统中均有极丰富的转移指令.I/O口的逻辑操作以及位处理功能.单片机的逻辑控制功能及运行速度均高于同一档次的微机.;
④低功耗.低电压,便于生产便携式的产品.;
⑤外部总线增加了IC(Inter-IntegratedCircuit)及SPI(SerialPeripheralInterface)等串行总线方式,进一步缩小了体积,简化了结构;
⑥单片机的系统扩展和系统配置较典型.规范,容易构成各种规模的应用系统.[3]
1.2.2单片机的组成
图1.1为单片机的典型功能结构框图.
由图可见,它通过内部总线把计算机的各主要部件连接为一体,其内部总线包括地址总线.数据总线和控制总线.
其中,地址总线的作用是在进行数据交换时提供地址,CPU通过它们将地址输出到存储器或I/O接口;/数据总线的作用是在CPU与存储器或I/O接口之间,或存储器与外设之间交换数据;控制总线包括CPU发出的控制信号线和外部送入CPU的应答信号线等.[4]
图1.1MSC-51单片机功能结构框图
1.3本章小结
本章详细讲述了单片机的发展过程,介绍了MSC-51单片机的基本结构.一方面对本设计的意义作了阐释,令一方面也为后面的理论知识展开进行铺垫.
单片机的使用体现在我们生活中的方方面面,几乎很难找到哪个领域没有单片机的踪迹,认识它的历史和了解其未来的发展,更能拓展我们的视野和知识.可以说,单片机现在仍然处于成长阶段,但是它已经在不断促进整个世界前进的步伐,我们对于电子技术的研究,特别是微电子技术方向的学习,一定是需要与单片机密切联系的.
第2章MCS-51单片机计算器总体方案
2.1设计任务
按照任务书大纲和自己的理解,所设计的单片机计算器需满足以下要求:
①扩展一个4*4的键盘,其中包括10个数字键,5个功能键以及1个清零键;
②完成基本的十进制的四则运算(即加.减.乘.除);
③使用使用keilC软件编写和调试程序;
④计算器可显示4位数字.
其中,系统划分为显示模块.键盘模块.处理程序三个模块.显示模块实现将CUNZHI中的值进行动态数码显示,包括:
P0口送显示码,P2口为公共端扫描;键盘模块进行键盘扫描;处理程序模块实现计算器加减乘除运算.[5]
2.2方案设计
2.2.1主程序方案
①方案一将显示处理程序置于定时中断程序中实现其功能,主程序为键盘扫描程序.[6]
②方案二利用主程序为显示处理程序键盘扫描程序.取消定时中断的使用.
在方案比较中,方案一效率低,单片机的反应无法进行运行,方案二虽未能解决按键长按无显示的缺点,但其运算速度快.最终选定为方案二.
2.2.2按键显示方案
因为计算器至少需要显示4位数字,开机运行时,只有数码管最低位显示为“0”,其余位全部不显示;当键盘第一次按下时,数码显示“D1”,第二次按下时,显示出“D1D2”,第三次按下时,显示“D1D2D3”.四个全显示完毕,再按下按键下时,输入的第五个数不接收.
可以对计算结果小于9999的两个无符号数进行+.-.*./运算,并显示计算结果,如果输入的预计算的数超过9999,则运算时报错,在”D5”上显示“E”,以提示使用者输入错误,可按清零键清零,重新输入数据,运算过程中,如果运算的表达式是加.减.乘.除混合运算,需分步先按等号键,再继续进行运算.
2.2.3设计难点
本设计的难点是键盘识别和数值显示,因为这里边涉及到键盘输入的数值在内部要转换成10进制运算,运算结果要转换成各个位的显示数字输出.
2.3本章小结
本章对单片机计算器的设计进行了预先分析,为具体的操作和实现定下总纲,,简单的说明了设计上的规划和步骤.为以后的硬件部分和软件部分设计指明了方向.
初次接触一个需要由理论结合实际的设计,并将其具体实现,不是一件容易的事情.明确此次设计的目标要求,实施方法,重点难点,可以不至于难于入手.参考一些技术文献,对应自己的计划,各个环节分步研究,最终结合在一起就可达到要求.
第3章MCS-51单片机计算器硬件设计
3.1主要元件介绍与选择
3.1.1电阻
通常分为三大类:
固定电阻,可变电阻,特种电阻.该设计上电阻的选择主要为固定电阻.一般电阻上面都有不同的色环,国际上惯用"色环标注法".
表3.1测量的电阻数值
电阻
理论值
实际值
R1
10K
10.5K
R2
4.7k
4.65k
3.1.2电容器
电容的基本单位为法拉,由两个金属极,中间夹有绝缘材料(介质)构成.由于绝缘材料的不同,所构成的电容器的种类也有所不同:
按介质材料可分为:
气体介质电容,液体介质电容,无机固体介质电容,有机固体介质电容电解电容.本设计主要选用的就是电解电容.
电容在电路中具有隔断直流电,通过交流电的作用,因此常用于级间耦合.滤波.去耦.旁路及信号调谐.[7]
表3.2测量的电容数值
电容
理论值
实际值
C1
104pF
104.32pF
C5
30pF
32.451pF
C13
100uF
103.75uF
3.2各硬件的功能与连接
3.2.1AT89S51单片机
1.AT89S51介绍
AT89S51是由近年来美国ATMEL公司生产的一种低功耗.高性能CMOS8位微控制器,总共具有8K的系统可编程Flash存储器.与工业80C51产品指令和引脚完全兼容.
在单芯片上,AT89S51拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S51为众多嵌入式控制应用系统提供高灵活.有效的解决方案.
AT89S51具有以下标准功能:
8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个5向量两级中断结构,全双工串行口,为片内晶振及时钟电路,支持2种软件可选择节电模式.空闲模式下,CPU停止工作,允许RAM.定时器/计数器.串口.中断继续工作.掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止.与AT89C51相比,二者都是都是8051的内核.但是AT89S51比AT89C51增加了一个16位的计数器T2,相应的内存也128字节提高到了256字节,ROM的容量从2K提高到了4K,可以装下更大的程序,另外AT89S51比AT89C51增加了ISP功能,即在线可编程功能.[8]
2.AT89S51单片机的各主要引脚功能
VCC:
电源
GND:
地
P0口:
P0口是一组8位漏极开路型双向I/0口,也即地址/数据总线复用口.作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用.在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻.在F1ash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻.
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平.对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用.Flash编程和程序校验期间,Pl接收低8位地址.
P2口:
基本与P1口相同.但是在Flash编程或校验时,P2接收高位地址和其它控制信号.
图3.1AT89S51单片机引脚图
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,p2输出缓冲器能驱动4个TTL逻辑电平.对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用.作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL).P3口除了作为一般的I/0口线外,更重要的用途是它的第二功能.
RST:
复位输入.晶振工作时,RST脚持续2个机器周期,高电平将使单片机复位.
ALE/PROG:
地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲.在flash编程时,此引脚(PROG)也用作编程输入脉冲.在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用.
PSEN:
外部程序存储器选通信号.当AT89S51从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活.
EA/VPP:
访问外部程序存储器控制信号.为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND.为了执行内部程序指令,EA应该接VCC.
在flash编程期间,EA也接收12伏VPP电压.
XTAL1:
振荡器反相放大器和内部时钟发生电路的输入端.
XTAL2:
振荡器反相放大器的输出端.[9]
3.2.2七段数码管
1.数码管使用条件
①段及小数点上加限流电阻
②使用电压:
段,根据发光颜色决定;小数点:
根据发光颜色决定.
③使用电流:
静态:
总电流80mA(每段10mA);动态:
平均电流4-5mA,峰值电流100mA
图3.27段数码管结构图
2.连接方式
LED显示器由七段发光二极管组成,排列成8字形状,因此也称为七段LED显示器.为了显示数字或符号,要为LED显示器提供代码,即字形代码.七段发光二极管,再加上一个小数点位,共计8段.本设计采用两个4位七段数码管连接AT89S51.
其中采用共阴极接法,使用时,公共阴极接地,在阳极端输入高电平,发光二极管就导通发光.
3.2.3按键
键盘可分为两类:
编码键盘和非编码键盘.
编码键盘是较多按键(20个以上)和专用驱动芯片的组合,当按下某个按键时,它能够处理按键抖动.连击等问题,直接输出按键的编码,无需系统软件干预.通用计算机使用的标准键盘就是编码键盘.
但大多数智能仪器和电子产品的按键数目都不太多(20个以内),为了降低成本和简化电路,我们采用非编码键盘.
非编码键盘的接口电路由设计者根据需要自行决定,按键信息通过接口软件来获取.本设计需要的是16个按键,故选择用非编码键盘,为了减少所占用的端口,由P1口采用4*4矩阵式键盘外接.
图3.34*4矩阵式键盘结构
3.2.4矩阵式键盘设定
按照预定的设定方案,本次设计的计算器将通过按键输入数字和运算符,利用单片机不断扫描键盘.
其中数字键0~9共十个,接下来依次是加号键(+).减号键(-).乘号键(*).除号键(/).等于号(=).清除键.操作设备是四行四列共16键的简单键盘.第一行从左至右分别为F(清除键).E(等号键).D(除号键).C(乘号键),第二行从左至右分别为B(减号键).A(加号键).9.8,第三行分别为7.6.5.4,第四行从左至右分别为3.2.1.0,“清除键”表示程序初始化,为下次输入准备.
3.2.5复位.时钟电路设计
XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空.当使用内部振荡电路时,XTAL1.XTAL2引脚外接石英晶体和微调电容,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz.
MCS-51单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器.
任何单片机在工作之前都要进行复位,以便CPU以及其他功能部件都处于一个确定的初始化状态,并从这个状态开始工作,也就是程序开始执行之前,单片机做好准备工作.如何进行复位呢?
只用在单片机的RST引脚上保持两个机器周期(24个时钟周期)的高电平即可对单片机实现复位操作,且复位操作不会对内部RAM有所影响.
3.3本章小结
本章详细介绍了MCS-51单片机计算器设计的硬件元件选择以及各类主要硬件的功能结构
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MSC51 单片机 计算器 毕业设计 论文