« Rpimidi » : différence entre les versions
									
								
												
				Sauter à la navigation
				Sauter à la recherche
				
				
		
					
								
					
								
							
		|  (Page créée avec « == Objectif ==  Utiliser un Raspberry Pi comme enregistreur d'un piano numérique Yamaha via le protocole MIDI et les ports GPIO du Pi.  == Plate-forme de test ==  * Un Ra... ») | Aucun résumé des modifications | ||
| Ligne 10 : | Ligne 10 : | ||
| === Arduino === | === Arduino === | ||
| Insérer le code de test suivant dans l'Arduino | * Récupérer la [https://github.com/FortySevenEffects/arduino_midi_library/ librairie MIDI pour Arduino] | ||
| * Insérer le code de test suivant dans l'Arduino | |||
| <syntaxhighlight lang="c"> | <syntaxhighlight lang="c"> | ||
| Ligne 39 : | Ligne 41 : | ||
| } | } | ||
| </syntaxhighlight> | </syntaxhighlight> | ||
| * [https://www.arduino.cc/en/Tutorial/Midi Cablage Arduino - Pi] | |||
| === Pi === | |||
Version du 28 novembre 2016 à 19:47
Objectif
Utiliser un Raspberry Pi comme enregistreur d'un piano numérique Yamaha via le protocole MIDI et les ports GPIO du Pi.
Plate-forme de test
- Un Raspberry Pi avec la dernière Raspbian
- Un Arduino pour simuler le piano Yamaha et envoyer des notes au format MIDI
Arduino
- Récupérer la librairie MIDI pour Arduino
- Insérer le code de test suivant dans l'Arduino
#include <MIDI.h>
// Simple tutorial on how to receive and send MIDI messages.
// Here, when receiving any message on channel 4, the Arduino
// will blink a led and play back a note for 1 second.
MIDI_CREATE_DEFAULT_INSTANCE();
#define LED 13   		    // LED pin on Arduino Uno
void setup()
{
    pinMode(LED, OUTPUT);
    MIDI.begin(4);          // Launch MIDI and listen to channel 4
}
void loop()
{
    digitalWrite(LED,HIGH);
    MIDI.sendNoteOn(42,127,1);  // Send a Note (pitch 42, velo 127 on channel 1)
    delay(1000);		        // Wait for a second
    MIDI.sendNoteOff(42,0,1);   // Stop the note
    digitalWrite(LED,LOW);
    delay(1000);
}


