| | #22 (permalink) Top |
| Adv Moderator Data registr.: 15-08-2007 Residenza: sto a Massa ma sono molto Positivo
Messaggi: 12.071
| Comunque nel tuo programma vedo due cosucce che non mi piacciono proprio... la prima usare un float.... non serve 500/1024 = 0.488 approssimiamolo a 0.48 uint16_t temp; temp=analog_read(analog_pin); temp=((temp*100)/48); siccome tuttavia temp può arrivare a 1024 temp *100 eccederebbe 65535 allora riscriviamo come: temp=((temp*25)/12); a questo punto temp contiene la temperatura moltiplicata per 100 ti lascio il compito a casa per capire come dividerla e metterci il punto. Suggerimento... lavora sulla stringa prodotta da itoa. se comunque insisti nel usare i float: Con il tuo codice: Dimensione del file binario dello sketch: 4.904 bytes (su un massimo di 32.256 bytes) sostituisci quell' 5.0*temp*100.0 con 500.0 *temp Dimensione del file binario dello sketch: 4.892 bytes (su un massimo di 32.256 bytes) 12 bytes risparmiati.... Comunque.... regola numero uno: non usare float se non ci sei costretto regola numero due: per quanto possa essere buono un compilatore, l'ottimizzazione è meglio se la fai tu, non fare due moltiplicazioni se puoi farne una...
__________________ Vivere in qeusto mondo e molto belo belo e vale la pena starci ma a volte in questa UNICA vita che ci apartiene posono succedere cose brute brute alora mi chiedo perche siete incazziati domani pole esere anche lultimo Grazie "TRANQUILLO" FAI 15766 Ultima modifica di romoloman : 24 dicembre 12 alle ore 02:22 |
| | |
| Bookmarks |
| |
Discussioni simili | ||||
| Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
| Coassiale mixed controller con arduino | catman | Circuiti Elettronici | 12 | 02 aprile 11 00:17 |
| quadricottero con arduino 2009 | sailormann26 | Aeromodellismo Progettazione e Costruzione | 0 | 28 dicembre 10 00:12 |