Go Down

Topic: Funzionamento 74HC125 (Read 3834 times) previous topic - next topic

pelletta

Ciao a tutti, sto studiando un pò di nuovi integrati e ora ho sotto mano il 74HC125 (Quad buffer/line driver 3-state). Inserisco un'immagine del suo pinout:

Ho visto che in diverse applicazioni viene usato come level shifter, ad esempio per poter interfacciare una memoria SD la quale accetta in ingresso segnali a 3.3V.
Analizzando solo il primo buffer dell'integrato (pin 1,2,3) vedo che il pin 1Y (3) viene collegato a una uscita digitale di arduino, il pin 1A (2) va sulla sd mentre il pin 1G (1) va a massa. Il pin Vcc (14) dell'integrato viene collegato a 3.3V.

Vediamo se ho capito bene: quando sul pin 1Y arriva un segnale a 5V dall'arduino, mi verrà restituito sul pin 1A lo stesso segnale ma con tensione uguale a quella di Vcc, in questo caso 3,3V.
E' giusto il ragionamento?
Grazie a tutti in anticipo

ratto93

Dove gli hai trovati ? sono in formato DIP ??? sono mesi che li cerco in rete, senza passare per RS e o costano un botto oppure non li trovo =(
Se corri veloce come un fulmine, ti schianterai come un tuono.

pelletta

#2
Jul 01, 2012, 02:51 pm Last Edit: Jul 01, 2012, 02:54 pm by Pelletta Reason: 1
Li ho presi su RS dip e smd....  =(
Comunque se il funzionamento avviene come lo ho descritto si potrebbe usare un comune CD4066

flz47655

Dove hai visto che viene utilizzato come level-shifter? Non mi sembra sia progettato per questo..

1A è l'ingresso
1Y l'uscita
1G (in altri datasheet è chiamato anche OE negato) è l'ingresso di controllo per l'alta impedenza, se alto il segnalo è in alta impedenza.

L'integrato non deve ricevere ingressi con tensioni superiori a VCC, la vedo dura usarlo come level-shifter...

@ratto93: Hai provato a vedere da spiratronics? Mi sembra che l'avevo comprato li anche se da futurlec costa molto meno..

Ciao

ratto93

Grazie dell'info :)
si si viene usato come level shifter....
Se corri veloce come un fulmine, ti schianterai come un tuono.

flz47655

Arduino non ha problemi a leggere i segnali a 3.3 volt, i problemi nascono quando deve inviare i segnali, in questo caso la tensione di 5 volt è troppo alta per una scheda SD e bisogna abbassarla, alcune soluzioni utilizzano semplici resistenze altre mosfet anche se un integrato apposito è sicuramente meglio.
Se alimenti il 74HC125 a 3.3 volt non puoi mandarli in ingresso segnali a 5 volt pena la rottura... l'integrato è molto utile per poter controllare l'alta impedenza per implementare dei bus dove ad esempio ci sono collegati tanti dispositivi e solo uno alla volta deve occupare il bus mentre gli altri devono essere in alta impedenza per esempio per non interferire.

Ciao

flz47655

Non ti fare ingannare dallo schematico del Wireless Proto Shield: http://arduino.cc/en/uploads/Main/arduino_WirelessShield_Proto_v3-schematic.pdf, l'integrato che usa come level-shifter non è come il tuo ma è un SN74LVC1G125 che seppur simile ha gli ingressi 5.5 volt tolerant a differenza del tuo (se è quello classico DIP)

Ciao

flz47655


pelletta


....
Se alimenti il 74HC125 a 3.3 volt non puoi mandarli in ingresso segnali a 5 volt pena la rottura...

Si, infatti è stata proprio questa cosa che mi ha spinto a chiedere informazioni. Ho visto che ladyada (nello specifico wave shield e data-logger shield) lo collega come ho descritto sopra, boh??

flz47655

Ladyada usa il 74AHC125N che ha gli ingressi 5.5 volt tolerant, te hai specificato il 74HC125 (della serie HC e non AHC) che non ha questa dote..

Se usi quello della serie AHC non dovresti avere problemi
Ciao

pelletta

Vero, hai ragione. Ho controllato l'integrato che sta sullo wave shield ed effettivamente è proprio il 74AHC125N.
Che felicità... ho preso i 74HC125 e li ho messi anche sul pcb, speriamo che reggono fino al nuovo ordine.
Intanto visto che funzionano ugualmente provo ad ingannare il pcb aggiungendo sul dorso dell'integrato la A mancante a penna  :smiley-mr-green:

Michele Menniti

Per quanto ho letto la sola differenza tra HC e AHC (advanced) dovrebbe consistere nella maggiore frequenza operativa di questi ultimi.
Effettivamente sul data-sheet dell'HC (che è comunque alimentabile da 2 a 6V) c'è scritto chiaramente che la tensione di INPUT deve essere ±0.5V rispetto all'alimentazione; mentre il data-sheet dell'AHC(tabelle 5 e 6) riporta solo il valore minimo in base alla tensione di alimentazione e temperatura, e non un valore massimo, che effettivamente lascerebbe intendere come possibile la tolleranza a cui si riferisce flz.

A questo punto non so quanto sei imbordellito a livello PCB, ma ti basterebbe mettere una coppia di R (in smd sarebbe uno spazio ridicolo) per ogni ingresso per fare un partitore 5>>3,3V e non avresti alcun bisogno di sostituirli.
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

leo72

@flz:
in realtà il level shifter come il 74AHC125 è molto utile e più sicuro rispetto ad un partitore di tensione perché tiene separate le linee interessate ed in più è anche tri-state: quando viene messo in stato di alta impedenza è come se fosse disconnesso e non interferisce con il resto.

Michele Menniti


@flz:
in realtà il level shifter come il 74AHC125 è molto utile e più sicuro rispetto ad un partitore di tensione perché tiene separate le linee interessate ed in più è anche tri-state: quando viene messo in stato di alta impedenza è come se fosse disconnesso e non interferisce con il resto.

per la verità l'ha detto anche lui che è meglio usarli...
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

leo72

Sì, il caldo mi ha fatto capire capire l'opposto  :smiley-sweat:

Go Up