Salve a tutti...
mi sono avvicinato da pochissimo ad arduino e, nel realizzare il mio progetto, mi sono imbattuto in un piccolo
problema con gli spazi limitati... per il codice.
Premesso che il mio linguaggio "madre" per la programmazione è il C# non ho grossissimi problemi con quello di arduino e l'eventuale ottimizzazione che sto già facendo ma, per il mio progetto (un "semplice" controllo accessi) vorrei sfruttare un lettore RFID, un lettore MicroSD, ed una porta Ethernet, ed aggiungere poi Fingerprint, LCD ed un Servo, detto questo i componenti singolarmente non hanno problemi ma quando ho iniziato a metterli insieme son iniziate le rogne...
Voi direte ... eeeeeeee e che vuoi fare con tutta sta roba... costruire lo shuttle?? :o ... e lo so ma mi è venuto in mente così e so che è fattibile anche se come primo progetto sto andando direttamente sul complicato.
Son partito da qui RFID522-Door-Unlock
ora sto cercando di risolvere le problematiche lato software e cioè i problemi di spazio, dovendo gestire il lettore rfid, la scheda e la rete ho avuto bisogno di queste librerie:
#include <EEPROM.h>
#include <SPI.h>
#include <Ethernet.h>
#include <SdFat.h>
#include <MFRC522.h>
ho scelto SdFat perchè occupa meno spazio rispetto alla SD.h sul compilato, ciò che mi preme capire se qualcuno di voi ha avuto necessità di usare più librerie insieme e se lo spazio che occupa il compilato andava oltre il 100% (32.000k circa), perchè io mi trovo in una situazione limite in cui se inserisco una riga tipo
SdFile rdfile("parametri.ini", O_READ);
questa mi fa saltare il compilato più o meno dal 77% al 98% (perchè giustamente richiamando la SdFile si porta dietro altro codice...) e se ci metto pure la parte Ethernet... supero alla grande, ora sto cercando di ottimizzare al meglio ciò che ho scritto io e ciò che era negli esempi ma, questa parte fondamentalmente è pochissima roba in confronto a tutte le librerie...
Se ad esempio si compila il codice \AccessControl\AccessControl.ino presente nello zip RFID522-Door-Unlock va bene per Arduino UNO ma non per il Pro Mini, che ha un pochino di memoria in meno... il mio obiettivo sarebbe quello di utilizzare per il progetto definitivo un Arduino Pro Mini per una questione di dimensioni e, non certo un Arduino UNO ma non oso immaginare dove arriverei se inserissi anche le lib per gestire LCD e Servo...
La mia domanda è: c'è un modo per risolvere questi problemi? e quando non se ne può fare a meno di superare il 100% che si fa per non essere costretti ad usare un Arduino Mega che ha dimensioni importanti rispetto al Pro Mini?
Scusate se ho fatto domande da niubbo ma... sto ancora studiando ![]()