基于AT89C51单片机的十进制计算器系统设计.doc

基于AT89C51单片机的十进制计算器系统设计.doc

ID:27870064

大小:194.00 KB

页数:6页

时间:2018-12-06

基于AT89C51单片机的十进制计算器系统设计.doc_第1页
基于AT89C51单片机的十进制计算器系统设计.doc_第2页
基于AT89C51单片机的十进制计算器系统设计.doc_第3页
基于AT89C51单片机的十进制计算器系统设计.doc_第4页
基于AT89C51单片机的十进制计算器系统设计.doc_第5页
资源描述:

《基于AT89C51单片机的十进制计算器系统设计.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于AT89C51单片机的十进制计算器系统设计  本设计是基于AT89C51单片机进行的十进制计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除4位无符号数字的简单四则运算,并在LED上相应的显示结果。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用4&TImes;4矩阵键盘。显示采用4位7段共阳极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。    引言  本系统采用AT89C51单片机作为控制器,用来实现实现四位数的“+”,“-”,“*”,“/”运算,运算结果

2、通过数码管显示,并具有有清零功能。AT89C51具有如下特点:40个引脚,4kBytesFlash片内程序存储器,128基于AT89C51单片机的十进制计算器系统设计  本设计是基于AT89C51单片机进行的十进制计算器系统设计,可以完成计算器的键盘输入,进行加、减、乘、除4位无符号数字的简单四则运算,并在LED上相应的显示结果。硬件方面从功能考虑,首先选择内部存储资源丰富的AT89C51单片机,输入采用4&TImes;4矩阵键盘。显示采用4位7段共阳极LED动态显示。软件方面从分析计算器功能、流程图设计,再到程序的编写进行系统设计。 

3、   引言  本系统采用AT89C51单片机作为控制器,用来实现实现四位数的“+”,“-”,“*”,“/”运算,运算结果通过数码管显示,并具有有清零功能。AT89C51具有如下特点:40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。  1总体设计方案  1.1系统组成与工作原理  本系统以51单片机为主控核心,与矩阵键盘、晶振、LE

4、D显示管模块一起组合而成。其工作过程为:首先存储单元初始化,显示初始值和键盘扫描,判断按键位置,得出按键值,单片机则对数据进行储存与相应的处理转换,之后送入数码管动态显示。将运算结果送入数码管动态显示。本设计只能进行结果不超过四位数的运算,其功能如下:  (1)数字键“0”到“9”用数码管显示。  (2)加法运算:加数与被加数均不能超过9999,加法最终结果不能超过9999.  (3)减法运算:减法运算正常逻辑为大的数值减去小的数值,本计算器亦如此,只能进行正常逻辑的运算,如为小的数值减去大的数值,则将得到的负数与535相加,得到相应的

5、结果,即如果想进行小数减大数的运算,则把得到的结果减去535即得到负数的正确结果。  (4)乘法运算:与上述方法一样,计算结果不能超出9999,如溢出则显示结果只有后三位。  (5)除法运算:除数与被除数均不能超过9999,计算结果只显示整数部分。  (6)等于键:只有按下等于键才能将运算结果显示出来,否则一直显示上一个数。  (7)清零功能:程序不稳定或出现错误时,运用清零键回到初始状态,也可用复位键清零。    2系统硬件设计    2.1系统硬件总体设计  本系统由键盘矩阵、LED显示管、这几个部分组成,键盘输入键值,LED显示管

6、显示当前按键及结果。硬件总体设计图1如下:    图1硬件总体设计图  2.2矩阵扫描显示当前按键模块  利用AT89S51单片机的P0端口的P0.0-P0.7连接到一个七段数码管的a-h的笔段上,数码管的公共端接电源。矩阵扫描显示当前按键模块见图2.    图2矩阵扫描显示当前按键模块    2.3键盘布局模块  矩阵键盘的工作原理:计算器的键盘布局如图3所示:一般有16个键组成,在单片机中正好可以用一个P口实现16个按键功能,这种形式在单片机系统中也最常用。    图3计算器的键盘布    图4系统的软件流程图  3.2显示程序模块

7、  显示程序将要显示数值的千位、百位、十位与个位分别计算出来,通过P0段选口输出数值,通过位选口P3、P3、P3、P3实现动态显示。  LED数码管,实现七段数码管的显示四位十进制数。通过段选来显示按键及计算结果的数值。由于本硬件设计选用的是共阳接法,所以对应的段码表如下3.3键盘扫描模块  本次键盘扫描程序采用的是行列翻转法扫描键盘,即先置行为0,读列值,存在变量1中,然后把列置为0,读行值,存在变量2中,把变量1和变量2相加即为按键对应的键值,下表为相应按键对应的键值    4结束语  本计算器是以51系列单片机为核心构成计

8、算器系统,该设计为能进行简易算术运算的计算器,在现有的硬件条件下只能进行结果不超过四位数的运算,能实现加减乘除的运算功能与数字清零功能,以及系统的复位功能。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。