IOXESP32
  • รู้จักกับ IOXESP32 / IOXESP32U
  • รู้จักกับ IOXESP32PS
  • รู้จักกับ IOXESP32+
  • การใช้งาน IOXESP32 กับ ArduinoIDE
  • การใช้งาน IOXESP32 กับ MicroPython
  • การใช้งาน IOXESP32 เขียนโปรแกรมด้วยบล็อก
  • การใช้งาน IOXESP32 ร่วมกับ microBlock IDE
  • วาดวงจรบอร์ด IOXESP32 ด้วยโปรแกรม Fritzing
  • IOXESP32 Audio shield
    • รู้จักกับ IOXESP32 Audio shield
    • รู้จักกับ IOXESP32 Audio shield V2
    • การต่อ IOXESP32 Audio shield เข้ากับบอร์ด IOXESP32
    • การเตรียม IOXESP32 Audio shield ให้พร้อมเขียนโปรแกรมสั่งงาน
    • การใช้งาน IOXESP32 Audio shield กับ ArduinoIDE
    • การใช้งาน IOXESP32 Audio shield ทำลำโพงบลูทูธ
  • IOXESP32 Ethernet shield
    • รู้จักกับ IOXESP32 Ethernet shield
    • การต่อ IOXESP32 Ethernet shield เข้ากับบอร์ด IOXESP32
    • การเตรียม IOXESP32 Ethernet shield ให้พร้อมเขียนโปรแกรมสั่งงาน
    • การใช้งาน IOXESP32 Ethernet shield กับ ArduinoIDE
  • IOXESP32 Mini LCD shield
    • รู้จักกับ IOXESP32 Mini LCD shield
    • การต่อ IOXESP32 Mini LCD shield เข้ากับบอร์ด IOXESP32
    • การใช้งาน IOXESP32 Mini LCD shield กับ ArduinoIDE
  • IOXESP32 Battery shield
    • รู้จักกับ IOXESP32 Battery shield
    • การต่อ IOXESP32 Battery shield เข้ากับบอร์ด IOXESP32
    • การต่อแบตเตอรี่เข้ากับ IOXESP32 Battery shield
    • การใช้งาน IOXESP32 Battery shield กับ ArduinoIDE
  • IOXESP32 4-Digit shield
    • รู้จักกับ IOXESP32 4-Digit shield
    • การต่อ IOXESP32 4-Digit shield เข้ากับบอร์ด IOXESP32
    • การใช้งาน IOXESP32 4-Digit shield กับ ArduinoIDE
  • IOXESP32 DotMatrix shield
    • รู้จักกับ IOXESP32 DotMatrix shield
    • การต่อ IOXESP32 DotMatrix shield เข้ากับบอร์ด IOXESP32
    • การใช้งาน IOXESP32 DotMatrix shield กับ ArduinoIDE
  • IOXESP32 Power Shield
    • รู้จักกับ IOXESP32 Power shield
    • รู้จักกับ IOXESP32 Power shield V2
    • การต่อ IOXESP32 Power shield เข้ากับบอร์ด IOXESP32
    • การจ่ายไฟเข้าบอร์ด IOXESP32 ผ่าน IOXESP32 Power shield
  • IOXESP32 Modbus RTU shield / Lite
    • รู้จักกับ IOXESP32 Modbus RTU shield
    • รู้จักกับ IOXESP32 Modbus RTU shield (Lite)
    • การต่อ IOXESP32 Modbus RTU shield / Lite เข้ากับบอร์ด IOXESP32
    • การใช้งาน IOXESP32 Modbus RTU shield / Lite กับโมดูล XY-MD02 วัดอุณหภูมิและความชื้น
    • การใช้งาน IOXESP32 Modbus RTU shield / Lite กับบอร์ดรีเลย์ Modbus RTU/RS485 4 ช่อง 12V
  • IOXESP32 CAN Bus shield
    • รู้จักกับ IOXESP32 CAN Bus shield
    • การต่อ IOXESP32 CAN Bus shield เข้ากับบอร์ด IOXESP32
    • การสื่อสารระหว่าง ESP32 กับ Arduino Uno ผ่าน CAN bus เบื้องต้น
  • IOXESP32 4-20mA Receiver shield
    • รู้จักกับ IOXESP32 4-20mA Receiver shield
    • การต่อ IOXESP32 4-20mA Receiver shield เข้ากับบอร์ด IOXESP32
    • การต่อ IOXESP32 4-20mA Receiver shield เข้ากับเซ็นเซอร์ 4-20mA
    • การใช้ IOXESP32 4-20mA Receiver shield อ่านค่าสัญญาณ 4-20mA
  • IOXESP32 Motor shield
    • รู้จักกับ IOXESP32 Motor shield
    • การต่อ IOXESP32 Motor shield เข้ากับบอร์ด IOXESP32
    • การต่อวงจรมอเตอร์เข้ากับ IOXESP32 Motor shield
    • การใช้งาน IOXESP32 Motor shield กับ Arduino IDE
  • IOXESP32 Display Adapter shield
    • รู้จักกับ IOXESP32 Display Adapter shield
    • การต่อ IOXESP32 Display Adapter shield เข้ากับบอร์ด IOXESP32
    • การต่อ IOXESP32 Display Adapter shield เข้ากับจอ TFT LCD
    • การตั้งค่าไลบรารี่ TFT_eSPI
      • การใช้งานจอ LCD TFT ร่วมกับ ESP32 ด้วยไลบรารี่ TFT_eSPI
  • IOXESP32 HUB75 Matrix Panel shield
    • รู้จักกับ IOXESP32 HUB75 Matrix Panel shield
    • การต่อใช้งาน IOXESP32 HUB75 Matrix Panel shield
    • การเขียนโปรแกรมสั่งงานจอ P4/P5/P10 RGB Matrix Panel
  • IOXESP32 I/O shield
    • รู้จักกับ IOXESP32 I/O shield
    • การต่อ IOXESP32 I/O shield เข้ากับบอร์ด IOXESP32
    • การใช้งาน IOXESP32 I/O shield ต่ออุปกรณ์ภายนอก
  • IOXESP32 Base
    • รู้จักกับ IOXESP32 Dual Base
    • รู้จักกับ IOXESP32 Triple Base
    • รู้จักกับ IOXESP32 Proto Base
    • รู้จักกับ IOXESP32 Main Power Base
  • โครงงาน
    • สร้างเกมนกหลบท่อด้วยแพลตฟอร์ม IOXESP32
Powered by GitBook
On this page
  • ติดตั้งไลบารี่ IOXESP32Audio
  • เริ่มต้นใช้งานไลบารี่ IOXESP32Audio
  • การเล่นเสียงจาก MicroSD Card
  • การสตรีมเสียงจากอินเตอร์เน็ต
  • แปลงข้อความเป็นเสียง
  • การควบคุมการเล่นเสียง

Was this helpful?

  1. IOXESP32 Audio shield

การใช้งาน IOXESP32 Audio shield กับ ArduinoIDE

การเขียนโปรแกรมสั่งงานโมดูล IOXESP32 Audio shield ด้วย ArduinoIDE

Previousการเตรียม IOXESP32 Audio shield ให้พร้อมเขียนโปรแกรมสั่งงานNextการใช้งาน IOXESP32 Audio shield ทำลำโพงบลูทูธ

Last updated 1 year ago

Was this helpful?

การใช้งานโมดูล IOXESP32 Audio shield เล่นไฟล์เสียงจาก MicroSD Card หรือสตรีมไฟล์เสียงจากอินเตอร์เน็ต ให้ใช้ไลบารี่ IOXESP32Audio ในการเขียนโปรแกรมสั่งงาน

แนะนำให้อ่านบทความด้านล่างนี้ก่อนทำขั้นตอนถัดไป

ติดตั้งไลบารี่ IOXESP32Audio

ติดตั้งไลบารี่ IOXESP32Audio ผ่าน Library Manager ดังนี้

เปิด Libraty Manager ขึ้นมา (1) จากนั้นใส่ IOXESP32Audio ลงในช่องค้นหา (2) กดปุ่ม INSTALL

รอจนกว่าจะขึ้น installed (ดังรูป) เป็นอันจบขั้นตอนติดตั้งไลบารี่ IOXESP32Audio

เริ่มต้นใช้งานไลบารี่ IOXESP32Audio

ในขั้นตอนแรกจำเป็นต้อง include ไลบารี่เข้ามาก่อน โดยใช้คำสั่ง

#include <IOXESP32Audio.h>

จากนั้นใน void setup() ให้เรียกใช้คำสั่ง Audio.begin(); เพื่อให้ไลบารี่เริ่มทำงาน

Audio.begin();

โค้ดโปรแกรมภาพรวมเป็นดังนี้

#include <IOXESP32Audio.h>

void setup() {
  Audio.begin();
}

void loop() {
  delay(10);
}

การเล่นเสียงจาก MicroSD Card

รองรับไฟล์ MP3 และไฟล์ WAV ที่ชื่อมีความยาวไม่เกิน 4 ตัวอักษร คัดลอกไฟล์เสียงที่ต้องการลงไปใน MicroSD Card แล้วนำ MicroSD Card ไปเสียบเข้ากับโมดูล IOXESP32 Audio shield

การเขียนโปรแกรมให้เล่นไฟล์เสียงจาก MicroSD Card สามารถทำได้โดยใช้คำสั่ง Audio.play(); มีรูปแบบการใช้งานดังนี้

Audio.play("SD:/โฟลเดอร์เก็บไฟล์/ชื่อไฟล์.mp3");

ตัวอย่างต้องการให้เล่นไฟล์ 1.mp3 ที่อยู่ / ให้เขียนโปรแกรมดังนี้

Audio.play("SD:/1.mp3");

โค้ดโปรแกรมภาพรวมเป็นดังนี้

#include <IOXESP32Audio.h>

void setup() {
  Audio.begin();
  Audio.play("SD:/1.mp3"); // เล่นไฟล์ 1.mp3
}

void loop() {
  delay(10);
}

การสตรีมเสียงจากอินเตอร์เน็ต

จากโค้ดโปรแกรมในส่วนของ เริ่มต้นใช้งานไลบารี่ IOXESP32Audio ให้เพิ่มโค้ดโปรแกรมที่ใช้เชื่อมต่อ WiFi ลงใน void setup() ดังนี้

  WiFi.mode(WIFI_STA);
  WiFi.begin("ชื่อ WiFi", "รหัสผ่าน WiFi");
  Serial.println();

  // Wait for connection
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

การเขียนโปรแกรมให้เล่นไฟล์เสียงจากอินเตอร์เน็ต หรือสตรีมเสียงจากวิทยุออนไลน์ ให้ใช้คำสั่ง Audio.play(); มีรูปแบบการใช้งานดังนี้

Audio.play("ลิ้งไฟล์เสียง");
Audio.play("http://111.223.51.7:8100/;"); // COOL Fahrenheit 93

โค้ดโปรแกรมภาพรวมเป็นดังนี้

#include <IOXESP32Audio.h>

void setup() {
  Serial.begin(115200);
  Audio.begin();

  WiFi.mode(WIFI_STA);
  WiFi.begin("ชื่อ WiFi", "รหัสผ่าน WiFi");
  Serial.println();

  // Wait for connection
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }

  Audio.play("http://111.223.51.7:8100/;"); // เล่นไฟล์เสียงที่ http://111.223.51.7:8100/;
}

void loop() {
  delay(10);
}

แปลงข้อความเป็นเสียง

การแปลงข้อความเป็นเสียง หรือ Text-to-Speech (TTS) สามารถทำได้โดยใช้คำสั่ง Audio.play(); มีรูปแบบการใช้งานดังนี้

Audio.play("ข้อความที่ต้องการแปลงเป็นเสียง", "รหัสย่อภาษา 2 ตัวอักษร");

ตัวอย่างการเขียนโปรแกรมให้แปลงข้อความภาษาไทย "สวัสดีชาวโลก" เป็นเสียง สามารถเขียนโปรแกรมได้ดังนี้

Audio.play("สวัสดีชาวโลก", "TH");

ตัวอย่างการเขียนโปรแกรมให้แปลงข้อความภาษาอังกฤษ "Hello, mars !" เป็นเสียง สามารถเขียนโปรแกรมได้ดังนี้

Audio.play("Hello, mars !", "EN");

โค้ดโปรแกรมภาพรวมเป็นดังนี้

#include <IOXESP32Audio.h>

void setup() {
  Audio.begin();
  Audio.play("สวัสดีชาวโลก", "TH"); // แปลงข้อความเป็นเสียง
}

void loop() {
  delay(10);
}

การควบคุมการเล่นเสียง

มีคำสั่งควบคุมการเล่นเสียงเพิ่มเติมดังนี้

Audio.play(); // เล่นเสียงต่อจากจุดเดิม (ใช้คู้กับ Audio.pause();)
Audio.pause(); // หยุดเล่นเสียงชั่วคราว
Audio.resume(); // เล่นเสียงต่อจากจุดเดิม (เหมือนกับคำสั่ง Audio.play();)
Audio.stop(); // หยุดเล่นเสียง

Audio.isPlaying(); // ใช้ตรวจสอบว่ากำลังเล่นไฟล์เสียงอยู่หรือไม่ : คืนค่า true หากเล่นอยู่ และคืนว่า false หากไม่ได้เล่นอยู่

Audio.setVolume(level); // ใช้กำหนดความดังของเสียง กำหนดได้ 0 ถึง 100
Audio.getVolume(); // ใช้อ่านค่าความดังของเสียง : คืนค่าเป็นตัวเลขจำนวนเต็ม 0 ถึง 100

ตัวอย่างการใช้งาน

#include <IOXESP32Audio.h>

void setup() {
  Audio.begin();
  Audio.setVolume(50); // กำหนดให้เสียงดัง 50%
  Audio.play("SD:/1.mp3"); // เล่นไฟล์ 1.mp3
  
  delay(5000); // หน่วงเวลา 5 วินาที
  Audio.pause(); // สั่งให้หยุดเล่นชั่วคราว
  delay(5000); // หน่วงเวลา 5 วินาที
  Audio.stop(); // หยุดเล่นเสียง
  delay(5000); // หน่วงเวลา 5 วินาที
  Audio.play("SD:/1.mp3"); // เล่นไฟล์ 2.mp3
  delay(5000); // หน่วงเวลา 5 วินาที
  Audio.stop(); // หยุดเล่นเสียง
}

void loop() {
  delay(10);
}

ตัวอย่างการเขียนโปรแกรมให้สตรีมเสียงจากสถานีวิทยุออนไลน์ COOL Fahrenheit 93 มีลิ้งของสถานีเป็น สามารถเขียนโปรแกรมได้ดังนี้

http://111.223.51.7:8100/;
การใช้งาน IOXESP32 กับ ArduinoIDE