Interface TTL (5V) e CMOS (3.3V)

Circuitos eletrônicos, topologias, diagramas elétricos, etc...

Moderadores: 51, Renie, gpenga

Interface TTL (5V) e CMOS (3.3V)

Mensagempor Jozias del Rios » 01 Nov 2010 08:16

Problema:

Como interfacear um microcontrolador alimentado com 5V com outro alimentado por 3V3, da maneira mais econômica...

Os chips, no caso, são dois Coldfire V1 MCF51JM32.

5V out -> 3V3 in:
colocaria um resistor em série, digamos 10K.
Teria problemas de latch up?
Posso fazer essa ligação?
Degrado a velocidade da porta? (RC timing)
Obs: O microcontrolador não suporta mais que a sua tensão de alimentação nas portas. Há diode-clamp para Vss e Vdd.

5V in <- 3V3 out:
um sinal de 3.3V não atinge o Minimum Input High Voltage do microcontrolador alimentado por 5V.
Então nesse caso eu colocaria um diodo com anodo no uC com 3V3 e ativaria o internal pull-up do uC com 5V.

Alguma sugestão melhor?
Os vencedores são aqueles que sabem o que fazer se perderem.
Os perdedores são aqueles que não sabem o que fazer se ganharem.
Avatar do usuário
Jozias del Rios
Byte
 
Mensagens: 279
Registrado em: 31 Out 2009 03:36
Localização: SJCampos-SP

Mensagempor RobL » 01 Nov 2010 09:01

De 5->3V:
Antes verificar se seu micro tem entradas 5V tolerantes.

O mais econômico dependerá do número de sinais a reduzir.
1- Divisor de tensão (com 2 resistores e não com um em série). Não afeta velocidade. Pode usar array de resistores prontos.

Nota: Não afeta a velocidade, se a indutância e capacitância do resistor e trilhas não chegar a influir. Para velocidades de um CM3, por exemplo, não teria esse problema.

2- Dependendo do caso, quando impedância estiver em jogo, tem CMOS alimentado com 3V que fará a conversão de nível.

De 3->5V:
Usar Cmos alimentado com 5V.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor zazulak » 01 Nov 2010 09:19

zazulak
Nibble
 
Mensagens: 97
Registrado em: 06 Out 2007 16:40

Mensagempor Jozias del Rios » 01 Nov 2010 09:26

RobL,

se o uC não suporta mais que a tensão de alimentação nas entradas, ele não é 5V tolerante então, certo?

Um divisor de tensão representa um resistor a mais por ligação. A solução de apenas 1 resistor em série é realmente inválida?

Não entendi o que quis dizer com "Usar Cmos alimentado com 5V", já que os chips microcontroladores são idênticos dos dois lados, diferindo apenas na tensão de alimentação. São ambos uC CMOS, mas que tem VIH mínimo 3.25V quando alimentado com 5.00V, o que deixa muito pouca margem de ruído/flutuação/tolerância/ddp_por_lei_de_ohm para trabalhar com saídas de 3.3V.

Ou seja, mesmo sendo CMOS dos dois lados, o problema ainda existe...
Os vencedores são aqueles que sabem o que fazer se perderem.
Os perdedores são aqueles que não sabem o que fazer se ganharem.
Avatar do usuário
Jozias del Rios
Byte
 
Mensagens: 279
Registrado em: 31 Out 2009 03:36
Localização: SJCampos-SP

Mensagempor Jozias del Rios » 01 Nov 2010 09:30

São poucos sinais, uns dois sinais 5V output e uns dois sinais 3V3 output, então acho que não compensa usar dois chips 4010... estou tentando minimizar área de PCB principalmente...
Valeu pelas dicas.
Os vencedores são aqueles que sabem o que fazer se perderem.
Os perdedores são aqueles que não sabem o que fazer se ganharem.
Avatar do usuário
Jozias del Rios
Byte
 
Mensagens: 279
Registrado em: 31 Out 2009 03:36
Localização: SJCampos-SP

Mensagempor RobL » 01 Nov 2010 10:32

se o uC não suporta mais que a tensão de alimentação nas entradas, ele não é 5V tolerante então, certo?

Alguns micros tem algumas ou uma porta que suporta entrada com tensão mais alta que a alimentação de 3,3V. São chamados de 5V tolerantes.

Um divisor de tensão representa um resistor a mais por ligação. A solução de apenas 1 resistor em série é realmente inválida?


Considerando que a impedância de entrada é muito alta, sim.

Não entendi o que quis dizer com "Usar Cmos alimentado com 5V", já que os chips microcontroladores são idênticos dos dois lados, diferindo apenas na tensão de alimentação. São ambos uC CMOS, mas que tem VIH mínimo 3.25V quando alimentado com 5.00V, o que deixa muito pouca margem de ruído/flutuação/tolerância/ddp_por_lei_de_ohm para trabalhar com saídas de 3.3V.


A grosso modo um Cmos com 5Vcc mudaria seu estado com Vcc/2. Deve verificar o manual do que for usado.
Portanto, por exemplo no 4010 alimentado com 5Vcc, se entrar com um micro com 3,3V seu nível Hi estará acima de 2,5V (suficientemente acima, próximo de 3V) e o Low muito abaixo de 2,5V.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor Djalma Toledo Rodrigues » 01 Nov 2010 11:03

Pra cá ou pra lá

Transistores

DJ
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor msamsoniuk » 01 Nov 2010 12:20

zazulak escreveu:Pode ser que 0 4010 sirva: http://www.datasheetcatalog.org/datashe ... 856_DS.pdf


melhor partir para algo mais moderno:

http://www.fairchildsemi.com/ds/74%2F74LCX245.pdf
Avatar do usuário
msamsoniuk
Dword
 
Mensagens: 2935
Registrado em: 13 Out 2006 18:04

Mensagempor Jozias del Rios » 02 Nov 2010 07:01

RobL escreveu:
se o uC não suporta mais que a tensão de alimentação nas entradas, ele não é 5V tolerante então, certo?

Alguns micros tem algumas ou uma porta que suporta entrada com tensão mais alta que a alimentação de 3,3V. São chamados de 5V tolerantes.

Certo, mas infelizmente esse não é o caso :(

RobL escreveu:
Um divisor de tensão representa um resistor a mais por ligação. A solução de apenas 1 resistor em série é realmente inválida?

Considerando que a impedância de entrada é muito alta, sim.

Mas com um divisor resistivo a impedância continua sendo muito alta, não?

RobL escreveu:
Não entendi o que quis dizer com "Usar Cmos alimentado com 5V", já que os chips microcontroladores são idênticos dos dois lados, diferindo apenas na tensão de alimentação. São ambos uC CMOS, mas que tem VIH mínimo 3.25V quando alimentado com 5.00V, o que deixa muito pouca margem de ruído/flutuação/tolerância/ddp_por_lei_de_ohm para trabalhar com saídas de 3.3V.

A grosso modo um Cmos com 5Vcc mudaria seu estado com Vcc/2. Deve verificar o manual do que for usado.
Portanto, por exemplo no 4010 alimentado com 5Vcc, se entrar com um micro com 3,3V seu nível Hi estará acima de 2,5V (suficientemente acima, próximo de 3V) e o Low muito abaixo de 2,5V.

Mas agora, sabendo que VIH=3.25V, isso não pode ser afirmado sobre o CI, certo?

Afinal, será que apenas transistores e Level Converter ICs vão servir?
Os vencedores são aqueles que sabem o que fazer se perderem.
Os perdedores são aqueles que não sabem o que fazer se ganharem.
Avatar do usuário
Jozias del Rios
Byte
 
Mensagens: 279
Registrado em: 31 Out 2009 03:36
Localização: SJCampos-SP

Mensagempor vtrx » 02 Nov 2010 08:21

3.3v não é considerado nível alto?
Baixei o datasheet do micro que voce citou,e nas especificações,o ViH para 5 v é de 3.25 e para 3v de 2.10.
Avatar do usuário
vtrx
Dword
 
Mensagens: 2239
Registrado em: 20 Abr 2008 21:01

Mensagempor Djalma Toledo Rodrigues » 02 Nov 2010 11:36

RobL escreveu:De 5->3V: ...
1- Divisor de tensão (com 2 resistores e não com um em série). Não afeta velocidade. Pode usar array de resistores prontos.

Nota: Não afeta a velocidade, se a indutância e capacitância do resistor e trilhas não chegar a influir. Para velocidades de um CM3, por exemplo, não teria esse problema. ...

Se temos:
R1 + R2//C -----> C Capacitância espuria

Solução possível:

Atenuador Compensado

R1//C1 + R2//C2

Proporção:

R1/R2 = XC1/XC2

Ex.:
Atenuador Compensado 10 ---> 1

9k// ~5.2 pF
1k// 47 pF

----------------------------------------------------

Mas, existem Diodo de ref. de 3.3 Volts

DJ
Editado pela última vez por Djalma Toledo Rodrigues em 02 Nov 2010 12:51, em um total de 1 vez.
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor RobL » 02 Nov 2010 11:59

Jozias


A impedância de entrada em um micro Cmos ou outro chip Cmos é muito alta. Na prática não há resistor para fazer um divisor de tensão usando um só resistor e considerando o outro a resistência de entrada.
É como tentar reduzir tensão com um resistor ligado a uma carga com R infinito, além do problema de ruído devido a alta impedância (neste caso importará mais a resistência) de entrada.
Aplicando o divisor de tensão (2 resitores), a impedância de entrada vista pela saída do micro, será a soma dos dois resistores. Isto por que a impedância da outra entrada é CMOS é de alta impedância e será desprezada.


Quanto ao chip conversor de nível, não sei o que quer dizer.
O que disse é que se quiser converter sinais alto e baixo entre zero e 3V, para zero e 5V, qualquer Cmos alimentado com 5V fará o trabalho, pois o nível alto está acima de 2,5V (3,25V no seu caso) e o baixo, do seu micro, muito abaixo de 2,5V, lhe dando aí uma grande margem de ruído. Ao entrar com um micro trabalhando com 3,3V em um conversor de nível (um buffer, ou um TX/RX, por exemplo) alimentado com 5Vcc, o nível alto do micro na entrada do conversor lhe vai entregar 5V (ou quase) na saída do Cmos conversor.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor setyco93 » 02 Nov 2010 12:17

Para converter niveis 5V para 3,3V e vice versa, eu uso o circuito do esquema abaixo. Funciona bem.

http://www.sparkfun.com/datasheets/Brea ... er-v10.pdf
Sergio

"Algo é só impossível até que alguém duvide e acabe provando o contrário." - Albert Einstein
setyco93
Nibble
 
Mensagens: 57
Registrado em: 16 Nov 2006 14:37
Localização: Maringá - PR

Mensagempor tcpipchip » 03 Nov 2010 11:14

Imagem
Avatar do usuário
tcpipchip
Dword
 
Mensagens: 6560
Registrado em: 11 Out 2006 22:32
Localização: TCPIPCHIPizinho!

Mensagempor Jozias del Rios » 03 Nov 2010 17:50

vtrx escreveu:3.3v não é considerado nível alto?
Baixei o datasheet do micro que voce citou,e nas especificações,o ViH para 5 v é de 3.25 e para 3v de 2.10.


Se ViH = 3.25V, eu não arriscaria trabalhar com 3.30V , pois haveria apenas 80mV de margem, que é 2,4% da tensão de referência.

Recorrendo mais uma vez aos datasheets, considerando que seja usado um AP1117-3.3 como regulador, então Vmin=3.235V que já está abaixo de ViH 3.25V!

Então resumindo: não se pode afirmar que realmente será considerado como nível alto, considerando os datasheets... e se o negócio já não dá certo no papel, eu não tentaria implementá-lo :P
Os vencedores são aqueles que sabem o que fazer se perderem.
Os perdedores são aqueles que não sabem o que fazer se ganharem.
Avatar do usuário
Jozias del Rios
Byte
 
Mensagens: 279
Registrado em: 31 Out 2009 03:36
Localização: SJCampos-SP

Próximo

Voltar para Circuitos Diversos

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante

cron

x