![]() |
Grazie mille appena posso lo provo e scrivo il risultato.graziee!!! Sent from my LG-P500 using Tapatalk |
Romoloman ti devo un birra!!! :cheers: :cheers: ho modificato leggermente il tuo sketch per adattarlo al sensore: Codice: #include <Wire.h>giusto per non essere asino che fa le cose senza capire cosa sono i dati tra parentesi del dtostrf? grazie e buone feste |
Citazione:
5: lunghezza minima del campo includo il punto e il decimale 1: numero dei decimali dopo la virgola buffer: stringa temporanea per mettere il risultato perchè ho scelto 5 ed 1 ? dubito che il tuo range di temperatura possa eccedere i -99.9 ed essere superiore ai 999.9 gradi in tutti e due i casi come vedi la lunghezza massima è 5 caratteri usando la lunghezza massima eviti che il numero si muova sul display al massimo ti trovi degli spazi prima. 1 perché il decimo di grado credo ti basti. la domanda che potresti porti è perché con 5 come lunghezza minima hai allocato 10 byte nel buffer ? In realtà in effetti può essere esagerato, bastavano 6 caratteri (ricordati che una stringa ha sempre in fondo il carattere '\0'. per fare le cose formalmente corrette la cosa migliore sarebbe verificare con un if che temp sia nell'intervallo corretto e visualizzarlo solo in quel caso, prevenendo errori di lettura. Qualora infatti la dtostr dovesse ritornare un valore fuori range ci sarebbero due problemi... il primo di visualizzazione ed i secondo di buffer overflow. |
grazie mille e complimenti per la competenza! :wink: |
Citazione:
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... |
Citazione:
Citazione:
|
Arduino e LCD GDM1602K - problemi oggi mi trovavo a catania.. vado in un negozio di elettronica per caso trovo.. un LCD GDM1602k ..3 euro! ..lo compro.. vado a provarlo con arduino Arduino - LiquidCrystal niente! ho ispezionato tutti i contatti.. ma nulla da fare LCD si accende..ma la scritta HELLO WORLD purtroppo non appare ! cosa posso fare? il poteziometro lo giro e rigiro da un pezzo ma in qualunque posizione non funziona! in una determinata posizione mi fa accendere tutti i puntini di cui sono composti ..ma non appare nulla! non ho messo resitenze come illustrato in alcuni casi sul pin 16 trovo indicato una resistenza da 220 ohm ma pur usandola no cambia nulla ...anzi perdo la retro illuminazione. |
dunque risolto.. è stato sufficiente togliere la retro illuminazione... vale a dire il pin 16 e 15 dell' LCD.. appena tolti mosso un po il poteziometro tutto ok è apparsa la scritta Hello world.. adesso per i miei esperimenti non devo per forza dipendere da un monitor.. quindi un PC.. giusto con la spesa di tre euro! almeno per output semplici.. a dopo fausto |
funziona a 0,87 volt dunque con il tester ho letto che LCD offre la visibilità usando il potenziometro da 10k a 0,87 Volt. lo schema da seguire è questo: http://arduino.cc/en/uploads/Tutorial/lcd_bb.png non occorre collegare gli ultimi due a destra ovvero il pin 15 a + 5V, e il 16 a GND con resistenza da 220 ohm... per il GDM1602K nn funziona! a dopo fausto |
Anche io avevo fatto una prova (molto frettolosa devo dire) con il LCD che c'era nel mio starter kit, senza risultato. Magari quello che scrivi tu aiuta, devo riprovare. Il mio prossimo progetto (banale quanto il primo, ma l'importante è divertirsi e -pian piano- imparare) è un contagiri per eli ed aerei. |
| Tutti gli orari sono GMT +2. Adesso sono le 17:07. |
Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002