O que é esse “HanRun” e esses códigos em cima do conector ethernet?
Esse conector é especial. É fabricado pela HanRun e dentro dele existem dois LEDs e um componente essencial chamado de “magnetics”. O código HR911105A é o modelo do conjunto. Datasheet abaixo.
Por quê você chama de “Wiznet W5100”?
Porque Wiznet é o fabricante do componente principal do shield, cujo modelo é W5100. É para ele que você tem que procurar exemplos. Veja o que está escrito no quadrado preto no centro da placa.
Por que o arduino não aparece na lista de dispositivos conectados do meu roteador?
Aquela lista não é de dispositivos “conectados” nem “detectados”. É uma lista de dispositivos que pediram um endereço IP ao roteador, através de DHCP. Se seu sketch não usa DHCP (a maioria usa IP fixo), o seu arduino não vai aparecer na lista de nenhum roteador.
Qual o endereço MAC do shield?
Nem o shield nem o chip tem endereço MAC. O MAC é definido no seu sketch, geralmente desta forma:
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
Por um lado, isso te dá liberdade de usar o endereço que quiser. Por outro, pode dar uma baita dor de cabeça por causa da regra inviolável que diz que não podem existir dois MACs iguais em uma mesma rede. Enquanto você estiver brincando apenas com um shield não há problema, mas ao adicionar o segundo você vai ter que estar permanentemente alerta. Por exemplo, se você já tem um Arduino em rede na sua casa e quiser debugar o programa usando um arduino na sua mesa, precisa se lembrar que o sketch de teste não pode ter o mesmo MAC do que está “em produção” (nem o mesmo IP) e também precisa lembrar que ao fazer o upload do código que estava em teste para o arduino em produção, tem que alterar o MAC (e o IP).
O melhor modo de evitar dor de cabeça com isso é fazer seus sketches lerem o MAC de uma memória externa, que pode ser um cartão SD (perceba que o shield wiznet tem um slot) ou uma EEPROM. Você grava as memórias com MACs diferentes, bota uma etiqueta em cada uma dizendo qual é (só por organização), e esquece o problema.
Que LEDs precisam estar acesos?
Mesmo que o shield não esteja sendo usado (nenhum sketch que o use carregado), ao plugar o cabo de uma rede de 100Mbps devem acender-se quatro LEDs: PWR, LINK, 100M e FULLD. Se não acenderam esses quatro, o problema pode estar no shield ou no cabo.
Que pinos são usados pelo shield?
D4 (apenas para o SD), D10, D11,D12, D13, alimentação e o conector ICSP.
Por que o shield 1602 com keypad não funciona em conjunto com o Wiznet?
Porque o desenvolvedor do shield escolheu o pino 10 para desligar o backlight, colidindo com o requerido pelo shield Wiznet. Entorte o pino 10 do shield 1602 para que ele não entre e assim ambos vão funcionar.
Por que o sensor ultrassônico não funciona quando conecto o shield Wiznet?
Não sei. Não é defeito do sensor, nem do shield. Basta o shield estar plugado para que o sensor ultrassônico sempre retorne uma distância de 2-4cm. É como se a simples presença do shield interferisse com a temporização da função que mede o tempo de resposta do sensor. Ainda não tenho uma explicação e muito menos solução para isso.
Por que ao desligar a alimentação do arduino, quando a alimentação volta ele “sumiu” da rede?
Esse é um problema curioso que depende da sua placa base (seu arduino). Com algumas nunca acontece e com outras, você sempre precisa apertar o botão RESET para que a rede volte a responder. É um problema que ocorre com todos os shields da mesma versão, incluindo os fabricados pela Sparkfun e pela Adafruit. Existem artifícios de hardware que podem ser usados para contornar isso, caso ocorra com você.
Ao energizar, os LEDs PWR e FULLD acendem. Plugar o cabo de rede não faz efeito.
Nem é preciso plugar o cabo para perceber que há algo errado, porque apenas PWR devia estar aceso sem um cabo de rede conectado. Apertando o botão RESET funciona? Se sim, o shield está com um problema de inicialização. Os shields com esse problema são rejeitados pelo meu controle de qualidade e reservados para meu uso apenas. Se acontecer com você no período de garantia, solicite a troca.
Tags: comunicação, redes
-
Parabéns muito bom seu trabalho, Estou usando o shield Wiznet também configurei um servidor telnet que obtêm o ip do DHCP, meu problema esta em: Como descobrir o IP que foi atribuído para minha placa em diferentes redes que a placa for instalada?
Ps.: Pensei em um programa delphi que solicita-se em broacast, e a placa informa seu ip atual, mas não tenho ideia de como fazer isso.-
O shield funciona com a alimentação via USB, ou só com alimentação externa ?
Pois alimento meu Arduíno+shield e somente os leds PWR e FULLD acendem, colocar o cabo de rede não acontece nada, mesmo apertando o botão RESET, não funciona.
Tem alguma coisa que eu possa fazer como contornar esse problema ?
-
10 comments
Comments feed for this article
Trackback link: https://www.automalabs.com.br/duvidas-comuns-sobre-o-shield-ethernet-wiznet-w5100/trackback/