lettura segnali con livelli differenti

ciao,

ho la necessita di leggere con Arduino DUE due segnali entrambi onde quadre uno che va da 0V a 12V e l'altro da 0V a 5V.

Volevo chiedervi quale fosse il modo migliore per abbassare il livello di questi due segnali in modo da rientrare nel range 0 -> 3.3.

io pensavo:
un partitore resistivo....qualcuno ha un link dove calcolare il valore delle resistenze
convertitore di segnale

ciao

l'uso della parola "leggere" è sempre un pò ambiguo.
Vuoi convertire i segnali in un livello logico 0-3.3V o vuoi leggere il valore di tensione ? ( cosa per altro un po' complicata dato che si tratta di un segnale ad onda quadra )

Fai una bella ricerca su google

Cerca i livelli logici dei segnali CMOS, TTL 5V, e TTL 3,3V

Poi vedi se con dei semplici partitori resistivi riesci a risolvere, per calcolarli mi pare che non serva altro che delle semplici proporzioni aritmetiche del tipo X:A=Y:B

guarda anche qui
http://digilander.libero.it/panetti/digitale/ttl.htm

triac60:
Fai una bella ricerca su google

Cerca i livelli logici dei segnali CMOS, TTL 5V, e TTL 3,3V

Poi vedi se con dei semplici partitori resistivi riesci a risolvere, per calcolarli mi pare che non serva altro che delle semplici proporzioni aritmetiche del tipo X:A=Y:B

guarda anche qui
Famiglia logica TTL

Queste semplici schedine potrebbero risolverti il problema
http://www.ebay.com/itm/New-IIC-I2C-Logic-Level-Converter-Bi-Directional-Module-5V-to-3-3V-For-Arduino-/171419630040?ssPageName=ADME:L:OU:IT:3160

Le scHede di conversione livello logico le avevo viste, ma le trovo tutte da 5 a 3.3 volt.

Detto questo io ho una centralina che per comunicare velocità e giri motore genera due onde quadre uno con livello 0-5 volt e l'altra 0- 12 volt. Ho bisogno di rapportare i due segnali generati dalla centralina al livello logico gestibile da arduino Due...questo è giusto? Detto questo chiedevo in base alle vostre esperienze come è meglio operare. ...magari ho detto delle fesserie

Ciao

Che encoder hai per il segnale 0-12 ?

http://www.railwaytechnology.it/Elettr_DG/Famiglie%20logiche.html

V=R*I non se lo ricorda piu nessuno ? ... :stuck_out_tongue: :smiley:

resistenze fra ingressi di Arduino e massa 33K ... resistenza in serie per il 5V 27K ... resistenza in serie per il 12V 87K (dato che non e' un valore standard, puoi usare 82K con in serie 5K1) ... comunque per principio, se si usano segnali che vengono da altri dispositivi, e' sempre meglio prevedere una qualche protezione, quindi almeno uno zener da 3.3V per ogni ingresso, collegato in parallelo alla resistenza che va a massa, catodo sul pin ed anodo a massa :wink:

grazie per le risposte.

Etemenanki terrò in considerazione la tua soluzione.

valutando qua e la mi pare di aver capito che le schede di level converter, come mi è stato consigliato, possono essere utilizzate anche con tensioni differenti.

quindi se uso un BSS170 dovrei essere in grado di prendere in ingresso un segnale e portarlo a livello a me necessario.
sfruttando lo schema sotto

grazie a tutti per i consigli