สารบัญ:

เครื่องเล่น MP3 สไตล์ Arduino Retro!: 8 ขั้นตอน (พร้อมรูปภาพ)
เครื่องเล่น MP3 สไตล์ Arduino Retro!: 8 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องเล่น MP3 สไตล์ Arduino Retro!: 8 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: เครื่องเล่น MP3 สไตล์ Arduino Retro!: 8 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: สอนใช้งาน Arduino เล่นเพลง ไฟล์เสียง MP3 DFPlayer Mini MP3 Player Module 2024, กรกฎาคม
Anonim
Image
Image

เครื่องเล่น MP3 อาจฟังดูค่อนข้างล้าสมัย สมาร์ทโฟนสามารถทำได้ดีกว่านี้มาก! ด้วยแอพและบริการสตรีมมิ่งเหล่านั้น คุณไม่จำเป็นต้องดาวน์โหลดเพลงหรือเพลงใดๆ

แต่เมื่อฉันพบโมดูล DFplayer ฉันรู้สึกตื่นเต้นมากกับฟีเจอร์มากมาย ตั้งแต่การควบคุมระดับเสียง แอมพลิฟายเออร์ 3W อีควอไลเซอร์ ความสามารถในการเล่นโฆษณาระหว่างไฟล์ mp3 และอื่นๆ อีกมากมาย ฉันต้องการสำรวจคุณลักษณะทั้งหมดเหล่านี้และนำไปใช้ให้เกิดประโยชน์ในอุปกรณ์เครื่องเดียว ดังนั้นเครื่องเล่น MP3 นี้จึงเป็นตัวเลือกที่สมบูรณ์แบบ

ผลิตภัณฑ์สุดท้ายค่อนข้างน่าสนใจที่จะใช้กับคุณสมบัติดังต่อไปนี้:

  • การปรับ EQ
  • การควบคุมระดับเสียง
  • หยุดชั่วคราว/เล่นไฟล์ MP3
  • ถัดไป/ก่อนหน้า
  • การนำทาง 2 หน้าจอ
  • แบตเตอรี่แบบชาร์จไฟได้

เสบียง

นี่คือรายการของชิ้นส่วนที่ฉันใช้ในโปรเจ็กต์นี้ (ลิงค์พันธมิตร):

  • Arduino pro mini
  • DFPlayer
  • 1.3 นิ้ว OLED
  • ปุ่มกด
  • แจ็คเสียง
  • TP4056
  • แบตลิโพ
  • สวิตช์สไลด์
  • PCB

ขั้นตอนที่ 1: การตั้งค่าจอแสดงผล OLED

การตั้งค่า DFPlayer
การตั้งค่า DFPlayer

OLED 1.3 นิ้วและ OLED ขนาด 0.96 นิ้วอาจดูคล้ายกัน แต่ไม่มีไดรเวอร์การแสดงผลเดียวกัน ดังนั้นหากคุณลองใช้ไลบรารี่เช่น Adafruit SSD1306 จอแสดงผลจะไม่ทำงานเนื่องจากจอแสดงผล OLED ขนาด 1.3 นิ้วมี Sh1106 ไดรเวอร์จอแสดงผล

ดังนั้น เราจะใช้ไลบรารี U8g2 คุณสามารถดาวน์โหลดไลบรารีนี้สำหรับ Arduino IDE ของคุณด้วยลิงก์นี้หรือไปที่ตัวจัดการไลบรารีของคุณและติดตั้ง U8g2 เวอร์ชันล่าสุด

ไลบรารีนี้มีความยืดหยุ่นมากเมื่อเทียบกับไลบรารีอื่น ๆ ตัวอย่างเช่น คุณสามารถเรียกใช้โค้ดเดียวกันสำหรับการแสดงผลที่หลากหลายโดยมีการเปลี่ยนแปลงโค้ดเพียงเล็กน้อย และที่สำคัญมีฟอนต์และไอคอนเปิดที่หลากหลายเพื่อใช้ในโครงการของคุณ

จอแสดงผล 1.3 นิ้วมี 4 พิน VCC, GND, SDA และ SCL เนื่องจากจอแสดงผลรองรับการสื่อสารแบบ I2C ให้เชื่อมต่อ VCC และ GND กับ +5V และ GND ของ Arduino pro mini และเชื่อมต่อ SDA และ SCL กับ A4 และ A5 ของ Arduino pro mini

คุณสามารถทดสอบการแสดงผลได้โดยการเรียกใช้ร่างสาธิตที่มาพร้อมกับไลบรารี u8g2 หรือคุณสามารถรวบรวมและเรียกใช้ภาพร่างของฉันซึ่งอยู่ในไฟล์ Soundpod.rar หรือใช้ลิงก์ Github

ขั้นตอนที่ 2: การตั้งค่า DFPlayer

DFplayer เป็นโมดูล MP3 ขนาดเล็กและราคาถูกพร้อมเอาต์พุตที่เรียบง่าย ซึ่งสามารถเชื่อมต่อโดยตรงกับลำโพงโดยไม่ต้องใช้เครื่องขยายเสียง

คุณสมบัติ

  • 24bit DAC
  • รองรับระบบไฟล์ FAT16, FAT32
  • รองรับการ์ด SD สูงสุด 32GB
  • แอมพลิฟายเออร์ในตัว 3 วัตต์
  • รองรับ 100 โฟลเดอร์ แต่ละโฟลเดอร์รองรับได้ถึง 1,000 เพลง
  • ปรับระดับ EQ 5 ระดับและปรับระดับเสียง 30 ระดับ

วงจร

โมดูลนี้สามารถใช้แบบสแตนด์อโลนกับแบตเตอรี่ ลำโพง และปุ่มกดที่ต่ออยู่ หรือสามารถใช้กับ Arduino หรือไมโครคอนโทรลเลอร์อื่นๆ ใช้ UART/การสื่อสารแบบอนุกรมสำหรับการส่งและรับคำสั่งไปยังไมโครคอนโทรลเลอร์ ดังนั้นเราจึงสามารถใช้ฟังก์ชันอ่าน/เขียนแบบอนุกรมของ Arduino เพื่อควบคุมโมดูลนี้ได้

เชื่อมต่อปุ่มกด 4 ปุ่มเข้ากับพิน 2, 3, 4 ของ Arduino เพื่อควบคุมระดับเสียง/เริ่ม/หยุด จากนั้นเชื่อมต่อพิน Rx และ Tx พินของ DFplayer กับ Arduino pin 10 และ 11 สุดท้าย ต่อลำโพงเข้ากับ spk+, spk- ของ DFplayer และเชื่อมต่อแหล่งจ่ายไฟ +5v กับ VCC และ GND กับ GND ของ DFplayer

คุณสามารถทดสอบโมดูลของคุณด้วยรหัสที่อยู่ในโฟลเดอร์ 'DFPlayer' คำแนะนำนี้จะช่วยให้คุณเริ่มต้นใช้งาน Arduino และ DFPlayer ได้ง่ายขึ้น

ขั้นตอนที่ 3: การเตรียมส่วนประกอบ

การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ
การเตรียมส่วนประกอบ

คุณคงเคยเห็นงานสร้างขั้นสุดท้ายดูยุ่งเหยิง และคุณอาจคิดว่ามันจะดีกว่าถ้าพิมพ์ PCB ฉันเห็นด้วยอย่างยิ่ง! แต่สิ่งนี้ค่อนข้างสนุกกว่าและโดยส่วนตัวแล้วพวกเขาก็ดูเท่ห์เช่นกัน อย่างไรก็ตาม ฉันจะวางลิงค์ที่คุณสามารถใช้วงจรที่มีอยู่และสร้าง PCB

เนื่องจากมีส่วนประกอบมากเกินไปที่จะใช้ PCB แบบ 2 ด้านจึงเหมาะสมอย่างยิ่ง แล้วตัด PCB 2 ด้านในแนวนอน 14 รูและแนวตั้ง 21 จากนั้นวางปุ่มกดซึ่งจะช่วยเราในการนำทาง หยุดชั่วคราว และเล่นเพลง ขณะวางส่วนประกอบอื่นๆ คุณต้องระมัดระวังเป็นอย่างยิ่งว่าคุณจะวางมันไว้ที่ใดและแต่ละส่วนประกอบมีหมุดกี่ตัว จากประสบการณ์ของผมในการสร้างครั้งนี้สองครั้ง ให้เก็บเฉพาะหมุดที่ใช้แล้วตัดส่วนที่เหลือ จะช่วยแก้ปัญหาต่างๆ ได้มากขึ้น คุณสามารถดูแผนภาพวงจรนี้และตัดพินที่ไม่จำเป็น

ขั้นตอนที่ 4: การวางส่วนประกอบ

การวางส่วนประกอบ
การวางส่วนประกอบ
การวางส่วนประกอบ
การวางส่วนประกอบ
การวางส่วนประกอบ
การวางส่วนประกอบ

วางหมุดดิจิทัลของ Arduino ไว้ใกล้กับปุ่มต่างๆ และหมุดอะนาล็อกที่ชี้ไปที่ด้านบนของบอร์ด เพื่อให้สามารถเชื่อมต่อกับจอแสดงผล OLED ได้ง่าย จากนั้นทำขั้นตอนเดียวกันกับ DFplayer วางโมดูลในลักษณะที่ช่องเสียบการ์ด SD ชี้เข้าด้านใน และถอดตัวคั่นสีดำออกจากหมุดส่วนหัวเพื่อให้ DFplayer พอดีกับบอร์ดพร้อมกับ Arduino.

ฉันต้องการเรียกใช้ DFplayer อย่างเต็มประสิทธิภาพ ดังนั้นฉันจึงเพิ่มตัวแปลงเพิ่มขนาดเล็กเพื่อแปลง 3.7 โวลต์จากแบตเตอรี่ลิเธียมเป็น 5V แต่ในท้ายที่สุด โมดูลนี้ไม่สามารถให้กระแสไฟเพียงพอต่อการเรียกใช้ DFPlayer และฉันรู้สึกว่ามันทำได้ดีกว่ามากเมื่อใช้แบตเตอรี่ 3.7 โวลต์เพียงอย่างเดียว ดังนั้นในท้ายที่สุด ฉันจึงทิ้งตัวแปลงบูสต์ (โมดูล PCB สีเขียวถัดจาก Arduino pro mini)

สุดท้าย ปิดด้านหลังของ PCB ให้ติดตั้งสวิตช์สไลด์และแจ็คเสียง 3.5 มม.

ขั้นตอนที่ 5: บัดกรีทุกอย่างเข้าด้วยกัน

บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน
บัดกรีทุกอย่างเข้าด้วยกัน

ทำตามแผนภาพวงจรและประสานส่วนประกอบต่างๆ เข้าด้วยกัน ซึ่งคุณสามารถรวมการเชื่อมต่อทั้งสองได้อย่างง่ายดาย และพยายามหลีกเลี่ยงการใช้สายไฟ ให้ใช้ลวดเกลียวเดี่ยวเปล่าแทนการเชื่อมต่อและตรวจดูให้แน่ใจว่าคุณไม่ได้สัมผัสส่วนประกอบใด ๆ ที่ด้านล่างด้วย และฉันวางสายเกลียวเดี่ยว 2 เส้นที่โผล่ออกมาจากบอร์ด ซึ่งจะใช้บัดกรี TP4056 ในภายหลัง

ขั้นตอนที่ 6: การบัดกรีเพิ่มเติม

บัดกรีมากขึ้น!
บัดกรีมากขึ้น!
บัดกรีมากขึ้น!
บัดกรีมากขึ้น!
บัดกรีมากขึ้น!
บัดกรีมากขึ้น!

วางโมดูล TP4056 ซึ่งเราจะใช้เพื่อชาร์จเครื่องเล่น MP3 ของเราด้วย micro-USB ฉันใช้เทปกาวสองหน้าเพื่อวางแบตเตอรี่ลิเธียมโพลิเมอร์ไว้ข้างโมดูลการชาร์จ นี่คือโมดูล 300Mah ที่พอดีกับ PCB อย่างสมบูรณ์แบบ หากคุณสร้างแบตเตอรี่ที่ใหญ่กว่า คุณสามารถขยายแบตเตอรี่ได้อย่างง่ายดายโดยไม่ต้องดัดแปลงวงจรกระแสไฟใดๆ

ในที่สุด ประสานจอแสดงผล OLED เพื่อปิด หากคุณสามารถทำตามแผนภาพวงจรและวางส่วนประกอบในลำดับเดียวกัน การทำงานด้วยจะง่ายขึ้นมาก

ขั้นตอนที่ 7: อัปโหลดโค้ดและแตะเสร็จสิ้น

การอัพโหลดโค้ดและการตกแต่งขั้นสุดท้าย
การอัพโหลดโค้ดและการตกแต่งขั้นสุดท้าย
การอัพโหลดโค้ดและการตกแต่งขั้นสุดท้าย
การอัพโหลดโค้ดและการตกแต่งขั้นสุดท้าย
การอัพโหลดโค้ดและการตกแต่งขั้นสุดท้าย
การอัพโหลดโค้ดและการตกแต่งขั้นสุดท้าย

เสร็จแล้วก็ให้สัมผัสสุดท้าย โดยให้มุมโค้งมนเรียบๆ แล้วเจาะรูที่มุมบนเพื่อใช้เป็นพวงกุญแจ!

ทีนี้มาดูในส่วนของการเขียนโปรแกรมกัน!

คำแนะนำสำหรับการติดตั้งไลบรารีที่จำเป็นและวิธีใช้งานมีอยู่ในไฟล์ Readme บนที่เก็บ git ของฉันสำหรับโปรเจ็กต์นี้ เพียงทำตามคำแนะนำและใช้โมดูล FDTI เพื่อตั้งโปรแกรมซึ่งอยู่ในไฟล์ soundpod.rar ไปยัง Arduino pro mini เราใช้โมดูล FDTI เนื่องจาก Arduino pro mini ไม่รองรับ USB เพื่อตั้งโปรแกรม

ในที่สุด ฉันก็ถอดไฟออกจาก Arduino pro mini และ DFplayer เพื่อประหยัดแบตเตอรี่และความว้าวุ่นใจที่เกิดขึ้นขณะเล่นเพลง

ขั้นตอนที่ 8: โครงการเสร็จสิ้น

จบโครงการ!
จบโครงการ!
จบโครงการ!
จบโครงการ!

หากคุณเปิดวงจรหลังจากอัปโหลดโค้ด คุณจะเห็นว่า Arduino บูทขึ้นและหน้าจอ OLED ทำงาน ก่อนที่จะกระโดดเข้าไปและเห็นคุณสมบัติทั้งหมดของโมดูล MP3 นี้ ให้คัดลอกไฟล์เพลงบางไฟล์ไปยัง SD สำหรับสิ่งนี้ คุณต้องปฏิบัติตามหลักการตั้งชื่อบางประการ โดยที่โฟลเดอร์ของคุณควรมีชื่อว่า 01, 02,..etc และไฟล์ของคุณในแต่ละโฟลเดอร์ควรมีชื่อว่า 001, 002, 003.. เป็นต้น

เพื่อให้ทุกอย่างง่ายขึ้น ฉันมีสคริปต์หลามใน GitHub repo พร้อมกับรหัสสำหรับโครงการนี้ เพียงเรียกใช้สคริปต์ในพรอมต์คำสั่ง และคุณควรได้รับอินเทอร์เฟซ GUI ซึ่งคุณสามารถถ่ายโอนไฟล์ไปยังการ์ด SD ของคุณได้ฟรีสำหรับ DFPlayer ของคุณ

ที่นี่คุณสามารถสร้างโฟลเดอร์ได้มากเท่าที่คุณต้องการ และคุณสามารถเพิ่มไฟล์ได้มากเท่าที่คุณต้องการในรายการไฟล์ คุณยังสามารถลบโฟลเดอร์และไฟล์ที่ไม่ต้องการได้ (โปรแกรมได้รับการออกแบบให้ดูเหมือนซอฟต์แวร์จากทศวรรษที่ผ่านมา ดังนั้นมันจึงตรงกับบิลด์ mp3) ของเรา ใส่การ์ด SD และเปิด soundpod (นั่นคือชื่อที่ฉันตั้งไว้สำหรับเครื่องเล่น MP3 ของฉัน XD)

คุณสามารถดูการทำงานของ soundpod นี้ได้ในวิดีโอที่โพสต์ด้านบน!

แนะนำ: