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// 128x64 I2C OLED#include <dht11.h>// DHT11数字传感器库#include \"U8glib.h\"// OLED库U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // I2Cdht11 DHT11;#define DHT11PIN 2// Data链接数字针脚2void draw(void) {u8g.setFont(u8g_font_8x13); //使用8x13大小的字符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);}