极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3772|回复: 3

使用 u8blib + 12864 + 6個 DHT22 的溫濕度

[复制链接]
发表于 2017-12-14 14:25:45 | 显示全部楼层 |阅读模式
本帖最后由 galaxy 于 2017-12-15 07:37 编辑

//0022 可過
// 度 C 有完整顯示

#include "U8glib.h"
U8GLIB_ST7920_128X64 u8g(4,3,2, U8G_PIN_NONE);
//==============================================================
#include <DHT22.h>
#include <Wire.h>

#define DHT22_PIN_1 8     //定義 DHT22 使用的腳位
#define DHT22_PIN_2 9     //定義 DHT22 使用的腳位
#define DHT22_PIN_3 10    //定義 DHT22 使用的腳位
#define DHT22_PIN_4 11    //定義 DHT22 使用的腳位
#define DHT22_PIN_5 12    //定義 DHT22 使用的腳位
#define DHT22_PIN_6 13    //定義 DHT22 使用的腳位
DHT22 myDHT22_1(DHT22_PIN_1);
DHT22 myDHT22_2(DHT22_PIN_2);
DHT22 myDHT22_3(DHT22_PIN_3);
DHT22 myDHT22_4(DHT22_PIN_4);
DHT22 myDHT22_5(DHT22_PIN_5);
DHT22 myDHT22_6(DHT22_PIN_6);

char str[10];

void setup() { }
void loop(void) {
  
  DHT22_ERROR_t errorCode;
  errorCode = myDHT22_1.readData();
  errorCode = myDHT22_2.readData();
  errorCode = myDHT22_3.readData();
  errorCode = myDHT22_4.readData();
  errorCode = myDHT22_5.readData();
  errorCode = myDHT22_6.readData();
  
  float t1 = (myDHT22_1.getTemperatureC()); //讀取溫度
  float h1 = (myDHT22_1.getHumidity()); //讀取濕度  
  
  float t2 = (myDHT22_2.getTemperatureC()); //讀取溫度
  float h2 = (myDHT22_2.getHumidity()); //讀取濕度  
  
  float t3 = (myDHT22_3.getTemperatureC()); //讀取溫度
  float h3 = (myDHT22_3.getHumidity()); //讀取濕度  
  
  float t4 = (myDHT22_4.getTemperatureC()); //讀取溫度
  float h4 = (myDHT22_4.getHumidity()); //讀取濕度

  float t5 = (myDHT22_5.getTemperatureC()); //讀取溫度
  float h5 = (myDHT22_5.getHumidity()); //讀取濕度
  
  float t6 = (myDHT22_6.getTemperatureC()); //讀取溫度
  float h6 = (myDHT22_6.getHumidity()); //讀取濕度

  u8g.firstPage();  
  do {
    u8g.setFont(u8g_font_6x13); //設定字型 9 Pixel Hifh
//=====================================================================   
    u8g.drawStr( 2, 9, "T1="); // (?點,橫點, "T=");
    u8g.drawStr( 15, 9, dtostrf(t1, 5, 1, str));
    u8g.drawStr( 46, 9, "\260C"); // (?點,橫點, "\260C");
   
    u8g.drawStr( 65, 9, "H1="); // (?點,橫點, "H=");
    u8g.drawStr( 78, 9, dtostrf(h1, 5, 1, str));
    u8g.drawStr(109, 9, "%"); // (?點,橫點, "%");
//=====================================================================   
    u8g.drawStr( 2, 20, "T2="); // (?點,橫點, "T=");
    u8g.drawStr( 15, 20, dtostrf(t2, 5, 1, str));
    u8g.drawStr( 46, 20, "\260C"); // (?點,橫點, "\260C");
   
    u8g.drawStr( 65, 20, "H2="); // (?點,橫點, "H=");
    u8g.drawStr( 78, 20, dtostrf(h2, 5, 1, str));
    u8g.drawStr(109, 20, "%"); // (?點,橫點, "%");
//=====================================================================   
    u8g.drawStr( 2, 31, "T3="); // (?點,橫點, "T=");
    u8g.drawStr( 15, 31, dtostrf(t3, 5, 1, str));
    u8g.drawStr( 46, 31, "\260C"); // (?點,橫點, "\260C");
   
    u8g.drawStr( 65, 31, "H3="); // (?點,橫點, "H=");
    u8g.drawStr( 78, 31, dtostrf(h3, 5, 1, str));
    u8g.drawStr(109, 31, "%"); // (?點,橫點, "%");   
//=======================================================================
    u8g.drawStr( 2, 42, "T4="); // (?點,橫點, "T=");
    u8g.drawStr( 15, 42, dtostrf(t4, 5, 1, str));
    u8g.drawStr( 46, 42, "\260C"); // (?點,橫點, "\260C");
   
    u8g.drawStr( 65, 42, "H4="); // (?點,橫點, "H=");
    u8g.drawStr( 78, 42, dtostrf(h4, 5, 1, str));
    u8g.drawStr(109, 42, "%"); // (?點,橫點, "%");
//=======================================================================
    u8g.drawStr( 2, 53, "T5="); // (?點,橫點, "T=");
    u8g.drawStr( 15, 53, dtostrf(t5, 5, 1, str));
    u8g.drawStr( 46, 53, "\260C"); // (?點,橫點, "\260C");
   
    u8g.drawStr( 65, 53, "H5="); // (?點,橫點, "H=");
    u8g.drawStr( 78, 53, dtostrf(h5, 5, 1, str));
    u8g.drawStr(109, 53, "%"); // (?點,橫點, "%");
//=======================================================================
    u8g.drawStr( 2, 63, "T6="); // (?點,橫點, "T=");
    u8g.drawStr( 15, 63, dtostrf(t6, 5, 1, str));
    u8g.drawStr( 46, 63, "\260C"); // (?點,橫點, "\260C");
   
    u8g.drawStr( 65, 63, "H6="); // (?點,橫點, "H=");
    u8g.drawStr( 78, 63, dtostrf(h6, 5, 1, str));
    u8g.drawStr(109, 63, "%"); // (?點,橫點, "%");
//=======================================================================
  } while( u8g.nextPage() );
}

//=======================================================================
有空再畫電路上來....
其實會看程序的話...接腳都在程序裡面可以看出端倪

這個程序算是個框架,把繪圖屏幕當作是文字屏幕來使用,很方便

6個DHT22.jpg

DHT22.zip

26.74 KB, 下载次数: 20

回复

使用道具 举报

发表于 2017-12-16 14:36:15 | 显示全部楼层
你好,麻烦有时间确认下这个问题
http://www.geek-workshop.com/thread-31002-1-1.html
回复 支持 反对

使用道具 举报

发表于 2019-8-10 08:51:14 | 显示全部楼层
中国的骄傲
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2019-9-19 15:13 , Processed in 0.049089 second(s), 27 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表