其实,说智能也不算智能,就是在计算器上加上了日历、时钟和温度显示而已。具体用到的也是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单片机的智能计算器相关推荐

  1. 基于51单片机的智能计算器Protues仿真设计

    目录 一.设计背景 二.实现功能 三.硬件设计 3.1 总体硬件设计 ​3.2 键盘电路的设计 3.3 显示电路的设计 四.仿真演示 五.源程序 一.设计背景 随着社会的发展,科学的进步,人们的生活水 ...

  2. 利用c51进行数模转换并在液晶屏上显示_基于C51单片机的智能计算器、矩阵键盘、lcd1602...

    目录 1绪论.............................................................................................. ...

  3. 基于51单片机简易智能家居

    基于51单片机的智能家居的设计 前言 一.项目简介 二.开发环境/工具: 1.Keil 5/Keil 4 2.STC-ISP 3.蓝牙串口助手 4.手机app 三.硬件设计: 1.单片机与蓝牙模块连接 ...

  4. 基于51单片机的自动浇花系统设计/基于51单片机的智能抽奖系统控制设计/基于51单片机的数字时钟与日历显示控制设计 毕业设计

    1147基于51单片机的自动浇花系统设计 设计思路:通湿度传感器实时监测湿度,通过LCD显示出实时的湿度采集值,可以通过按键设定目标界限,当达到这个界限值时,浇花系统的电机装置运行. 电路包含:LCD ...

  5. 基于51单片机的智能火灾报警系统

    具体实现功能 系统由51单片机+MQ-2烟雾传感+ADC0832模数转换芯片+DS18B20温度传感器+数码管显示+按键模块+声光报警模块构成. 具体功能: 1.实时监测及显示温度值和烟雾浓度: 2. ...

  6. 【资料分享】基于51单片机的智能指纹考勤系统设计-原理图-PCB-程序-报告、基于51单片机和MAX1898的智能手机充电器设计

    1661[毕设课设]基于51单片机的智能指纹考勤系统设计-原理图-PCB-程序-报告 摘 要 随着科学技术的不断发展带动着电子行业的地位越来越重,现在电子产品几乎在社会的各个领域都可以见到.这些技术的 ...

  7. 基于51单片机的智能晾衣架系统设计

    1.功能介绍 设计基于51单片机的智能晾衣架.主要功能如下: (1)控制晾衣架的升降. (2)具有限位开关功能. (3)具有无线遥控功能. (4)能够指示运行状态. (5)具有智能模式,可以根据环境光 ...

  8. 基于51单片机的智能家居安防系统(程序+仿真+PCB)

    @TOC 一.基于51单片机的智能家居安防系统 1.主要功能 通过人体红外检测模块.光敏传感器.蜂鸣器.继电器模块模拟智能家居安防功能. 2.实验结果 3.实验仿真 4.程序源码 /********* ...

  9. 基于51单片机的智能浇花系统(可做毕设)

    基于51单片机的智能浇花系统(可做毕设) 一.系统介绍 二.仿真展示 三.实物展示 四.仿真过程 五.代码 1.ADC0832 2.LCD1602 3.按键 4.水泵 5.温湿度 6.定时器 7.ma ...

最新文章

  1. 腾讯博士:年薪60万辞职去教书,你想要哪种生活?
  2. linux qt检测u盘热插拔,【QT】动态监测U盘插拔
  3. Question for recommendation system, which is a baseline
  4. C++模板特化的一个BUG?
  5. android 自定义view画表格,Android自定义View实现课程表表格
  6. pat 乙级 1029 旧键盘(C++)
  7. Flask 路由映射对于双斜线的处理 //a//b
  8. LeetCode 101 对称二叉树的几种思路(Python实现)
  9. 报表引擎API开发入门—带参程序数据集
  10. 构图之法——9条构图小贴士
  11. 触动精灵怎么设置虚拟服务器,如何调试脚本及解决问题的方法
  12. python中pop类型_Python基础之基本数据类型
  13. 郭继孚:预约在城市交通中的应用——北京市回龙观地区实践
  14. Excel批量根据银行卡号查询银行卡的详细信息
  15. 蓝桥杯 方格计数 Java
  16. 电脑锁屏 快捷方式设置
  17. 记一次华为交换机冲突问题
  18. 专注儿童编程,核桃编程招人啦~
  19. 学习ZYNQ之FPGA2(开发板资源初探)
  20. mmap(内存映射)、sendfile() 与零拷贝技术

热门文章

  1. 微软的重点服务器负载均衡,微软 NLB 负载均衡技术对网络的影响
  2. VUE axios POST 发送跨域 cros 问题
  3. 学c语言推荐哪种笔记本电脑,好用的笔记本电脑有哪些 3款女生钟情的笔记本推荐...
  4. HS6621低功耗调试(HS6621CG)
  5. oracle创建用户并授权
  6. 服务器03系统在win10的电脑花屏,win10系统屏幕开机花屏的原因和解决方法
  7. 新能源磷酸铁锂除钙镁专用树脂CH-93详情参数 及测试流程
  8. CUDA AND NVIDIA-DRIVER INSTALL
  9. ubuntu16.04安装sougou输入法
  10. Makefile初级语法1