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

时间:2022-03-17来源:佚名

本设计是基于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 如下:

相关阅读

热销商品

聚氨酯优力胶牛筋垫片PU垫片缓冲垫圆形密封垫圈减震垫O型垫 加工

聚氨酯优力胶(PU)牛筋垫片是一种高性能弹性密封减震元件,采用优质聚氨酯材料精密加工而成。具有优异的耐磨性、抗撕裂性、耐油性和耐老化性能,适用于高负荷、高频振动...
5

扎丝,葡萄扎丝、扎丝绑丝、铁丝扎带、电镀锌铁丝扎线、捆扎铁丝

扎丝是一种广泛应用于农业、园艺、建筑和包装等领域的金属绑扎材料,常见类型包括葡萄扎丝、扎丝绑丝、铁丝扎带、电镀锌铁丝扎线和捆扎铁丝等。其中,葡萄扎丝专为葡...
9.3

内六角扳手高硬度加长球头六棱六方扳手3456781012mm平头小空间

内六角扳手高硬度加长球头六棱六方扳手,专为狭小空间作业设计,提供3、4、5、6、7、8、10、12mm多种规格,满足不同需求。采用优质合金钢材质,经热处理工艺,硬度高、耐磨...
2.55

橡胶包边条u型骨架密封条机械钣金桥架防割手装饰护口保护条卡条

橡胶包边条U型骨架密封条是一种广泛应用于机械、钣金、桥架等金属边缘的安全防护配件。其采用优质橡胶材质,内嵌U型钢骨架,兼具柔韧性与结构强度,可牢固卡装在金属板...
1.28

O型圈密封圈丁睛胶圈油封氟胶硅胶圈高压耐磨橡胶超大O型胶圈大全

O型圈密封圈是一种广泛应用于机械、液压、气动及管道系统中的关键密封元件。本产品涵盖丁腈胶(NBR)、氟橡胶(FKM)、硅胶(VMQ)等多种材质,具备优异的耐油、耐高温、耐腐蚀...
1

网站栏目