注釈
こんにちは、SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts Communityへようこそ!Facebook上で、仲間と一緒にRaspberry Pi、Arduino、ESP32をさらに深く探求しましょう。
なぜ参加するのか?
専門的なサポート:購入後の問題や技術的な課題をコミュニティやチームの助けを借りて解決。
学びと共有:スキルを向上させるためのヒントやチュートリアルを交換。
限定プレビュー:新製品発表や予告編に早期アクセス。
特別割引:最新製品の特別割引を楽しむ。
フェスティブプロモーションとプレゼント:プレゼントやホリデープロモーションに参加。
👉 私たちと一緒に探索と創造を始める準備はできましたか?[ここ]をクリックして、今すぐ参加しましょう!
レッスン18: 温度センサーモジュール (DS18B20)
このレッスンでは、ESP32開発ボードを使用してDS18B20温度センサーモジュールから温度データを読み取る方法を学びます。DallasTemperatureライブラリを使用してセンサーとインターフェースし、シリアルモニタに摂氏および華氏単位で温度を表示します。
必要な部品
このプロジェクトには以下の部品が必要です。
すべての部品が揃ったキットを購入すると便利です。リンクはこちら:
Name |
ITEMS IN THIS KIT |
LINK |
---|---|---|
Universal Maker Sensor Kit |
94 |
以下のリンクから個別に購入することもできます。
Component Introduction |
Purchase Link |
---|---|
ESP32 & Development Board |
|
- |
|
配線
コード
注釈
ライブラリをインストールするには、Arduino Library Managerを使用して "DallasTemperature" を検索し、インストールしてください。
コード解析
ライブラリのインクルード
OneWireおよびDallasTemperatureライブラリのインクルードにより、DS18B20センサーとの通信が可能になります。
注釈
ライブラリをインストールするには、Arduino Library Managerを使用して "DallasTemperature" を検索し、インストールしてください。
#include <OneWire.h> #include <DallasTemperature.h>
センサーデータピンの定義
DS18B20はArduinoのデジタルピン25に接続されています。
#define ONE_WIRE_BUS 25
センサーの初期化
OneWireインスタンスおよびDallasTemperatureオブジェクトが作成され、初期化されます。
OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire);
セットアップ関数
``setup()``関数では、センサーの初期化とシリアル通信の設定を行います。
void setup(void) { sensors.begin(); // Start up the library Serial.begin(9600); }
メインループ
``loop()``関数では、プログラムが温度の読み取りを要求し、摂氏および華氏でシリアルモニタに表示します。
void loop(void) { sensors.requestTemperatures(); Serial.print("Temperature: "); Serial.print(sensors.getTempCByIndex(0)); Serial.print("℃ | "); Serial.print((sensors.getTempCByIndex(0) * 9.0) / 5.0 + 32.0); Serial.println("℉"); delay(500); }