最新消息:码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

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

Arduino 少儿编程 2412浏览 0评论

码丁实验室,一站式儿童编程学习产品,寻地方代理合作共赢,微信联系:leon121393608。

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

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