Go Down

Topic: La IDE sa il quantitativo di RAM del micro ? (Read 497 times) previous topic - next topic

acik

Leggo spesso di problemi con la RAM che viene consumata tutta da uno sketch con il conseguente blocco dello stesso.
Mi domandavo: ma l' IDE prima di compilare il programma deve conoscere il quantitativo di RAM disponibile per lo stesso ?
(Ho notato che Arduino2009 era venduto inizialmente con ATMega168 che ha 1kB di RAM, e successivamente con ATMega328 che ha 2kB di RAM.)

E poi.. C'e' un modo per essere avvisati in anticipo dall' IDE che uno sketch consumera troppa RAM ?

leo72

L'IDE non sa il quantitativo di RAM durante la scrittura del codice.
Lo si può sapere solo dopo la creazione del file binario ma limitatamente alla quantità di Ram consumata staticamente con avr-size (cerca sul forum).
Però è un'indicazione approssimativa perché se il tuo codice crea a runtime un array che consuma tutta la memoria disponibile, neanche avr-size può accorgersene dato che lui fa solo una stima della memoria in base allo stack ed allo spazio da riservare per le variabili statiche.

Go Up