Pages: [1]   Go Down
Author Topic: Midi controller conversione codice  (Read 462 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 2
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sono nuovo del forum avrei bisogno di uno spunto di codice  per questo problema.
Vorrei leggere il codice binario che si presenta sui tre Pin del Multiplexer (A b C) e questo, puntando a una tabella di conversione mi restituisce un codice decimale da me assocciato,( Es. 0001=10  0002=18 ecc...).

L'idea è di inserire questo codice decimale in Which Control..

 val = analogRead(1)/8;   // Divide by 8 to get range of 0-127 for midi
   MIDI_TX(176,1,val);         // 176 = CC command, 1 = Which Control, val = value read from Potentionmeter
Avrò bisogno di almeno 50 codici tra potenziometri e interuttori.
la cosa è fattibile?.Grazie
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

dunque 50 codici...
ogni entrata della tabella serve:
1 byte per la chiave, e 1 byte per il dato corrispondente (quindi valori da 0 a 254)
2 byte * 50=100byte
direi che con lo spazio non dovresti avere troppi problemi.
Azi addirittura potresti fare che la tabella la invii via pc nel setup e la salvi su EEPROM, così dovresti starci con certezza...
io parlo per un'atmega 328 in su, per altri non so
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

0
Offline Offline
Newbie
*
Karma: 0
Posts: 2
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Possiedo Arduino uno,qualche riga di codice per il discorso tabella?
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

certo!
byte tabella[2][50];
ora hai una tabella a 2 entrate: tabella
  • [y]
x può essere 0 o 1, in 0 io metterei il valore da cercare, in 1 il suo equivalente
y invece va da 0 a 49, e quindi rappresenta tutti i codici.
per inizializzarla puoi fare così: esempio 2 codici a -> 1 e b -> 2:
byte tabella[2][50] = {{'a', 1},{'b', 2}};
occhio che le celle non inizializzate contengono valori a caso
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Pages: [1]   Go Up
Jump to: