ชื่อโปรเจกต์: Music Reactive LCD Vu Meter
ไงวัยรุ่น..
ในโปรเจกต์นี้พี่จะพามาทำ Music Reactive [LCD](https://s.shopee.co.th/6AfsSPcAnb) Vu Meter เอาไว้ใช้กับชุด Sony Home Theatre ที่บ้านให้มันดูหล่อเท่ขึ้นอีกเป็นกอง
ตัวนี้พี่ใส่ Push button มาให้ด้วยนะ พอกดปุ่มปุ๊บ รูปแบบ Bars บนหน้าจอ LCD ก็จะเปลี่ยน Effect ไปเรื่อยๆ ตามใจเราเลย
ลองเอาไปทำเล่นกันดูนะน้อง
รับรองว่าเอาไปวางคู่กับชุดเครื่องเสียงที่บ้านแล้วดูดีจัดๆ
ถ้าใครมีข้อสงสัยตรงไหนเกี่ยวกับโปรเจกต์นี้
มาคุยกันได้ที่
Facebook page : Electronics is Fun
ถ้าชอบโปรเจกต์นี้ก็ฝากกดไลค์กดแชร์ให้พี่ด้วยนะ
ใครมีข้อเสนอแนะอะไร หรืออยากให้พี่ปรับปรุงตรงไหนใน YouTube channel ก็บอกมาได้เลยวัยรุ่น
อยากให้พี่ทำโปรเจกต์อะไรต่อ ลองเสนอมาดูนะ?
ขั้นตอนการทำโปรเจกต์นี้:
1. รวบรวมอุปกรณ์ตามรายการให้ครบ (เช็คดีๆ อย่าให้ขาดนะน้อง)
2. เอา [Arduino](https://s.shopee.co.th/7fUgFAWSki) กับ Sound [Sensor](https://s.shopee.co.th/7VBG2rX65j) มาจัดวางลงบน Board
3. จัดการต่อจอ LCD Display เข้าไป
4. ต่อปุ่ม Push button ตามวงจร
5. จัดการ Upload ตัว Code ลงไป
6. ปรับค่า Sensitivity (ความไว) ที่ตัว Sound Sensor ให้พอดีกับเสียงเพลง
แค่นี้ก็หล่อแล้วน้องชาย
เอา LCD Vu Meter ไปวางบนลำโพง Home Theatre ได้เลย
แล้วลองกด Push button เปลี่ยนรูปแบบ Bars ดูนะ งานนี้โคตรเท่!
รายละเอียดทางเทคนิคแบบเจาะลึก
Visual Acoustic Analysis
โปรเจกต์นี้เป็นการเปลี่ยนสัญญาณ Audio ดิบๆ ให้กลายเป็นกราฟิกเคลื่อนไหวบนหน้าจอ LCD ทั่วไป ให้ฟีลเหมือน VU Meter ยุค Analog วินเทจๆ เลย
- Analog Amplitude Sampling: เราใช้ ADC (Analog-to-Digital Converter) ของ Arduino คอยดักส่องสัญญาณ Envelope ของเสียงที่เข้ามาจาก Sound Sensor หรือ Microphone แบบ Real-time เพื่อหาค่าแรงดัน Peak สูงสุด
- Custom Character Rendering: เพื่อให้กราฟแท่ง (Bar Graph) บนจอ LCD 16x2 มันดูเนียนตา พี่ไม่ได้ใช้แค่ตัวอักษรธรรมดา แต่พี่ใช้ Custom Characters (ขนาด 5x8 pixel) มาสร้างเป็นบล็อกๆ เพื่อให้มันแสดงระดับเสียงได้ละเอียดขึ้น
Performance
- High-Speed Mapping Kernel: ตัวประมวลผลการ Mapping ค่าจาก Analog 0-1023 ไปเป็นจำนวนบล็อก 0-16 บล็อกบนหน้าจอ LCD ทำงานได้ไวมาก (ต่ำกว่า 50ms) มั่นใจได้เลยว่ากราฟจะขยับตามจังหวะเบสเพลงโปรดของน้องได้ทันท่วงทีแน่นอน ไม่มีการหน่วงให้เสียอารมณ์!