21-基于51单片机的5乘4计算器设计

发布者:芳华逝水最新更新时间:2021-09-18 来源: eefocus关键字:51单片机  计算器  LCD1602 手机看文章 扫描二维码
随时随地手机看文章

具体实现功能

系统由STC89C52单片机+5乘4按键模块+LCD1602液晶显示屏+电源构成。


具体功能:


利用输入采用5×4矩阵键盘,可以进行加、减、乘、除等十几种数字运算,并在LCD1602上显示操作过程及结果。

设计背景

当今社会,随着人们物质生活的不断提高,电子产品已经走进了家家户户,无论是生活或学习,还是娱乐和消遣几乎样样都离不开电子产品,大型复杂的计算能力是人脑所不能胜任的,而且人脑比较容易出错。计算器作为一种快速通用的计算工具方便了用户的使用。计算器可谓是我们最亲密的电子伙伴之一。本设计着重在于分析计算器设计开发过程中的环节和步骤,并从实践经验出发对计算器设计做了详细的分析和研究。


本设计是以单片机为核心的计算器模拟系统设计,输入采用5×4矩阵键盘,可以进行加、减、乘、除等数字运算,并在LCD1602上显示操作过程。


设计原理

利用矩阵键盘进行按键的输入,通过对矩阵键盘的扫描,获取用户的输入,并实时的显示在1602液晶上,每次获取到输入时,根据软件设计的相应方法对输入进行处理、运算,输入结束后(以“=“为标志),将最终的运算结果输出的液晶上。


软件设计

软件编程平台选择最常用的keil软件。由于该程序并未涉及到底层的驱动问题,因此选择方便快捷的C语言编程。在编程中,将该程序分为四个模块:延时模块、1602显示模块、用于处理计算表达式的对战模块及主函数模块。采用模块化设计,方便调试与理解。


原理图

 

本系统原理图设计采用Altium Designer19,具体如图。

程序

本设计利用KEIL5软件实现程序设计,具体如图。

仿真实现

本设计利用protues8.7软件实现仿真设计,具体如图。

关键字:51单片机  计算器  LCD1602 引用地址:21-基于51单片机的5乘4计算器设计

上一篇:22-基于51单片机的数字时钟(万年历)
下一篇:20-基于51单片机的温湿度检测仪设计

推荐阅读最新更新时间:2024-10-30 11:38

LCD1602 C程序
LCD 基本显示程序 四条数据线输入:DB4—RB0,DB5—RB1,DB6—RB2,DB7—RB3 寄存器选择RS接RB4,为 L 指令寄存器,为 H 数据寄存器 读写使能控制线E,接RE2,每当E线向LCD模块发送一个正脉冲,LCD模块与 单片机 之间将进行一次数据交换; //**********定义与声明******************* #include p IC .h #define uchar unsigned char #define uint unsigned int #define E RE2 #define RS RB4 uchar i,num,byte,ys; uchar const table =
[单片机]
基于51单片机的无线识别装置系统设计
  1 引言   射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据。射频识别工作无须人工干预,非接触,阅读速度快,无磨损,不受环境影响,寿命长,便于使用。目前,射频识别技术在国外发展非常迅速,射频识别产品种类繁多,已广泛用于工业自动化、商业自动化、交通运输控制管理等众多领域,如汽车、火车等交通监控;高速公路自动收费系统;停车场管理系统;物品管理;仓储管理;车辆防盗等。由于我国射频识别技术起步较晚,除用于中国铁路的车号自动识别系统外,仅限于射频公交卡的应用。   在此,给出一种实现简单射频识别系统的方式。阅读器和应答器均包含在单片机控制系统中,利用2ASK调制与解调电路以及匹配网络电路,使整
[网络通信]
51单片机 LCD1602调试工具
本章博客讲述的是关于LCD1602的调试,使用它是为了更加直观的表示出代码所要实现的功能 1.首先,需要添加两份驱动文件到新建的工程中来,再插入到新建的工程中来 将其复制到新建文件的同一目录下,在进行添加 2.写出以下代码进行编译查看效果 #include REGX52.H #include LCD1602.h void main() { LCD_Init(); LCD_ShowChar(1,1,'A'); LCD_ShowString(1,3, Hello ); LCD_ShowNum(1,9,123,3); //高位补零,如果最后一位是2则显示23 LCD_
[单片机]
<font color='red'>51单片机</font> <font color='red'>LCD1602</font>调试工具
51单片机外部中断实验
前面,我们讲了51单片机的输入和输出功能,今天讲点不一样的,外部中断测试。 首先,关于中断的作用,我们要讲一下,处理内部外部随机事件,应对紧急事件的发生。CPU在执行程序过程中,外部突发紧急事件请求,CPU停下手里工作,去处理紧急事件,处理完后,回到原先被中断的地方,继续工作。就好比在吃饭的过程中接到个电话,出去接听完电话后又坐回桌子上吃饭,这中间停止原本的事情去做去他事情就是中断。 51单片机的中断功能是比较简单的,只需要配置好相应的寄存器就完成了初始化。 本文外部中断使用按键P3.2测试,因为其端口具备外部中断第二功能。 51单片机中断结构配置前,需要看一下内部结构图,可以看到有IE、IP、TCON等寄存器控制中断功
[单片机]
<font color='red'>51单片机</font>外部中断实验
51单片机数字钟温度计的编程实例
#include reg51.h char disp ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40}; char disp_dot ={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef,0xc0}; sbit DQ = P1^3; //定义通信端口 //晶振12MHz void delay_18B20(unsigned int i) { while(i--); } //初始化函数 Init_DS18B20(void) { unsigned char x=0; DQ = 1; //DQ复位 delay_1
[单片机]
<font color='red'>51单片机</font>数字钟温度计的编程实例
基于STC89C51单片机的电子琴设计
0 引言 随着计算机在社会各领域的渗透,单片机的应用正在不断地走向深入,同时带动着工业、农业、商业、家电以及玩具的日新月异更新,极大地提高了电子电路及系统设计质量和效率。本设计是以主控芯片STC89C5l为中心器件,辅以小键盘、LCD显示和功放电路及扬声器等来设计电子琴系统。同时详细论述了该系统的设计过程及关键技术。 1 系统硬件组成 电子琴的控制电路分为单片机STC89C51、工作指示LED、LCD显示器、按键输入、喇叭接口等几部分。其硬件电路结构框图如图1所示。 1.1 单片机STC89C51简介 STC单片机是一款增强型5l单片机,完全兼容MCS-51。STC89C51可以代替AT89C51,而且功
[单片机]
MCS-51单片机汇编语言:逻辑运算指令有哪些?
简单 逻辑操作指令 CLR A ; A← “ 0 ” CPL A ; A← A SWAP A ; A0~3 A4~7 左循环指令 (Rotate Accumulator Left) RL A 带进位左循环指令( Rotate Accumulator Left through Carry flag ) RLC A 右循环指令( Rotate Accumulator Right ) RR A 带进位右循环指令( Rotate A Right with C ) RR
[单片机]
MCS-51单片机定时器/计数器常见习题解答
1、根据定时器/计数器0方式1逻辑结构图,分析门控位GATE取不同值时,启动定时器的工作过程。 答:当GATE=0:软件启动定时器,即用指令使TCON中的TR0置1即可启动定时器0。 GATE=1:软件和硬件共同启动定时器,即用指令使TCON中的TR0置1时,只有外部中断INT0引脚输入高电平时才能启动定时器0。 2、当定时器/计数器的加1计数器计满溢出时, 溢出标志位TF1由硬件自动置1,简述对该标志位的两种处理方法。 答:一种是以中断方式工作,即TF1置1并申请中断,响应中断后,执行中断服务程序,并由硬件自动使TF1清0;另一种以查询方式工作,即通过查询该位是否为1来判断是否溢出,TF1置1后必须用软件使TF1清0。
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved