 O Best-404-Error
O Best-404-Error pergunta se é possível obter um resultado de compilação com menos de 512 bytes se o código-fonte estiver escrito em um idioma de alto nível. Você pode, se simplificar a tarefa atribuída ao firmware.
A implementação do software de um amplificador de classe D permite alterar seus parâmetros (frequência PWM, ciclo de operação em repouso) alterando o firmware. 
O diagrama do circuito de hardware do dispositivo:

Os sinais de entrada passam pelos capacitores para cortar o componente DC e depois pelos divisores de resistores, adicionando a eles um novo componente constante da ordem de +0,55 V. Ao mesmo tempo, os capacitores e resistores inferiores dos divisores formam um HPF, frequências de corte abaixo de 28 Hz. A experiência mostrou que é melhor aumentar a frequência de corte desses filtros, porque pequenas distorções ocorrem de qualquer maneira.
Os sinais são alimentados ao primeiro e terceiro ADCs do microcontrolador. A tensão de referência do ADC é escolhida igual a 1,1 V. A taxa de divisão da freqüência do relógio é 16, portanto os ADCs operam na frequência de 500 kHz. A rotina de interrupção percorre o primeiro e o terceiro ADCs. Um dos valores lidos é gravado no OCR1A, o segundo no OCR1B.
O temporizador 1 está configurado para que a unidade nas saídas PWM apareça quando esses valores coincidem e zero - quando o temporizador é zerado. Após o ajuste, essa parte do algoritmo é realizada no hardware, mas, ao mesmo tempo em que a amplitude do sinal, é alterada em relação à frequência originalmente definida e à frequência PWM.
Se o ciclo de trabalho em repouso for selecionado a 50% (melhor qualidade, mas menos econômico), filtros passa-baixo serão necessários na frente dos cabeçotes dinâmicos.
Arquivos: 
fonte C ++ , 
resultado da compilação do Atmel Studio 7.0 (495 bytes), 
esquema esquemático da Eagle , 
placa nele , 
código G para cortar uma imagem da placa , 
perfurar , 
cortar no tamanho .
Pagamento de um lado:

Cabeças dinâmicas são conectadas através de uma ponte H dupla padrão L293N:

Amplificador em ação: