国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Arduino的OLED溫度計濕度計的制作教程

454398 ? 來源:工程師吳畏 ? 2019-08-01 10:39 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在這個項目中,我們將制作Arduino OLED溫度計和濕度計。我們將從DHT22傳感器讀取溫度和濕度,然后我們將在OLED屏幕上顯示數據。

OLED代表有機發光二極管,它們有多種不同尺寸可供選擇。我們要使用的尺寸是128X64(1.3英寸)。 OLED通過SPI和I2C通信與Arduino配合使用,但在我們的項目中,我們將使用SPI通信。

電路圖

首先,我們將OLED與Arduino連接起來。 OLED可以連接到I2C中的Arduino以及SPI。以I2C方式連接OLED的連接更容易,但SPI通信比I2C更快。因此,我們將使用SPI將OLED與Arduino連接起來。按照以下方式將OLED與Arduino連接:

將OLED上的CS引腳連接到Arduino上的引腳10

將OLED上的DC引腳連接到Arduino上的引腳9

將OLED上的RST引腳連接到Arduino上的引腳8

將OLED上的D1或CLK引腳連接到Arduino上的引腳11

將OLED上的D0或DIN引腳連接到引腳13在Arduino

我們已將OLED連接到引腳13,11,10,9和8,因為這些引腳用于SPI通信。接下來,將DHT22與Arduino連接。 DHT22傳感器與Arduino的連接如下:

將DHT22上的VCC連接到Arduino上的5V引腳

將DHT22上的GND連接到Arduino上的GND

將DHT22的數據引腳連接到Arduino上的引腳7

Arduino代碼

#include #include“DHT.h “#define DHTPIN 7 #define DHTTYPE DHT22 DHT傳感器(DHTPIN,DHTTYPE); U8GLIB_SH1106_128X64 oled(13,11,10,9,8); void setup(){sensor.begin(); oled.firstPage(); do {oled.setFont(u8g_font_fur14);//設置字體大小//在OLED上打印數據oled.drawStr(20,15,“歡迎”); oled.drawStr(40,40,“To”); oled.drawStr(5,60,“DIYHACKING “); } while(oled.nextPage()); delay(5000);} void loop(){float h = sensor.readHumidity();//讀取濕度值float t = sensor.readTemperature();//讀取溫度值float fah = sensor.readTemperature(true);//讀取Fahrenheitif中的溫度(isnan(h)|| isnan(t)|| isnan(fah)){//檢查我們是否收到值或notSerial.println(“無法讀取DHT傳感器!”); return;} float heat_index = sensor.computeHeatIndex(fah,h);//計算Fahrenheitfloat中的熱指數heat_indexC = sensor.convertFtoC(heat_index);//在Celsiusoled.firstPage()中計算熱量指數; do {oled.setFont(u8g_font_fub11);//設置字體大小//在OLBled.drawStr上打印數據(0,15,“Temp:”); oled.drawStr(0,40,“Hum:”); oled.drawStr(0,60,“嗨:“); oled.setPrintPos(72,15);//設置尺寸以打印temperatureoled.print(t,0); oled.println(“C”); oled.setPrintPos(72,40);//設置尺寸以打印humidoled.print(h,0); oled.println(“%”); oled.setPrintPos(72,60);//設置尺寸以打印熱量indexoled.print(heat_indexC,0); oled.println(“%”);} while(oled。 nextPage()); delay(2000); }

代碼說明

首先,我們包括DHT22傳感器和OLED的庫。 ‘ U8glib ’庫適用于OLED,它使代碼非常簡單。我們將使用“ U8glib ”庫的功能顯示OLED上的數據。

#include #include“DHT.h”接下來,我們定義了連接DHT22傳感器數據引腳的引腳,然后定義了DHT傳感器的類型。市場上還有一些其他類型的DHT傳感器。之后,我們初始化了連接OLED的引腳。

#define DHTPIN 7 #define DHTTYPE DHT22 DHT傳感器(DHTPIN,DHTTYPE); U8GLIB_SH1106_128X64 oled(13 ,11,10,9,8); 在設置功能中,我們給出命令以開始從DHT22傳感器接收值。然后我們設置字體并在OLED上打印“歡迎DIYHACKING”5秒鐘。如果您不喜歡,可以更改字體大小。你可以在這里找到不同的字體大小。

sensor.begin(); oled.firstPage(); do {oled.setFont(u8g_font_fur14);//設置字體大小//在OLED上打印數據oled.drawStr(20,15,“歡迎”); oled.drawStr(40,40,“To”); oled.drawStr(5,60,“DIYHACKING “); } while(oled.nextPage()); delay(5000);} 在循環函數中,我們從DHT22傳感器讀取濕度和溫度值,然后我們使用溫度計算熱量指數濕度。

float h = sensor.readHumidity();//讀取濕度值float t = sensor.readTemperature();//讀取溫度值float fah = sensor.readTemperature(true);//讀取Fahrenheitif中的溫度(isnan(h)|| isnan(t)|| isnan(fah)){//檢查我們是否收到值或notSerial.println(“無法讀取DHT傳感器!”); return; float heat_index = sensor.computeHeatIndex(fah,h);//計算Fahrenheitfloat中的熱指數heat_indexC = sensor.convertFtoC(heat_index);//以攝氏度計算熱指數最后,我們再次設置字體大小并在OLED上打印溫度,濕度和熱指數。您可以按照上面討論的鏈接更改字體大小,也可以在不同的維度設置數據。

oled.firstPage(); do {oled.setFont(u8g_font_fub11);//設置字體大小//在OLBED.drawStr上打印數據(0,15,“Temp:”); oled.drawStr(0,40,“Hum:”); oled.drawStr(0,60,“嗨:“); oled.setPrintPos(72,15);//設置尺寸以打印temperatureoled.print(t,0); oled.println(“C”); oled.setPrintPos(72,40);//設置尺寸以打印humidoled.print(h,0); oled.println(“%”); oled.setPrintPos(72,60);//設置尺寸以打印熱量indexoled.print(heat_indexC,0); oled.println(“%”);} while(oled。 nextPage()); delay(2000); }

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • OLED
    +關注

    關注

    121

    文章

    6358

    瀏覽量

    233645
  • 濕度計
    +關注

    關注

    0

    文章

    17

    瀏覽量

    11198
  • 溫度計
    +關注

    關注

    6

    文章

    410

    瀏覽量

    79900
  • Arduino
    +關注

    關注

    190

    文章

    6526

    瀏覽量

    196927
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    雙金屬溫度計特點需了解!

    溫度計
    jzyb
    發布于 :2026年02月27日 11:23:29

    使用雙金屬溫度計要了解哪些?

    溫度計
    jzyb
    發布于 :2026年01月09日 16:51:55

    雙金屬溫度計安裝要知道哪些?

    溫度計
    jzyb
    發布于 :2025年12月17日 15:43:19

    浮思特 | 電子溫度計單片機如何選型?ABOV單片機提供幾點很關鍵!

    一個優秀的電子溫度計,其核心往往在于內部單片機(MCU)的性能與匹配度。如何選擇一款合適的單片機,實現精準、穩定、低功耗的溫度測量與交互,是產品開發中的重要課題。本文將從技術維度,為大家梳理選型
    的頭像 發表于 12-15 09:43 ?466次閱讀
    浮思特 | 電子<b class='flag-5'>溫度計</b>單片機如何選型?ABOV單片機提供幾點很關鍵!

    標準鉑電阻溫度計與高精度測溫儀的重要作用

    溫度傳感器從元件到成品的生產鏈中,“校準調試” 從來不是簡單的檢測環節,而是決定傳感器 “價值核心” 的關鍵工序。這一步要想做好,離不開先進標準器的支撐,標準鉑電阻溫度計與高精度測溫儀堪稱 “黃金搭檔”,它們既是溫度測量準確性
    的頭像 發表于 12-10 10:49 ?718次閱讀

    用于智能溫度計的MG127藍牙芯片方案

    智能溫度計是可以在無感情況下感知人體或物體的溫度。這一應用廣泛被應用在人體健康數據的采集,養殖畜牧業,和物流/冷鏈行業。藍牙芯片作為實現設備無線通信的核心部件,對溫度計的性能和成本有著直接影響。
    的頭像 發表于 11-14 16:31 ?1060次閱讀

    多方面了解萬向型雙金屬溫度計

    溫度計
    華泰天科
    發布于 :2025年10月23日 16:28:09

    原來雙金屬溫度計有這些安裝方式!

    溫度計
    jzyb
    發布于 :2025年09月29日 16:23:57

    藍牙溫度計的理想儲能解決方案:永銘超級電容

    Supercapacitor永銘超級電容助力藍牙溫度計理想儲能超級電容助力藍牙溫度計發展隨著藍牙溫度計向智能化和無線化方向發展,設備的便捷性和功能性顯著提升,但傳統電池在續航能力、瞬時電流輸出和體積
    的頭像 發表于 09-01 10:01 ?527次閱讀
    藍牙<b class='flag-5'>溫度計</b>的理想儲能解決方案:永銘超級電容

    帶遠傳雙金屬溫度計的應用竟這么多

    溫度計
    華泰天科
    發布于 :2025年08月19日 13:54:07

    功耗創新低!涂鴉產品級Zigbee 3.0溫濕度計開發包,開箱即用、完全開源

    濕度計作為智能家居環境感知的核心組件,通過實時檢測溫濕度信息,可主動聯動暖通、加濕器等設備,幫助提升居住舒適度、降低能源消耗。這類產品通常是由電池供電,對低功耗的要求較高。而Zigbee天然支持
    的頭像 發表于 07-31 19:13 ?833次閱讀
    功耗創新低!涂鴉產品級Zigbee 3.0溫<b class='flag-5'>濕度計</b>開發包,開箱即用、完全開源

    帶遠傳雙金屬溫度計接線要知道什么?

    溫度計
    jzyb
    發布于 :2025年06月26日 20:14:53

    用樹莓派RP2350 DIY 桌面動態溫濕度計

    桌面動態溫濕度計本文介紹了DFrobotBeetleRP2350開發板結合DHT11模塊、鋰電池模塊、隨機眨眼動畫,實現OLED顯示的桌面動態溫濕度計的項目設計。一、項目介紹本項目包括工作原理:ADC電壓采集與電量轉換工程調試:
    的頭像 發表于 05-27 08:05 ?913次閱讀
    用樹莓派RP2350 DIY 桌面動態溫<b class='flag-5'>濕度計</b>

    樹莓派RP2350 - 桌面動態溫濕度計

    樹莓派RP2350 - 桌面動態溫濕度計 本文介紹了 DFRobot Beetle RP2350 開發板結合 DHT11 模塊、鋰電池模塊、隨機眨眼動畫,實現 OLED 顯示的桌面動態溫濕度計的項目
    發表于 05-26 02:02

    雙金屬溫度計的作用有哪些?

    溫度計
    華泰天科
    發布于 :2025年04月09日 17:04:43