国产精品久久久久久亚洲影视,插我舔内射18免费视频,国产+精品+在线观看,国产精品18久久久久久麻辣,丰满少妇69激情啪啪无

0 賣盤信息
BOM詢價
您現(xiàn)在的位置: 首頁 > 電子資訊 >技術(shù)信息 > lua編程入門教程,用NodeMCU在OLED上顯示溫濕度

lua編程入門教程,用NodeMCU在OLED上顯示溫濕度

來源: 中電網(wǎng)
2020-11-10
類別:技術(shù)信息
eye 46
文章創(chuàng)建人 拍明

原標題:LEDlua編程入門教程,用NodeMCU在OLED上顯示溫濕度

硬件準備

  1. NodeMCU 開發(fā)板(基于 ESP8266)

  2. DHT11 或 DHT22 溫濕度傳感器

  3. 0.96 英寸 I2C OLED 顯示屏(通?;?SSD1306 驅(qū)動芯片)

  4. 面包板和杜邦線


軟件準備

  1. Arduino IDE(用于編寫和上傳代碼)

  2. NodeMCU 開發(fā)板驅(qū)動(確保電腦能識別 NodeMCU)

  3. 安裝必要的庫:

    • Adafruit_SSD1306(OLED 驅(qū)動庫)

    • Adafruit_GFX(圖形庫)

    • DHT(DHT 傳感器庫)


接線說明

DHT 傳感器接線

DHT 引腳 | NodeMCU 引腳
VCC | 3V3
GND | GND
DATA | D4 (GPIO2)

OLED 顯示屏接線

OLED 引腳 | NodeMCU 引腳
VCC | 3V3
GND | GND
SCL | D1 (GPIO5)
SDA | D2 (GPIO4)


代碼實現(xiàn)

以下是 Arduino C++ 代碼,適用于 NodeMCU:

#include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #include <DHT.h> // OLED 顯示屏參數(shù) #define SCREEN_WIDTH 128 #define SCREEN_HEIGHT 64 #define OLED_RESET -1  // NodeMCU 沒有硬件復(fù)位引腳,設(shè)為 -1 Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); // DHT 傳感器參數(shù) #define DHTPIN D4       // DHT 數(shù)據(jù)引腳連接到 NodeMCU 的 D4 #define DHTTYPE DHT11   // 使用 DHT11 傳感器(如果使用 DHT22,請改為 DHT22) DHT dht(DHTPIN, DHTTYPE); void setup() {  // 初始化串口監(jiān)視器  Serial.begin(115200);  Serial.println("DHT11/DHT22 + OLED 顯示示例");  // 初始化 DHT 傳感器  dht.begin();  // 初始化 OLED 顯示屏  if (!display.begin(SSD1306_I2C_ADDRESS, 0x3C)) { // 默認 I2C 地址為 0x3C    Serial.println(F("OLED 初始化失敗"));    for (;;);  }  display.clearDisplay();  display.setTextSize(1);  display.setTextColor(SSD1306_WHITE);  display.setCursor(0, 0);  display.println("Initializing...");  display.display();  delay(2000); } void loop() {  // 讀取溫濕度數(shù)據(jù)  float humidity = dht.readHumidity();  float temperature = dht.readTemperature();  // 檢查是否讀取失敗  if (isnan(humidity) || isnan(temperature)) {    Serial.println("Failed to read from DHT sensor!");    display.clearDisplay();    display.setCursor(0, 0);    display.println("DHT Sensor Error!");    display.display();    return;  }  // 打印到串口監(jiān)視器  Serial.print("Humidity: ");  Serial.print(humidity);  Serial.print(" % ");  Serial.print("Temperature: ");  Serial.print(temperature);  Serial.println(" *C");  // 在 OLED 上顯示  display.clearDisplay();  display.setCursor(0, 0);  display.setTextSize(1);  display.println("DHT11/DHT22 Sensor");  display.setTextSize(2);  display.setCursor(0, 20);  display.print("T: ");  display.print(temperature);  display.print(" C");  display.setCursor(0, 40);  display.print("H: ");  display.print(humidity);  display.print(" %");  display.display();  // 延遲 2 秒  delay(2000); }


QQ_1744792246129.png


代碼說明

  1. 庫的作用:

    • Adafruit_SSD1306 和 Adafruit_GFX:用于驅(qū)動 OLED 顯示屏。

    • DHT:用于讀取 DHT 傳感器的溫濕度數(shù)據(jù)。

  2. 初始化:

    • 初始化串口監(jiān)視器、DHT 傳感器和 OLED 顯示屏。

  3. 數(shù)據(jù)讀取:

    • 使用 dht.readHumidity() 和 dht.readTemperature() 讀取溫濕度數(shù)據(jù)。

    • 檢查數(shù)據(jù)是否有效(避免讀取失敗導(dǎo)致程序崩潰)。

  4. 數(shù)據(jù)顯示:

    • 在 OLED 顯示屏上顯示溫濕度數(shù)據(jù),使用 display.setCursor() 設(shè)置顯示位置,display.print() 打印文本。


上傳代碼

  1. 打開 Arduino IDE,選擇 工具 -> 開發(fā)板 -> NodeMCU 1.0 (ESP-12E Module)。

  2. 選擇正確的端口(工具 -> 端口)。

  3. 點擊“上傳”按鈕,將代碼上傳到 NodeMCU。


運行效果

  1. 打開串口監(jiān)視器(波特率 115200),可以看到溫濕度數(shù)據(jù)不斷打印。

  2. OLED 顯示屏上會實時顯示當(dāng)前的溫度和濕度。


注意事項

  1. 電源問題:

    • NodeMCU 和 OLED 顯示屏的工作電壓均為 3.3V,不要直接連接 5V 電源。

  2. I2C 地址:

    • 如果 OLED 顯示屏不顯示,嘗試修改 display.begin(SSD1306_I2C_ADDRESS, 0x3C) 中的地址為 0x3D。

  3. 傳感器選擇:

    • DHT11 精度較低,但價格便宜;DHT22 精度更高,適合需要高精度的場景。


責(zé)任編輯:David

【免責(zé)聲明】

1、本文內(nèi)容、數(shù)據(jù)、圖表等來源于網(wǎng)絡(luò)引用或其他公開資料,版權(quán)歸屬原作者、原發(fā)表出處。若版權(quán)所有方對本文的引用持有異議,請聯(lián)系拍明芯城(marketing@iczoom.com),本方將及時處理。

2、本文的引用僅供讀者交流學(xué)習(xí)使用,不涉及商業(yè)目的。

3、本文內(nèi)容僅代表作者觀點,拍明芯城不對內(nèi)容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關(guān)結(jié)果。

4、如需轉(zhuǎn)載本方擁有版權(quán)的文章,請聯(lián)系拍明芯城(marketing@iczoom.com)注明“轉(zhuǎn)載原因”。未經(jīng)允許私自轉(zhuǎn)載拍明芯城將保留追究其法律責(zé)任的權(quán)利。

拍明芯城擁有對此聲明的最終解釋權(quán)。

相關(guān)資訊

資訊推薦
云母電容公司_云母電容生產(chǎn)廠商

云母電容公司_云母電容生產(chǎn)廠商

74ls74中文資料匯總(74ls74引腳圖及功能_內(nèi)部結(jié)構(gòu)及應(yīng)用電路)

74ls74中文資料匯總(74ls74引腳圖及功能_內(nèi)部結(jié)構(gòu)及應(yīng)用電路)

開關(guān)三極管13007的規(guī)格參數(shù)、引腳圖、開關(guān)電源電路圖?三極管13007可以用什么型號替代?

開關(guān)三極管13007的規(guī)格參數(shù)、引腳圖、開關(guān)電源電路圖?三極管13007可以用什么型號替代?

芯片lm2596s開關(guān)電壓調(diào)節(jié)器的中文資料_引腳圖及功能_內(nèi)部結(jié)構(gòu)及原理圖_電路圖及封裝

芯片lm2596s開關(guān)電壓調(diào)節(jié)器的中文資料_引腳圖及功能_內(nèi)部結(jié)構(gòu)及原理圖_電路圖及封裝

芯片UA741運算放大器的資料及參數(shù)_引腳圖及功能_電路原理圖?ua741運算放大器的替代型號有哪些?

芯片UA741運算放大器的資料及參數(shù)_引腳圖及功能_電路原理圖?ua741運算放大器的替代型號有哪些?

28nm光刻機卡住“02專項”——對于督工部分觀點的批判(睡前消息353期)

28nm光刻機卡住“02專項”——對于督工部分觀點的批判(睡前消息353期)

拍明芯城微信圖標

各大手機應(yīng)用商城搜索“拍明芯城”

下載客戶端,隨時隨地買賣元器件!

拍明芯城公眾號
拍明芯城抖音
拍明芯城b站
拍明芯城頭條
拍明芯城微博
拍明芯城視頻號
拍明
廣告
恒捷廣告
廣告
深亞廣告
廣告
原廠直供
廣告