Utilizzando la funzione if senza else se nessuna condizione impostata si verifica il flusso del programma si blocca ?
Affinché il programma prosegua senza fare nulla è corretto scrivere: else{;}
If else
Re: If else
Se si ha un elenco di condizioni if prima di un solo else e una di queste si verifica vengono verificate anche le altre ?
Sto cercando la spiegazione di un bug..
Sto cercando la spiegazione di un bug..
- Pier Aisa
- Amministratore
- Messaggi: 2538
- Iscritto il: ven 16 mar 2018, 9:43
- Località: Bologna
- Contatta:
Re: If else
Ogni else si accompagna al suo if, quindi se hai n condizioni else è applicabile all'ultimo in ordine sequenziale di esecuzione del programma.
se hai tanti if e nessuno si verifica non entri dentro quelle condizioni ma il programma deve continuare.
se siamo in ambito Arduino, attento alla RAM e alla sua gestione perchè magari si blocca per altri motivi
Sono malefiche le stringhe
la gestione della memoria dinamica su Arduino è la principale causa edi blocchi
Poi siccome Arduino non ha un debugger standard l'unico modo è utilizzare delle serial.print per capire che accade, magari allocando le stringhe in flash con uso di progmem per non erodere la RAM
se hai tanti if e nessuno si verifica non entri dentro quelle condizioni ma il programma deve continuare.
se siamo in ambito Arduino, attento alla RAM e alla sua gestione perchè magari si blocca per altri motivi
Sono malefiche le stringhe
la gestione della memoria dinamica su Arduino è la principale causa edi blocchi
Poi siccome Arduino non ha un debugger standard l'unico modo è utilizzare delle serial.print per capire che accade, magari allocando le stringhe in flash con uso di progmem per non erodere la RAM
Re: If else
Grazie Pier..
Stavo proprio cercando la spiegazione di un bug che affligge il mio data logger.
Non conosco ancora bene il mondo arduino, ho imparato giusto ciò che mi è servito a scrivere il codice..
Appena potrò lo pubblicherò...
Stavo proprio cercando la spiegazione di un bug che affligge il mio data logger.
Non conosco ancora bene il mondo arduino, ho imparato giusto ciò che mi è servito a scrivere il codice..
Appena potrò lo pubblicherò...
- Pier Aisa
- Amministratore
- Messaggi: 2538
- Iscritto il: ven 16 mar 2018, 9:43
- Località: Bologna
- Contatta:
Re: If else
Grazie Max. Con Arduino spesso quando si piata tutto senza ragione è un problema di RAM. La gestione della momeria infatti non è protetta. Ti consiglio di lavorare con tanta memoria libera, lo vedi in compilazione quanto ne hai usato, non scendere mai sotto il 20% libero. Nel caso migra verso MEGA2560
-
- Messaggi: 1032
- Iscritto il: mar 2 ott 2018, 15:16
Re: If else
A Arduino manca disperatemente la https://it.wikipedia.org/wiki/Garbage_collection praticamente é brago a ingozzarzi di dati ma non riesce a scaricarli da solo e ha bisogno di essere purgato a mano
Ho avuto un problema simile con un dataloger e la soluzione facile é stata quella di integrare un reset di arduino ogni tot di tempo https://www.theengineeringprojects.com/ ... cally.html
Ho avuto un problema simile con un dataloger e la soluzione facile é stata quella di integrare un reset di arduino ogni tot di tempo https://www.theengineeringprojects.com/ ... cally.html