日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 基礎入門 >> Arduino開發學習 >> 正文

Arduino提高篇06—溫濕度OLED顯示_arduino溫濕度oled顯示

作者:佚名    文章來源:網絡    點擊數:    更新時間:2023/7/29

 
本篇結合溫濕度傳感器DHT11和OLED,將采集到的溫濕度顯示到OLED屏幕上。

DHT11使用上篇介紹的「DHT sensor library」庫,OLED使用U8g2庫,庫安裝請參照前面的文章介紹。

一. 實驗材料

  • Uno R3開發板
  • 配套USB數據線
  • 面包板及配套連接線
  • OLED顯示屏
  • DHT11傳感器模塊

二. 實驗步驟

1. 根據原理圖搭建電路圖。

OLED屏的VCC和GND分別連接開發板的3.3V和GND,OLED屏的SDA和SCL分別連接開發板A4和A5。DHT11模塊VCC、GND分別連接到開發板的5V、GND,模塊的DATA引腳連接開發板數字引腳2。

實驗原理圖如下圖所示:

 

實物連接圖如下圖所示:

 

2. 新建sketch,拷貝如下代碼替換自動生成的代碼并進行保存。
#include 
#include 
#include 
#include "DHT.h"
#define DHTPIN  2
#define DHTTYPE DHT11
//iic驅動方式
U8G2_SSD1306_128X64_NONAME_1_SW_I2C u8g2(U8G2_R0, /* clock=*/ SCL, /* data=*/ SDA, /* reset=*/ U8X8_PIN_NONE);
DHT dht(DHTPIN, DHTTYPE);
void setup() {
  u8g2.begin();
  dht.begin();
}
char h_str[3];
char t_str[3];
float h;
float t;
void loop() {
  h = dht.readHumidity();//讀濕度
  t = dht.readTemperature();//讀溫度(攝氏度)
  strcpy(h_str, u8x8_u8toa(h, 2));    /* convert m to a string with two digits */
  strcpy(t_str, u8x8_u8toa(t, 2));    /* convert m to a string with two digits */
  u8g2.firstPage();
  do {
    u8g2.setFont(u8g2_font_fur20_tf);
    u8g2.drawStr(0, 23, "T");
    u8g2.drawStr(20, 23, ":");
    u8g2.drawStr(40, 23, t_str);
    u8g2.drawStr(90, 23, "C");
    u8g2.drawStr(0, 63, "H");
    u8g2.drawStr(20, 63, ":");
    u8g2.drawStr(40, 63, h_str);
    u8g2.drawStr(90, 63, "%");
  } while ( u8g2.nextPage() );
  delay(1000);
}

 

3. 連接開發板,設置好對應端口號和開發板類型,進行程序下載。

 

三. 實驗現象

OLED屏幕刷新顯示溫濕度。

 

Tags:arduino,溫濕度,oled顯示  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 平乐县| 清徐县| 隆尧县| 洛扎县| 浮山县| 晋宁县| 贵溪市| 临清市| 山东省| 邢台县| 安溪县| 正镶白旗| 固阳县| 图木舒克市| 昆山市| 肃宁县| 新邵县| 夏河县| 东方市| 高邑县| 扎兰屯市| 舞钢市| 广饶县| 宜阳县| 黑河市| 遂平县| 册亨县| 南开区| 镇江市| 阿荣旗| 凯里市| 四会市| 上虞市| 松滋市| 博客| 房山区| 西峡县| 涟水县| 乐昌市| 翼城县| 石城县|