LusoRobótica - Robótica em Português

Sistemas específicos => Arduino / AVR => Tópico iniciado por: Kristey em 29 de Outubro de 2014, 04:37

Título: Bi-directional Logic Level Converter
Enviado por: Kristey em 29 de Outubro de 2014, 04:37
Boas.
Estou a tenta iniciar a minha pesquisa sobre o funcionamento dos modulos nRF905

E estou com um problema.
Para fazer ping (exemplo da libraria http://blog.zakkemble.co.uk/nrf905-avrarduino-librarydriver/ (http://blog.zakkemble.co.uk/nrf905-avrarduino-librarydriver/) ) faço as ligações e faço o ping.
Tentei com um UNO e DueMillinove. Funcionou impecavel.

Estou a tentar agora com dois PRO MINI, e o ping da-me sempre time out no cliente, e Waiting for ping no segundo.

Existe alguma diferença entre o UNO e o PRO que possa provocar isto? que eu saiba não, porque o atemega é o mesmo, o PRO tem bootloader de 5V 16 Ghz... Não entendo...

Alguem teve este problema?

PS: Experimentei mais do que um PRO MINI. Bem como refiz as ligações todas varias vezes.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: metRo_ em 29 de Outubro de 2014, 06:13
Existe alguma diferença entre o UNO e o PRO que possa provocar isto? que eu saiba não, porque o atemega é o mesmo, o PRO tem bootloader de 5V 16 Ghz... Não entendo...

O PRO que tens é muito potente!! 16 Ghz :p

A unica diferença que vejo é mesmo na alimentação, estás a alimentar esse integrado com a mesma tensão em ambos os casos?
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 29 de Outubro de 2014, 08:45
A velocidade de relogio eh a mesma entre os Arduinos?

Parece-me coisa de temporizacoes.


Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: jm_araujo em 29 de Outubro de 2014, 09:54
Existe alguma diferença entre o UNO e o PRO que possa provocar isto? que eu saiba não, porque o atemega é o mesmo, o PRO tem bootloader de 5V 16 Ghz... Não entendo...

Segundo a própria Arduino o Pro Mini (http://arduino.cc/en/Main/ArduinoBoardProMini) tem um ATmega168 (com 1k de RAM), e o Uno (http://arduino.cc/en/Main/arduinoBoardUno) tem um ATmega328 (2k de RAM) :

Esses módulos por causa dos buffers não são gulosos de RAM? Pode ser por aí o problema.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: senso em 29 de Outubro de 2014, 13:04
Ou stack overflow, ou devido á corrente que o módulo usa brown-out da parte do regulador e/ou do micro.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: StarRider em 29 de Outubro de 2014, 13:36
Boas,

Típico sintoma de problema de QPA.

Abraços,
PA
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Kristey em 30 de Outubro de 2014, 03:15
Os PRO's que eu tenho estao alimentados a 5V
E ambos têm atmega328.
O clock é 16mhz
Bem mudei de breadboard e passou a dar...
--'
Lol
Agora tenho outro problema.
Segundo os módulos que uso. Deveria alimentar a 3.3V e alguns dos sinais também deveriam estar ligados a conversores lógicos (ou divisor de tensão, ou fixador de tensão)
Foi este ultimo que escolhi.
Uma resistência um zener de 3.3 e pensei eu que o problema estava resolvido.
O problema é que pelos vistos a resistência 4.7K, indicada pelo circuito recomendado não dá para o meu tipo de zener.
Isto porque a tenção com que fico no meio do fixador de tensão é de 2.4V e não 3.3V
Por tentativa e erro fui tentando e cheguei a 3.4V com uma resistência de 330 ohm.
Alguém me pode explicar as contas que tenho de fazer para não falhar na próxima vez?
É que quandon for comprar os zebres definitivos para soldar quero saber que características pedir.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: senso em 30 de Outubro de 2014, 03:46
É preferivel usar um IC lógico dedicado para isso, dado que por 50 ou 60 centimos garantes que o sinal é digital, e que não precisas de inventar uma duzia de componentes.
Já usei divisores de tensão para casos em cima do joelho com sucesso, agora zeners nunca.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 30 de Outubro de 2014, 09:18
Os PRO's que eu tenho estao alimentados a 5V
E ambos têm atmega328.
O clock é 16mhz
Bem mudei de breadboard e passou a dar...
--'
Lol
Agora tenho outro problema.
Segundo os módulos que uso. Deveria alimentar a 3.3V e alguns dos sinais também deveriam estar ligados a conversores lógicos (ou divisor de tensão, ou fixador de tensão)
Foi este ultimo que escolhi.
Uma resistência um zener de 3.3 e pensei eu que o problema estava resolvido.
O problema é que pelos vistos a resistência 4.7K, indicada pelo circuito recomendado não dá para o meu tipo de zener.
Isto porque a tenção com que fico no meio do fixador de tensão é de 2.4V e não 3.3V
Por tentativa e erro fui tentando e cheguei a 3.4V com uma resistência de 330 ohm.
Alguém me pode explicar as contas que tenho de fazer para não falhar na próxima vez?
É que quandon for comprar os zebres definitivos para soldar quero saber que características pedir.


Sugiro um pouco de estudo resumido sobre o funcionamento basico de diodos Zener. Sao simples de usar e bastante uteis em alguns casos :: WIKI (http://en.wikipedia.org/wiki/Zener_diode)

Sendo assim, ha algumas coisas a considerar ::
- a quantidade de corrente que o teu circuito alimentado necessita
- a corrente minima para a manutencao do breakdown do Zener

Assumimos que :
- tensao de alimentacao: 5V
- o Zener para manter os 3.3V consome: ~3mA
- consumo do circuito a alimentar: ~20mA

Entao, a resistencia que fica em serie tem q permitir a corrente para 20+3=23mA
Pela lei de Ohm, chegamos a :
(5V-3.3V) / 23m = ~73.9Ohm -> mais proximo ha 68 Ohm e 82 Ohm
Usar 82Ohm para limiter a corrente, assim teremos ~20.7mA disponiveis.

Quando o circuito alimentado nao estiver a consumir so ~20mA, vai ser o Zener a ter que conduzir extra e disspar mais potencia para poder manter os 3.3V estaveis.
E vice-versa, quando o circuito alimentado necessitar mais de ~20mA, vai roubar dos 3mA que o Zener necessita. Eh claro que se a corrente for superior ao valor para q a resistencia foi calculada, a tensao de saida vai diminuir.
Este circuito eh minimamente eficiente pois desperdica energia no Zener. Eh usado com Zeners de precisao gerar uma Tensao de Referencia com baixo custo, eliminando o uso de chips mais caros. Um bom Zener para isto eh o famoso TL431.



Para quem quer fazer uma "fonte de alimentacao" linear, barata e que permite o consumo de mais corrente sem o desperdicio de dissipacao no Zener, tem ::  este exemplo (http://www.jugandi.com/eXe_Projects/Power_Supplies/image020.jpg)

Neste caso, a corrente desperdicada eh apenas a dissipada no Zener para fazer a manutencao dos 3.3V, pois a corrente de Base do Transistor eh muito baixa, assumindo que o mesmo tem um HFE de 100 ::

A corrente de Base eh calculada HFE = ic / ib,   100 = 20m / ib,    ib = 200uA     ->   a resistencia tera de permiter apenas 3mA + 200uA
A resistencia entao serah de (5V-3.3V) / 3.2m = ~531 Ohm -> mais perto serah 470 Ohm ou 560 Ohm. Mas para permitir que mais corrente passe pelo Transistor, para cargas maiores, podemos usar 470 Ohm. Quanto maior for o HFE do transistor, maior poderah ser o valor desta resistencia.

Mais uma vez este circuito eh optimo quando necessitamos de uma estabilizacao de tensao barata e que nao tenhamos problemas de consumo de corrente.



Espero q a explicacao tenha sido util.

Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: msr em 30 de Outubro de 2014, 10:02
Para logic level converters podes usar 2 resistências e 1 mosfet: http://www.hobbytronics.co.uk/image/data/tutorial/mosfet_level_converter.jpg (http://www.hobbytronics.co.uk/image/data/tutorial/mosfet_level_converter.jpg)
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: StarRider em 30 de Outubro de 2014, 11:08
Boas,

Vocês gostam de complicar  ;D

Um simples SN74LVC3G17DCTR (40 cêntimos) resolve a questão ... ou um MAX3378 que é um pouco mais
caro mas estupidamente versátil para converter níveis lógicos.

No fim, fica MUITO mais barato um IC dedicado, ocupa MUITO menos espaço na PCB, e dá MUITO menos
trabalho soldar.

Just my 2 cents.

Abraços,
PA
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 30 de Outubro de 2014, 12:09
No fim, fica MUITO mais barato um IC dedicado, ocupa MUITO menos espaço na PCB, e dá MUITO menos
trabalho soldar.


Depende da quantidade de produtos a fabricar.
A quantidade de solucoes discretas q frequentemente uso para nao ter que usar chips dedicados... Os savings que temos por usar uma solucao em vez de outra, sao gigantes.

Claro... cada aplicacao eh uma aplicacao e ha algumas q tem mm q se usar chip dedicado.

Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: StarRider em 30 de Outubro de 2014, 12:33
No fim, fica MUITO mais barato um IC dedicado, ocupa MUITO menos espaço na PCB, e dá MUITO menos
trabalho soldar.


Depende da quantidade de produtos a fabricar.
A quantidade de solucoes discretas q frequentemente uso para nao ter que usar chips dedicados... Os savings que temos por usar uma solucao em vez de outra, sao gigantes.

Claro... cada aplicacao eh uma aplicacao e ha algumas q tem mm q se usar chip dedicado.

Boas,

Sim concordo, e neste caso em que penso se o Kristey está usar uma breadboard a opção por um IC SMD
não dá muito jeito.

Por outro lado, ainda recentemente comprei 100 unidades do SN74LVC3G17DCTR que ficou a 20 cêntimos
cada um... e sendo um conversor Schmitt-trigger triplo, mas como faço uso somente de 2 buffers, fica a
10 cêntimos por canal de conversão. Como sou preguiçoso para mim a grande vantagem, nesta caso,
é mesmo o espaço que poupei na PCB :)

Abraços,
PA

Abraços,
PA

Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Electropepper em 31 de Outubro de 2014, 13:29
Aqui tens uma boa página sobre o assunto, bi-direccional level shifter.
http://playground.arduino.cc/Main/I2CBi-directionalLevelShifter (http://playground.arduino.cc/Main/I2CBi-directionalLevelShifter)
Andei ultimamente com o mesmo dilema, para já vou esperimentar como solução temporária, o ficheiro em anexo.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 31 de Outubro de 2014, 15:44
Aqui tens uma boa página sobre o assunto, bi-direccional level shifter.
http://playground.arduino.cc/Main/I2CBi-directionalLevelShifter (http://playground.arduino.cc/Main/I2CBi-directionalLevelShifter)
Andei ultimamente com o mesmo dilema, para já vou esperimentar como solução temporária, o ficheiro em anexo.


Ola

Esse esquematico tem algumas inconsistencias ::

- nao especifica quem eh o Master e o Slave

- as portas MOSI e MISO estao em choque

- eh preferivel seguir o exemplo com os dois transistores, ou melhor ainda o exemplo da Philips no manual do Standard de I2C


Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: StarRider em 01 de Novembro de 2014, 12:46
Boas,

Eu penso que o da esquerda é o Master a julgar pela utilização do díodo, se assim for a
porta MOSI (Master Out) -> MOSI (Server In) está bem, mas já o MISO (Master In) da
esquerda vai levar com o 5 Volts do MISO (Server Out) da direita ... e pufff, sem duvida
se não for uma porta 5V tolerante.

Por outro lado, se o o server é efectivamente o da esquerda, está todo mal, pois o único
cuidado devia ser mesmo no MISO, não percebo a função do díodo nem das resistências
sem ser a do CS que serve de pull-up.

Se o server é o da direita ... isso nunca vai funcionar, o díodo é um zener de 3V volts?

Abraços,
PA

De qualquer modo, é sem duvida um
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Electropepper em 01 de Novembro de 2014, 14:32
Pois nem reparei no lado direito que devia de ser um Micro, está marcado mal o MISO e o MOSI, mas ainda assim se repararem o diodo será um simples 4148, do lado do micro(direita) quando o micro está a 5v a linha do lado mais do diodo fica a 3.3V por causa do pull-upp, mas quando o micro fica a gnd, então a linha toda fica a gnd porque a corrente já passa pelo micro metendo a linha no nivel lógico 0.
Espero que me tenha feito perceber.
Portanto do lado direito está um despositivo a 3.3V em que a linha que sai direto para o outro dispositivoé o TX, a linha com o diodo e pull-up é o RX o resto das linhas é irrelevante, no teu caso só precisas de RX e TX.
É preciso tambem ter em conta um pequeno/grande pormenor, o dispositivo de 5V precisa de aceitar 3.3v ou menos como nivel lógico 0.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Kristey em 03 de Novembro de 2014, 09:17
Boas.
Sobre a mudança de níveis lógicos ja vi aqui varias soluções.
Eu na altura em que soube, ainda ponderei usar  uns Logic converters que existem no ebay,
Mas não encontrei nenhum de 6 canais (o mínimo que eu preciso para cada modulo)
E depois de procurar no ebay sao bem caros que a solução (divisor de tensao 6 cêntimos para duas resistências) / fixador (10 cêntimos para um zener e uma resistência. Logo optei por usar este esquema com um zener para obter os 3.3v

Vou analisar esses circuitos integrados que me falam.
Ja agora alguém tem alguns disponíveis que me possa emprestar/vender para eu experimentar?

Agradeço tambem a explicação sobre o funcionamento dos zeners, vai ajudar certamente.

Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: msr em 03 de Novembro de 2014, 09:44
http://www.ti.com/product/sn74lvc245a (http://www.ti.com/product/sn74lvc245a)

Podes mandar vir samples, chegam num instante!
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Kristey em 03 de Novembro de 2014, 20:56
Não ha nenhum DIP em sample para poder testar.  :( ja agora se fosse mesmo necessario usar um chip que não ha em versão dip como é que se "testa"?

E esses (SN74LVC245A) ate me interessaram.
Mas ainda não percebi porque é que acham que ter um chip é complicar menos do que meter 6 resistências e 6 zeners (Isto não é eficiente)?

Ou para testar aconselham-me usar este sistema e depois quando for fazer no final a pcb opto por usar o:
SN74LVC245A (8 canais, preciso de 6)
ou
2 x SN74LVC3G17DCTR (3 canais, preciso de 6)



Assumimos que :
- tensao de alimentacao: 5V
- o Zener para manter os 3.3V consome: ~3mA
- consumo do circuito a alimentar: ~20mA

Entao, a resistencia que fica em serie tem q permitir a corrente para 20+3=23mA
Pela lei de Ohm, chegamos a :
(5V-3.3V) / 23m = ~73.9Ohm -> mais proximo ha 68 Ohm e 82 Ohm
Usar 82Ohm para limiter a corrente, assim teremos ~20.7mA disponiveis.
Asena
Eu não sei quanto é que o modulo consome (precisa para transmissão de sinal), mas o meu zener é um BZX55C
Sendo que testei fiz o seguinte:

GND - Zener - x - 340ohm - 5V

E me deu 3.4V posso assumir que qualquer resistência a baixo de 340 ohm serve?
 
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: senso em 03 de Novembro de 2014, 21:11
Compras breakouts no ebay, só as placas, tipo isto:
http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR0.TRC0.H0.Xsmd+to+dip+breakout&_nkw=smd+to+dip+breakout&_sacat=0 (http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR0.TRC0.H0.Xsmd+to+dip+breakout&_nkw=smd+to+dip+breakout&_sacat=0)

Se não, meia duzia de fios e dead-bug, um ou outro para prototipagem serve bem.

Mas porque é que não corres tudo a 3.3v e evitas voltagens diferentes?
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 03 de Novembro de 2014, 21:26
Asena
Eu não sei quanto é que o modulo consome (precisa para transmissão de sinal), mas o meu zener é um BZX55C
Sendo que testei fiz o seguinte:

GND - Zener - x - 340ohm - 5V

E me deu 3.4V posso assumir que qualquer resistência a baixo de 340 ohm serve?


Nao eh bem assim, ha q ter cuidado com a potencia maxima q o Zener pode suportar. Esse 55 suporta maximo continuo de 500mW, ou seja ~150mA.
Pelo datasheet, a resistencia termica eh de 300°C/W... se estiver no maximo de corrente, estah a 150°C... eh tudo muito por alto, mas as contas sao +- estas.

O melhor eh sempre usar o Zener na mnor dissipacao possivel, logo tem q regular o menos possivel.
Eh calcular a resistencia apenas p a corrente necessaria e nao mais do q isso pq senao o Zener vai estar a queimar energia p regular a tensao extra q tem q ser mantida.

Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Kristey em 04 de Novembro de 2014, 00:27
Compras breakouts no ebay, só as placas, tipo isto:
http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR0.TRC0.H0.Xsmd+to+dip+breakout&_nkw=smd+to+dip+breakout&_sacat=0 (http://www.ebay.com/sch/i.html?_from=R40&_trksid=p2050601.m570.l1313.TR0.TRC0.H0.Xsmd+to+dip+breakout&_nkw=smd+to+dip+breakout&_sacat=0)
Obrigado, não conhecia isto!

Mas porque é que não corres tudo a 3.3v e evitas voltagens diferentes?
Realmente posso meter o bootloader de 3.3V. JA tinha pensado nisso mas acho que tinha um handicap qualquer no meu circuito/objectivo. Vou ver se me lembro porque eu perdi o meu bloco de notas onde tinha estas coisas apontadas :/

Contudo agora fiquei com curiosidade para ver como funciona esta questao dos Zenners
asena pelo que vejo nesta Imagem (https://www.dropbox.com/s/sbsj8zsopchq4uc/Captura%20de%20tela%202014-11-04%2000.20.48.png?dl=0)
A corrente maxima que o modulo usa é 30mA Mas eu não sei se é em todos os pinos ou não. Na datasheet não consegui encontrar mais informação de corrente: datasheet (http://cl.ly/1A1n012s3l36)
O maximo de corrente que tenho na posta do uC penso que seja 150mA que dá o atmega.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 04 de Novembro de 2014, 09:20
Realmente posso meter o bootloader de 3.3V. JA tinha pensado nisso mas acho que tinha um handicap qualquer no meu circuito/objectivo. Vou ver se me lembro porque eu perdi o meu bloco de notas onde tinha estas coisas apontadas :/

Deves, eh sempre a melhor opcao usar a mesma tensao p todo o circuito quando tal eh possivel.



Contudo agora fiquei com curiosidade para ver como funciona esta questao dos Zenners
asena pelo que vejo nesta Imagem (https://www.dropbox.com/s/sbsj8zsopchq4uc/Captura%20de%20tela%202014-11-04%2000.20.48.png?dl=0)
A corrente maxima que o modulo usa é 30mA Mas eu não sei se é em todos os pinos ou não. Na datasheet não consegui encontrar mais informação de corrente: datasheet (http://cl.ly/1A1n012s3l36)
O maximo de corrente que tenho na posta do uC penso que seja 150mA que dá o atmega.

O ATmega nao te consome 150mA, mas sim permite q o total das portas possam consumir no maximo esse valor. A corrente de operacao deve andar entre os 1..5mA. Veh o datasheet for operating current ah frequencia q tu estahs a usar. Provavelmente 1mA ou menos @ 1MHz.

Soh tens q calcular a resistencia para a corrente total q vais necessitar 30m+1m+1m(zener),

(5V-3.3V)/32m = ~53 Ohm, usar 62 Ohm
A essa corrente maxima, a resistencia vai dissipar ~60mW.

Sao tudo contas muito simples e redondas. Adapta p os teus usos.


Ha um livro muito bom de fontes de alimentacao lineares do Eng. Joao Caninas (https://35fub4.s.cld.pt).
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: senso em 04 de Novembro de 2014, 12:33
Mas porque é que estamos a falar de 20 ou 30mA numa entrada lógica CMOS?

O consumo máximo do módulo é definido pelo amplificador RF basicamente, e pela lógica de controlo, não são 30mA que ele consome nas entradas digitais para saber se é um 0 ou 1, acho que nem ECL é assim tão power hungry..
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 04 de Novembro de 2014, 13:01
Mas porque é que estamos a falar de 20 ou 30mA numa entrada lógica CMOS?

O consumo máximo do módulo é definido pelo amplificador RF basicamente, e pela lógica de controlo, não são 30mA que ele consome nas entradas digitais para saber se é um 0 ou 1, acho que nem ECL é assim tão power hungry..


Ele vai alimentar um modulo de radio com consumo de picos 30mA ......


Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: senso em 04 de Novembro de 2014, 13:12
E vai alimentar o módulo pelos pinos do SPI?
Ou me escapou algum post, ou não se continua só a falar de usar zeners como conversores de nivel, ou agora estamos a falar em usar zeners para gerar os 3.3v?
A meu ver não sei se é a melhor opção, um 1117 em SOT-23 chega bem para isso e terá melhor regulação e PSRR que um zener.
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Sérgio_Sena em 04 de Novembro de 2014, 13:20
E vai alimentar o módulo pelos pinos do SPI?
Ou me escapou algum post, ou não se continua só a falar de usar zeners como conversores de nivel, ou agora estamos a falar em usar zeners para gerar os 3.3v?
A meu ver não sei se é a melhor opção, um 1117 em SOT-23 chega bem para isso e terá melhor regulação e PSRR que um zener.


Eu continuei a falar do Zener pois me parece q ele poderah querer alimentar o circuito com isso.

E sim, o 1117 eh o minimo a usar: cheap-good-enough for the job :)

Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Kristey em 06 de Novembro de 2014, 04:44
senso, eu perguntei pelos zenners porque as soluções que vi aqui e que eu pesquisei são:
-SN74LVC245A (8 canais, preciso de 6)
-2 x SN74LVC3G17DCTR (3 canais, preciso de 6)
e agora o
-1117 (SOT-23)

E a minha questão foi a regulação para os 3.3V. Sei que nos logical converters que se sompram no ebay tens que alimentar 5V de um lado e 3.3V de outro, nestes é necessário?
Acrescentando que os CI's ainda tinha de esperar por eles e os zeners e resistências é o que não falta ali na loja de electrónica da esquina :D
Dai a minha pergunta, é mesmo necessario e relevante usar um conversor logico em CI?

Se sim, estaria mais inclinado para o SN74LVC245A visto que é so um componente (embora sobrem 2 portas), mas ao ler a datasheet fiquei na duvida se a comunicação era bidirecional.

Sobre a utilização de zeners
O que é para alimentar é isto: nRF905, e eu falei dos zeners porque é o exemplo que vi a ser usado aqui:
http://blog.zakkemble.co.uk/nrf905-avrarduino-librarydriver/ (http://blog.zakkemble.co.uk/nrf905-avrarduino-librarydriver/)

As correntes que meti aqui para o asena foi o que eu vi no datasheet como corrente maxima que o modulo precisa (meti la o link para poderem conferir se estava a dizer alguma babuzeira)

Posso tentar investigar a corrente de cada porta de comunicação e VCC (VCC, TXE, CE, PWR, SI, SCK e CSN ) e faço as contas individuais. Ou vejo a máxima e uso o mesmo valor de resistências para todos os pinos.

Agora tenho de decidir se uso os CI's ou os ZENERS, e se forem os zeners tenho de ver como fazer o calculo da resistencia a inserir com o zener. Visto que no datasheet so tem a corrent maxima e não a corrente por porta:
Datasheet (http://www.nordicsemi.com/eng/content/download/2452/29528/file/Product_Specification_nRF905_v1.5.pdf)

Isto é claro que se puder meter o bootloager de 3.3V, fica resolvido (como disse, ja não me lembro qual o motivo que me levou a não faze-lo do inicio, e sei que havia um)
Mas mesmo assim gostei da explicação do asena para a questao dos zeners e desenvolvi mais essa solução. Mesmo que não a use, aprendi algo :D
Título: Re: Problemas entre diferentes arduinos para a mesma função
Enviado por: Kristey em 25 de Dezembro de 2014, 16:41
Pelo que leio na datasheet do SN74LVC245A não dá para o que preciso.
Uma vez que é desenhado para comunicações assicronas, e eu quero usar isto com um nRF905
E também porque tenho de seleccionar um pino em função da direcção de comunicação


Encontrei isto, acho que serve para o que eu quero.
http://www.ti.com/product/TXB0108/description (http://www.ti.com/product/TXB0108/description)
Título: Re: Bi-directional Logic Level Converter
Enviado por: senso em 27 de Dezembro de 2014, 20:49
Os automáticos nem sempre corre muito bem se tiveres pull ups de um lado ou do outro, ele troca-se todo.