วันพฤหัสบดีที่ 3 ตุลาคม พ.ศ. 2562

Module:Sound:Buzzer


Buzzer Module

Buzzer เป็นลำโพงขนาดเล็กส่งเสียงได้แค่แบบเสียงออด แบบ Passive  ส่งเสียงเสียงได้หลายความถี่และดังได้หลายระดับ เป็นโน้ตเพลงได้ ส่วนแบบ Active ส่งเสียงได้แบบเดียว
KY-006 Passive Buzzer Module
KY-012 Active buzzer module

การใช้งาน KY-012 (Active)

ขา S  ต่อ 3.3-5V
ขากลาง ไม่ใช้
ขา - ต่อ Ground
โมดูลบางตัวอาจจะต้องต่อสลับระหว่างขา S กับ - ถึงจะใช้งานได้(ต่อสลับขา)
ตัวอย่างโค้ดใช้ตัวอย่างไฟกระพริบ(Blink) มาแก้นิดหน่อยออกขา GPIO13
// KY-006 Passive Busser
int output = 13;
void setup() {
  pinMode(output,OUT);
}
void loop() {
  digitalWrite(output, HIGH);
  delay(1000);
  digitalWrite(output, LOW);
  delay(1000); 
}

การใช้งาน KY-006(Passive)

ขา S  Analog Signal หรือ PWM
ขากลาง ไฟเลี้ยง 3.3v (1.5-15V)
ขา - ต่อ Ground
โค้ดสำหรับ KY-006 ที่ Channel 0 ความระเอียด 8บิต(0-255)
ลูป for แรกจะใช้ที่ความถึ่ 2000 Hz เพิ่มระดับเสียง จาก 0-255 ขึ้นทีละ 10 ทุกๆ 1 วินาที
ลูป for สอง เปลี่ยนความถี่ เริ่มจากความถี่ 255 Hz เพิ่มทีละ 250Hz ทุกๆ 1 วินาที จนถึง 10,000 Hz
// ESP32: KY-006 Passive Busser
int freq = 2000;
int channel = 0;
int resolution = 8;
void setup() {
  Serial.begin(115200);
  ledcSetup(channel, freq, resolution);
  ledcAttachPin(15, channel);
}
void loop() {
  ledcWriteTone(channel, 2000);
  for (int dutyCycle = 0; dutyCycle <= 255; dutyCycle=dutyCycle+10){ 
    Serial.println(dutyCycle);
    ledcWrite(channel, dutyCycle);
    delay(1000);
  }
  ledcWrite(channel, 125);
  for (int freq = 255; freq < 10000; freq = freq + 250){
     Serial.println(freq);
     ledcWriteTone(channel, freq);
     delay(1000);
  }
 
}
เพิ่มเติม


ไม่มีความคิดเห็น:

แสดงความคิดเห็น

Module:Control:IFR 520

MOSFET Module  สวิตซ์ปิดเปิดไฟเหมือน Relay แต่เป็น Solid state (ไม่มีส่วนที่เคลื่อนไหว) มันทำงานที่ความถี่สูงได้เหมาะกับเอาไปใช้งาน PWM ...