Სარჩევი:
- მარაგები
- ნაბიჯი 1: შექმენით პურის დაფა
- ნაბიჯი 2: ესკიზის ატვირთვა
- ნაბიჯი 3: გაიგეთ თმის ვარცხნილობის MIDI და შიდა MIDI მარყუჟები
- ნაბიჯი 4: დაუკავშირდით თქვენს DAW- ს
- ნაბიჯი 5: ითამაშე
ვიდეო: ძირითადი Arduino MIDI კონტროლერი: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
შესავალი:
მე ახალი ვარ არდუინოსთან მუშაობისას, მაგრამ ვიმედოვნებ, რომ გავაფართოვებ ჩემს ცოდნას სხვების სწავლებით და გამოხმაურების მიღებით. ეს არის ძალიან ძირითადი MIDI კონტროლერი, რომელსაც აქვს 4 ღილაკი და პოტენომეტრი. ამ პროექტის მონახაზი ასე გამოიყურება:
1. ააშენეთ პურის დაფა
2. ატვირთეთ ესკიზი არდუინოში
3. გაიგეთ თმის ვარცხნილობის MIDI და შიდა MIDI მარყუჟი (loopbe1)
4. მარშრუტი თქვენი MIDI DAW (Ableton)
მარაგები
1 x Arduino Mega 2560
1 x პურის დაფა
1 x USB კაბელი
1 x პოტენომეტრი
4 x ტაქტიკური ღილაკები
4 x 120 Ohm რეზისტორები
14 x jumper კაბელები breadboard
ნაბიჯი 1: შექმენით პურის დაფა
შეაერთეთ თქვენი დაფა ისე, რომ ყველა კომპონენტი ემთხვეოდეს სურათს 1 ზემოთ. თითოეული ღილაკი უნდა გამოიყურებოდეს იგივე, რაც სურათზე 2. ღილაკი არის 2, 3, 4 და 5 არდუინოზე და პოტენომეტრის შუა ბუდე უკავშირდება AN040 შესასვლელს A0.
ნაბიჯი 2: ესკიზის ატვირთვა
დააკოპირეთ და ჩასვით ქვემოთ კოდი Arduino IDE– ში. აირჩიეთ სწორი დაფა "ინსტრუმენტების" ქვეშ და ატვირთეთ ესკიზი არდუინოში.
ბაიტი noteON = 144; // შენიშვნა commandbyte შენიშვნა; // შენახვა მიმდინარე სათამაშო ნოტის int ღილაკზე PIN1 = 2; int ღილაკი pin2 = 3; int ღილაკი Pin3 = 4; int ღილაკი Pin4 = 5; int potPin = A0; boolean currentState = LOW; // stroage მიმდინარე ღილაკის მდგომარეობისთვის boolean lastState = LOW; // ბოლო ღილაკის მდგომარეობის შენახვა void setup () {pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); pinMode (buttonPin3, INPUT); pinMode (buttonPin4, INPUT); // ამჯერად ჩვენ დავაყენებთ პინს, როგორც INPUT Serial.begin (9600); // სერიული კავშირის ინიციალიზაციას} void loop () {int PotVal = analogRead (potPin); ბაიტის სიჩქარე = რუკა (PotVal, 0, 1023, 0, 127); currentState = digitalRead (ღილაკი პინი 1); if (currentState == HIGH && lastState == LOW) {MIDImessage (noteON, 60, სიჩქარე); // ჩართეთ შენიშვნა 60 ჩართეთ 127 სიჩქარის დაყოვნებით (200); // ღილაკის დუნეზონის უხეში ფორმა} სხვაგან თუ (currentState == LOW && lastState == HIGH) {MIDImessage (noteON, 60, 0); // გამორთეთ შენიშვნა 60 შეფერხება (2); // ღილაკის დემონსტრირების უხეში ფორმა} lastState = currentState; currentState = digitalRead (ღილაკი Pin2); if (currentState == HIGH && lastState == LOW) {// თუ ღილაკზე ახლახან დაჭერილია MIDImessage (noteON, 61, სიჩქარე); // ჩართეთ შენიშვნა 60 127 სიჩქარის დაყოვნებით (200); // ღილაკის უხეში ფორმა debouncing} სხვა შემთხვევაში currentState = digitalRead (ღილაკი Pin3); if (currentState == HIGH && lastState == LOW) {// თუ ღილაკი ახლახან დაჭერილია MIDImessage (noteON, 62, სიჩქარე); // ჩართეთ შენიშვნა 60 127 სიჩქარის დაყოვნებით (200); // ღილაკის უხეში ფორმა debouncing} else if (currentState == LOW && lastState == HIGH) {MIDImessage (noteON, 60, 0); // გამორთეთ შენიშვნა 60 გამორთვა დაგვიანებით (2); // ღილაკის დუნოსის უხეში ფორმა} lastState = currentState; currentState = digitalRead (ღილაკი Pin4); if (currentState == HIGH && lastState == LOW) {// თუ ღილაკი ახლახან დაჭერილია MIDImessage (noteON, 63, სიჩქარე); // ჩართეთ შენიშვნა 60 127 სიჩქარის დაყოვნებით (200); // ღილაკის უხეში ფორმა debouncing} სხვა შემთხვევაში } // გაგზავნეთ MIDI შეტყობინება void MIDImessage (ბაიტის ბრძანება, ბაიტი მონაცემები 1, ბაიტი მონაცემები 2) {Serial.write (ბრძანება); Serial.write (data1); Serial.write (data2); }
მე ჯერ კიდევ ახალი ვარ ზოგადად კოდის წერაში ….. ვისაც ცოტა მეტი გამოცდილება აქვს, ალბათ გაასუფთავებენ ამას …
ნაბიჯი 3: გაიგეთ თმის ვარცხნილობის MIDI და შიდა MIDI მარყუჟები
Arduino– ს სჭირდება სერიული ხიდის გავლა, როგორიც არის Hairless MIDI, შემდეგ შიდა MIDI მარყუჟის მეშვეობით, როგორიცაა loopbe1 (ან IAC ავტობუსი Mac– ისთვის).
შენიშვნა: თქვენ არ შეგიძლიათ ატვირთოთ ესკიზი არდუინოში, სანამ ის დაკავშირებულია თმის ვარცხნილობის MIDI სერიულ ხიდთან.
შეარჩიეთ თქვენი Arduino თმის გარეშე MIDI სერიულ პორტში და loopbe1 ან IAC ავტობუსი MIDI– ში.
შენიშვნა: დარწმუნდით, რომ მუნჯი არ არის ჩართული loopbe1– ის გამოყენებისას.
ნაბიჯი 4: დაუკავშირდით თქვენს DAW- ს
თუ თქვენ იღებთ სიგნალს თმის ვარცხნილობის MIDI აპლიკაციაში, როდესაც დააჭერთ ღილაკს პურის დაფაზე (შუქი აანთებს) თქვენ უნდა შეეძლოთ MIDI მონაცემების გაგზავნა DAW– ში. მე გამოვიყენე აბლეტონი, მაგრამ ნებისმიერი DAW უნდა მუშაობდეს. დარწმუნდით, რომ თქვენი შიდა MIDI მარყუჟი (loopbe1) ჩართულია თქვენს DAW პარამეტრებში (აბლეტონში გსურთ, რომ „ტრეკი“იყოს ჩართული). შემდეგი, შეარჩიეთ MIDI მარყუჟში თქვენი ერთ – ერთი ჩანაწერი, როგორც ეს მოცემულია ზემოთ მოცემულ სურათზე.
ნაბიჯი 5: ითამაშე
ღილაკები ახლა იმუშავებს, როგორც ნებისმიერი სხვა MIDI კონტროლერი! პოტენომეტრი ცვლის DAW– ზე გაგზავნილი ჩანაწერების სიჩქარეს. ზემოთ (ძალიან ბნელი…) ვიდეო გვიჩვენებს როიალის ხმას მოქმედებაში!
გირჩევთ:
შექმენით Arduino MIDI კონტროლერი: 5 ნაბიჯი (სურათებით)
შექმენით Arduino MIDI კონტროლერი: გამარჯობა ყველას! ამ სასწავლო ინსტრუქციაში მე გაჩვენებთ თუ როგორ უნდა ააწყოთ თქვენი საკუთარი Arduino- ით აღჭურვილი MIDI კონტროლერი. MIDI ნიშნავს მუსიკალური ინსტრუმენტის ციფრულ ინტერფეისს და ეს არის პროტოკოლი, რომელიც კომპიუტერებს, მუსიკალურ ინსტრუმენტებს და სხვა ტექნიკას საშუალებას აძლევს კომუნიკაციის
Arduino MIDI კონტროლერი Aalto– სთვის: 7 ნაბიჯი
Arduino MIDI კონტროლერი Aalto– სთვის: როგორც მოყვარული მუსიკოსი, მე ხშირად დავდივარ ანალოგური სინთებიდან VST– ზე. როდესაც მე ვარ " VST " განწყობა, მე ნამდვილად ერთ საოცარ ინსტრუმენტზე ვარ: Madronalab's Aalto VST ეს წარმოუდგენელი VST ძალიან მოქნილია, ის წარმოქმნის ძალიან კარგ ბგერებს და საკმაოდ მაგარია
Arduino MIDI ფეხის კონტროლერი: 12 ნაბიჯი
Arduino MIDI ფეხის კონტროლერი: მე ახლახანს შევქმენი ეს MIDI კონტროლერი, რათა გამოვიყენო ფრაზის მარყუჟი, რომელიც ჩაშენებულია Boss DD500 დაგვიანებით პედლში. მე ვაკონტროლებ ჩემს მთელ გიტარის აპარატს Behringer FCB MIDI დაფის გამოყენებით და ეს მაძლევს საშუალებას შეცვალონ პატჩები შეფერხების პედლზე ეფექტში
Arduino დაფუძნებული წვრილმანი თამაშის კონტროლერი - Arduino PS2 თამაშის კონტროლერი - თამაში Tekken With DIY Arduino Gamepad: 7 ნაბიჯი
Arduino დაფუძნებული წვრილმანი თამაშის კონტროლერი | Arduino PS2 თამაშის კონტროლერი | თამაში Tekken With DIY Arduino Gamepad: გამარჯობა ბიჭებო, თამაშების თამაში ყოველთვის სახალისოა, მაგრამ საკუთარი წვრილმანი თამაშით თამაში უფრო სახალისოა. ასე რომ, ჩვენ გავაკეთებთ თამაშის კონტროლერს arduino pro micro- ს ამ ინსტრუქციებში
YABC - კიდევ ერთი ბლინკის კონტროლერი - IoT Cloud ტემპერატურისა და ტენიანობის კონტროლერი, ESP8266: 4 ნაბიჯი
YABC - კიდევ ერთი ბლინკის კონტროლერი - IoT Cloud ტემპერატურისა და ტენიანობის კონტროლერი, ESP8266: გამარჯობათ, მე ცოტა ხნის წინ დავიწყე სოკოს მოყვანა სახლში, ოსტრების სოკო, მაგრამ მე უკვე მაქვს 3 ამ კონტროლერის სახლში Fermenter ტემპერატურის კონტროლი ჩემი სახლის ხარშვის, მეუღლისთვის ის ასევე აკეთებს ამ კომბუჩას საქმეს ახლა და როგორც თერმოსტატი სითბოსთვის