Arduino ljud utgång (1 / 10 steg)
Steg 1: Digital till Analog omvandlare
DAC står för "digital till analog omvandlare." Eftersom Arduino inte har analog ut kapacitet, måste vi använda en DAC för att konvertera digitala data (nummer/ints/byte) till en analog vågform (oscillerande spänning). En enkel, lätt till programmet, och billigt sätt att göra detta är att använda något som kallas en R2R resistor stege. I huvudsak, den tar inkommande digitala bitar (0V och 5V från Arduino), väger dem och summerar dem för att producera en spänning mellan 0 och 5 volt (se den schematiska i fig 2, tagen från Wikipedia resistor stege sida). Du kan se en resistor stege som en multi-planat spänningsavdelare.
Resistor stegen jag kommer att visa i den här guiden är en 8-bitars DAC, vilket innebär att det kan producera 256 (2 ^ 8) olika spänningsnivåer mellan 0 och 5v. Jag ansluten varje digital stift 0-7 till var och en av de 8 föreningspunkterna i min 8-bitars DAC (visas i figurerna 1 och 3).
Jag gillar med dessa motstånd stege DACs eftersom jag alltid har material runt, de är billiga och jag tycker de är typ roligt, men de kommer inte ge dig högsta kvalitet ljud. Du kan köpa ett chip som fungerar i exakt samma var som en R2R DAC (och kommer att arbeta med all kod i detta instructable), men har interna, mycket matchade motstånd för bättre ljudkvalitet, jag gillar den här f.Kr det rinner av en enda 5V leverans (du kan även göra stereoljud med det), men det finns många mer tillgängliga , leta efter "parallell ingång, 8 bit, dac ic".
Alternativt finns det chips som tar i seriella data att utföra digital till analog konvertering. Dessa marker är generellt högre trohet (definitivt bättre kvalitet att motståndet stege DAC) och de använder endast två eller tre av Arduino produktion stift (i motsats till 8). Nackdelar är de är lite mer utmanande att programmera, dyrare, och kommer inte att fungera med koden i detta Instructable, men jag är säker på att det finns några andra tutorials. Efter en snabb sökning på digikey, dessa såg bra ut, för Arduino, försöka hitta något som kommer att köras av en enda 5V leverans.
En mer Obs - det verkar vara typ av en missuppfattning abut 8-bitars ljud-som det alltid har att låta som ljud effekter från ett Mario spel-men 8 bitars ljud med denna riktigt grundläggande DAC kan faktiskt replikera ljudet av röster och instrument riktigt bra, jag är alltid förvånad över kvaliteten på ljudet som kan komma från en massa motstånd.