Ciao a tutti, ho costruito un piccolo datalogger con arduino UNO dove a castello ho montato uno shield della Seeed per la gestione della ricarica di una batteria da pannello solare e un altro shield di datalogging della adafruit.
Ho tre sensori analogici già posizionati sui PIN A1 A2 A3. Su A4 ed A5 comunico con l'RTC dello shield di datalogging.
Sul PIN A0 in teoria potrei leggere il livello di carica del charger shield della seeed, ma non mi interessa e anzi vorrei liberare il PIN per inserire un altro sensore.
Come posso "disattivare" il segnale dello shield sull'A0?
Se è possibile inoltre si può spostare il dialogo con l'RTC sui pin SDA SCL vicini al PIN AREF sul lato dei digitali e liberare anche A4 ed A5?
Grazie mille
Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento se non lo hai già fatto: Regolamento
Qui una serie di link utili, non inerenti al tuo problema:
valdarno8:
Come posso "disattivare" il segnale dello shield sull'A0?
Puoi piegare il pin in modo che non si inserisca in Arduino, oppure tagliare la pista sullo shield che va verso il pin in questione. Ovviamente in questo caso, se un domani volessi ripristinarla, dovresti saldare un filo per ripristinare la connessione.
valdarno8:
Se è possibile inoltre si può spostare il dialogo con l'RTC sui pin SDA SCL vicini al PIN AREF sul lato dei digitali e liberare anche A4 ed A5?
Spostarli puoi, ma quei pin sono in parallelo con A4/A5, per cui non saranno comunque liberi. I pin dedicati all'i2c sull'ATmega328 purtroppo sono quelli, non ci puoi fare granché. L'unica cosa che mi viene in mente sarebbe provare con una libreria i2c bit-banged, magari col tuoi dispositivo funziona affidabilmente, ma non saprei consigliartene una in particolare, è un po' una porkata :D.
Se ti servono più pin analogici puoi piuttosto prendere un multiplexer analogico (tipo CD4053) o un ADC esterno pilotabile in i2c.
Ok, nid69ita fatto tutto.. e bellissimo ELSE per cercare i collegamenti!
Grazie.
SukkoPera:
Puoi piegare il pin in modo che non si inserisca in Arduino, oppure tagliare la pista sullo shield che va verso il pin in questione. Ovviamente in questo caso, se un domani volessi ripristinarla, dovresti saldare un filo per ripristinare la connessione.
Spostarli puoi, ma quei pin sono in parallelo con A4/A5, per cui non saranno comunque liberi. I pin dedicati all'i2c sull'ATmega328 purtroppo sono quelli, non ci puoi fare granché. L'unica cosa che mi viene in mente sarebbe provare con una libreria i2c bit-banged, magari col tuoi dispositivo funziona affidabilmente, ma non saprei consigliartene una in particolare, è un po' una porkata :D.
Se ti servono più pin analogici puoi piuttosto prendere un multiplexer analogico (tipo CD4053) o un ADC esterno pilotabile in i2c.
Grazie SukkoPera per la risposta.
Però tagliando il pin, devo collegare il sensore direttamente al PIN di Arduino e non al PIN replicato dallo shield.. Poco male! Farò così.
Per gli altri due nulla, lascio stare perché sono già all'80% della memoria con lo sketch e tante altre cose non posso inserirle a livello di software!. Grazie di tutto.