u8glib_arduino_OLED0.96
一、电路连接

DHT11接线方式:
GND<————>GND
DATA<————>2(数字输入/输出)
VCC<————>5V
OLED接线方式:
VCC<————>3.3V
GND<————>GND
SCL<————>SCL
SDA<————>SDA
LED1<————>10
LED2<————>11

二、实验材料

Uno R3开发板
DH11传感器
面包板及配套连接线
1个0.96OLED

//OLED接线方式:
//VCC<————>3.3V
//GND<————>GND
//SCL<————>SCL
//SDA<————>SDA
//
//DHT11接线方式:
//GND<————>GND
//DATA<————>2(数字输入/输出)
//VCC<————>5V
// 128×64 I2C OLED
#include <dht11.h>
// DHT11数字传感器库
#include “U8glib.h”
// OLED库

U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE);    // I2C

dht11 DHT11;

#define DHT11PIN 2
// Data链接数字针脚2

void draw(void) {

  u8g.setFont(u8g_font_8x13); //使用8×13大小的字符
  u8g.setPrintPos(0, 20); // 对应 x,y 轴值
  u8g.print(“HUMI(%) :”);
  u8g.setPrintPos(73, 20);
  u8g.print((float)DHT11.humidity);
  u8g.setPrintPos(0, 40);
  u8g.print(“TEMP(oC):”);
  u8g.setPrintPos(73, 40);
  u8g.print((float)DHT11.temperature);
}

void setup()
{
  Serial.begin(9600);//串口波特率
  Serial.println(“DHT11 TEST PROGRAM “);
  Serial.print(“LIBRARY VERSION: “);
  Serial.println(DHT11LIB_VERSION);
  Serial.println();
}

void loop()
{
  Serial.println(“\n”);

  int chk = DHT11.read(DHT11PIN);

  Serial.print(“Read sensor: “);
  switch (chk)
  {
    case DHTLIB_OK:
                Serial.println(“OK”);
                break;
    case DHTLIB_ERROR_CHECKSUM:
                Serial.println(“Checksum error”);
                break;
    case DHTLIB_ERROR_TIMEOUT:
                Serial.println(“Time out error”);
                break;
    default:
                Serial.println(“Unknown error”);
                break;
  }

  Serial.print(“Humidity (%): “);
  Serial.println((float)DHT11.humidity, 2);

  Serial.print(“Temperature (oC): “);
  Serial.println((float)DHT11.temperature, 2);

  u8g.firstPage();  
  do {
    draw();
  } while( u8g.nextPage() );

  delay(200);
}

————————————————

版权声明:本文为icloudelectron原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/iCloudelectron/p/13139900.html