基于51单片机的智能计算器
其实,说智能也不算智能,就是在计算器上加上了日历、时钟和温度显示而已。具体用到的也是51很基础的模块,一个键盘,一个1602,温度显示那块用到了DS18B20,硬件调试的部分也很少,主要是代码的书写。
功能简介:
1、打开电源时,显示欢迎字样
2、计算器功能
3、日历及时钟功能
4、温度实时测量
然后用代码依次实现各个功能
刚开始只用矩阵键盘来控制计算器的时候是很简单的,定义一个数组,确定每个键盘所对应的符号或数字,然后用列检测法确定按键是否按下,并将其显示在1602上。我设置的键盘包括数字键(0-9)、符号键(+、-、*、/),清除键和等号键。
附上矩阵键盘的电路图:
其中4*4矩阵键盘分别表示
1, 2, 3, +,
4, 5, 6, -,
7, 8, 9, *,
0,=,off , /,
最开始只能做整数运算,后来我又定义了浮点型的数据,并且扩宽了加减运算的范围,整个计算器就比较完整了。
实现计算器的功能后,我开始加上日历及时钟的功能。先给年月日时分秒初始化一个值,并设置最大值,将前两行矩阵键盘作为调节日历及时钟的按键,s1,s2,s3分别用来调节时分秒,s5,s6,s7分别用来调节年月日,按下键后进行相应的加一操作,并使用定时器进行计时,若加到我们设定的最大值时,则置为0,并且令前一位加一。
紧接着是加上温度显示,我采用的DS18B20模块,工作原理图如下:
温度分辨率如下:
利用DS18B20对外界温度进行检测,并将温度以一定的格式显示在1602上。
最后也是最关键的是设置功能模式的切换,切换键大致如下:
K1=0时,表示选择时间显示功能
K2=0时,表示选择温度显示功能
K3=0时,表示选择计算器功能
按下相应的切换键即表示选择相应的功能。
基于51单片机的智能计算器相关推荐
- 基于51单片机的智能计算器Protues仿真设计
目录 一.设计背景 二.实现功能 三.硬件设计 3.1 总体硬件设计 3.2 键盘电路的设计 3.3 显示电路的设计 四.仿真演示 五.源程序 一.设计背景 随着社会的发展,科学的进步,人们的生活水 ...
- 利用c51进行数模转换并在液晶屏上显示_基于C51单片机的智能计算器、矩阵键盘、lcd1602...
目录 1绪论.............................................................................................. ...
- 基于51单片机简易智能家居
基于51单片机的智能家居的设计 前言 一.项目简介 二.开发环境/工具: 1.Keil 5/Keil 4 2.STC-ISP 3.蓝牙串口助手 4.手机app 三.硬件设计: 1.单片机与蓝牙模块连接 ...
- 基于51单片机的自动浇花系统设计/基于51单片机的智能抽奖系统控制设计/基于51单片机的数字时钟与日历显示控制设计 毕业设计
1147基于51单片机的自动浇花系统设计 设计思路:通湿度传感器实时监测湿度,通过LCD显示出实时的湿度采集值,可以通过按键设定目标界限,当达到这个界限值时,浇花系统的电机装置运行. 电路包含:LCD ...
- 基于51单片机的智能火灾报警系统
具体实现功能 系统由51单片机+MQ-2烟雾传感+ADC0832模数转换芯片+DS18B20温度传感器+数码管显示+按键模块+声光报警模块构成. 具体功能: 1.实时监测及显示温度值和烟雾浓度: 2. ...
- 【资料分享】基于51单片机的智能指纹考勤系统设计-原理图-PCB-程序-报告、基于51单片机和MAX1898的智能手机充电器设计
1661[毕设课设]基于51单片机的智能指纹考勤系统设计-原理图-PCB-程序-报告 摘 要 随着科学技术的不断发展带动着电子行业的地位越来越重,现在电子产品几乎在社会的各个领域都可以见到.这些技术的 ...
- 基于51单片机的智能晾衣架系统设计
1.功能介绍 设计基于51单片机的智能晾衣架.主要功能如下: (1)控制晾衣架的升降. (2)具有限位开关功能. (3)具有无线遥控功能. (4)能够指示运行状态. (5)具有智能模式,可以根据环境光 ...
- 基于51单片机的智能家居安防系统(程序+仿真+PCB)
@TOC 一.基于51单片机的智能家居安防系统 1.主要功能 通过人体红外检测模块.光敏传感器.蜂鸣器.继电器模块模拟智能家居安防功能. 2.实验结果 3.实验仿真 4.程序源码 /********* ...
- 基于51单片机的智能浇花系统(可做毕设)
基于51单片机的智能浇花系统(可做毕设) 一.系统介绍 二.仿真展示 三.实物展示 四.仿真过程 五.代码 1.ADC0832 2.LCD1602 3.按键 4.水泵 5.温湿度 6.定时器 7.ma ...
最新文章
- 美团提出基于隐式条件位置编码的Transformer,性能优于ViT和DeiT
- 硬件开源需求迫切?开源笔电 Nevona 筹款金额达预设目标3倍
- loadrunner socket协议问题归纳(5)
- 【大会】网络性能、安全与成本之困
- 如何从Angular的ActivatedRoute数据结构中获得运行时路由信息
- SQL数据库相关 FMDB框架的使用
- linux的bash脚本
- QT int QString char转换
- Vue 项目(网站应用)接入QQ互联qq登录接口 汇总
- 1.从命令行读入一个字符串,表示一个年份,输出该年的世界杯冠军是哪支球队。如果该年没有举办世界杯,则输出:没有举办世界杯。2. 读入一支球队的名字,输出该球队夺冠的年份列表。
- 打游戏经常有人喷,刷个B站还是有?Python实现在网站上自动评论!键盘侠都喷不赢你!
- png图片的文件存储格式
- IDEA 闪退,并在C盘生成文件java_error_in_idea_****.log
- 计算机科学的稿费有多少,写作近两年,稿费3000+,老实人告诉你为什么那么多人写作能月入30000...
- 数字孪生技术在智慧城市规划中的发展影响及其应用
- 【案例】中国太平保险构建大数据报表平台系统
- Iiscnfg.vbs IIS 配置脚本的使用
- 刘强东给京东高管降薪:2千多位总监兄弟工资打8折!并拿出100亿保障”兄弟“基础住房...
- 【网络】常见的网络面试题
- win10计算机内的快捷图标,win10系统任务栏添加计算机快捷图标的图文办法