A primeira versão deste projeto está completa! Na Parte 1 você pode ver a motivação e na Parte 2 as dificuldades no caminho.
Hardware
A figura abaixo mostra o circuito. O XIAO ESP32-C3 cuida da comunicação WiFi, implementa um servidor FTP e programa o AT89S5x (via SPI). Um display OLED mostra o IP alocado e mensagens de acompanhamento. Um optoacoplador é usado para chavear os 5V para ativar a programação (no caso do Kit da Bit9) ou para alimentar o microcontrolador (se for usar direto com o chip). Um divisor resitivo reduz os 5V do sinal MISO para os 3,3V aceitos pelo ESP32-C3.
A montagem foi feita em uma caixinha da Patola, com o auxílio de cola quente:
Software
Como dito na parte anterior, aproveitei bastante código já existente:
- ESP-WiFiSettings, para a configuração do WiFi. A configuração é salva na área SPIFFS da Flash do ESP32-S3.
- O controle do display é feito usando as rotinas que criei para o ATmegaDetonator.
- Para o FTP eu usei o meu fork do SimpleFTPServer.
- A parte de gravação propriamente dita usa as rotinas do meu gravador anterior.
Nesta primeira versão o FTP recebe o arquivo e grava no SPIFFS. Depois eu processo o arquivo, gerando a imagem do firmware em memória e faço a gravação.
O código pode ser visto e baixado daqui.
Próximos Passos
Tratar o arquivo à medida que é recebido via FTP, deixando de gravar na Flash.
Vídeo
https://www.youtube.com/watch?v=Ei43mlQAKMY
Nenhum comentário:
Postar um comentário