Ciao a tutti,
Sapete qualche modo per aumentare la corrente di sink/source mantenendo la possibilità di leggere dal pin?
Ad un certo punto devo leggere dal pin (il solito che scrive) ma quando devo scrivere ho bisogno di una corrente maggiore (sui 50mA)
Ok, metto il transistor collegato con la base sul pin (emettitore comune), in questo modo sul collettore riesco ad avere una corrente maggiore
Ma quando leggo il pin? Leggerei tramite la base?
Funziona se metti un tre-state-gate tra pin Arduino e transistore e un secondo tra Arduiono e uscita da leggere, ma Ti serve un altro pin per selezionare se il gate é tristate o no. È piú semplice se usi un 595 o un port expander per aumentare il numero di pin.
Ciao Uwe
Tu hai due necessità:
1 - pilotare qualcosa con il pin X con corrente > 40mA
2 - alternativamente leggere lo stato di qualcosa collegata al pin X
il punto 1 lo risolvi col classico transistor pilotato tramite una R mettendo il pin in OUTPUT/HIGH
quando metti il pin in INPUT e hai su di esso uno stato LOW il TR resta interdetto e lo stato lo leggi; se ho ben capito Uwe sostiene che se a questo pin mandi uno stato HIGH ti pilota il TR che va in conduzione. Potrebbe aver ragione, allora io farei in modo che il TR venga pilotato solo se la tensione ha una soglia di almeno 4,7V, cioè lo piloto mettendo uno zener da 4,7V in serie alla R di base (pin-A_zener_K-R-Base), e poi userei un piccolo partitore sulla sorgente che devo leggere per far sì che l'HIGH sia di livello inferiore, p.es. 3,6V.
Seconod me funziona senza alcun problema.
Sì, ok Uwe, lo zener deve essere dimensionato circa Vcc-0,7, il partitore in modo che quando gli applichi la soglia massima, fornisca una tensione inferiore a quella nominale di zener.
Nel tuo caso lo zener in serie sul ramo che pilota il TR quindi secondo me non introduce assolutamente nulla.
Una prova ti costa 3 minuti, falla e buonanotte.