美文网首页arduino scratch创客教育
arduino 0.96 128*64OLED 显示 DHT12

arduino 0.96 128*64OLED 显示 DHT12

作者: 爱猫猫的老狗 | 来源:发表于2017-10-30 16:21 被阅读59次
arduino 0.96 128*64OLED 显示 DHT12 温度数值

连接线:

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 温度数值

相关文章

网友评论

    本文标题:arduino 0.96 128*64OLED 显示 DHT12

    本文链接:https://www.haomeiwen.com/subject/xofupxtx.html