- UID
- 373967
- 帖子
- 8835
- 主題
- 2609
- 精華
- 0
- 積分
- 999
- 楓幣
- 0
- 威望
- 976
- 存款
- 34593
- 贊助金額
- 0
- 推廣
- 0
- GP
- 1205
- 閱讀權限
- 50
- 在線時間
- 453 小時
- 註冊時間
- 2023-1-12
- 最後登入
- 2024-11-14
|
ESP32S是一種功能強大的Wi-Fi和藍牙模組,可用於製作各種智能設備,包括智能門鈴。以下是一些概括的步驟,以幫助您開始製作ESP32S智能門鈴:
集成硬件:您需要購買一些硬件,例如ESP32S開發板、繼電器模塊、按鈕、無源蜂鳴器、可變電阻器和一個外部電源,以及其他必要的零件。
連接硬件:根據硬件的腳位圖和ESP32S的引腳定義,將各個模塊連接到ESP32S開發板上。例如,您可以將繼電器模塊連接到ESP32S的GPIO引腳上,並將按鈕和可變電阻器連接到其他GPIO引腳上。
編寫代碼:使用Arduino IDE和ESP32S的開發庫,編寫代碼以實現門鈴的功能。您需要編寫代碼以檢測按鈕的按下事件,啟動繼電器模塊,並控制無源蜂鳴器發出聲音。同時,您還可以添加一些額外的功能,例如使用Wi-Fi或藍牙設置門鈴的音量或音調。
上傳代碼:完成代碼後,將其上傳到ESP32S開發板上,然後將開發板連接到電源和門鈴電路中。
總體而言,ESP32S是製作智能門鈴的一個強大的平台,它具有豐富的硬件和軟件資源,可以實現各種功能。
ESP32S智能門鈴的零件清單、腳位連接和程式碼。
零件清單:
ESP32S模塊
USB Type-C電源線
0.96寸OLED顯示屏
5V主板繼電器模塊
電容:100μF、10μF
電阻:10kΩ
喇叭
按鈕
腳位連接:
ESP32S模塊與其他模塊之間的連接如下:
ESP32S的D5腳位連接到5V主板繼電器模塊的IN1腳位
ESP32S的D4腳位連接到按鈕的一端,另一端連接到GND
ESP32S的D21腳位連接到喇叭的正極,另一端連接到GND
ESP32S的3V3和GND腳位連接到OLED顯示屏的對應腳位
ESP32S的D22和D23腳位連接到OLED顯示屏的SDA和SCL腳位
ESP32S的VIN腳位連接到5V主板繼電器模塊的VCC腳位
ESP32S的GND腳位連接到5V主板繼電器模塊的GND腳位
ESP32S的EN腳位連接到3.3V電源線的一端,另一端連接到GND
程式碼:
#include <Arduino.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define OLED_SDA 23
#define OLED_SCL 22
#define OLED_RST 16
Adafruit_SSD1306 display(OLED_SDA, OLED_SCL, OLED_RST);
#define BUTTON_PIN 4
#define RELAY_PIN 5
#define SPEAKER_PIN 21
void setup() {
Serial.begin(115200);
pinMode(BUTTON_PIN, INPUT_PULLUP);
pinMode(RELAY_PIN, OUTPUT);
pinMode(SPEAKER_PIN, OUTPUT);
digitalWrite(RELAY_PIN, LOW);
digitalWrite(SPEAKER_PIN, LOW);
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay();
display.display();
}
void loop() {
if (digitalRead(BUTTON_PIN) == LOW) {
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0,0);
display.println("Doorbell pressed!");
display.display();
digitalWrite(RELAY_PIN, HIGH);
tone(SPEAKER_PIN, 1000);
delay(500);
digitalWrite(RELAY_PIN, LOW);
noTone(SPEAKER_PIN);
delay(2000);
display.clearDisplay();
display.display();
}
} |
|