Search Code

Èkọ́ ESP32 13/55 - Arduino Beep pẹ̀lú Active Buzzer | SunFounder's ESP32 IoT Learning kit

Èkọ́ ESP32 13/55 - Arduino Beep pẹ̀lú Active Buzzer | SunFounder's ESP32 IoT Learning kit

Nínú ẹ̀kọ́ yìí, a óò kọ́ bí a ṣe lè ṣàkóso buzzer tí ń ṣiṣẹ́ nípa lílo ESP32 microcontroller àti transistor. Iṣẹ́ náà wé mọ́ dídá buzzer náà ṣiṣẹ́ àti dídá a dúró, tí ó ń dá ohùn beeping. Pẹ̀lú agbára Wi-Fi àti Bluetooth tí ESP32 ní, o lè gbòòrò iṣẹ́ yìí sí àwọn IoT applications tí ó túbọ̀ díjú ní ọjọ́ iwájú.

Àwọn èròjà tí a óò lò pẹ̀lú ESP32 board, active buzzer, transistor (S8050), àti resistor. Nípa dídá àwọn èròjà wọ̀nyí pọ̀ ní ọ̀nà tí ó tọ́, a lè ṣàkóso ohùn buzzer náà nípasẹ̀ ESP32. Ní àfikún, a óò pèsè àkọsílẹ̀ kúkúrú nípa bí a ṣe ń so àwọn okun àti kóòdù tí a nílò láti mú iṣẹ́ yìí bẹ̀rẹ̀. Fún ìmúdájú síwájú sí i, rí i pé o wo fídíò tí ó bá ẹ̀kọ́ yìí lọ (nínú fídíò ní 00:00).

S87050_transistor

Àlàyé Hardware

Àwọn èròjà pàtàkì ti iṣẹ́ yìí pẹ̀lú ESP32 microcontroller, active buzzer, àti S8050 transistor. ESP32 jẹ́ microcontroller alágbára tí ó ní Wi-Fi àti Bluetooth, tí ó ń gba ọ̀pọ̀lọpọ̀ IoT projects. Active buzzer ń dá ohùn nígbà tí a bá fi voltage sí i, nígbà tí S8050 transistor ń ṣiṣẹ́ bíi switch láti ṣàkóso buzzer náà pẹ̀lú voltage kekere láti ọ̀dọ̀ ESP32.

Transistor náà ní pins mẹ́ta: collector, base, àti emitter. Nígbà tí a bá fi voltage sí base pin nípasẹ̀ resistor, ó ń jẹ́ kí current ṣàn láti collector sí emitter, nípa bẹ́ẹ̀ ni ó ń fi agbára fún buzzer náà. Ètò yìí ń dáni lójú pé a lè ṣàkóso buzzer náà láìsí ewu láti rọ́ àwọn GPIO pins ti ESP32.

ESP32-13-buzzer-schematic

Àwọn Àlàyé Datasheet

Olùṣe SunFounder
Nọ́mbà apá TMBB 12 A05
Voltage tí ń ṣiṣẹ́ 3–8 V
Voltage tí a ṣe àmìn sí 5 V
Current tí ó pọ̀ jù 30 mA
Ìgbohùn tí ń yípo 2700 ± 300 Hz

 

  • Lo 1 kΩ resistor láti dín current kù sí base transistor.
  • Rí i pé active buzzer ti so pọ̀ dáradára pẹ̀lú àwọn terminals rere àti odi.
  • Tún ṣàyẹ̀wò àwọn ìsopọ̀ pin láti yẹra fún short circuits.
  • Lo breadboard fún àwọn ìsopọ̀ àti àtúnṣe tí ó rọrùn.
  • Buzzer náà lè ṣiṣẹ́ ní 3.3V àti 5V, ṣùgbọ́n fi agbára fún un ní ìbámu pẹ̀lú àìní circuit rẹ.

Àwọn Ìtọ́nisọ́nà Ìsopọ̀ Okun

ESP32-13-buzzer-wriing

Láti so àwọn èròjà pọ̀, bẹ̀rẹ̀ nípa fífi active buzzer sí inú breadboard. So terminal rere ti buzzer náà sí pin 3.3V lórí ESP32. Terminal odi ti buzzer náà yẹ kí ó so pọ̀ sí collector pin ti S8050 transistor. Nígbà tí ó yá, fi S8050 transistor sí inú breadboard, rí i pé ẹ̀gbẹ́ pẹ̀lẹ́bẹ̀ náà kọjú sí ọ̀dọ̀ rẹ. Pin òsì (collector) so pọ̀ sí terminal odi ti buzzer náà, pin àárín (base) so pọ̀ sí 1 kΩ resistor, àti pin ọ̀tún (emitter) so pọ̀ sí ilẹ̀.

Nísinsin yìí, mú opin kejì ti 1 kΩ resistor kí o sì so ọ́ pọ̀ sí GPIO pin 14 lórí ESP32. Ní ìparí, so emitter pin ti transistor náà sí ọ̀nà ilẹ̀ lórí breadboard. Rí i pé gbogbo àwọn ìsopọ̀ ti lágbára kí o sì tún ṣàyẹ̀wò ìtòlẹ́sẹ̀ àwọn pin kí o tó fi agbára sí circuit náà.

Àwọn Àpẹẹrẹ Kóòdù & Ìtọ́sọ́nà

Èyí ni àkọsílẹ̀ kúkúrú ti kóòdù tí ń ṣàkóso buzzer náà. Kọ́kọ́, a ṣàlàyé pin tí ó so pọ̀ sí buzzer náà:

const int buzzerPin = 14; // pin buzzer náà

Ìlà yìí ṣètò variable buzzerPin láti tọ́ka sí pin 14 lórí ESP32, tí a ń lò láti ṣàkóso buzzer náà.

Nígbà tí ó yá, a ṣètò pin buzzer náà gẹ́gẹ́ bíi output nínú iṣẹ́ setup():

void setup()
{
  pinMode(buzzerPin, OUTPUT); // Ṣètò gẹ́gẹ́ bíi output
}

Èyí ń dáni lójú pé ESP32 mọ̀ láti lo pin 14 láti fi àwọn ifiranṣẹ́ sí buzzer náà láti dá a ṣiṣẹ́ àti dá a dúró.

Nínú iṣẹ́ loop(), a dá for loop kan láti mú buzzer náà ṣiṣẹ́ ní ọ̀pọ̀ ìgbà:

for (int i = 0; i < 50; i++) // Loop 50 ìgbà kí o sì dun ohùn kúkúrú ní gbogbo ìgbà
{
  digitalWrite(buzzerPin, HIGH); // Ṣètò sí HIGH láti mú buzzer náà dun
  delay(3); // Dúró fún 3 milliseconds
  digitalWrite(buzzerPin, LOW); // LOW láti pa buzzer náà
  delay(3); // 
}

Loop yìí yóò mú buzzer náà beep 50 ìgbà, pẹ̀lú beep kọ̀ọ̀kan tí ń ṣiṣẹ́ fún 3 milliseconds. Lẹ́yìn tí loop náà bá parí, a óò ní ìdúró 1-second kan kí a tó tún un ṣe.

Ìfihàn / Ohun tí O Lè Retí

Nígbà tí ìsopọ̀ okun àti kóòdù bá ti ṣètò dáradára, fífi agbára sí ESP32 yóò mú buzzer náà ṣiṣẹ́, tí yóò dá ọ̀wọ́ àwọn beeps. Bí buzzer náà kò bá dun, ṣàyẹ̀wò àwọn ìsopọ̀, pàápàá ìtòlẹ́sẹ̀ transistor àti resistor. Rí i pé GPIO pin tí ó tọ́ ni a ń lò nínú kóòdù náà àti pé agbára iná tó (nínú fídíò ní 01:30).

Àwọn Àkókò Fídíò

  • 00:00 Ìbẹ̀rẹ̀
  • 1:45 Ìfihàn ètò buzzer
  • 5:57 Ìsopọ̀ okun buzzer àti S8050 Transistor
  • 9:57 Arduino Code fún ESP32 Buzzer
  • 12:52 Yíyan ESP32 board àti COM port
  • 14:05 3.1 Ìfihàn iṣẹ́ buzzer

Aworan

ESP32-13-buzzer-wriing
ESP32-13-buzzer-wriing
ESP32-13-buzzer-schematic
ESP32-13-buzzer-schematic
SunFounder-ESP32-Lesson-13-Beep.mp4_snapshot_07.43.463
SunFounder-ESP32-Lesson-13-Beep.mp4_snapshot_07.43.463
S87050_transistor
S87050_transistor
812-ESP32 Tutorial 13/55- Arduino code for controlling buzzer
Ede: C++
const int buzzerPin = 14; // the buzzer pin

void setup()
{
  pinMode(buzzerPin, OUTPUT); // Set as output
}

void loop()
{
  for (int i = 0; i < 50; i++) // Loop 50 times and play a short tone each time
  {
    digitalWrite(buzzerPin, HIGH); // Set to HIGH to make the buzzer sound
    delay(3); // Wait for 3 milliseconds
    digitalWrite(buzzerPin, LOW); // LOW to turn off the buzzer
    delay(3); // 
  }
  delay(1000); // Wait for 1s before starting the next loop
}

Orisun & itọkasi

Fáìlìs📁

Fọọmu data (pdf)