八位数码管计算器论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于51单片机的计算器
摘要
随着电子科技技术的不断发展在当今社会计算器已深入人们生活中,给人们的生活带来了方便,推动了社会的发展。

我们主要制作通过采用AT89S52单片机为主控单元设计一个能够实现整数的加、减、乘、除基本计算功能的简易计算器。

而且要通过4*4矩阵键盘输入数值和计算符号来进行运算,利用八位数码管进行动态显示
关键词:AT89S52单片机;4*4键盘;数码管动态显示
目录
第一章前言
第二章硬件介绍第三章原理图设计第四章程序设计第五章系统调试第六章实训总结
第一章前言
随着电子信息科学技术的进步,大规模及超大规模集成电路技术的飞速发展,单片机技术也得到了迅速的发展。

单片机也叫嵌入式控制器,是指在一块芯片上集成了微处理器、存储器、并串行输入/输出接口、定时/计数器和中断控制控制器等部件。

新型单片机功能越来越多,速度越来越快,如内部集成了A/D 转换器、脉宽调制器、CAN总线、倍频及低功耗设计等电路。

目前,单片机已发展到了第三代的高性能微控制器产品。

由于单片机具有体积小、成本低、性能稳定等优点,其开发应用已在工业测控、机电一体化、智能仪表、家用电器、航空航天及办公自动化等各个领域中占据了重要的地位。

了解单片机的知识,掌握单片机的应用技术,具有重要意义。

本次实训通过采用单片机设计一个简易计算器,目的是为了熟悉单片机的工作原理、应用以及单片机的语言编程。

第二章硬件介绍
本次实训设计制作一个简易的计算器用到的器件有AT89S52单片机、4位共阳数码管、晶振、排阻、电解电容、锁存器、按键和电阻下面对主要的器件进行介绍。

2.1单片机
3
89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。

89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1.2 晶振
石英晶振具有频率稳定度高这一特点,故在电子技术领域中一直占有重要的地位。

尤其是信息技术(IT)产业的高速发展,更使这种晶体振荡器焕发出勃勃生机。

石英晶体振荡器在远程通信、卫星通信、移动电话系统、全球定位系统(GPS)、导航、遥控、航空航天、高速计算机、精密计测仪器及消费类民用电子产品中,作为标准频率源或脉冲信号源,提供频率基
准,是目前其它类型的振荡器所不能替代的。

本次实训选择的是频率为24MHZ的石英晶振,它是单片机工作电路必不可少的器件。

其实物如图1:
图1 晶振实物图
1.3 四位共阳数码管
内部的四个数码管共用段选a~dp这8根数据线,为人们的使用提供了方便。

因为里面有四个数码管,所以它还有四个位选公共端,加上a~dp,共有12个引脚。

其实物图如图2:
图2 四位共阴数码管
1.4锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态。

锁存,就是把信号暂存以维持某种电平状态。

锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,再其次是解决驱动的问题,最后是解决一个 I/O 口既能输出也能输入的问题。

1.5排阻
所谓排阻就是若干个参数完全相同的电阻,它们的一个引脚都连到一起,作为公共引脚。

其余引脚正常引出。

所以如果一个排阻是由n个电阻构成的,那么它就有n+1只引脚,一般来说,最左边的那个是公共引脚。

它在排阻上一般用一个色点标出来。

排阻一般应用在数字电路上,比如:作为某个并行口的上拉或者下拉电阻用。

使用排阻比用若干只固定电阻更方便.
1.6电解电容
电解电容是电容的一种介质有电解液涂层有极性,分正负不可接错。

电容(Electric capacity),由两个金属极,中间夹有绝缘材料(介质)构成。

电解电容器特点一:单位体积的电容量非常大,比其它种类的电容大几十到数百倍。

电解电容器特点二:额定的容量可以做到非常大,可以轻易做到几万μf甚至几f(但不能和双电层电容比)。

电解电容器特点三:价格比其它种类具有压倒性优势,可以大规模生产,成本相对比较低。

第三章原理图设计
3.1 计算器总原理图如图所示:
图 3 计算器原理图
3.2 电路分支电路及工作原理分析
3.2.1 矩阵键盘4*4电路
在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,如图3所示。

在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。

这样,一个端口(如P1口)就可以构成4*4=16个按键,比之直接将端口线用于键盘多出了一倍,行扫描法行扫描法又称为逐行(或列)扫描查询法,是一种最常用的按键识别方法,如上图所示键盘,介绍过程如下:
(1)、判断键盘中有无键按下将全部行线Y0-Y3置低电平,然后检测列线的状态。

只要有一列的电平为低,则表示键盘中有键被按下,而且闭合的键位于低电平线与4根行线相交叉的4个按键之中。

若所有列线均为高电平,则键盘中无键按下。

(2)、判断闭合键所在的位置在确认有键按下后,即可进入确定具体闭合键的过程。

其方法是:依次将行线置为低电平,即在置某根行线为低电平时,其它线为高电平。

在确定某根行线位置为低电平后,再逐行检测各列线的电平状态。

若某列为低,则该列线与置为低电平的行线交叉处的按键就是闭合的按键。

图4 4*4矩阵键盘电路
3.2.2 复位电路
图5 复位电路
复位电路如图6.MCS-51单片机的复位是靠外部电路实现的。

MCS-51单片机工作之后,只要在他的RST引线上加载10ms以上的高点平,单片机就能有效地复位。

MCS-51单片机通常采用上电[wiki]自动[/wiki]复位和按键复位两种方式。

上电瞬间,RC电路充电,RST引线出现正脉冲,只要RST保持10ms 以上的高电平,就能使单片机有效的复位。

3.2.3 振荡电路
振荡电路图如图7,MCS--51单片机单片机内部的振荡电路是一个到增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。

单片机内部虽然有震荡电路,但要形成成时钟,外部还需要附加电路。

51单片机的时钟产生方式有两种,分别为:内部时钟方式和外部始终方式。

利用其内部的震荡电路XTAL1和XTAL2引线上外接定时元件,内部震荡电路便产生自激震荡,用示波器可以观察到XTAL2输出的时钟信号。

晶体和电容决定了单片机的工作时间精度,在这里我用的是12MHZ石英晶体。

12MHZ频率的主要是在高速串行通信情况下使用,C1和C2取30PF。

外部时钟方式是把外部震荡信号源直接接入XTAL1或XTAL2。

由于的XTAL2逻辑电平不是TTL的,所以还要接一个上拉电阻。

图7 振荡电路
3.2.4 数码管显示电路
图8 数码管显示电路
对四位共阴数码管进行位选时给相应的位低电平则该位被接通再进行段选给相应的段赋予高电平则可显示相应的符号。

数码管不同位显示的时间间隔可以通过调整延时程序的延时时间的长短来完成。

数码管显示的时间间隔也可以确定数码管显示是的亮度,若显示的时间间隔过长,显示时数码管的亮度将亮些,若显示的时间间隔短,显示时数码管的亮度将暗些。

但若是显示的时间间隔过长的话,数码管将产生闪烁现象。

所以,在调整显示的时间间隔时,既要考虑到显示时数码管的亮度,又要数码管显示时不产生闪烁现象。

第四章程序设计
4.1设计思路
1)上电后数码管显示初始化。

2)进行数码管动态扫描。

3)进行按键扫面。

4)检测是否按下第一个运算数字,按下后显示该数。

5)检测是否按下运算符号键。

6)按下符号键后检测是否按下第二个运算数字,按下后显示该数。

7)检测是否按下|’=’号键,按下后进行相应运算并显示结果。

8)等待下一个运算。

4.2设计流程图
第五章系统调试
系统调试分为静态调试和动态调试,必须先进行静态调试再进行动态调试,二者顺序不能颠倒。

5.1 静态调试
静态调试第一步为目测。

单片机应用系统中大部分电路安装在印制电路板上因此,对每一块加工好的印制电路板要进行仔细的检查。

先检查印制线是否有断线、有无脱落现象,如果有的话就要用焊锡将其连接好。

接着再看过孔是否有氧化现象,如果有,要将其表面的氧化层刮去。

在这项检查中我所做得这块板并没有出现这些问题。

第二步用万用表检测。

先将万用表置于蜂鸣挡位,用两个表笔分别接在那些挨得比较近的电路线看看是否有短路。

如果发出蜂鸣声则说明有短路状况,没有蜂鸣警报声则表明正常。

接着检查电源线和地线之间是否有短路现象。

最后用万用表检测一些接点,查看他们的通断状态是否符合要求的状态。

第三步为加电源检测。

特别要注意的是这项检测并不把单片机芯片加上去,加上电源后,将万用表置于电压挡去检测所有插座和引脚两端的电压值,查看是否符合要求的电压值。

如果有大于5V的,则表明不正常,因为单片机的工作电压不允许超过5V电压值超过这个值会烧坏单片机。

然后去检测接地端的电压值是否接近于零,如不接近零说明有短路。

在这项检测中电路板正常,没有异常。

5.2 动态测试
动态调试是用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障,器件间连接逻辑错误等的一种硬件检查。

动态调试一般是由近及远),由分到合,首先按逻辑功能将用户系统硬件电路分若干块,进行分块调试。

当各块电路调试无故障后,将各块电路逐块加入系统中,再对各块电路功能及各电路间可能存在的相互联系进行试验。

动态测试第一步。

将单片机插入插槽,接上电源观察电源指示灯是否亮,如果电源指示灯亮则表明单片机最小系统工作正常。

倘若不亮,首先先检测二极管是否损坏。

检测方法是用万用表置于蜂鸣挡位,红表笔接二极管的阳极,黑表笔接阴极,如果二极管不亮则说明是二极管损坏需要更换。

如果二极管亮则检测连接的回路是否有断路。

如果问题不出在这两方面,这要检测电容和晶振是否损坏。

第二步烧入程序检查数码管的显示、按键的输入以及蜂鸣器的报警功能是否正常,若其中的某部分出了问题,就要去检查相应的电路。

若相应的电路没问题,就要检查回路,查看对应单片机引脚是否弯折而没有插入插座。

在本次调试过程中就因为和键盘连接的单片机引脚未接好而导致键盘输入不正常,经过检查纠正之后按键输入回复正常。

经过静态和动态测试,系统出现的问题得到解决,实现了设计要求的加、减、乘、除、报警等基本功能,并实现了扩展部分的连续运算功能。

第六章实训总结
本次的实训时间为三周,实训的内容是基于单片机的电子作品制作。

我选的题目是基于单片机设计一个简易的计算器,要求是通过4*4矩阵键盘输入,八位数码管动态显示,能实现加、减、乘、除等基本运算功能,并且要有超过八位数时报警功能。

进过三周的努力,我基本完成了设计要求的基本功能,并实现了扩展部分的连续运算功能。

经过这次单片机制作汽车尾灯控制电路设计实训,我收获很大,积累了许多经验和知识。

本次实训共分为三步,即通过网络、相关书籍等各种途径查找资料,电路板的设计和制作,板的调试三部分。

首先,实训的第一步就是查找相关资料做好设计制作前的准备。

在这个过程中我深刻地领悟到查找资料是一个大学生获取知识拓宽知识面最重要的一坏。

通过查找资料我们可以学到许多课本上所没有的,这也是锻炼一个大学生自学能力的关键。

在此期间我查找了不少有关单片机的书籍,学到了许多有关单片机的知识,基本上掌握了单片机的使用。

同时也了解到单片机广泛应用于工业控制和电子产业中,所以学好单片机知识对我们来说是很重要的。

通过上网搜索,找到了对设计有帮助的资料。

在网络上我找到了许多有关基于单片机的简易计算器的设计资料,虽然没找到与我的设计要求完全符合的资料,但通过对相关资料的学习和分析基本明确了计算器的设计思路,为下一步原理图的绘制和办的制作做好了准备。

因此网络也是我们获得知识的一个途径。

实训的第二步是板的制作。

板的制作有很多的细节是要注意的,这些细节会影响到做板的质量。

在热转印中我们就要注意设定好转印的温度,不能过高,150C就比较合理。

如果设定得太高就会把铜板烧坏。

在腐蚀时要注意好腐蚀的时间不能太长,腐蚀好后即时拿出,否则会把不该腐蚀掉的电路线腐蚀掉。

腐蚀好后要及时上松香并烘干,不然铜板会被氧化导致导电性不好。

焊接时也有很多要注意,首先要检查元器件的好坏,发现不正常的立即更换,不然焊好后再拆下来就很麻烦。

烙铁的温度足够高后才能开始焊接,这样锡熔得好。

焊接时要先焊较小的器件。

同时要注意焊接的时间不能过长,否则会把元器件烧坏而不能使用。

实训的第三步是板的测试。

测试分为静态测试和动态测试,首先要做的是进行静态测试,检查电路的连通性,查看是否有短路。

不能跳过静态测试而直接进行动态测试,如果直接进行动态测试加上电源有可能把电路烧坏使得前面的努力工作付之一炬。

这次的实训的题目对于我来说是比较难的,但正因为有一定的难度让我有了
充分锻炼自己地机会,倘若题目很简单那就达不到锻炼的目的,实训也就没意义了。

实训最重要的是要自己亲自动手,若一味地照搬或抄袭他人的作品不加思考领会,那也就达不到锻炼自己的目的。

我们可以参考他人的制作成功资料,但要去领悟并加以改进创新,制作出属于自己的作品。

制作过程中遇到的问题要深入的思考加以解决。

通过这次制作计算器的实训提高了对单片机的应用能力,通过自己动手写程序提高了自己运用C语言编写程序的能力。

总之这次实训锻炼了我们的动手能力,将理论运用到实践中。

同时让我深深地感受到理论和实践是有差距的,只有将理论运用到实践中才能检验其是否正确并将理论知识加以巩固和理解。

谢词
在此,我非常感谢应用科技学院给我们学生提供了这次难得的实训机会,使我们有机会把平时所学的理论知识运用到实际操作中去,这对我们加强理论知识有很大的帮助,而且也使我们的实践能力的到了锻炼。

在这次实训中学院为我们免费提供了制作的电子器件,对此我们再次感谢。

感谢学院领导对我们的关怀和支持。

非常感谢符强、卜波涛、严素清老师在实训期间对我们的悉心教导,帮助我们分析制作过程中所遇到的问题,为我们讲解知识和应该注意的事项。

同时也非常感谢我们班的同学在我不理解的时候给我耐心的讲解和建议。

老师和同学的鼓励和支持下,我顺利地完成了这次实训。

参考文献
[1] 陈涛.单片机应用及C51程序设计.机械工业出版社,2008.
[2] 张庆双.实用电子电路200例.机械工业出版社,2005.
[3] 谢自美.电子线路设计.华中科技大学出版社,2003.
[4] 赵世强.模拟电子电路.西安电子科技大学出版社,200。

相关文档
最新文档