$tiff:
Det enda den gör just nu är att ta in ljud via A/D-omvandlaren och sen direkt skicka ut det på D/A-omvandlaren. I kommentarerna till koden har jag dock gett exempel på tre väldigt enkla omvandlingar av ljudet

Funktionen med att ljudet kommer ut i princip samma ögonblick skulle vara att göra nåt slags ljudfilter, dock har ju en 2313 inte så mycket minne så det går nog bara lagra nån tiondels sekund med ljud, sen är den inte så bra på att arbeta med flyttal heller. Om man tar en lite större processor skulle man nog kunna göra lite häftigare grejer!
JimmyAndersson:
Tackar tackar!

Att jag filtrerar PWM:en är för att kunna använda den tillsammans med den analoga komparatorn. Har satt att komparatorn ska generera ett interrupt när den går antingen från hög till låg eller tvärtom, alltså när
AIN0 och
AIN1 för en kort stund har samma värde. Iom att ljudet ligger på en ingång och PWM:en på den andra så får man en avsökning av hur ljudkurvan ser ut.
Något som jag inte riktigt har koll på är varför en lite halvrundad fyrkantsvåg ger bäst resultat, medan en ren fyrkantsvåg eller triangelvåg inte ger något ljud alls

Hursomhelst, anledningen till PWM-filtret är att PWM:en kommer ut på ben OC1 och måste filtreras innan jag använder den i analoga komparatorns ingång AIN1 (så jag får den fina avrundade fyrkantsvågen). Nästa projekt jag ska börja med är att göra en MIDI-styrd synth med en ATmega88. Iom att 88:an har lite fler utgångar så blir det mest troligt en riktigt fet R-2R-brygga med 16-bitars ljud
