เวลาจัดคอมสองเครื่องแบบนี้ บางทีเครื่องที่เปิดเพลงให้ฟังก็ไม่ได้เสียบคีย์บอร์ดไว้ตลอดหรอกนะ งานนี้เลยใช้ Leonardo กับหน้าจอ [LCD](https://s.shopee.co.th/6AfsSPcAnb) แบบทัชสกรีนมาทำเป็นรีโมทคอนโทรลเลอร์สำหรับเล่น/หยุดและปรับเสียงให้พร้อมใช้ตลอดเวลา
ลงลึกเรื่องเทคนิค
Tactile Digital Audio Interface
โปรเจกต์นี้จะเปลี่ยน Arduino ให้กลายเป็นรีโมทฮาร์ดแวร์เฉพาะกิจ สำหรับควบคุมการเล่นเพลงและวิดีโอใน PC หรือ Mac
- HID (Human Interface Device) Emulation: ใช้บอร์ด Arduino Micro หรือ Pro Micro (ATmega32U4) นะ ตัวเฟิร์มแวร์จะทำให้คอมพิวเตอร์มองว่ามันเป็นคีย์บอร์ด/ปุ่มควบคุมสื่อ USB ทั่วไป เลยสามารถส่งคำสั่ง "เล่น/หยุดชั่วคราว", "เพลงถัดไป" และ "ปรับระดับเสียง" ได้แบบเนทีฟเลย
- Rotary Encoder Precision: ใช้ Rotary Encoder คุณภาพสูงสำหรับปรับเสียง Arduino จะจัดการอินเตอร์รัปต์ความเร็วสูงจากตัว Encoder ให้เรา ทำให้ปรับเสียงได้ลื่นไหล คลิกเท่าไหร่เสียงขึ้นเท่านั้น ไม่มีแล็ก
การปรับแต่ง
- Multi-App Macro Matrix: มีปุ่ม "Mode Switch" ด้วยนะ น้องๆ สามารถสลับโหมดระหว่าง "Spotify Mode" กับ "YouTube Mode" ได้เลย แล้ว Arduino จะส่งชุดคีย์ลัดที่ต่างกันออกไป (เช่น ส่ง Spacebar หรือ Media_Play) ให้เหมาะกับแต่ละแอป
ข้อมูล Frontmatter ดั้งเดิม
title: "USB Media Controller"
description: "Control music playback and volume with touchscreen LCD"
author: "kluger"
category: ""
tags:
- "home automation"
- "music"
- "entertainment system"
- "remote control"
views: 1459
likes: 0
price: 299
difficulty: "Intermediate"
components:
- "1x Case, plastic"
- "1x Arduino Leonardo"
- "1x 2.4 inch TFT display with touchscreen"
tools: []
apps:
- "1x Arduino IDE"
downloadableFiles:
- "https://projects.arduinocontent.cc/8739c69a-db98-4ecd-9fd9-85e7048a5e00.ino"
- "https://projects.arduinocontent.cc/8739c69a-db98-4ecd-9fd9-85e7048a5e00.ino"
documentationLinks: []
passwordHash: "80201dfe3a0e6945b5b1af2a0c443d324aa6339bcc8dfb14091ca3ccb18f7d8e"
encryptedPayload: "U2FsdGVkX1+fUKwMkedc54zc4t2FoiHREqkDhRxpFn3dg/3R6C+ELj/7cudScxzzXK4IxoNzm36ALZKnTsouM4RLDKdPXtYEtoVFBZ1n2V4="
seoDescription: "Build a USB Media Controller to manage music playback and volume using a touchscreen LCD."
videoLinks: []
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/usb-media-controller-0ccd7b_cover.jpg"
lang: "th"