Go Down

Topic: Mettere pin on o off. (Read 909 times) previous topic - next topic

erpomata

Fatto tutto.
Ho provato la modifica al software ed ovviamente funziona ed ho modificato lo schema eagle.


Grazie a tutti.

erpomata

Ciao a tutti, riprendo il topic per chiedere un' altra cosa.
Tutti gli esempi che ho visto utilizzano un tasto o jumper per portare il pin a massa e quindi a 0, si da praticamente per scontato che il loop dello sketch sia partito ed il programma è in esecuzione (con la resistenza del pullup bella impostata) ma se io volessi mettere a massa prima dell'avvio dello sketch che succede al pin che ancora non è in pull up (credo)?

Cioè al boot del chip le resistenze di pull-up come sono impostate?

Chiarisco con uno pseudo codice:

Code: [Select]

setup{
imposta pin1 pullup
}

loop{
METTI A MASSA(*)
se pin1
leggi pin1
else
leggi pin2
}


Code: [Select]

METTI A MASSA(*)
setup{
imposta pin1 pullup
}

loop{
se pin1
leggi pin1
else
leggi pin2
}


*Azione del pulsante.

Spero di essermi spiegato.

leo72

Dopo un reset i pin sono impostati come input.

Se il pulsante agisce sul pin prima che parta il programma, non succede nulla di che: semplicemente non c'è "nessuno in ascolto".
La resistenza di pull-up serve solo per dare uno stato fisico ben definito al pin, altrimenti, essendo flottante, può essere letto indifferentemente come alto o basso a seconda dell'ambiente (basta avvicinare una mano per influenzare un pin flottante).

erpomata

Quindi non rischio di fare un corto e di fottere come minimo il pin

leo72

Un pin lo bruci se gli offri come input più della tensione che può accettare in ingresso (5 volt).
L'importante è che se il circuito condivide le masse, è bene non dare in input ad un pin una tensione senza che il microcontrollore sia alimentato: in questo caso, le tensioni fluiscono al suo interno, arrivando ad "accenderlo", con comportamenti strani e/o potenzialmente pericolosi (la corrente potrebbe fare strade interne che normalmente non dovrebbe fare).

Go Up