sexta-feira, dezembro 06, 2024

Simulador de K7 para o ZX81/TK82C - Parte 3

 E o projeto está pronto! (pelo menos nessa primeira versão). A documentação está em https://github.com/dquadros/PicoK7, neste post vou dar uma passada rápida pelos aspectos mais interessantes.

Hardware

A montagem "final" é composta por:

  • Uma plaquinha RP2040 Zero. É uma placa compacta mas com pinos suficientes para todas as conexões necessárias
  • Um módulo micro SD
  • Um rotary encoder com chave
  • Um display LCD gráfico LCD12864.
  • Um transistor NPN (2N3904) e dois resistores para adaptar a saída do RP2040 para a entrada "EAR" do ZX81
  • Um conector para ligação do cabo de áudio de conexão ao ZX81
Acabei abrindo mão de uma montagem compacta, para ter mais facilidade de montagem. Um placa padrão do tipo "trilha" acomoda todos os componentes, as ligações foram feitas com fio wire-wrap soldado.

Software

A parte que deu mais trabalho foi a geração dos pulsos, que já relatei na parte anterior. Para acesso ao cartão SD eu usei a biblioteca "no-OS-FatFS-SD-SDIO-SPI-RPi-Pico", que acaba sendo muito sub-utilizada neste projeto. O tratamento do display e do rotary encoder aproveitou código que eu já tinha feito antes, o principal acréscimo foi uma rotina de menu (usada para escolher o programa).

Uma curiosidade é as PIOs foram bastante usadas: geração dos pulsos, monitoração do rotary encoder e controle do LED RGB presente na RP2040 Zero.

Operação

Eu optei pela total simplicidade. No início da execução são descobertos os arquivos ".P" presentes no diretório ZX81 do cartão. Eles são apresentados em um menu e a escolha do arquivo a enviar é feita usando o rotary encoder. Selecionado um arquivo, ele é transmitido e depois volta ao menu.

A transmissão do arquivo é indicada no display e no LED RGB.

Nenhum comentário: