Memoria dinamica esaurita con 3 righe di codice

Buongiorno ragazzi, vi prego di aiutarmi perchè ho un problema che non riesco a risolvere.

Sto lavorando ad un progetto che richiede l’uso di un display, ed ho acquistato un classico 1.3 pollici(chip SH1106) con interfaccia I2C per cui sto usando la libreria u8g2 per funzionare.
Il problema è che, senza nemmeno cominciare a scrivere del codice, la memoria dinamica del mio arduino uno viene “riempita” dalle “variabili globali” che usano 1800 byte… ma io di variabili, nello sketch, non ne ho proprio!
Di seguito incollo il codice che mi dà questo problema:

#include <U8g2lib.h>

U8G2_SH1106_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, U8X8_PIN_NONE);

void setup() {
  u8g2.begin();
}

void loop() {
  u8g2.firstPage();
  do {   
    u8g2.setFont(u8g2_font_ncenB14_tr);
    u8g2.drawStr(0,20,"Hello World!");
  } while ( u8g2.nextPage() );
}

Non so proprio cosa fare, aiutatemi per piacere :slightly_frowning_face:

Buongiorno e benvenuto :slight_smile: ,
essendo il tuo primo post nella sezione Italiana del forum, nel rispetto del regolamento di detta sezione (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione … possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il su citato REGOLAMENTO

… poi, in conformità al suddetto regolamento, punto 7, devi editare il tuo post qui sopra (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More → Modify che si trova in basso a destra del tuo post) e racchiudere il codice all’interno dei tag CODE (… sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra).

In pratica, tutto il tuo codice dovrà trovarsi racchiuso tra due tag:

[code] _il _tuo_ codice_ [/code]

così da non venire interpretato e non dare adito alla formazione di caratteri indesiderati o cattiva formattazione del testo. Grazie.

Guglielmo

P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposito thread e sistemato il codice come da regolamento, nessuno ti potrà rispondere, quindi ti consiglio di fare il tutto al più presto. :wink:

Fantastico, grazie mille per l'appunto!
Ora dovrei aver sistemato tutto, scusa ancora per la svista :slight_smile:

Quella libreria è un vero "mattone" e ... dubito che riuscirai a fare qualche cosa di serio su un Arduino UNO ...
... hai già visto invece QUESTA ?

Guglielmo

Wow, assolutamente no... ora la studio per bene!
Trovo la reference ufficiali su Github, o ci sono tutorial sparsi per il web?
Non pensavo la u8g2 fosse così pesante... cavolo!

Gregorio

greg_bocca:
Trovo la reference ufficiali su Github ...

QUESTO il link a GitHub.

Guglielmo

Mi sto sentendo alquanto stupido, ma dal link di GitHub non riesco a trovare nè la reference completa(vedo solo qualche esempio e funzione per stampare stringhe) nè, altri dettagli come tutti i font possibili...

Non credo che preveda molti font ... anzi, nel .cpp ne vedo uno solo: font6x8 altri ... tocca crearseli, ma ripeto, sulla UNO, non è che puoi permetterti molto eh !

Guglielmo

Nel ".cpp" ovvero? Che si trova?? E font a parte, le funzioni dove posso trovarle?

Sei andato su github? Hai studiato i sorgenti che si trovano nella cartellina src? Li trovi tutto ...

Guglielmo

Già ne stiamo parlando qui: