pin 4 e 5 arduino

Ciao a tutti,
si possono collegare contemporaneamente a questi due pin oltre i bus i2c anche altre cose?

al momento utilizzo il pin 4 per comandare l'apertura di un rele, e il pin 5 l'attivazione del sensore pioggia che si attiva e poi si disattiva...

sto studiando e mi sono imbattuto in una spiegazione dove dice che se sono collegati bus i2c a questi due pin non possono essere collegate altre cose... a me però funziona tutto e non ho problemi.... perchè non si possono usare? cosa si rischia?

grazie

usare un pin per fare due cose differenti è come, scusa l’esempio, se tu a tavola parlassi con la bocca colma di cibo…o mastichi o parli…fare entrambe le cose, contemporaneamente, le fai male e dai fastidio a chi ti è vicino.

grazie Orso provvederò a sistemare la faccenda! ancora grazie.

poi giusto per essere sicuri...per pin 4 e 5 intendi A4 ed A5...giusto?...cioè i pin SDA ed SCL

I2C sul Arduino UNO o altri Arduino con il controller ATmega328 stanno sui pin A4 e A5. I pin D4 e D5 sono altri pin.
No, non si possono usare i pin per doppio uso. Ecceszioni sono dei BUS che possono collegare diversi dispositivi della stessa funzione. Non possono essere collegati dei dispositivi con diverse funzioni come nel Tuo esempio un relé e una interfaccia.

Ciao Uwe

intendevo i pin analogici.

grazie anche a uwe per il chiarimento... una sola curiosità, sono penso 6 mesi che è collegato in questo modo, è solo un discorso di logica, nel senso che non va fatto oppure anche un discorso di possibili disturbi? e se si cosa potrebbe succedere?

grazie

Ciao, simosere.
Tu dici:"al momento utilizzo il pin 4 per comandare l'apertura di un rele, e il pin 5 l'attivazione del sensore pioggia che si attiva e poi si disattiva...". Stai utilizzando contemporaneamente un altro dispositivo collegato in I2C, oppure per "anche" intendi dire che, in alternativa, possono essere usati ANCHE per altre cose?...

Datman:
Ciao, simosere.
Tu dici:"al momento utilizzo il pin 4 per comandare l'apertura di un rele, e il pin 5 l'attivazione del sensore pioggia che si attiva e poi si disattiva...". Stai utilizzando contemporaneamente un altro dispositivo collegato in I2C, oppure per "anche" intendi dire che, in alternativa, possono essere usati ANCHE per altre cose?...

Direi che Datman ha centrato la domanda fondamentale. :slight_smile:

Ciao,
P.

Datman:
Ciao, simosere.
Tu dici:"al momento utilizzo il pin 4 per comandare l'apertura di un rele, e il pin 5 l'attivazione del sensore pioggia che si attiva e poi si disattiva...". Stai utilizzando contemporaneamente un altro dispositivo collegato in I2C, oppure per "anche" intendi dire che, in alternativa, possono essere usati ANCHE per altre cose?...

sto utilizzando due dispositivi i2c, display 20x4 e bme280 e in contemporanea(nello stesso codice quindi) il pin 4 comanda l'apertura di un rele e il pin 5 si attiva e disattiva per alimentare un sensore pioggia.

quindi devo cambiare questi due pin per il rele e sensore pioggia... ma cmq vorrei capire che tipi di problemi potrebbero derivare nel lasciarlo cosi... perchè non ho avuto problemi ad oggi....

Datman:
Ciao, simosere.
Tu dici:"al momento utilizzo il pin 4 per comandare l'apertura di un rele, e il pin 5 l'attivazione del sensore pioggia che si attiva e poi si disattiva...". Stai utilizzando contemporaneamente un altro dispositivo collegato in I2C, oppure per "anche" intendi dire che, in alternativa, possono essere usati ANCHE per altre cose?...

Ma i pin nominati sono quelli digitali D4 e D5 o quelli analogici A4 e A5?

Ciao Uwe

uwefed:
Ma i pin nominati sono quelli digitali D4 e D5 o quelli analogici A4 e A5?

Ciao Uwe

Uwe hai ragione... che scemo.... i pin dove sono collegati rele e sensore pioggia sono i digitali.... quindi D4 e D5... mentre i bus i2c sono A4 e A5... ho fatto confusione e mi sono spiegato male... chiedo scusa a tutti... :slight_smile:

Comunque, tornando al quesito, questa volta puramente teorico, lo stiracchio per far capire il concetto, se avessi usato i pin A4 e A5 per leggere due altri sensori in parallelo alla connessione I2C, avresti i segnali di lettura sovrapposti ai segnali della comunicazione I2C. Segnali che si sommano e che si pestano i piedi a vicenda.
In pratica funziona solo se alla fine ti sei confuso con i nomi dei pin e non li hai sovrapposti veramente :wink:

Grazie del chiarimento!! Si confermo che mi sono confuso con digitale e analogico... grazie mille per l'aiuto

Mi sembra che la comunicazione I2C non sia continua, ma solo su richiesta del master. Quindi, ad esempio, si potrebbe scrivere su un display I2C quando necessario e poi fare altro, pur con la limitazione delle resistenze di pull-up presenti e degli impulsi che vengono trasmessi durante la comunicazione con il display. La condivisione del bus di un display parallelo a 4 bit, invece, viene meglio, perché non ci sono le resistenze di pull-up e perché i 4 bit vengono ignorati se non c'è l'Enable.

Si, l'uso del display non dovrebbe dare fastidio alle letture, ma le letture si alla comunicazione con il display.
A meno di non fare un circuito che stacca proprio la "cosa" da leggere quando si deve comunicare con il display.
E poi la lettura, per sfiga pura, potrebbe produrre un segnale valido a scatenare una comunicazione I2C. Per quanto improbabile è pur sempre possibile :wink: e sappiamo bene che la sfiga ci vede benissimo, se ti capita una volta nella vità sarà in demo! :smiley:

Datman:
Mi sembra che la comunicazione I2C non sia continua, ma solo su richiesta del master. Quindi, ad esempio, si potrebbe scrivere su un display I2C quando necessario e poi fare altro, pur con la limitazione delle resistenze di pull-up presenti e degli impulsi che vengono trasmessi durante la comunicazione con il display. La condivisione del bus di un display parallelo a 4 bit, invece, viene meglio, perché non ci sono le resistenze di pull-up e perché i 4 bit vengono ignorati se non c'è l'Enable.

No. Il clock sul SCL c'é sempre. percui quel pin non si puó riutilizzare.
Il circuito attaccato al SDA deve essere "spento" scollegato dal pin in modo che non influenza la I2C. Per questo serve comunque di nuovo in pin per "spegnerlo".

In tutti i modi si creano piú problemi che si guadagna. Se si ha bisogno di piú entrate/uscite é meglio attacare un I2C expander che da 8 /16 pin selezionabili Entrate o uscite a piacere.

Ciao Uwe

simosere:
Uwe hai ragione... che scemo.... i pin dove sono collegati rele e sensore pioggia sono i digitali.... quindi D4 e D5... mentre i bus i2c sono A4 e A5... ho fatto confusione e mi sono spiegato male... chiedo scusa a tutti... :slight_smile:

Non preoccuparti, é importante aver chiarito.
Ciao Uwe

Si, vero.
Per farlo devi essere fortemente convinto e motivato perchè:

uwefed:
In tutti i modi si creano piú problemi che si guadagna.

simosere:
… chiedo scusa a tutti… :slight_smile:

chi non ha mai fatto “errori” di questo tipo scagli la prima pietra.

ancora grazie per i chiarimenti

maubarzi:
Si, vero.
Per farlo devi essere fortemente convinto e motivato perchè:chi non ha mai fatto "errori" di questo tipo scagli la prima pietra.

Dirrei:
chi non ha mai fatto "errori" di questo tipo scagli il primo Arduino. :wink: :wink: :wink: :smiley:
Ciao Uwe