Contatti magnetici e fine corsa: gestione con arduino

Buongiorno a tutti!
Metto le mani avanti, sono un informatico, su improprietà di linugaggio o senso della domanda.
Vorrei capire quando una porta è chiusa o aperta, per cui utilizzerei contatti magnetici (tipo quelli degli allarmi alle finestre) oppure uno switch tipo fine corsa.
Se ho capito giusto, si comportano come interruttori per cui collego da un lato a massa e dall'altro a +Vcc con l'opportuna resistenza di pull-up o pull-down. Tutto ok fin qui?
Il mio dubbio è: se la porta rimane chiusa o aperta per ore, diciamo la metà del tempo, il pin di ingresso sarà al valore 1 per la metà del tempo e quindi scorre corrente. Non si rovina? E' giusto così oppure sto sbagliando approccio?

Grazie mille e buon pomeriggio!
Roberto

Nell'ingresso non e' che ci scorra piu di tanta corrente ... con una pullup da 10K sui 5V, quando il contatto e' chiuso scorrono 0.5mA nella resistenza, ma l'ingresso di per se ha un'impedenza che supera i 100M ... parliamo di frazioni di microampere che ci scorrono dentro ...

Discorso differente e' se dovessi dare ad un'ingresso tensioni piu alte dell'alimentazione, oppure negative rispetto a massa, in quel caso il pin si brucerebbe quasi certamente ...

Grazie Etemenanki,

giusto, nella resistenza scorre la corrente :slight_smile:
Ma è coretto questo schema? Nel senso, è applicabile o ci sono soluzioni più ottimali?

Grazie!

Puoi usare indifferentemente sia circuiti con pullup (resistenza collegata al positivo e contatto che chiude verso massa) che con pulldown (resistenza collegata a massa e contatto che chiude al +5V, dipende solo da quale segnale richiede la tua logica di funzionamento … con i reed non ci sono eccessivi problemi di rimbalzi, con finecorsa e contatti diversi potresti averne, quindi per sicurezza, metti un condensatore ed una seconda resistenza per fare da debounce, come nello schema allegato …

Come pullup, inoltre, puoi usare anche quello interno dei pin (quando usati come ingressi digitali, puo essere attivata nella dichiarazione del pin, cosi se ci sono problemi di spazio, si puo attivare quella ed escludere la resistenza esterna verso il positivo)

Grazie!!! :slight_smile: