Índice:

Arduino I²C ™ EEPROM BYTEBANGER: 5 etapas
Arduino I²C ™ EEPROM BYTEBANGER: 5 etapas

Vídeo: Arduino I²C ™ EEPROM BYTEBANGER: 5 etapas

Vídeo: Arduino I²C ™ EEPROM BYTEBANGER: 5 etapas
Vídeo: Почему я продал Мерседес W204? Минусы б/у Mercedes-Benz W204 с пробегом 2024, Julho
Anonim
Arduino I²C ™ EEPROM BYTEBANGER
Arduino I²C ™ EEPROM BYTEBANGER

Recentemente, fiquei intrigado com os EEProms I²C depois de resgatar alguns de uma velha TV de retroprojeção que estava desmantelando.

Eu vasculhei a internet tentando encontrar mais informações sobre eles - como folhas de dados e tutoriais sobre como essas coisas funcionavam e poderiam ser usadas. Surpreendentemente, as informações estavam dispersas e um tanto escassas … fichas técnicas foram bastante fáceis de encontrar e existem alguns tutoriais (incluindo vídeos) que mostram algumas maneiras básicas de acessar a funcionalidade dos eeproms. Eu ainda não estava satisfeito com o que queria fazer, então decidi configurar minha placa de ensaio e escrever meu próprio código, junto com algumas bibliotecas do Arduino … e o I²C ™ EEPROM BYTEBANGER nasceu!

Os tutoriais que encontrei não tinham algumas coisas que eu queria fazer, como ler e gravar dados de e para a eeprom mais do que apenas um byte por vez. Eu também queria ter a opção de despejar os dados do eeprom em um cartão SD, bem como carregar um arquivo CSV do cartão SD e reprogramar o eeprom.

Adicionar algumas funções de manipulação de dados e configurações de controle ao código realmente completou o que acredito ser um aplicativo Arduino muito bom que você vai gostar! Surpreendentemente, os suprimentos de que você precisa são poucos … escrever o código foi a parte difícil … o que é uma boa notícia para você, já que é fornecido aqui para download.

Eu queria ter certeza de que poderia fazer tudo isso usando um Arduino UNO, uma vez que ainda parece ser um microcontrolador muito popular, e meus pensamentos eram "se funciona em um UNO, então deve funcionar em qualquer coisa", o que provavelmente é true mudando o código ligeiramente para o seu microcontrolador específico.

Suprimentos

Você vai precisar de:

um Arduino UNO R3 com cabo USB deve ter pelo menos 1 (e até 8) módulo I²C EEPromsan SD Card modulea alto-falante ou campainha piezoelétrica (opcional) um cabo de conexão breadboardome

Etapa 1: Esquemático

Esquemático
Esquemático
Esquemático
Esquemático

Use o esquema Fritzing acima e as fotos como um guia para conectar seus eeprom (s), Módulo SD e alto-falante opcional.

Achei melhor começar com os eeproms.

Coloque-os na placa de ensaio conforme mostrado, prestando atenção ao espaçamento entre eeproms. Verifique a folha de dados para seu eeprom específico, mas descobri que a maioria dos eeproms I²C PDIP8 tem a mesma pinagem:

Os pinos 1-3 são as configurações de endereço para o eeprom. O pino 4 é conectado ao aterramento. O pino 5 é SDA (dados) que se conecta ao UNO SDA pinPin 6 é SCL (relógio) que se conecta ao UNO SCL pinPin 7 é WP (Write Protect) que está conectado ao groundPin 8 é VCC conectado a + 5v

Achei mais fácil começar adicionando primeiro o VCC e os fios terra a cada eeprom. (se você estiver usando apenas um eeprom, isso é super fácil!)

Em seguida, conecte as linhas SDA e as linhas SCL ao barramento I²C.

Como podemos endereçar até 8 eeproms no barramento I²C, ligaremos todas as linhas SDA juntas e da mesma forma com as linhas SCL. Se você notar na foto, usei um barramento de alimentação adicional como o barramento I²C. Se você não tiver um trilho extra, basta seguir o esquema de Fritzing.

Agora amarre todo o WP (pino 7) ao aterramento. Afinal, queremos poder gravar na eeprom … e não se preocupe, há uma função SAFEMODE no código que podemos usar para emular a função Write Protect.

Agora vamos conectar o Módulo SD …

Etapa 2: Módulo SD

Módulo SD
Módulo SD

Seu Módulo SD pode ser ligeiramente diferente do que usei, mas eles são basicamente iguais. (Você pode até usar um adaptador de cartão micro SD sozinho … mas isso é um projeto futuro)

Olhando para os pinos no Módulo SD da esquerda para a direita, eles são:

CS- Chip SelectSCK- Serial ClockMOSI- Master Out / Slave InMISO- Master In / Slave OutVCC- + 5vGROUND3.3 (não usado)

Conecte CS ao pino 8 UNO Conecte SCK ao pino 13 UNO Conecte MOSI ao pino 11 UNO Conecte MISO ao pino 12 UNO

Etapa 3: conectar o alto-falante

O alto-falante ou a campainha piezoelétrica são totalmente opcionais.

Conecte o alto-falante ao aterramento e ao pino 7 do UNO.

O código usa algumas funções de som, mas não é obrigatório para a operação. (na verdade, às vezes eu desligo o alto-falante quando não quero ouvir o som. Você também pode configurar uma chave.)

Etapa 4: Conecte o UNO Power e faça upload do código

Conecte a força UNO e carregue o código
Conecte a força UNO e carregue o código
Conecte o UNO Power e carregue o código
Conecte o UNO Power e carregue o código

Conecte o aterramento e + 5v do UNO aos trilhos de alimentação da placa de ensaio.

NÃO SE ESQUEÇA DE UNIR OS TRILHOS DE ENERGIA SUPERIOR E INFERIOR!

Agora é só conectar o UNO ao computador e fazer o upload do código!

O código I²C EEPROM BYTEBANGER é bastante extenso e farei uma série de tutoriais em vídeo sobre todos os recursos, mas também é bastante bem anotado com comentários.

Convido você a se inscrever no meu canal no YouTube, onde você poderá encontrar em breve os tutoriais em vídeo, bem como outros projetos por vir.

Tchau depois!

~ MITZ

Recomendado: