Skip to content

Commit 855bbb4

Browse files
add esp32 buzzer
1 parent 4453c33 commit 855bbb4

File tree

3 files changed

+58
-3
lines changed

3 files changed

+58
-3
lines changed

KY006_Buzzer/KY006_Buzzer.h

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,6 @@
88
#define KY006_Buzzer_h
99

1010
#include <Arduino.h>
11-
#if defined(ESP32)
12-
#include <Tone32.h>
13-
#endif
1411

1512
class KY006_Buzzer
1613
{
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/* Copyright (c) 2022, Collab
2+
* All rights reserved
3+
*/
4+
/*
5+
KY006_Buzzer_ESP32.cpp - Control KY-006 piezo buzzer connected
6+
to a digital pin on a ESP32.
7+
*/
8+
9+
#include "KY006_Buzzer_ESP32.h"
10+
11+
KY006_Buzzer_ESP32::KY006_Buzzer_ESP32(int buzzer_pin, int channel) {
12+
_buzzerPin = buzzer_pin;
13+
_channel = channel;
14+
}
15+
16+
void KY006_Buzzer_ESP32::begin() {
17+
}
18+
19+
void KY006_Buzzer_ESP32::enable(unsigned int frequency, unsigned long duration) {
20+
// stop sound first
21+
disable();
22+
23+
// start sound
24+
tone(_buzzerPin, frequency, duration, _channel);
25+
}
26+
27+
void KY006_Buzzer_ESP32::disable() {
28+
noTone(_buzzerPin, _channel);
29+
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
/* Copyright (c) 2022, Collab
2+
* All rights reserved
3+
*/
4+
/*
5+
KY006_Buzzer_ESP32.h - Control KY-006 piezo buzzer for ESP32
6+
*/
7+
#ifndef KY006_Buzzer_ESP32_h
8+
#define KY006_Buzzer_ESP32_h
9+
10+
#include <Arduino.h>
11+
#include <Tone32.h>
12+
13+
class KY006_Buzzer_ESP32
14+
{
15+
public:
16+
KY006_Buzzer_ESP32(
17+
int buzzer_pin,
18+
int channel = 0
19+
);
20+
void begin();
21+
void enable(unsigned int frequency = 1000, unsigned long duration = 100);
22+
void disable();
23+
24+
private:
25+
int _buzzerPin;
26+
int _channel;
27+
};
28+
29+
#endif

0 commit comments

Comments
 (0)