
Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03

Reviva a diversão da música dos primeiros jogos de computador com um autêntico sintetizador chiptune de 8 bits, que você pode controlar por MIDI do conforto de qualquer software DAW moderno.
Este circuito simples usa um Arduino para acionar um chip gerador de som programável AY-3-8910 (ou um de seus muitos clones) para recriar o som dos anos 80. Ao contrário de muitos designs que precisam de um software especializado para editar música, este se parece com um dispositivo MIDI USB padrão. O sintetizador tem um algoritmo inteligente que tenta manter as notas musicais mais relevantes tocando; em muitos casos, você pode jogar arquivos MIDI não editados diretamente nele e a melodia sai na hora. O custo total deve ser de cerca de £ 20.
Etapa 1: Coisas que você precisa



A lista completa de peças para isso, como você pode ver nas fotos, é a seguinte:
- Clone Sparkfun Pro Micro (opção 5V, 16 MHz). Eu usei este na Amazon.
- Chip PSG Yamaha YM2149F. Eu peguei o meu no eBay.
- 2 x capacitores de cerâmica 100nF
- 1 cada um dos resistores de 75R, 1K e 100K (classificação de 1/4 watt é adequada).
- Capacitor de disco de cerâmica 4.7nF
- Capacitor eletrolítico de 1uF (classificação de tensão> 5 V).
- Soquete DIP IC 40 pinos 0,6"
- Cabeçalhos 2 x 12 vias de 0,1 "(este do CPC)
- Placa de prototipagem, 3 "por 2" aprox. Comprei um pacote desses, novamente na Amazon.
- Soquete phono de montagem PCB
- Fio de núcleo sólido em miniatura (como este).
Você também precisará de um ferro de solda, solda, alicate, alicate e descascador de fios.
Etapa 2: peças alternativas



Chips geradores de som programáveis alternativos
O YM2149 que usei é um clone do original General Instruments AY-3-8910 IC. (O primeiro protótipo usou um AY-3-8910 que comprei no eBay, mas descobri que o gerador de ruído branco não estava funcionando. Rosto triste). Você pode usar qualquer um para este projeto sem quaisquer alterações.
A General Instruments também fez variantes AY-3-8912 e AY-3-8913, que era o mesmo silício dentro de pacotes menores, sem alguns pinos de E / S extras. Esses pinos não são necessários para fins de áudio e este projeto não os usa. Você pode usar um AY-3-8912 ou -8913, basta seguir as pinagens mostradas acima.
Arduinos alternativos
O "Pro Micro" que usei é uma cópia da placa Pro Micro do Sparkfun. Se você não está confiante com o código do Arduino, é melhor continuar com isso; se estiver satisfeito em adaptar o design, você precisará das seguintes especificações
- Dispositivo ATmega 16u4 ou 32u4 (necessário para funcionar como um dispositivo USB MIDI; o ATmega 168 ou 328 não pode fazer isso).
- Operação de 5 V (o AY-3-8910 funciona a 5 V) e velocidade de clock de 16 MHz.
-
Pelo menos 13 linhas de E / S digitais.
O pino da porta PB5 deve ser conectado (é usado para gerar um sinal de clock de 1 MHz). No Pro Micro, ele é usado como pino de E / S D9
As placas Arduino Leonardo e Micro se encaixam no projeto, embora eu não as tenha experimentado.
Outros componentes
Os resistores e capacitores usados aqui não são particularmente especiais. Quaisquer partes (aproximadamente) do valor correto devem funcionar.
Etapa 3: Layout da placa de circuito

Para construir o circuito, é melhor começar posicionando os soquetes e, em seguida, adicionar os resistores e capacitores. Abordaremos a conexão deles na próxima etapa.
Usando a imagem acima como guia, posicione o soquete IC de 40 pinos, vire a placa e solde primeiro os dois pinos de canto opostos. Se o soquete não estiver bem apoiado na placa, é fácil consertar resoldando um ou outro pino. Quando estiver OK, solde o resto.
Posicione os dois soquetes de 12 pinos e insira o Arduino neles para mantê-los na vertical e estável durante a soldagem. Novamente, soldar dois pinos em cada extremidade primeiro permitirá uma verificação antes da soldagem final.
Para o soquete de saída de áudio, usei uma pequena furadeira para ampliar os orifícios do PCB, já que as etiquetas de montagem são bastante grandes.
Etapa 4: Fiação


Assim que os componentes principais estiverem posicionados, eles podem ser conectados na parte traseira da placa, seguindo o circuito acima.
Os componentes de saída de áudio (R2, R3, C2, C3) e os capacitores de desacoplamento (C1, C4) podem ser conectados com fio de núcleo sólido (ou cortes dos fios do componente). As conexões de aterramento e alimentação do Arduino ao chip PSG (fios vermelho e preto, na imagem) agora podem ser feitas.
As várias saídas do Pro Micro são conectadas ao AY-3-8910 da seguinte forma (consulte o guia de conexão para as atribuições dos pinos):
Sinal do pino Arduino AY-3-8910
DA0 D2 37 DA1 D3 36 DA2 D4 35 DA3 D5 34 DA4 D6 33 DA5 D7 32 DA6 D8 31 DA7 A0 / D18 30 BC1 D10 29 BC2 MOSI / D16 28 BDIR MISO / D14 27 RESET # SCLK / D15 23 CLOCK D9 22 (via R1, 75 ohm)
Etapa 5: Programação usando o IDE do Arduino

Se você é novo no Arduino, recomendo fortemente tentar um dos muitos tutoriais sobre o básico. O guia de conexão do Sparkfun fornece detalhes completos. Você pode verificar se a programação básica está funcionando seguindo o tutorial "Blinkies". Arduinos pode ser um pouco complicado de persuadir no modo 'bootloader' (onde você pode carregar novos esboços), então um pouco de prática com um exemplo simples é útil.
Quando estiver satisfeito, baixe o arquivo chiptunes.ino anexado a esta página, crie e carregue-o. (Descobri que usar o tipo de placa "Arduino / Genuino Micro" está certo para este esboço, se você quiser pular a instalação do suporte para placa Sparkfun).
Além disso, observe que se você estiver em um Mac, a configuração de "Porta" precisará ser alterada assim que você carregar o esboço pela primeira vez. Com um Arduino 'em branco' (ou usando o esboço do Blinky), ele aparecerá como algo como /dev/cu.usbmodemXXXX, conforme mostrado na imagem acima. Quando o dispositivo USB MIDI estiver ativo (conforme usado pelo esboço chiptunes.ino), ele será /dev/cu.usbmodemMID1.
Etapa 6: teste e uso do sintetizador



Depois que o Arduino estiver programado, sua estação de trabalho deve reconhecê-lo automaticamente como um dispositivo USB MIDI. Ele aparecerá com o nome 'Arduino Micro' - você deve ser capaz de ver isso no Gerenciador de dispositivos no Windows ou no aplicativo "Informações do sistema" no Mac OS.
Em um Mac, você pode usar o aplicativo Audio MIDI Setup para executar um teste básico. Inicie o aplicativo e escolha Janela -> Mostrar Estúdio MIDI. Isso abrirá a janela MIDI Studio - todas as suas interfaces MIDI aparecerão em um arranjo ligeiramente aleatório - que esperançosamente incluirá o dispositivo 'Arduino Micro'. Se você clicar no ícone 'Test Setup' na barra de ferramentas e, em seguida, clicar na seta para baixo (veja a imagem) no dispositivo Arduino Micro, o aplicativo enviará notas MIDI para o sintetizador. (Eles não são particularmente afinados!) O sintetizador deve fazer alguns sons aleatórios neste ponto.
Você pode então adicionar 'Arduino Micro' como um dispositivo de saída para a configuração MIDI de sua estação de trabalho de áudio digital e começar a jogar!
- O sintetizador responde nos canais MIDI 1 a 4. Cada canal tem um som diferente (bem, um envelope de volume diferente).
- São aceitas notas MIDI entre 24 e 96 (C1-C7); notas fora deste intervalo são ignoradas.
-
O canal MIDI 10 reproduz sons de bateria. Números de nota entre 35 e 50 (ver
www.midi.org/specifications-old/item/gm-level-1-sound-set) são aceitos.
- Existem três canais de voz no AY-3-8910. O firmware do sintetizador tenta tocar a nota enviada mais recentemente, enquanto mantém as notas mais altas e mais baixas solicitadas atualmente em execução. Outras notas (geralmente as notas médias em um acorde) são cortadas, se necessário.
E é só isso. Divirta-se!
Etapa 7: notas de rodapé
Sobre a melodia de demonstração
A melodia demo - a famosa ária Queen Of The Night de Mozart - foi criada com razoável rapidez a partir de um arquivo MIDI que encontrei na Internet (https://www.midiworld.com/mozart.htm). Alguém fez todo o trabalho duro!
Estou usando o Presonus Studio One em um Mac e o arquivo MIDI foi importado para quatro trilhas separadas. Foi necessária uma pequena quantidade de edição onde as notas de acompanhamento são mais altas do que a melodia principal e para remover algumas das falhas mais questionáveis entre as notas.
O áudio que você ouve no clipe vem direto do sintetizador, com apenas um toque de equalização e saturação para dar um toque de baixa-fi a uma 'máquina de arcade'.
Recomendado:
Construir um controlador MIDI Arduino: 5 etapas (com imagens)

Construir um controlador MIDI Arduino: Olá a todos! Neste instrutível, mostrarei como construir seu próprio controlador MIDI com Arduino. MIDI significa Musical Instrument Digital Interface e é um protocolo que permite que computadores, instrumentos musicais e outros hardwares se comuniquem
Arpeggiating Synthesizer (Mosquito I): 6 etapas

Arpeggiating Synthesizer (Mosquito I): Mosquito I é um pequeno arpeggiating sintetizador que usa um Arduino Nano e a biblioteca de síntese de som Mozzi. Ele pode reproduzir mais de vinte sequências de 8 etapas, mas você pode adicionar quantas sequências personalizadas desejar. É relativamente simples de configurar e não
Construindo um controlador MIDI Arduino: 9 etapas (com imagens)

Construindo um Arduino MIDI Controller: Este instrutível foi publicado originalmente em meu blog em 28 de junho de 2020. Gosto de construir coisas que incluem eletrônica e sempre quis construir algo usando Arduino. Uma das construções mais comuns para iniciantes que encontrei foi um Controlador MIDI
Como desmontar um computador com etapas e imagens fáceis: 13 etapas (com imagens)

Como desmontar um computador com etapas e imagens fáceis: Esta é uma instrução sobre como desmontar um PC. A maioria dos componentes básicos é modular e facilmente removível. No entanto, é importante que você seja organizado sobre isso. Isso ajudará a evitar que você perca peças e também a fazer a remontagem e
MIDI 5V LED Strip Light Controller para o Spielatron ou outro sintetizador MIDI: 7 etapas (com imagens)

Controlador de faixa de LED MIDI 5V para o Spielatron ou outro sintetizador MIDI: Este controlador pisca faixas de LED de três cores por 50 ms por nota. Azul para G5 a D # 6, vermelho para E6 a B6 e verde para C7 a G7. O controlador é um dispositivo ALSA MIDI para que o software MIDI possa emitir para os LEDs ao mesmo tempo que um dispositivo de sintetizador MIDI