Digital Electronics Lab 4

Below is my code:

int ledPin1 = 8;
int ledPin2 = 9;
int ledPin3 = 10;
int ledPin4 = 11;
int powerSwitch = 33;
int potValue1 = 0; //led tempo pot
int potValue2 = 0; //step 1
int potValue3 = 0; //step 2
int potValue4 = 0; //step 3
int potValue5 = 0; //step 4
int mappedPotVal1 = 0;
int mappedPotVal2 = 0;
int mappedPotVal3 = 0;
int mappedPotVal4 = 0;
int mappedPotVal5 = 0;
int octaveSwitch = 32;


void setup() {
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  pinMode(ledPin3, OUTPUT);
  pinMode(ledPin4, OUTPUT);
  pinMode(powerSwitch, INPUT);
  pinMode(octaveSwitch, INPUT);
  Serial.begin(9600);
}

void loop() {
  potValue1 = analogRead(A19);
  Serial.println(potValue1);
  mappedPotVal1 = map(potValue1, 0, 1023, 100, 1000); //will print number from 100~1000 as you turn the pot
  potValue2 = analogRead(A15);
  potValue3 = analogRead(A16);
  potValue4 = analogRead(A17);
  potValue5 = analogRead(A18);
  mappedPotVal2 = map(potValue2, 0, 1023, 60, 72);
  mappedPotVal3 = map(potValue3, 0, 1023, 60, 72);
  mappedPotVal4 = map(potValue4, 0, 1023, 60, 72);
  mappedPotVal5 = map(potValue5, 0, 1023, 60, 72);


  if (digitalRead(powerSwitch) == HIGH) { //on and off switch
    if (digitalRead(octaveSwitch) == HIGH) {
      octaveUpMode();
    }
    if (digitalRead(octaveSwitch) == LOW) {
      normalMode();
    }
  }
}
void normalMode() {
  usbMIDI.sendNoteOn(mappedPotVal2, 127, 1);
  digitalWrite(ledPin1, HIGH);
  delay(potValue1);
  digitalWrite(ledPin1, LOW);
  usbMIDI.sendNoteOff(mappedPotVal2, 0, 1);
  usbMIDI.sendNoteOn(mappedPotVal3, 127, 1);
  digitalWrite(ledPin2, HIGH);
  delay(potValue1);
  digitalWrite(ledPin2, LOW);
  usbMIDI.sendNoteOff(mappedPotVal3, 0, 1);
  usbMIDI.sendNoteOn(mappedPotVal4, 127, 1);
  digitalWrite(ledPin3, HIGH);
  delay(potValue1);
  digitalWrite(ledPin3, LOW);
  usbMIDI.sendNoteOff(mappedPotVal4, 0, 1);
  usbMIDI.sendNoteOn(mappedPotVal5, 127, 1);
  digitalWrite(ledPin4, HIGH);
  delay(potValue1);
  digitalWrite(ledPin4, LOW);
  usbMIDI.sendNoteOff(mappedPotVal5, 127, 1);
}

void octaveUpMode() {
  usbMIDI.sendNoteOn(mappedPotVal2 + 12, 127, 1);
  digitalWrite(ledPin1, HIGH);
  delay(potValue1);
  digitalWrite(ledPin1, LOW);
  usbMIDI.sendNoteOff(mappedPotVal2 + 12, 0, 1);
  usbMIDI.sendNoteOn(mappedPotVal3 + 12, 127, 1);
  digitalWrite(ledPin2, HIGH);
  delay(potValue1);
  digitalWrite(ledPin2, LOW);
  usbMIDI.sendNoteOff(mappedPotVal3 + 12, 0, 1);
  usbMIDI.sendNoteOn(mappedPotVal4 + 12, 127, 1);
  digitalWrite(ledPin3, HIGH);
  delay(potValue1);
  digitalWrite(ledPin3, LOW);
  usbMIDI.sendNoteOff(mappedPotVal4 + 12, 0, 1);
  usbMIDI.sendNoteOn(mappedPotVal5 + 12, 127, 1);
  digitalWrite(ledPin4, HIGH);
  delay(potValue1);
  digitalWrite(ledPin4, LOW);
  usbMIDI.sendNoteOff(mappedPotVal5 + 12, 127, 1);
}

Leave a comment

Design a site like this with WordPress.com
Get started