Stap 1: Digitaal naar Analoog Converter
DAC staat voor "digitaal naar analoog converter." Aangezien de Arduino geen analoge uit mogelijkheden heeft, moeten we gebruik van een DAC digitale gegevens (getallen/ints/bytes) omzetten in een analoge golfvorm (oscillerende spanning). Een eenvoudige, gebruiksvriendelijke programma, en goedkope manier om dit te doen is het gebruik van iets genaamd een R2R weerstand ladder. In wezen, het neemt inkomende digitale bits (0V en 5V van de Arduino), gewichten hen, en vat ze voor de productie van een spanning tussen 0 en 5 volt (Zie het schema in figuur 2, overgenomen van de pagina van de ladder van Wikipedia weerstand). U kunt een weerstand ladder beschouwen als een multi-herverdeeld voltage divider.
De ladder van de weerstand ik in deze tutorial demonstreren zal is een 8-bits DAC, dit betekent dat het kan produceren 256 (2 ^ 8) verschillende spanningsniveaus tussen 0 en 5 v. Ik heb verbonden elk van digitale pinnen 0-7 aan elk van de 8 kruispunten in mijn 8 bit DAC (getoond in de vijgen 1 en 3).
Ik hou van met behulp van deze weerstand ladder DAC's want ik heb altijd de materialen rond, ze goedkoop zijn en ik denk dat ze soort van plezier, maar zullen ze niet geven u de hoogste kwaliteit audio. U kunt kopen een chip, die werkt in de exacte dezelfde als een R2R DAC was (en zal werken met alle van de code in dit instructable), maar heeft interne, hoogst-matched weerstanden voor betere audiokwaliteit, ik vind dit een v.Chr het draait uit een aanbod van enkele 5V (u kunt zelfs stereo audio met het doen), maar er zijn veel meer beschikbaar , zoekt u naar "parallelle invoer, 8 bits, dac ic".
Anderzijds zijn er chips die nemen in seriële gegevens digitaal naar analoog conversie uitvoeren. Deze chips zijn over het algemeen hoger trouw (zeker betere kwaliteit dat de weerstand ladder DAC) en ze alleen gebruiken twee of drie van de Arduino de output pinnen (in tegenstelling tot 8). Nadelen zijn ze zijn een beetje moeilijker te programmeren, duurder, en zal niet werken met de code in dit Instructable, hoewel ik weet zeker dat er enkele andere tutorials beschikbaar. Na een snelle zoektocht op digikey proberen deze zag er goed uit, voor Arduino, om iets dat wordt uitgevoerd uit een enkele 5V-aanbod te vinden.
Één meer nota - er lijkt soort van een misvatting abut 8 bit audio-dat het altijd klinken als de effecten van de geluiden van een Mario spel, maar 8 bit audio met dit echt basic DAC moet kan eigenlijk repliceren de geluiden van stemmen en instrumenten echt goed, ik ben altijd verbaasd over de kwaliteit van geluid die uit een bos van weerstanden komen kan.