- ฮาร์ดแวร์ที่ต้องการ:
- เตรียมพร้อมกับไฟล์เสียง WAV ของคุณ:
- วงจรและฮาร์ดแวร์:
- การเขียนโปรแกรม Arduino ของคุณ:
- การทำงานของเครื่องเล่นเพลง Arduino นี้:
การเพิ่มเสียงหรือเพลงลงในโปรเจ็กต์ของเราจะทำให้มันดูเท่และน่าฟังขึ้นมาก โดยเฉพาะอย่างยิ่งถ้าคุณใช้ Arduino และคุณมีพินจำนวนมากฟรีคุณสามารถเพิ่มเอฟเฟกต์เสียงให้กับโปรเจ็กต์ของคุณได้อย่างง่ายดายเพียงแค่ลงทุนในโมดูลการ์ด SDเพิ่มเติมและลำโพงธรรมดา ในบทความนี้ฉันจะแสดงให้คุณเห็นว่าการเล่นเพลง / เพิ่มเอฟเฟกต์เสียงโดยใช้บอร์ด Arduinoนั้นง่ายเพียงใด ขอบคุณชุมชน Arduino ที่พัฒนาไลบรารีบางส่วนเพื่อสร้างสิ่งนี้ด้วยวิธีที่ง่ายและรวดเร็ว เรายังใช้ IC LM386 ที่นี่เพื่อการขยายเสียงและการตัดเสียงรบกวน
ในโปรเจ็กต์นี้เราจะเล่นไฟล์เพลง. wav ที่เก็บไว้ในการ์ด SD เราจะตั้งโปรแกรม Arduino ให้อ่านไฟล์. wav เหล่านี้และเล่นเสียงด้วยการพูดผ่านเครื่องขยายเสียง LM386 ตอนนี้เนื่องจากรหัสนี้สามารถอ่านได้เฉพาะไฟล์. wav ในทางเทคนิคโครงการนี้จึงไม่สามารถเรียกได้ว่าเป็นArduino Mp3 Playerแต่เดี๋ยวก่อนคุณจะยังสามารถได้ยินเพลงด้วย หากคุณกำลังมองหาทางเลือกง่ายๆเช่นเครื่องเล่นเพลง Arduio ที่ไม่มีการ์ด SDคุณควรตรวจสอบเครื่องเล่นทำนองเพลง Arduino ที่เราสร้างไว้ก่อนหน้านี้
ฮาร์ดแวร์ที่ต้องการ:
- Arduino UNO
- โมดูลเครื่องอ่านการ์ด SD
- การ์ด SD
- LM386 เครื่องขยายเสียง
- ตัวเก็บประจุ 10uf (2 Nos)
- ตัวเก็บประจุ 100uf (2 Nos)
- ตัวต้านทาน 1K, 10K
- ปุ่มกด (2 Nos)
- เขียงหั่นขนม
- การเชื่อมต่อสายไฟ
เตรียมพร้อมกับไฟล์เสียง WAV ของคุณ:
สำหรับการเล่นเสียงจาก SD Card โดยใช้ Arduinoเราต้องใช้ไฟล์เสียงในรูปแบบ. wav เนื่องจาก Arduino Board สามารถเล่นไฟล์เสียงในรูปแบบเฉพาะที่เป็นรูปแบบ wav ได้ ในการสร้างเครื่องเล่น mp3 arduinoมี mp3 shields มากมายที่คุณสามารถใช้กับ arduino ได้ หรืออื่น ๆ ในการเล่นไฟล์ mp3 ใน arduinoมีเว็บไซต์ที่คุณสามารถใช้เพื่อแปลงไฟล์เสียงในคอมพิวเตอร์ของคุณเป็นไฟล์ WAV เฉพาะนั้น
ดังนั้นในการแปลงไฟล์เสียงเป็นรูปแบบ wav ให้ทำตามขั้นตอนด้านล่าง:
ขั้นตอนที่ 1:คลิกที่“ Online Wav Converter” เพื่อเข้าสู่เว็บไซต์
ขั้นตอนที่ 2: Arduino สามารถเล่นไฟล์ wav ในรูปแบบต่อไปนี้ คุณสามารถเล่นกับการตั้งค่าได้ในภายหลัง แต่การตั้งค่าเหล่านี้ได้รับการทดลองเพื่อให้ได้คุณภาพที่ดีที่สุด
ความละเอียดบิต |
8 บิต |
อัตราการสุ่มตัวอย่าง |
16000 เฮิร์ตซ์ |
ช่องเสียง |
โมโน |
รูปแบบ PCM |
PCM 8 บิตที่ไม่ได้ลงนาม |
ขั้นตอนที่ 3:ในเว็บไซต์คลิกที่“ เลือกไฟล์” และเลือกไฟล์ที่คุณต้องการแปลง จากนั้นป้อนข้อมูลในการตั้งค่าด้านบน เมื่อทำเสร็จแล้วควรมีลักษณะดังนี้ในภาพด้านล่าง
ขั้นตอนที่ 4: คลิกที่“ แปลงไฟล์” และไฟล์เสียงของคุณจะถูกแปลงเป็นรูปแบบไฟล์. Wav นอกจากนี้ยังจะดาวน์โหลดเมื่อการแปลงเสร็จสิ้น
ขั้นตอนที่ 5:สุดท้ายฟอร์แมตการ์ด SD ของคุณและบันทึกไฟล์เสียง. wav ของคุณลงในนั้น ตรวจสอบให้แน่ใจว่าคุณได้จัดรูปแบบก่อนที่จะเพิ่มไฟล์นี้ จำชื่อไฟล์เสียงของคุณด้วย ในทำนองเดียวกันคุณสามารถเลือกไฟล์เสียงใดก็ได้จากสี่ไฟล์และบันทึกด้วยชื่อ 1, 2, 3 และ 4 (ไม่ควรเปลี่ยนชื่อ) ฉันได้แปลงเพลงสี่เพลงและบันทึกเป็น 1.wav, 2.wav, 3.wav และ 4.wav ตามที่แสดงด้านล่าง
วงจรและฮาร์ดแวร์:
แผนภาพวงจรสำหรับArduino Audio File Playerเป็นเรื่องง่าย แผนภาพวงจรทั้งหมดแสดงในภาพด้านล่าง
ที่เรารู้ว่าไฟล์เสียงของเราจะถูกบันทึกลงในการ์ด SD ด้วยเหตุนี้เราติดต่อโมดูลเครื่องอ่านการ์ด SD กับ Arduino Arduino การ์ด SD และสื่อสารโดยใช้โปรโตคอลการสื่อสาร SPI ดังนั้นโมดูลจึงเชื่อมต่อกับหมุด SPI ของ Arduino ดังที่แสดงไว้ด้านบนในแผนภาพ มีการระบุไว้เพิ่มเติมในตารางด้านล่าง
Arduino |
โมดูลการ์ด SD |
+ 5V |
Vcc |
Gnd |
Gnd |
พิน 12 |
มิโซะ (Master In Slave out) |
พิน 11 |
MOSI (Master Out Slave In) |
พิน 13 |
SCK (นาฬิกาซิงโครนัส) |
พิน 4 |
CS (เลือกชิป) |
ตอนนี้ Arduino จะสามารถอ่านไฟล์เพลงจากการ์ด SD และเล่นบนพินหมายเลข 9 ได้ แต่สัญญาณเสียงที่ผลิตโดย Arduino บนพิน 9 จะไม่ได้ยินมากนัก ดังนั้นเราจึงขยายมันโดยใช้ IC เครื่องขยายเสียงแรงดันไฟฟ้าต่ำ LM386
แอมพลิฟายเออร์ที่แสดงด้านบนได้รับการออกแบบมาสำหรับ Gain 200 และ Vdd (พิน 6) ใช้พลังงานจากขา 5V ของ Arduino หากคุณต้องการเพิ่ม / ลดเสียงคุณสามารถเพิ่ม / ลดแรงดันไฟฟ้าที่ให้กับพินนี้ได้ ทนได้สูงสุด 15V เรียนรู้เพิ่มเติมเกี่ยวกับการกำหนดค่าการขยาย 200 อัตราขยายสำหรับ LM386 ที่นี่
นอกจากนี้เรายังมีปุ่มกดสองปุ่มที่เชื่อมต่อกับพิน 2 และ 3 ของ Arduino สวิตช์เหล่านี้ใช้เพื่อเล่นเพลงถัดไปและเล่น / หยุดเพลงตามลำดับ ฉันใช้ปุ่มเหล่านี้เพียงเพื่อแสดงความสามารถของมัน คุณสามารถเล่นเพลงได้ทุกเมื่อที่ต้องการ ตรวจสอบวิดีโอสาธิตในตอนท้าย
คุณสามารถประกอบวงจรนี้ได้อย่างสมบูรณ์บน Breadboard ดังแสดงในภาพด้านล่าง
การเขียนโปรแกรม Arduino ของคุณ:
เมื่อเราพร้อมกับฮาร์ดแวร์และการ์ด SD แล้วเราก็เล่นเพลงเหล่านั้นได้ในขั้นตอนเดียว ใส่การ์ดลงในโมดูลการ์ด SD ของคุณแล้วทำตามขั้นตอนด้านล่าง
ขั้นตอนที่ 1:ดังที่กล่าวไว้ก่อนหน้านี้เราจะใช้ไลบรารีเพื่อทำให้โครงการนี้ใช้งานได้ ลิงค์สำหรับห้องสมุดมีให้ด้านล่าง คลิกที่ไฟล์แล้วเลือก“ โคลนหรือดาวน์โหลด” และเลือกดาวน์โหลดเป็น ZIP
- ไลบรารี TMRpcm
ขั้นตอนที่ 2:เพิ่มไฟล์ Zip นี้ลงใน Arduino IDE ของคุณโดยเลือก Sketch-> รวมไลบรารี -> เพิ่ม. ZIP Library ดังที่แสดงด้านล่างและเลือกไฟล์ ZIP ที่เราเพิ่งดาวน์โหลด
ขั้นตอนที่ 3:โปรแกรมทั้งหมดของโครงการเครื่องเล่นเพลง arduinoมีให้ในตอนท้ายของบทความนี้เพียงแค่คัดลอกและวางลงในโปรแกรม Arduino ตอนนี้คลิกที่อัปโหลดและเตรียมพร้อมที่จะเล่นไฟล์เสียงของคุณ
โปรแกรมอธิบายได้ด้วยตนเองเนื่องจากมีบรรทัดความคิดเห็น แต่ฉันได้อธิบายความสามารถของไลบรารี TMRpcm ด้านล่างด้วย
การเล่นไฟล์เสียง:
คุณสามารถเล่นเสียงใด ๆ ที่จัดเก็บในรูปแบบ Wav ภายในโมดูลการ์ด SD โดยใช้บรรทัดด้านล่าง
music.play ("3.wav"); // object name.play (“ FileName.wav”);
คุณสามารถใช้บรรทัดนี้ในตำแหน่งที่คุณต้องการเรียกใช้เสียง
หยุดไฟล์เสียงชั่วคราว:
หากต้องการหยุดไฟล์เสียงชั่วคราวคุณสามารถโทรไปที่บรรทัดด้านล่าง
music.pause (); //objectname.pause ();
การส่งต่อ / กรอกลับเสียง:
ไม่มีวิธีโดยตรงในการส่งต่อหรือกรอกลับไฟล์เสียง แต่คุณสามารถใช้บรรทัดด้านล่างเพื่อเล่นเพลงในช่วงเวลาใดเวลาหนึ่งได้ สามารถใช้เพื่อส่งต่อ / ย้อนกลับด้วยการเขียนโปรแกรมเพิ่มเติม
music.play ("2.wav", 33); // เล่นเพลงจากวินาทีที่ 33 //objectname.play(ชื่อโหมดไฟล์. wav ", เวลาในวินาที);
การตั้งค่าคุณภาพของเสียง:
ไลบรารีให้คุณสมบัติสองประการแก่เราในการเล่นเพลงหนึ่งคือเล่นตามโหมดปกติอีกแบบหนึ่งเพื่อเล่นด้วยการสุ่มตัวอย่างเกิน 2 เท่า
เพลงคุณภาพ (0); // โหมดปกติ music.quality (1); // 2X ในโหมดสุ่มตัวอย่าง
การตั้งค่าระดับเสียงของเสียง:
ได้คุณสามารถควบคุมระดับเสียงผ่านซอฟต์แวร์ได้ คุณสามารถตั้งระดับเสียงโดยใช้บรรทัดด้านล่าง ปริมาณเพลงที่สูงขึ้นมักจะส่งผลต่อคุณภาพของเสียงดังนั้นจึงควรใช้การควบคุมฮาร์ดแวร์เมื่อเป็นไปได้
music.setVolume (5); // เล่นเพลงที่ระดับเสียง 5 //objectname.setVolume (ระดับเสียง);
การทำงานของเครื่องเล่นเพลง Arduino นี้:
หลังจากเขียนโปรแกรม Arduino ของคุณแล้วเพียงแค่กดปุ่มที่เชื่อมต่อกับพิน 2 และ Arduino ของคุณจะเล่นเพลงแรก (บันทึกเป็น 1.wav) ให้คุณ ตอนนี้คุณสามารถกดปุ่มอีกครั้งเพื่อเปลี่ยนแทร็กของคุณไปยังเพลงถัดไปที่จะเล่น 2.wav ในทำนองเดียวกันคุณสามารถนำทางไปยังทั้งสี่เพลง
คุณยังสามารถเล่น / หยุดเพลงชั่วคราวได้โดยกดปุ่มที่เชื่อมต่อกับพิน 3 กดหนึ่งครั้งเพื่อหยุดเพลงชั่วคราวแล้วกดอีกครั้งเพื่อเล่นจากตำแหน่งที่หยุด ดูวิดีโอด้านล่างเพื่อการทำงานที่สมบูรณ์ (หรืออาจจะผ่อนคลายด้วยเพลงบางเพลง)
หวังว่าคุณจะสนุกกับโครงการนี้ ตอนนี้ขึ้นอยู่กับความคิดสร้างสรรค์ของคุณที่จะใช้ในโครงการของคุณ คุณสามารถสร้างนาฬิกาพูดผู้ช่วยเสียงหุ่นยนต์พูดได้ระบบรักษาความปลอดภัยการแจ้งเตือนด้วยเสียงและอื่น ๆ อีกมากมาย แจ้งให้เราทราบว่าคุณกำลังวางแผนที่จะใช้มันอย่างไรในส่วนความคิดเห็นและหากคุณมีปัญหาใด ๆ ในการทำงานสิ่งนี้คุณสามารถติดต่อฉันผ่านฟอรัมหรือส่วนความคิดเห็นด้านล่าง