K.K. Bossa sång och Animation på en Arduino (2 / 5 steg)
Steg 2: Hämta tonen bibliotek
Tonar biblioteket tillåter en att kunna spela upp till tre toner (på en Arduino Uno) med hjälp av en enda piezo. Klicka på länken här för dess dokumentation: https://code.google.com/archive/p/rogue-code/wikis/ToneLibraryDocumentation.wiki.
Se här om hur du importerar en zip bibliotek om du inte vet hur: https://www.arduino.cc/en/Guide/Libraries#toc2.
Arduino Uno har tre inre timers, därav det kan spela upp till tre toner på en enda piezo. Emellertid tar över timer 0 att spela toner kommer att orsaka funktioner som delay() och millis() inte fungerar. Varje ton måste använda en timer. För Arduino Uno: stift 5 och 6 är ihopkopplade på timer 0, stift 9 och 10 är ihopkopplade på timer 1 och stift 3 och 11 är ihopkopplade på timer 2. Så måste varje ton använda separat timer PWM stift.
Till exempel: Jag använde stift 10 och 11, som tar upp Timer 1 och 2.
Viktigt: För användare som redan har tonen biblioteket, måste du kopiera och klistra in alla notera frekvensen definitioner från min Tone.h fil för att använda min kod. Lägg den kli och lägenheter. Om du tar bort några av definitionerna från din Tone.h fil, då förlora du kompatibilitet med din äldre koder som förlitat sig på den.
Tre stora saker jag ändrade från standard Tone.h-filen:
1. jag gillar inte namnkonventionen att kalla kli och lägenheter som NOTE_AS4 och NOTE_AF4. Jag har ändrat dem alla till NOTE_A4S och NOTE_A4F.
2. Jag ingår kli och lägenheter för alla anteckningar. Inte för stort i en fråga, men några musikaliska bitar kommer att säga använda ett C sharp istället för en D.
3. jag inkluderat en vila. Någon som har spelat musik på en Arduino vet för att inkludera detta.