【Arduino】arduino实现温湿度检测——通过数码管和显示屏显示

2023-05-16

#include <LiquidCrystal_I2C.h>
#include <dht11.h>
#include <Wire.h>
#define DHT11PIN A0
LiquidCrystal_I2C lcd(0x27,16,2);
dht11 DHT11;
 //设置阴极接口
 int a = 13;
 int b = 2;
 int c = 3;
 int d = 4;
 int e = 5;
 int f = 6;
 int g = 7;
 int h =8;
 //设置阳极接口
 int d1 = 9;
 int d2 = 10;
 int d3 = 11;
 int d4 = 12;
 int m;
 int n;

 void setup()
 {
   pinMode(d1, OUTPUT);
   pinMode(d2, OUTPUT);
   pinMode(d3, OUTPUT);
   pinMode(d4, OUTPUT);
   pinMode(a, OUTPUT);
   pinMode(b, OUTPUT);
   pinMode(c, OUTPUT);
   pinMode(d, OUTPUT);
   pinMode(e, OUTPUT);
   pinMode(f, OUTPUT);
   pinMode(g, OUTPUT);
   pinMode(h, OUTPUT);
   pinMode(DHT11PIN, INPUT);
   lcd.init();
   lcd.backlight();
  
 }
void loop()
{
 int chk=DHT11.read(DHT11PIN);
  lcd.setCursor(0,0);
  lcd.print("Tep:");
  lcd.print((float)DHT11.temperature);
  lcd.print("'C");
  lcd.setCursor(0,1);
  lcd.print("Hum :");
  lcd.print((float)DHT11.humidity,2);
  lcd.print("%");
  delay(1000);
 for(int i=0;i<=200;i++){
 digitalWrite(h,LOW);
  Display(2,DHT11.temperature%10);
  delay(5);
  Display(1,DHT11.temperature/10);
  delay(5);
  m=(DHT11.temperature-DHT11.temperature/10*10-DHT11.temperature%10)*100;
  Display(3,m/10);
  delay(5);
  Display(4,m%10);
  delay(5);
}
 for(int j=0;j<=200;j++){
  digitalWrite(h,LOW);
  Display(2,DHT11.humidity%10);
  delay(5);
   Display(1,DHT11.humidity/10);
  delay(5);
  n=(DHT11.humidity-DHT11.humidity/10*10-DHT11.humidity%10)*100;
  Display(3,n/10);
  delay(5);
  Display(4,n%10);
  delay(5);
 }
// clear();
}
void WeiXuan(unsigned char n)//定义选择亮的位置
{
  switch(n)
  {
    case 1: 
      digitalWrite(d1,HIGH);
      digitalWrite(d2, LOW);
      digitalWrite(d3, LOW);
      digitalWrite(d4, LOW);   
      break;
     case 2: 
      digitalWrite(d1, LOW);
      digitalWrite(d2, HIGH);
      digitalWrite(d3, LOW);
      digitalWrite(d4, LOW); 
      break;
      case 3: 
       digitalWrite(d1,LOW);
       digitalWrite(d2, LOW);
       digitalWrite(d3, HIGH);
       digitalWrite(d4, LOW); 
       break;
      case 4: 
       digitalWrite(d1, LOW);
       digitalWrite(d2, LOW);
       digitalWrite(d3, LOW);
       digitalWrite(d4, HIGH); 
       break;
       default :
       digitalWrite(d1, LOW);
       digitalWrite(d2, LOW);
       digitalWrite(d3, LOW);
       digitalWrite(d4, LOW);
       break;
      }
}
void Num_0()//数字0
{
  digitalWrite(a, LOW);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, HIGH);
  digitalWrite(h,HIGH);
}
void Num_1()//数字1
{
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(h,HIGH);
}
void Num_2()//数字2
{
  digitalWrite(a, LOW);
  digitalWrite(b, LOW);
  digitalWrite(c, HIGH);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, HIGH);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Num_3()//数字3
{
  digitalWrite(a, LOW);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, LOW);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Num_4()//数字4
{
  digitalWrite(a, HIGH);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Num_5()//数字5
{
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, LOW);
  digitalWrite(d, LOW);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Num_6()//数字6
{
  digitalWrite(a, LOW);
  digitalWrite(b, HIGH);
  digitalWrite(c, LOW);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Num_7()//数字7
{
  digitalWrite(a, LOW);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(h,HIGH);
}
void Num_8()//数字8
{
  digitalWrite(a, LOW);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, LOW);
  digitalWrite(e, LOW);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Num_9()//数字9
{
  digitalWrite(a, LOW);
  digitalWrite(b, LOW);
  digitalWrite(c, LOW);
  digitalWrite(d, LOW);
  digitalWrite(e, HIGH);
  digitalWrite(f, LOW);
  digitalWrite(g, LOW);
  digitalWrite(h,HIGH);
}
void Clear()  //清屏
{
  digitalWrite(a, HIGH);
  digitalWrite(b, HIGH);
  digitalWrite(c, HIGH);
  digitalWrite(d, HIGH);
  digitalWrite(e, HIGH);
  digitalWrite(f, HIGH);
  digitalWrite(g, HIGH);
  digitalWrite(h,HIGH);
}
void pickNumber(unsigned char n)//选择亮数字的,将前面定义好的数字直接调用
{
  switch(n)
  {
   case 0:Num_0();break;
   case 1:Num_1();break;
   case 2:Num_2();break;
   case 3:Num_3();break;
   case 4:Num_4();break;
   case 5:Num_5();break;
   case 6:Num_6();break;
   case 7:Num_7();break;
   case 8:Num_8();break;
   case 9:Num_9();break;
   default:Clear();break; 
  }
}
void Display(unsigned char x, unsigned char Number)//选择对应的位置和数字
{
  WeiXuan(x);
  pickNumber(Number);
  delay(1);
  Clear() ; 
}

温湿度检测

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Arduino】arduino实现温湿度检测——通过数码管和显示屏显示 的相关文章

  • java文件夹压缩加密

    文件夹压缩加密 import net lingala zip4j core ZipFile import net lingala zip4j exception ZipException import net lingala zip4j m
  • sql bug之repalce:Argument data type ntext is invalid

    目录 一 异常描述二 异常sql三 异常及解决思路分析四 解决异常五 相关知识点六 写在最后 一 异常描述 42000 Microsoft SQL Server Native Client 10 0 SQL Server Argument
  • 阿里云ECS服务器添加安全组规则(图文教程指南)

    阿里云安全组概述 阿里云服务器安全组设置规则分享 xff0c 阿里云服务器安全组如何放行端口设置教程 在购买阿里云ECS服务器的时候 xff0c 阿里云会要求客户设置安全组 xff0c 如果不设置 xff0c 阿里云会指定默认的安全组 那么
  • 2021-09-25 Kali Linux 安装教程(小白极度友好)

    一 安装步骤 1 新建虚拟机 2 新建虚拟机向导 3 选择虚拟机兼容性 尽量选最新配置 xff0c 但没必要选最新 xff0c 选最新可能导致部分旧版本VM Ware无法打开 4 安装光盘映像文件 选择 iso文件所在的目录 5 选择客户操
  • Java面试大全(2020年版)201-300

    目录 201 删除 你们怎么处理redis缓存的数据 xff0c 怎么删除的202 redis的事务203 什么是ES xff1f 204 为什么要使用到ES xff1f 205 Elasticsearch是如何实现Master选举的 xf
  • Java面试300题(2020年版,3-5年面试题重点突破)

    目录 Java知识点汇总1 JDK JRE JVM关系是什么 xff1f 2 继承的的特点和好处 xff0c 弊端 xff1f 3 局部变量和成员变量的区别4 Java支持的数据类型有哪些 xff1f 什么是自动拆装箱 xff1f 5 类变
  • 解除切屏和复制限制

    解除切屏限制 window onmouseleave 61 window onblur 61 window onmouseout 61 document onmouseleave 61 document onblur 61 document
  • 2021.1.1IDEA插件开发入门及打包

    目录 1 Gradle安装及配置2 IDEA创建plugin工程3 输出sample4 打包插件 1 Gradle安装及配置 Gradle官网下载Gradle仓库包 xff0c 配置环境变量即可 xff0c Gradle其中一种下载地址为
  • 2021.1.4CHM文档制作(手动制作+软件制作+原理讲解)

    目录 1 CHM文件起源及原理讲解1 1起源1 2特性1 3原理1 4技术要点 2 手动制作CHM3 软件制作CHM4 使用Python C 43 43 Java等语言无脑开发CHM制作工具 1 CHM文件起源及原理讲解 1 1起源 CHM
  • Vue_ElementUI之5_vue模板

    本文适用于Web入门级或偏中级前端爱好者等 xff0c 内容是作者在51CTO的学习笔记 xff0c 提交于github xff0c 有时候也没时间更新CSDN xff0c github对于部分同学可能也有一定的难度 xff0c 本着开源的
  • Vue_ElementUI之8_数组更新检测

    本文适用于Web入门级或偏中级前端爱好者等 xff0c 内容是作者在51CTO的学习笔记 xff0c 提交于github xff0c 有时候也没时间更新CSDN xff0c github对于部分同学可能也有一定的难度 xff0c 本着开源的
  • CSS3(一)概念与基本属性、盒子模型、动画基础

    layout post title CSS3 xff08 一 xff09 概念与基本属性 盒子模型 动画基础 description CSS3 xff08 一 xff09 概念与基本属性 盒子模型 动画基础 tag 前端 文章目录 CSS概
  • (转载)[2023-01 持续更新] 谷歌google镜像/Sci-Hub可用网址/Github镜像可用网址总结

    目录 一 谷歌学术镜像 二 Sci Hub 三 Github镜像 四 GitHub下载文件加速 一 谷歌学术镜像 网址一 xff1a http scholar scqylaw com 附 sci hub 网址二 xff1a https ac
  • Linux中好用运维工具梳理

    tmux xff0c 会话工具xclip xff0c 结果重定向到剪切板
  • Linux上应该安装的软件梳理

    MySQLOracleRedisElasticsearchEtcdNginxRabbitmqMongoDBNacosMinIO
  • centos开启启动的命令

    cat etc rc d rc local
  • JS判断语句

    判断 1 条件运算符 三元表达式 var 变量 61 判断表达式 true返回的结果 false返回的结果 var s 61 typeof str 61 61 34 number 34 34 这是数字 34 34 这是字符串 2 If el
  • Vuejs框架

    vue叫做渐进式框架 xff0c 由底层上传逐层 应用 xff0c 用来将页面代码进行组件化和规范化 xff0c 单页面开发 xff0c 提供浏览器加载速度 xff0c 加上代码写作 xff0c 采用mvvm模式 xff0c 可以实现动态加
  • 自定义指令、混入、路由、生命周期

    自定义指令 我们可以通过自定义指令为标签操作属性 xff0c 样式 xff0c 事件等内容 xff0c 但是指令要求以 v 开头 例如 xff1a lt input type 61 34 text 34 v foc gt lt input
  • node下的vue

    node下的vue node node相当于前端的服务器 xff0c 用于编译js xff0c vue和react框架可以在node环境下进行执行和安装 xff0c 为了让js下的ES6和typeScript进行兼容 xff0c 可以通过n

随机推荐