สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
เพื่อนของฉันคนหนึ่งต้องการควบคุม Cubase ซึ่งเป็นซอฟต์แวร์บันทึกเสียงของเขาด้วยปุ่มกด เพื่อที่เขาจะได้หยุดและเริ่มการบันทึกจากระยะไกลโดยไม่ต้องไปที่คอมพิวเตอร์แล้วพิมพ์บนแป้นพิมพ์ คุณอาจสามารถทำได้ในซอฟต์แวร์บันทึกอื่น ๆ เราเพิ่งใช้ Cubase
ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
ปกติเปิดปุ่มกด (หนึ่งปุ่มสำหรับทุกการกระทำที่คุณต้องการทำเช่นนี้) ตัวต้านทาน 10K-Ohm (หนึ่งตัวสำหรับทุกปุ่ม) Arduino พร้อมไฟ 5V ที่ดี ฉันต้องใช้พลังงานจากภายนอก (ฉันใช้เวอร์ชันเปลือยเปล่าที่ใช้ Diecimila) รับที่นี่เขียงหั่นขนมแบบไม่มีบัดกรี (แบบนี้) แจ็ค MIDI (คุณต้องการเพียงอันเดียวเนื่องจากสิ่งที่คุณทำคือส่งเหมือน dis) 220- ตัวต้านทานโอห์ม (สำหรับแจ็ค MIDI) คอมพิวเตอร์ที่ใช้ Cubase หรือซอฟต์แวร์บันทึกอื่น ๆ สาย MIDI (นี่คือ 20'er) คุณอาจต้องใช้อินพุต USB เป็น MIDI ฉันเคยใช้และชอบอันนี้และอันนี้
ขั้นตอนที่ 2: การตั้งค่าฮาร์ดแวร์
แผนผังและรูปที่แนบมา หมายเหตุ: แผนผังเป็นงานของ ITP Physical Computing
โดยพื้นฐานแล้วมันคือ 5V เพื่อสลับ, เปลี่ยนเป็นพินควบคุม, ตัวต้านทาน 10K จากพินควบคุมเป็น GND สำหรับแจ็ค MIDI มันคือพิน 5 ถึงพินอนุกรม, pin4 ถึง 5V ผ่านตัวต้านทาน 220 โหลดร่างต่อไปนี้บน Arduino ของคุณ: {{{ /* Convert Arduino ไปยังตัวควบคุม MIDI โดยใช้อินพุตดิจิตอลได้มากเท่าที่คุณต้องการ * * ร่างนี้ตั้งค่าให้ส่งบันทึก MIDI 2 รายการบน MIDI ช่อง 5 * แต่กำหนดค่าใหม่ได้อย่างง่ายดายสำหรับบันทึกและช่องอื่น ๆ * * สร้างเมื่อ 3 พ.ย. 2551 * โดย Hyeki Min * * แก้ไข 14 พฤษภาคม 2552 * โดย Petyr Stretz * เปลี่ยนตรรกะของสวิตช์เพื่อให้พินต่ำและสูงทำให้ * โน้ตเล่นเหมือนแป้นพิมพ์ ลบพินที่ไม่จำเป็นออก เปลี่ยน * ช่อง MIDI เอาต์พุตเป็น 5 ** แก้ไขเมื่อ 15 เมษายน 2014* โดย Petyr Stretz * ผู้ใช้คำแนะนำ Andrew. Wilson.7 รายงาน BYTE ไม่มี * ใช้ใน Arduino 1.0 หรือใหม่กว่าอีกต่อไป ลบออกจาก noteOn()*/
// กำหนดพินที่เราใช้ พอร์ต MIDI อยู่บน Arduino pin 1 (TX) เสมอ int switchPin1 = 2; int switchPin2 = 3;
// โน้ต midi ทั่วไป char note1 = 60; // อักษร C กลาง note2 = 62; //NS
// ตัวแปร int switchState1 = ต่ำ; int switchState2 = ต่ำ; int currentSwitchState1 = ต่ำ; int currentSwitchState2 = ต่ำ;
การตั้งค่าเป็นโมฆะ () {// ตั้งค่าสถานะของพิน I/O: pinMode (switchPin1, INPUT); โหมดพิน (switchPin2, INPUT);
// ตั้งค่า MIDI baud rate: Serial.begin(31250); } วงเป็นโมฆะ () { //switchPin1 currentSwitchState1 = digitalRead (switchPin1); if(currentSwitchState1 == สูง && switchState1 == LOW) // กด // หมายเหตุในช่อง 5 (0x94) ค่าบันทึกบางส่วน (หมายเหตุ) ความเร็วปานกลาง (0x45): noteOn(0x94, note1, 0x45); if(currentSwitchState1 == LOW && switchState1 == HIGH) // ปล่อย // หมายเหตุในช่อง 5 (0x94) ค่าโน้ตบางส่วน (หมายเหตุ) ความเร็วเงียบ (0x00): noteOn(0x94, note1, 0x00); switchState1 = ปัจจุบัน SwitchState1; //switchPin2 currentSwitchState2 = digitalRead (switchPin2); if(currentSwitchState2 == สูง && switchState2 == LOW) // กด // หมายเหตุในช่อง 5 (0x94) ค่าบันทึกบางส่วน (หมายเหตุ) ความเร็วปานกลาง (0x45): noteOn(0x94, note2, 0x45); if(currentSwitchState2 == LOW && switchState2 == HIGH) // ปล่อย // หมายเหตุในช่อง 5 (0x94) ค่าโน้ตบางส่วน (หมายเหตุ) ความเร็วเงียบ (0x00): noteOn (0x94, note2, 0x00); switchState2 = ปัจจุบัน SwitchState2; }// ส่งข้อความเปิด/ปิดบันทึกย่อ MIDI เป็นโมฆะ noteOn (ถ่าน cmd, ถ่าน data1, ถ่าน data2) { Serial.print (cmd); Serial.print(data1); Serial.print(data2); } }}}
ขั้นตอนที่ 3: ตั้งค่าซอฟต์แวร์
สามารถตั้งค่า Cubase สำหรับรีโมตทั่วไปที่สามารถแปลงบันทึก MIDI เป็นการกระทำได้ ภาพหน้าจอมาจาก Cubase 3 แม้ว่าจะไม่แตกต่างกันในเวอร์ชันอื่นๆ ตรวจสอบคู่มือของคุณสำหรับซอฟต์แวร์บันทึกอื่น ๆ ภายใต้เมนูอุปกรณ์ ให้เลือก "การตั้งค่าอุปกรณ์" เมื่อหน้าต่างการตั้งค่าอุปกรณ์ปรากฏขึ้น ให้คลิกเครื่องหมายบวกเพื่อเพิ่มการควบคุมและเลือก "Generic Remote" หมายเหตุ: ขึ้นอยู่กับเวอร์ชัน คุณอาจต้อง เลือกรีโมททางด้านขวาแล้วคลิกและลูกศรเพื่อเพิ่มไปทางซ้าย หลังจากคลิกที่ "Generic Remote" ในรายการอุปกรณ์ หน้าต่างควรมีลักษณะเหมือนการจับภาพหน้าจอที่สามด้านล่าง ตั้งค่าอินพุต MIDI ของคุณจากรายการดรอป ส่วนใหญ่จะต่างจากของฉันมากที่สุด และคลิกที่ "เฟดเดอร์ 1" ตัวแรกในกล่องด้านบน ตรวจสอบให้แน่ใจว่ารีโมทของคุณเชื่อมต่อและทำงาน คลิกปุ่ม "เรียนรู้" ค้างไว้แล้วกดปุ่มรีโมทปุ่มใดปุ่มหนึ่งแล้วปล่อย ของ "เรียนรู้" คุณควรเห็นช่อง MIDI และที่อยู่เปลี่ยนไปเพื่อให้ตรงกับของฉัน เว้นแต่คุณจะแก้ไขรหัส ทำเช่นเดียวกันกับ Fader 2 และอื่นๆ สำหรับปุ่มจำนวนเท่าใดก็ได้ที่คุณต้องการ เปลี่ยนค่าสูงสุดเป็น "1" ฉันไม่ได้ทำอย่างนั้นก่อนจะถ่ายภาพหน้าจอ ในกล่องด้านล่าง คุณจะกำหนดสิ่งที่ตัวควบคุมจะทำ มีตัวเลือกมากมาย แต่เราแค่ต้องการบันทึกและหยุด เลือก "คำสั่ง" จากรายการดรอปอุปกรณ์ "ขนส่ง" จากรายการดรอปช่อง/หมวดหมู่ แล้วจึงดำเนินการที่เกี่ยวข้องจากรายการดรอปค่า/การดำเนินการ เพียงแค่คลิกในกล่องที่คุณต้องการเปลี่ยน จะเปิดรายการดร็อป ตอนนี้คุณควรพร้อมแล้ว เลือกเปลี่ยนชื่อเพื่อตั้งชื่อตัวควบคุมที่ชัดเจน เช่น TRANSPORT แล้วกด Apply จากนั้นคลิก OK สุดท้าย ให้คลิกเมนูอุปกรณ์แล้วเลือก Generic Remote ตรวจสอบให้แน่ใจว่าได้เลือกการควบคุมของคุณแล้ว และคุณควรพร้อมที่จะใช้งานหมายเหตุ: ฉันพบปัญหาเกี่ยวกับการเรียนรู้ที่ไม่รู้จักบันทึกใด ๆ ที่ฉันกด มีปุ่มรีเซ็ตอุปกรณ์ถัดจาก + และ - เมื่อฉันกดว่าทุกอย่างทำงาน
ขั้นตอนที่ 4: บรรณานุกรม
เพราะฉันเชื่อในการให้เครดิตเมื่อถึงกำหนดส่งเครดิต:https://itp.nyu.edu/physcomp/Tutorials/MusicalArduino - Arduino to MIDI note outhttps://www.indiana.edu/~emusic/etext/MIDI/chapter3_MIDI4 shtml - ข้อมูลบันทึกย่อ MIDIhttps://www.dancetech.com/article.cfm?threadid=172 - การกำหนดค่า Cubase