Baserade Arduino Piano (2 / 4 steg)
Steg 2: Elektronisk krets
Kretsen är enkel att göra, innan du gör det, bara att ansluta en knapp, talaren och en ledde till Arduino att se om de fungerar. Använd en skärbräda för att ansluta alla de nämnda delarna tillsammans.
- Anslut GND av Arduino till (-) stift skärbräda
- Nu ansluta en 10K Ohm motstånd till en PIN-kod för knappen
- Anslut den motsättande pin av knappen till en signal stift i Arduino (Digital Pin # 4)
- [Frivilligt] Anslut katoden av ledde till GND bakbord och anoden till digital pin #13.
- Upprepa steg 7 gånger för att komma med en enkel krets som har knappar som är anslutna till Arduino, baserat på dessa knappen väljer vi frekvenser från "pitches.h" biblioteket.
- [Frivilligt] Skär den negativa kabeln från batteriet till GND av Arduino och ansluta en switch. så kan du byta din E-piano på eller av.
- Slutligen, Anslut talarens positiva kabel till PWM stift #3 och den negativa ledningen till GND.
När du har anslutit din första knappen bara, använda följande Arduino knappen (exempel) kod för att testa om din krets fungerar bra eller inte.
Figuren visar kretsen Schematisk och hur varje knapp är ansluten till Arduino. Din slutligen krets bör likna det. Du kan också ha lysdioder läggas till varje knapp.
/ * Knappen
Slår på och av en ljusavgivande diode(LED) ansluten till digital
stift 13, när du trycker på en tryckknapp ansluten till stift 2.
Krets:
* LED fästs marken från stift 13
* tryckknapp ansluten till stift 2 från + 5V
* 10K resistor kopplad till stift 2 från marken
* Obs: på de flesta Arduinos finns redan en LED i styrelsen
kopplade till stift 13.
skapade 2005
av DojoDave
modifierade 30 Aug 2011
av Tom Igoe
Denna exempelkod är offentlig.
http://www.Arduino.cc/en/tutorial/Button
*/
CONST int buttonPin = 4; numrera av tryckknapp PIN-koden
CONST int ledPin = 13. antal LED stift
variabler som ändras:
int buttonState = 0; variabel för att läsa tryckknapp status
void setup() {
initiera LED stift som en utgång:
pinMode (ledPin, produktionen);
initiera tryckknapp PIN-koden som indata:
pinMode (buttonPin, ingång);
}
void loop() {
Läs statligt av tryckknapp värdet:
buttonState = digitalRead(buttonPin);
Kontrollera om tryckknappen trycks.
om det är, är buttonState hög:
om (buttonState == hög) {
Aktivera LED:
digitalWrite (ledPin, hög);
} annat {
Inaktivera LED:
digitalWrite (ledPin, låg);
}
}