raggruppare/associare sempre lo stesso codice, ad una lettera

leo72:
@Gingiardu:
come fai a superare 32K di firmware con il pilotaggio di un display? Mi sembra eccessivo. Hai altre cose insieme? Che lib carichi?

PS:
il mio codice fa esattamente quello che fanno i tuoi 10 if uno dietro l'altro. Se vuoi ti sviluppo i primi 2 passaggi:
for (byte temp=10; temp<99; temp +=10) {
if ((k0 >= temp) && (k0 <= (temp + 9))) {
k0-=(temp*1);
}
}

temp parte da 10
confronto: k0>=10 && k0<=19? Sì: k0 = k0-(101)
no: temp = temp+10
confronto: k0>=20 && k0<=29? Sì: k0 = k0-(10
2)
ecc...

purtroppo non adopero nessun altra cosa,
con il nuovo codice sono a 9 k di memoria 3 cifre
provero il ciclo for per tutti gli if che alla fine dovrebbero essere il doppio di quelli postati

tutto il programma non deve superare i 12-15 millisecondi per "girare" se no i display iniziano a "vibrare"

if (k0 >= 1000 && k0 <= 2000) k0=k0-1000;
if (k0 >= 2000 && k0 <= 3000) k0=k0-2000;
if (k0 >= 3000 && k0 <= 4000) k0=k0-3000;
if (k0 >= 4000 && k0 <= 5000) k0=k0-4000;
if (k0 >= 5000 && k0 <= 6000) k0=k0-5000;
if (k0 >= 6000 && k0 <= 7000) k0=k0-6000;
if (k0 >= 7000 && k0 <= 8000) k0=k0-7000;
if (k0 >= 8000 && k0 <= 9000) k0=k0-8000;
if (k0 >= 9000 && k0 <= 9999) k0=k0-9000;



if (k0 >= 100 && k0 <= 200) k0=k0-100;
if (k0 >= 200 && k0 <= 300) k0=k0-200;
if (k0 >= 300 && k0 <= 400) k0=k0-300;
if (k0 >= 400 && k0 <= 500) k0=k0-400;
if (k0 >= 500 && k0 <= 600) k0=k0-500;
if (k0 >= 600 && k0 <= 700) k0=k0-600;
if (k0 >= 700 && k0 <= 800) k0=k0-700;
if (k0 >= 800 && k0 <= 900) k0=k0-800;
if (k0 >= 900 && k0 <= 999) k0=k0-900;



if (k0 >= 10 && k0 <= 20) k0=k0-10;
if (k0 >= 20 && k0 <= 30) k0=k0-20;
if (k0 >= 30 && k0 <= 40) k0=k0-30;
if (k0 >= 40 && k0 <= 50) k0=k0-40;
if (k0 >= 50 && k0 <= 60) k0=k0-50;
if (k0 >= 60 && k0 <= 70) k0=k0-60;
if (k0 >= 70 && k0 <= 80) k0=k0-70;
if (k0 >= 80 && k0 <= 90) k0=k0-80;
if (k0 >= 90 && k0 <= 99) k0=k0-90;

if (k1s >= 1000 && k1s <= 2000) k1s=k1s-1000;
if (k1s >= 2000 && k1s <= 3000) k1s=k1s-2000;
if (k1s >= 3000 && k1s <= 4000) k1s=k1s-3000;
if (k1s >= 4000 && k1s <= 5000) k1s=k1s-4000;
if (k1s >= 5000 && k1s <= 6000) k1s=k1s-5000;
if (k1s >= 6000 && k1s <= 7000) k1s=k1s-6000;
if (k1s >= 7000 && k1s <= 8000) k1s=k1s-7000;
if (k1s >= 8000 && k1s <= 9000) k1s=k1s-8000;
if (k1s >= 9000 && k1s <= 9999) k1s=k1s-9000;

if (k1s >= 100 && k1s <= 200) k1s=k1s-100;
if (k1s >= 200 && k1s <= 300) k1s=k1s-200;
if (k1s >= 300 && k1s <= 400) k1s=k1s-300;
if (k1s >= 400 && k1s <= 500) k1s=k1s-400;
if (k1s >= 500 && k1s <= 600) k1s=k1s-500;
if (k1s >= 600 && k1s <= 700) k1s=k1s-600;
if (k1s >= 700 && k1s <= 800) k1s=k1s-700;
if (k1s >= 800 && k1s <= 900) k1s=k1s-800;
if (k1s >= 900 && k1s <= 999) k1s=k1s-900;

if (k1s3 >= 1000 && k1s <= 2000) k1s3=k1s3-1000;
if (k1s3 >= 2000 && k1s <= 3000) k1s3=k1s3-2000;
if (k1s3 >= 3000 && k1s <= 4000) k1s3=k1s3-3000;
if (k1s3 >= 4000 && k1s <= 5000) k1s3=k1s3-4000;
if (k1s3 >= 5000 && k1s <= 6000) k1s3=k1s3-5000;
if (k1s3 >= 6000 && k1s <= 7000) k1s3=k1s3-6000;
if (k1s3 >= 7000 && k1s <= 8000) k1s3=k1s3-7000;
if (k1s3 >= 8000 && k1s <= 9000) k1s3=k1s3-8000;
if (k1s3 >= 9000 && k1s <= 9999) k1s3=k1s3-9000;



if (k1s3 >= 100 && k1s3 <= 200) k1s3=k1s3-100;
if (k1s3 >= 200 && k1s3 <= 300) k1s3=k1s3-200;
if (k1s3 >= 300 && k1s3 <= 400) k1s3=k1s3-300;
if (k1s3 >= 400 && k1s3 <= 500) k1s3=k1s3-400;
if (k1s3 >= 500 && k1s3 <= 600) k1s3=k1s3-500;
if (k1s3 >= 600 && k1s3 <= 700) k1s3=k1s3-600;
if (k1s3 >= 700 && k1s3 <= 800) k1s3=k1s3-700;
if (k1s3 >= 800 && k1s3 <= 900) k1s3=k1s3-800;
if (k1s3 >= 900 && k1s3 <= 999) k1s3=k1s3-900;