Índice:

ATMega1284 Quad Opamp Caixa de efeitos: 4 etapas (com imagens)
ATMega1284 Quad Opamp Caixa de efeitos: 4 etapas (com imagens)

Vídeo: ATMega1284 Quad Opamp Caixa de efeitos: 4 etapas (com imagens)

Vídeo: ATMega1284 Quad Opamp Caixa de efeitos: 4 etapas (com imagens)
Vídeo: Op-Amps - Using Operational Amplifiers 2024, Julho
Anonim
Caixa de efeitos ATMega1284 Quad Opamp
Caixa de efeitos ATMega1284 Quad Opamp

O Stomp Shield para Arduino da Open Music Labs usa um Arduino Uno e quatro opamps como caixa de efeitos de guitarra. Semelhante ao instrutível anterior que mostra como portar o Electrosmash Uno Pedalshield, também portei a caixa de efeitos de guitarra do Open Music Labs para o ATMega1284P, que tem oito vezes mais RAM do que o Uno (16kB versus 2kB).

Comparado com o anterior instrutível usando a unidade de efeitos ATMega1284, esta caixa tem as seguintes vantagens:

(1) Possui um mixer que mistura o sinal não processado com o sinal processado MCU - o que significa que a qualidade do sinal na saída é muito melhorada.

(2) Ele faz o processamento de saída de 16 bits para as duas saídas PWM, enquanto a caixa de efeitos anterior usa 8 bits para alguns dos exemplos, como o efeito de retardo.

(3) Tem um potenciômetro de feedback que pode ser usado para aumentar os efeitos - especialmente com o efeito flanger / phaser, cerca de 30 por cento de feedback adiciona consideravelmente à qualidade do efeito.

(4) A frequência do filtro passa-baixa é de 10 kHz em comparação com os 5 kHz da caixa de efeitos anterior - isso significa que o sinal na saída soa consideravelmente mais "nítido".

(5) Ele usa um gatilho de interrupção diferente que pode explicar o nível de ruído consideravelmente mais baixo mostrado por esta caixa de efeitos.

Comecei fazendo um bread-board com o Open Music Labs Stompbox Shield baseado em Uno e fiquei tão impressionado com o desempenho deste circuito de processamento de sinal de quatro OpAmp (mesmo usando um Arduino Uno), que o transferi para um stripboard para uso mais permanente.

O mesmo circuito de quatro opamp e código DSP foi então portado para o ATMega1284 - mais uma vez, surpreendentemente além das mudanças não essenciais, como atribuir os interruptores e LED a uma porta diferente e alocar 7.000 kilo-palavras em vez de 1.000 quilo-palavra de RAM para o buffer de atraso, apenas duas mudanças essenciais tiveram que ser feitas no código-fonte, ou seja, mudar para ADC0 de ADC2 e mudar as saídas Timer1 / PWM OC1A e OC1B da Porta B no Uno para a Porta D (PD5 e PD4) no ATMega1284.

Conforme observado anteriormente, embora as placas de desenvolvimento para o ATMega1284 estejam disponíveis (Github: MCUdude MightyCore), é um exercício fácil comprar o chip simples (bootloader-free) (compre a versão PDIP que é compatível com bread-board e strip-board), então carregue o fork Mark Pendrith do bootloader Maniacbug Mighty-1284p Core Optiboot ou o MCUdude Mightycore, usando um Uno como o programador de ISP e, em seguida, carregue os esboços novamente através do Uno para o AtMega1284. Detalhes e links para este processo são fornecidos no apêndice 1 do manual anterior.

Etapa 1: Lista de peças

Lista de Peças
Lista de Peças
Lista de Peças
Lista de Peças

ATMega1284P (versão do pacote PDIP de 40 pinos) Arduino Uno R3 (usado como um ISP para transferir o carregador de boot e esboços para o ATMega1284) OpAmp MCP6004 quad OpAmp (ou similar RRIO (Rail to Rail Input e Output) OpAmp como TLC2274) 1 x LED vermelho 1 x cristal de 16 MHz 2 x 27 capacitores pF 1 x 3n9 capacitor 1 x 1n2 capacitor 1 x 820pF capacitor 2 x 120 pF capacitores 4 x 100n capacitores 3 x 10uF 16v capacitores eletrolíticos 4 x 75k resistores 4 x 3k9 resistores 1 x 36k resistor 1 x 24k resistor 2 x 1M resistores 1 x 470 ohm resistor 3 x 1k resistores 2 x 50k Potenciômetros (linear) 1 x 10k Potenciômetro (linear) 3 x botões de pressão (um deles deve ser substituído por um 3 pólos 2- modo de pedal se a caixa de efeitos for usada para trabalho ao vivo)

Etapa 2: construção

Construção
Construção

O circuito 1 mostra o circuito usado e o Stripboard 1 é sua representação física (Fritzing 1) com a Foto 1 o circuito bread-board em operação. Três pequenas mudanças de circuito foram feitas: o bias de opamp de meio-nível de alimentação compartilhado é usado para três estágios OpAmp, os resistores paralelos de 3 x 75k e 2 x 75k ohms foram substituídos por resistores únicos de 24k e 36k, e os capacitores de feedback foram aumentados para 120pF para esses dois estágios OpAmp. O controle giratório foi substituído por dois botões que são usados para aumentar ou diminuir os parâmetros de efeitos. A conexão de três fios ao ATMega1284 é mostrada no circuito como ADC para o pino 40, PWMlow do pino 19 e PWMhigh do pino 18. Os três botões de pressão são conectados aos pinos 1, 36 e 35 e aterrados na outra extremidade. Um LED é conectado por meio de um resistor 470 ao pino 2.

Estágios de entrada e saída OpAmp: É importante que um RRO ou preferencialmente um OpAmp RRIO seja usado por causa da grande oscilação de tensão necessária na saída OpAmp para o ADC do ATMega1284. A lista de peças contém vários tipos de OpAmp alternativos. O potenciômetro de 50k é usado para ajustar o ganho de entrada para um nível logo abaixo de qualquer distorção e também pode ser usado para ajustar a sensibilidade de entrada para uma fonte de entrada diferente de uma guitarra, como um reprodutor de música. O segundo estágio de entrada OpAmp e o primeiro estágio de saída opamp tem um filtro RC de ordem superior para remover o ruído MCU gerado digitalmente do fluxo de áudio.

Estágio ADC: O ADC é configurado para ler por meio de uma interrupção do temporizador. Um capacitor 100nF deve ser conectado entre o pino AREF do ATMega1284 e o aterramento para reduzir o ruído, visto que uma fonte Vcc interna é usada como uma tensão de referência - NÃO conecte o pino AREF diretamente a +5 volt!

Estágio DAC PWM: Como o ATMega1284 não tem seu próprio DAC, as formas de onda de áudio de saída são geradas usando uma modulação de largura de pulso de um filtro RC. As duas saídas PWM em PD4 e PD5 são definidas como os bytes alto e baixo da saída de áudio e misturadas com os dois resistores (3k9 e 1M) em uma proporção de 1: 256 (byte baixo e byte alto) - que gera a saída de áudio.

Etapa 3: Software

O software é baseado nos stompbox pedal sketches do Open Music Labs, e dois exemplos são incluídos, a saber, um efeito flanger / phaser e um efeito de atraso. Novamente como com o instrutível anterior, os interruptores e LED foram movidos para outras portas distantes daquelas usadas pelo programador ISP (SCLK, MISO, MOSI e Reset).

O buffer de atraso foi aumentado de 1000 palavras para 7000 palavras e PortD foi definido como a saída para os dois sinais PWM. Mesmo com o aumento no buffer de atraso, o esboço ainda usa apenas cerca de 75% da RAM de 16 kB ATMega1284 disponível.

Outros exemplos, como o tremolo do site Open Music Labs para o pedalSHIELD Uno, podem ser adaptados para uso pelo Mega1284 alterando o arquivo de cabeçalho de inclusão Stompshield.h:

(1) Alterar DDRB | = 0x06; // define saídas pwm (pinos 9, 10) para outputtoDDRD | = 0x30;

e

ADMUX = 0x62; // ajuste à esquerda, adc2, vcc interno como referência para ADMUX = 0x60; // ajuste à esquerda, adc0, vcc interno como referência // Essas alterações são as ÚNICAS alterações de código essenciais // ao portar do Uno para o ATMega1284

Para os dois exemplos incluídos aqui, o arquivo de cabeçalho está incluído no esboço - ou seja, nenhum arquivo de cabeçalho precisa ser usado

Os botões 1 e 2 são usados em alguns dos esboços para aumentar ou diminuir um efeito. No exemplo de atraso, aumenta ou diminui o tempo de atraso. Quando o esboço é carregado pela primeira vez, ele começa com o efeito de atraso máximo. Para o esboço do phaser flanger, tente aumentar o controle de feedback para um efeito aprimorado.

Para alterar o atraso para um efeito de eco (adicionar repetição), altere a linha:

buffer [localização] = entrada; // armazenar nova amostra

para

buffer [localização] = (entrada + buffer [localização]) >> 1; // Use para efeito de eco

O pedal deve ser um interruptor de três pólos bidirecional

Etapa 4: Links

Electrosmash

Open Music labs Music

ATMega Effect Pedal

Recomendado: