È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).
À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.
À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

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
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
}
Common Course Links
Common Course Files
Orisun & itọkasi
-
Iwe-ẹriESP32 Tutorial 13/55- SunFounder Resouce page for Buzzerdocs.sunfounder.com
Fáìlìs📁
Fọọmu data (pdf)
-
Buzzer MB12A05 C96093 datasheet
Buzzer_MB12A05_C96093_datasheet.pdf0.97 MB -
NPN Epitaxial Silicon Transistor SS8050 datasheet
SS8050-datasheet.pdf0.19 MB