Problemi MIDI IN [RISOLTO]

Scusate ma sto impazzendo.

Ho riprodotto fedelmente questo schema:

Ho collegato il “to arduino” al pin 0 (RX, arduino UNO).

Utilizzo le librerie MIDI 4.2.

Questo il codice che utilizzo, un semplice “lampeggia” se entra qualcosa di MIDI:

#include <MIDI.h>

MIDI_CREATE_DEFAULT_INSTANCE();

#define LED 13                   // LED pin on Arduino Uno


void BlinkLed(byte num)         // Basic blink function
{
    for (byte i=0;i<num;i++)
    {
        digitalWrite(LED,HIGH);
        delay(50);
        digitalWrite(LED,LOW);
        delay(50);
    }
}


void setup()
{
    pinMode(LED, OUTPUT);
    MIDI.begin(MIDI_CHANNEL_OMNI);          
}

void loop()
{
    if (MIDI.read())               
      BlinkLed(5);  
}

Non funziona.

Cioè, il led al 13 NON lampeggia mai, ma lampeggia in modo veramente fioco il led TX.

Ho provato a collegare un oscilloscopio al piedino 5 del fotoaccoppiatore, e vedo una quadra negativa quando invio segnali midi.

Dove sbaglio ?

Grazie.

virul: Ho provato a collegare un oscilloscopio al piedino 5 del fotoaccoppiatore, e vedo una quadra negativa quando invio segnali midi.

Se vedi un segnale che normalmente è a 5V e quando invii messaggi midi presenta una serie di impulsi a 0V, va bene. Cosa usi per inviare i messaggi midi ?

Una scheda audio collegata a un software che invia praticamente qualsiasi segale midi.

Il lato computer è perfetto, con altro vedo i segnali, con arduino no...

Ho provato anche questo, sia l'hardware che il software: nulla !

http://forum.arduino.cc/index.php/topic,22447.0.html

virul: Una scheda audio collegata a un software che invia praticamente qualsiasi segale midi.

La scheda audio non invia un segnale midi standard a meno che non sia dotata di una vera porta MIDI.

Ovviamente intendo la porta midi della scheda audio, è una professionale da un migliaio di euro.

Trovato il problema.

Anche se da nessuna parte viene specificato, e nessun codice trovato in rete lo contiene,

SENZA pinMode(0, INPUT) NON FUNZIONA.

E' possibile modificare il titolo per inserire [RISOLTO] ?

Non lo trovo da nessuna parte.

Grazie.

Modifica il tuo primo post e aggiungi al titolo RISOLTO

virul: Anche se da nessuna parte viene specificato, e nessun codice trovato in rete lo contiene, SENZA pinMode(0, INPUT) NON FUNZIONA.

Decisamente strana questa cosa perché la MIDI altro non è che una comunicazione UART con un baud rate fuori standard (32150 bps) e con i livelli invertiti, il fatto stesso che la libreria inizializza l'UART porta al collegamento del relativo pin come input. Che libreria stai usando ?

Ho inizialmente provato la 4.2 (ultima) ma non andava, poi sono passato a ritroso ma senza alcun pregio.

Poi ho cominciato a studiare meglio la cosa, e aggiungendo quella riga funziona con tutte le librerie.

Era decisamente frustrante.

virul: Ho inizialmente provato la 4.2 (ultima)

Si ma quale libreria, link ? Ne esistono diverse di librerie midi per Arduino e sarebbe il caso di segnalare questo problema all'autore.