Bonjour à tous,
Je développe un éditeur MIDI pour Synthétiseur Roland JU-06
Ci-dessous, un extrait fonctionnel de mon code:
//==============================================================================================================================
#include <LiquidCrystal.h>
LiquidCrystal lcd(2,3,4,5,6,7);
//==============================================================================================================================
void setup()
{
Serial.begin(31250);
lcd.begin(16,2);
}
//==============================================================================================================================
void loop()
{
byte parametre = Lecture_Serie();
if(parametre != 0) affichage(parametre);
}
//==============================================================================================================================
void affichage(byte param)
{
switch (param)
{
case 1: Ecran_2("DCO LFO"); break;
case 2: Ecran_2("DCO PWM"); break;
case 3: Ecran_2("DCO SUB"); break;
case 4: Ecran_2("DCO NOICE"); break;
case 5: Ecran_2("HPF FREQ"); break;
case 6: Ecran_2("VCF FREQ"); break;
case 7: Ecran_2("VCF RES"); break;
case 8: Ecran_2("VCF ENV"); break;
/*------------------
---- etc ---------
------------------*/
case 49: Ecran_2("ENV Sustain"); break;
case 50: Ecran_2("ENV Release"); break;
} // fin de switch case
}
//==============================================================================================================================
void Ecran_2(String string1)
{
lcd.clear(); //Effacer écran
lcd.setCursor(0,0); lcd.print(string1); //Affichage du nom du paramètre
} //Fin de fonction
//==============================================================================================================================
byte Lecture_Serie()
{
byte temp = 0;
if(Serial.available() > 0) temp = Serial.read();
return temp;
}
//==============================================================================================================================
Cela consiste à lire un octet sur le port série et à afficher sur un écran LCD la valeur du paramètre correspondant.
Mon code fonctionne mais toutes les chaines de caractères de la fonction Affichage() sont stockées en mémoire RAM et cela prend trop de place.
Pourriez vous m'aider à écrire la même chose mais avec les chaines stockées dans la mémoire Flash ?
Merci par avance.
Philippe.