LOJA FÍSICA
Praça Mauá, 4541 - Sala 22
09580-050 - São Caetano do Sul / SP
Praça Mauá, 4541 - Sala 22
09580-050 - São Caetano do Sul / SP
CENTRAL DE ATENDIMENTO
(11) 3522-7626
info@robocore.net
(11) 3522-7626
info@robocore.net
HORÁRIO DE FUNCIONAMENTO
De segunda à sexta das 9:00 às 19:00
De segunda à sexta das 9:00 às 19:00
Retornar
ao topo
ao topo
Módulo Ethernet ENC28J60
Formas de pagamento:
- Pague em até 12x no cartão
- Pague através do PayPal
- Pague por Boleto Bancário
Esta é uma interface ethernet que utiliza o chip da Microchip ENC28J60 - Controlador de Internet IC que suporta vários protocolos internet. Este módulo pode ser conectado diretamente com a maioria dos microcontroladores com uma interface SPI cuja transferência ultrapassa 20MHz.
Com este módulo é possível conectar de forma simples e barata um micro-controlador em uma rede TCP/IP. Veja na imagem acima como conectar este módulo a uma placa BlackBoard / Arduino. Na seção documentação você encontra uma ótima biblioteca para Arduino, que possui vários exemplos como webserver, webclient, etc.
Sugerimos a utilização de Jumpers Premium M/F para facilitar a ligação do módulo na placa Arduino.
- Interface SPI
- Tensão de Alimentação 5V
- Cristal de 25MHz
- Tamanho reduzido
Para fazer comentários é necessário estar logado. Efetuar login.
Você ainda nao é cadastrado? Cadastre-se agora!
Comprei esse módulo com vcs semana passada. O endereço MAC sempre será conforme a documentação do site "https://jeelabs.org/pub/docs/ethercard/" ou pode variar?
Infelizmente o fabricante desse módulo não fornece um endereço MAC único para cada unidade, portanto você pode usar o endereço de exemplo que está na documentação da biblioteca. Apenas atente-se a usar um endereço MAC diferente para cada módulo que você usar, principalmente se eles estiverem na mesma rede, senão corre o risco de haver um conflito de endereços.
Este modulo pode ser utilizado junto no NodeMCU ESP8266 ( https://www.robocore.net/loja/produtos/nodemcu-esp8266-12-v2.html#descricao )? Para fazer com que meu dispositivo tenha as duas opções de acesso a rede (Cabo e Wifi).
O NodeMCU possui uma interface SPI que poderia ser usada com o módulo ENC28J60. No entanto, para fazer essa integração é necessário usar uma biblioteca específica para o NodeMCU/ESP8266, pois a biblioteca Ethercard não suporta este microcontrolador.
Se a frequência de clock de SPI dos módulos for diferente, então você deve poder mudar a frequência antes de cada transferência de dados usando a função beginTransaction(). Veja mais sobre a biblioteca SPI na página do Arduino: https://www.arduino.cc/en/Reference/SPI
Estou tentando utilizar o enc28j60 em uma aplicação para automação residencial. No momento estou tentando utilizar a biblioteca etherShield e ETHER_28J60. Porém ao compilar o programa aparece a seguinte mensagem de erro: In file included from C:\Users\wenderson\Documents\Arduino\libraries\etherShield/etherShield.h:25:0, from D:\controlador arduino\Comunica__o_SPI_Arduino_Mater_PIC_Slave\Comunica__o_SPI_Arduino_Mater_PIC_Slave.ino:2: C:\Users\wenderson\Documents\Arduino\libraries\etherShield/ip_arp_udp_tcp.h:32:80: warning: '__progmem__' attribute ignored [-Wattributes] extern uint16_t fill_tcp_data_p(uint8_t *buf,uint16_t pos, const char PROGMEM *progmem_s); ^ In file included from D:\controlador arduino\Comunica__o_SPI_Arduino_Mater_PIC_Slave\Comunica__o_SPI_Arduino_Mater_PIC_Slave.ino:2:0: C:\Users\wenderson\Documents\Arduino\libraries\etherShield/etherShield.h:34:79: warning: '__progmem__' attribute ignored [-Wattributes] uint16_t ES_fill_tcp_data_p(uint8_t *buf,uint16_t pos, const char PROGMEM *progmem_s); ^ O sketch usa 4.482 bytes (13%) de espaço de armazenamento para programas. O máximo são 32.256 bytes. Variáveis globais usam 726 bytes (35%) de memória dinâmica, deixando 1.322 bytes para variáveis locais. O máximo são 2.048 bytes. Se possivel gostaria de obter um auxilio para entender e corrigir esse erro devido as bibliotecas.
Estou querendo fazer um projeto de automação em minha casa para acionar uma fechadura eletrônica através de uma validação feita por senha em um teclado de 12 teclas. O diferencial é que cada pessoa na casa teria uma senha específica. Quero ter um computador para armazenar o banco de dados dos "usuários" e as suas respectivas senhas (pode ser com MySQl porque já estou habituado e vi que existe um conector para Arduino disponível) que se comunique com o Arduino (talvez pela rede da casa). Tenho o kit iniciante da RoboCore e uma Blackboard. Dei uma pesquisada pela internet e vi que precisaria de um relé, uma placa RTC e talvez um shield ethernet, mas não sei se minha Blackboard comporta tudo isso. Esse módulo pode ser usado? Me dêem uma luz! Valeu!
O ENC28J60 usa 4 pinos (SPI), o teclado de 12 botões (https://www.robocore.net/loja/produtos/teclado-matricial-12-botoes.html) usa 7 pinos e o módulo Relé (https://www.robocore.net/loja/produtos/modulo-rele.html) usa 1 pino, sem contar os pinos de alimentação. Isso significa que você pode usar esses três componentes com a BlackBoard, pois ela tem pinos suficientes (os pinos analógicos podem ser usados como entrada ou saída digital). Talvez haja uma limitação de memória, pois os projetos de comunicação por rede utilizam bastante texto. Mas isso dependerá do seu código, o melhor a fazer é testar.
Estou para realizar um pedido e quero saber se o cabo de rede que vocês vendem é o mesmo usado para este módulo, outra pergunta é se ele funciona sem necessariamente interligar em um modem ou algo do tipo. Estou querendo pegar ele para aprofundar minha noção de redes/HTML... pondo em pratica com meu arduino, aguardo resposta para finalizar o pedido, abraço!
O cabo de rede (https://www.robocore.net/loja/produtos/cabo-de-rede-300cm-patch-cord.html) pode ser usado com esse módulo. O jeito mais fácil de usar esse módulo é o conectando em um roteador, preferencialmente na mesma rede do seu computador para você acessar a página/módulo facilmente.
Olá, Estou tentando usar esse módulo com uma BlackBoard e, rodando até o exemplo de webClient que acompanha a biblioteca, a placa nãõ resolve o nome do site passado por ele.... A placa obtem IP do DHCP mas nao consegue resolver nomes. Vocês pegaram algum caso desses e que conseguiram resolver ?? Tentei trocar a biblioteca, mas com a nova ele nem carrega o modulo (possivel incompatibilidade por library para Arduino). Fico no aguardo de uma posição de vocês. Att.
Bom dia Vini, O webServer está externo. No meu caso, a BlackBoard iria acessar o WebServer e coletar as variáveis para fazer os devidos controles. De um computador normal, acesso o webserver, mas debugando o codigo, vejo que ele coleta o IP via DHCP, pega o DNS mas a função "ether.dnsLookup()". Já estou pensando em subir uma página de controle na BlackBoard, mas sem o SDCard. Tem como ? Att.
No exemplo webClient da biblioteca que disponibilizamos, o IP, o Gateway e o DNS foram associados corretamente? Esse exemplo tenta acessar o site "www.google.com" com a função: Altere para: Em seguida veja o que aparece no monitor serial.
Bom dia Francois, Fiz as alterações que você sugeriu e ele respondeu o seguinte no Monitor Serial: [webClient] IP: 192.168.25.4 GW: 192.168.25.1 DNS: 192.168.25.1 DNS failed SRV: 0.0.0.0 <<< REQ <<< REQ <<< REQ <<< REQ <<< REQ <<< REQ Será algum problema com o meu IDE (Linux), ou compatibilidade ? Já pesquisei na internet e mencionam de alguma correção no dns.cpp e no tcpip.cpp, mas pelo que vi nos códigos, a bilbioteca que vocês disponibilizam já possui essas correções. Obrigado pela ajuda de vocês e fico no aguardo de uma resposta.
Esse é o formato de IP da sua rede? Caso contrário você pode tentar usar um IP fixo, fora da faixa DHCP do seu roteador, para ver se funciona. Para isso altere o código: Para: * Não se esqueça de alterar o IP do seu Arduino e do seu Gateway antes de programar a placa.
Olá Francois, Sim, é o formato da minha rede interna. Eu tentei usando IP estático e nada. Defini também o DNS estático e o resultado é o mesmo. Tentei forçar a variável usando a função "parseIP" e "copyIP", mas não deram o resultado esperado. Att, Jefferson
Olá Francois, Isolei meus IFs e usando a função copyIP, consegui acesso ao servidor web que emulei aqui na minha rede. O problema realmente está na função dnsLookup(). Vou seguir com os testes "forçados", mas caso consigam alguma solução nessa função, eu agradeço muito. Att, Jefferson
Vini são vários warnings... nao vou colar tudo aqui para não ficar um post gigante, mas basicamente são parecidos com o a seguir: C:\Program Files (x86)\Arduino\libraries\Ethercard\EtherCard.h:165:41: warning: 'prog_char' is deprecated [-Wdeprecated-declarations] void emit_raw_p (PGM_P p, uint16_t n) { memcpy_P(ptr, p, n); ptr += n; }
Warnings são apenas informações de funções desatualizadas, ou coisas do gênero. O código tende a funcionar sem problemas. Porém, se você estiver tendo erros no upload, aí o problema é diferente e de fato o código não vai funcionar, mesmo porque ele não será nem carregado no chip da placa.
Se está utilizando o módulo comprado conosco, basta fazer as ligações conforme a imagem e usar a biblioteca disponibilizada. Dessa forma o módulo funciona sem nenhum problema. Caso não tenha comprado o módulo na RoboCore, sugiro verificar com a loja onde comprou pois ele pode estar com algum defeito.
Boa noite. Tentei acessar este vídeo que o Francois postou (www.robocore.net/loja/produtos/arduino-shield-ethernet2.html), mas não está disponível. Tem outro link, por favor? Obrigado
Na verdade não é bem um vídeo, esse é o link de um produto que é utilizado em um dos vídeos da RC. Veja se funciona agora: https://www.robocore.net/loja/produtos/arduino-shield-ethernet2.html Os vídeos que ele faz menção são esses: https://www.youtube.com/watch?v=t8HoOn2v_7o&t=16s https://www.youtube.com/watch?v=Zbwnop78Uxs&t=3s https://www.youtube.com/watch?v=JF2jDja2rhM&t=45s
Infelizmente não temos nenhum vídeo sobre esse módulo. Temos alguns vídeos usando o shield Ethernet (www.robocore.net/loja/produtos/arduino-shield-ethernet2.html), porém será necessário fazer algumas adaptações para deixar os exemplos compatíveis com o ENC28J60.
Nunca fizemos nenhum projeto dessa forma, já que quando precisamos comunicar dois Arduinos ligamos diretamente via TxRx. Porém, existem grandes chances dessa ligação funcionar, bastaria setar o IP de cada um deles e fazê-los conversar normalmente. Nossa única dúvida seria se para conectá-los seria necessário um cabo crossover ou se os módulos conseguiriam trabalhar por padrão como os roteadores atuais fazem.