快捷搜索:

基于AT89C51单片机的算术运算计算器系统设计

本设计是基于AT89C51单片机进行的十进制谋略器系统设计,可以完成谋略器的键盘输入,进行加、减、乘、除4 位无符号数字的简单四则运算,并在LED 上响应的显示结果。硬件方面从功能斟酌,首先选择内部存储资本富厚的AT89C51 单片机,输入采纳4×4 矩阵键盘。显示采纳4 位7 段共阳极LED 动态显示。软件方面从阐发谋略器功能、流程图设计,再到法度榜样的编写进行系统设计,这里保举大年夜家看看十天学会单片机。

0 小序

本系统采纳AT89C51单片机作为节制器,用来实现实现四位数的“+”,“-”,“*”,“/”运算,运算结果经由过程数码管显示,并具有有清零功能。AT89C51 具有如下特征:40 个引脚,4k BytesFlash 片内法度榜样存储器,128 bytes 的随机存取数据存储器(RAM),32 个外部双向输入/ 输出(I/O)口,5 其中断优先级2层中断嵌套中断,2 个16 位可编程准时计数器,2 个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器

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 如下:

2.2 矩阵扫描显示当前按键模块

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

2.3 键盘结构模块

矩阵键盘的事情道理:谋略器的键盘结构如图3 所示:一样平常有16 个键组成,在单片机中恰恰可以用一个P 口实现16 个按键功能,这种形式在单片机系统中也最常用。

3 系统软件设计

3.1 系统软件总体设计

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

3.2 显示法度榜样模块

显示法度榜样将要显示数值的千位、百位、十位与个位分手谋略出来,经由过程P0 段选口输出数值,经由过程位选口P3^3、P3^4、 P3^5、P3^6 实现动态显示。

LED 数码管,实现七段数码管的显示四位十进制数。经由过程段选来显示按键及谋略结果的数值。因为本硬件设计选用的是共阳接法,以是对应的段码表如下3.3 键盘扫描模块

本次键盘扫描法度榜样采纳的是行列翻转法扫描键盘,即先置行径0,读列值,存在变量1 中,然后把列置为0,读行值,存在变量2 中,把变量1 和变量2 相加即为按键对应的键值,下表为响应按键对应的键值4 停止语

本谋略器因此51系列单片机为核心构成谋略器系统,该设计为能进行简略单纯算术运算的谋略器,在现有的硬件前提下只能进行结果不跨越四位数的运算,能实现加减乘除的运算功能与数字清零功能,以及系统的复位功能。

滥觞;21ic

您可能还会对下面的文章感兴趣: