最新消息:380元/半年,推荐全网最具性价比的一站式编程学习平台码丁实验室

arduino 0.96 128*64OLED 显示 DHT12 温度数值

Arduino 少儿编程 2388浏览 0评论

友情提示:380元/半年,儿童学编程,就上码丁实验室

arduino 0.96 128*64OLED 显示 DHT12 温度数值
图片发自简书App

连接线:

DHT12温度传感器的接线方法见上一篇文章
OLED的接线方法见我的第2片文章

上代码:

 *2017.10.30
 *作者:爱猫猫的老狗
 *著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 */
#include "U8glib.h"
U8GLIB_SH1106_128X64 u8g(U8G_I2C_OPT_NONE); // I2C / TWI 
#include "DHT.h"
#define DHTPIN 2     // what digital pin we're connected to
#define DHTTYPE DHT11   // DHT 11
DHT dht(DHTPIN, DHTTYPE);

void setup(void) {
 dht.begin();
}

void loop(void) {
  delay(2000);
  int t = dht.readTemperature()-3;//读取温度数值,校正温度-3
  u8g.firstPage();   //一下是显示实现部分
  do {
  u8g.setFont(u8g_font_fub30);//设置字体和自号,目前测试字号有fub14,17,20,30,49n
  u8g.setPrintPos(40, 50); //显示的位置 左右0-128  上下0-96
  u8g.print(t);//显示变量Temperature的值
  u8g.setFont(u8g_font_fub17);//设置字体和自号,目前测试字号有fub14,17,20,30
  u8g.setPrintPos(90, 20); //显示的位置
  u8g.print(".");//显示单位
  u8g.setFont(u8g_font_fub30);//设置字体和自号,目前测试字号有fub14,17,20,30
  u8g.setPrintPos(95, 50); //显示的位置
  u8g.print("C");//显示单位
  } while( u8g.nextPage() );
  
}

实验发现u8g_font_fub17 这个字号很占用内存,尽量不要使用。

arduino 0.96 128*64OLED 显示 DHT12 温度数值
图片发自简书App

您必须 登录 才能发表评论!