您的位置 首页 应用

根据AT89C51单片机的算术运算计算器体系规划

基于AT89C51单片机的算术运算计算器系统设计-AT89C51 具有如下特点:40 个引脚,4k BytesFlash 片内程序存储器,128 bytes 的随机存取数据存储器(RAM),32 个外部双向输入/ 输出(I/O)口,5 个中断优先级2层中断嵌套中断,2 个16 位可编程定时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。

本规划是根据AT89C51单片机进行的十进制计算器体系规划,能够完结计算器的键盘输入,进行加、减、乘、除4 位无符号数字的简略四则运算,并在LED 上相应的显现成果。硬件方面从功用考虑,首要挑选内部存储资源丰富的AT89C51 单片机,输入选用4×4 矩阵键盘。显现选用4 位7 段共阳极LED 动态显现。软件方面从剖析计算器功用、流程图规划,再到程序的编写进行体系规划,这儿引荐我们看看十天学会单片机。

0 导言

1 整体规划方案

1.1 体系组成与作业原理

本体系以51 单片机为主控中心,与矩阵键盘、晶振、LED 显现管模块一同组合而成。其作业进程为:首要存储单元初始化,显现初始值和键盘扫描,判别按键方位,得出按键值,单片机则对数据进行贮存与相应的处理转化,之后送入数码管动态显现。将运算成果送入数码管动态显现。本规划只能进行成果不超越四位数的运算,其功用如下:

(1)数字键“0”到“9”用数码管显现。

(2)加法运算: 加数与被加数均不能超越9999,加法终究成果不能超越9999.

(3)减法运算: 减法运算正常逻辑为大的数值减去小的数值,本计算器亦如此,只能进行正常逻辑的运算,如为小的数值减去大的数值,则将得到的负数与535 相加,得到相应的成果,即假如想进行小数减大数的运算,则把得到的成果减去535 即得到负数的正确成果。

(4)乘法运算: 与上述办法相同,计算成果不能超出9999,如溢出则显现成果只要后三位。

(5)除法运算: 除数与被除数均不能超越9999,计算成果只显现整数部分。

(6)等于键: 只要按下等于键才能将运算成果显现出来,不然一向显现上一个数。

(7)清零功用:程序不稳定或呈现错误时,运用清零键回到初始状况,也可用复位键清零。

2 体系硬件规划

2.1 体系硬件整体规划

本体系由键盘矩阵、LED 显现管、这几个部分组成,键盘输入键值,LED 显现管显现当时按键及成果。硬件整体规划图1 如下:

根据AT89C51单片机的算术运算计算器体系规划

2.2 矩阵扫描显现当时按键模块

使用AT89S51 单片机的P0 端口的P0.0 – P0.7 连接到一个七段数码管的a – h 的笔段上,数码管的公共端接电源。矩阵扫描显现当时按键模块见图2.

根据AT89C51单片机的算术运算计算器体系规划

2.3 键盘布局模块

矩阵键盘的作业原理:计算器的键盘布局如图3 所示:一般有16 个键组成,在单片机中正好能够用一个P 口完成16 个按键功用,这种方式在单片机体系中也最常用。

根据AT89C51单片机的算术运算计算器体系规划

3 体系软件规划

3.1 体系软件整体规划

本体系的软件流程如图4 所示。

根据AT89C51单片机的算术运算计算器体系规划

3.2 显现程序模块

显现程序即将显现数值的千位、百位、十位与个位别离计算出来,经过P0 段选口输出数值,经过位选口P3^3、P3^4、 P3^5、P3^6 完成动态显现。

LED 数码管,完成七段数码管的显现四位十进制数。经过段选来显现按键及计算成果的数值。因为本硬件规划选用的是共阳接法,所以对应的段码表如下3.3 键盘扫描模块

本次键盘扫描程序选用的是队伍翻转法扫描键盘,即先置行为0,读列值,存在变量1 中,然后把列置为0,读行值,存在变量2 中,把变量1 和变量2 相加即为按键对应的键值,下表为相应按键对应的键值4 结束语

本计算器是以51系列单片机为中心构成计算器体系,该规划为能进行简易算术运算的计算器,在现有的硬件条件下只能进行成果不超越四位数的运算,能完成加减乘除的运算功用与数字清零功用,以及体系的复位功用。
来历;21ic

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/343883.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部