Polyfoniska köket (5 / 8 steg)
Steg 5: Koden: Arduino
Vi har anslutit 4 magnetiska reedbrytare och 5 potentiometrar. Om du lagt till fler/andra sensorer i din Arduino, bör du införliva dem i den här koden genom att definiera vilket stift representerar vilka sensorer och sedan mata ut dem via den seriella porten i slutet.
En sista sak att notera: zip-filen innehåller en Arduino skiss placeras i en mapp. Du behöver denna fil hierarki för Arduino att ladda skissen ordentligt. Placera filen i en mapp med samma namn.
Arduino kod:
/*
Polyfoniska köket
Sara Montoro
Karl Landin
Alice Lee
Noah Pitts
University of California, Berkeley
CNM290/CS294-85
Kritiska göra: Material, protokoll och kultur
Lämna oss en kommentar om du har förslag och andra idéer!
*/
ställa in digital pin (mag switch)
CONST int mag1Pin = 4;
CONST int mag2Pin = 5;
CONST int mag3Pin = 6;
CONST int mag4Pin = 7.
ställa in analoga pin (cap sensor & krukor)
CONST int capSensePin = A0;
CONST int pot1Pin = A1;
CONST int pot2Pin = A2;
CONST int pot3Pin = A3;
CONST int pot4Pin = A4;
CONST int pot5Pin = A5;
Set var (mag)
int mag1State, mag2State, mag3State, mag4State;
Set var (kruka)
int capSense = 0;
int pot1Val = 0;
int pot2Val = 0;
int pot3Val = 0;
int pot4Val = 0;
int pot5Val = 0;
void setup() {
Starta seriell anslutning
Serial.BEGIN(9600);
Konfigurera digital ingång och aktiverar de inre pull-up resistorn
pinMode (mag1Pin, INPUT_PULLUP);
pinMode (mag2Pin, INPUT_PULLUP);
pinMode (mag3Pin, INPUT_PULLUP);
pinMode (mag4Pin, INPUT_PULLUP);
}
void loop() {
läsa magnet värdet till en variabel
mag1State = digitalRead(mag1Pin);
mag2State = digitalRead(mag2Pin);
mag3State = digitalRead(mag3Pin);
mag4State = digitalRead(mag4Pin);
läsa och mappa potten värdet i en variabel
pot1Val = analogRead(pot1Pin);
pot2Val = analogRead(pot2Pin);
pot3Val = analogRead(pot3Pin);
pot4Val = analogRead(pot4Pin);
pot5Val = analogRead(pot5Pin);
sända till följetong: capSense
Serial.Print(capSense);
Serial.Print(',');
sända till följetong: pot1
Serial.Print(pot1Val);
Serial.Print(',');
sända till följetong: pot2
Serial.Print(pot2Val);
Serial.Print(',');
sända till följetong: pot4
Serial.Print(pot4Val);
Serial.Print(',');
sända till följetong: pot5
Serial.Print(pot5Val);
Serial.Print(',');
sända till följetong: pot3;
Serial.Print(pot3Val);
Serial.Print(',');
sända till följetong: mag1
Serial.Print(mag1State);
Serial.Print(',');
sända till följetong: mag2
Serial.Print(mag2State);
Serial.Print(',');
sända till följetong: mag3
Serial.Print(mag3State);
Serial.Print(',');
sända till följetong: mag4
Serial.Print(mag4State);
avsluta seriell linje med * och börja på ny rad
Serial.println('*');
}