Hello everyone, this is my first post in this forum and also my first arduino project, a couple of months ago I was interested in making a footswitch to make changes in tones and pedals in bias fx and decided to buy an arduino and use previous electronic material that I had around, so far so good and guiding me with a couple of videos I have managed to make the physical operation that I would like to make my pedalboard, although I still need to see how I can implement the midi library in my code.
My question here is if someone can help me with an error that does not affect the operation of my pedal but I want to understand why it happens, according to me my design should start on channel 1 but when I connect it sends me to two, it is until I restart the arduino that starts on one, anyone has a solution or any idea of what I'm doing wrong?
Thank you very much in advance, I attach the code and a video
//Pulsadores
#define canalup 2
#define banco1 10
#define banco2 11
#define banco3 12
#define banco4 A0
//Display de 7 segmentos
#define displayA 3
#define displayB 4
#define displayC 5
#define displayD 6
#define displayE 7
#define displayF 8
#define displayG 9
//Led
#define led1 A1
#define led2 A2
#define led3 A3
#define led4 A4
int contador = 1;
void setup(){
Serial.begin(9600);
Serial.println(contador);
pinMode(canalup,INPUT);
pinMode(banco1,INPUT);
pinMode(banco2,INPUT);
pinMode(banco3,INPUT);
pinMode(banco4,INPUT);
pinMode(displayA,OUTPUT);
pinMode(displayB,OUTPUT);
pinMode(displayC,OUTPUT);
pinMode(displayD,OUTPUT);
pinMode(displayE,OUTPUT);
pinMode(displayF,OUTPUT);
pinMode(displayG,OUTPUT);
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
pinMode(led4,OUTPUT);
}
void loop(){
int estado = digitalRead(canalup);
if(estado == 0){
while(digitalRead(canalup) == 0){
}
contador++;
if (contador>9){
contador=1;}
Serial.println(contador);
}
switch (contador){
case 1:
uno();
break;
case 2:
dos();
break;
case 3:
tres();
break;
case 4:
cuatro();
break;
case 5:
cinco();
break;
case 6:
seis();
break;
case 7:
siete();
break;
case 8:
ocho();
break;
case 9:
nueve();
break;
}
}
////////////////////////////////////////////////////
void uno(){
digitalWrite(displayA,LOW);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,LOW);
digitalWrite(displayE,LOW);
digitalWrite(displayF,LOW);
digitalWrite(displayG,LOW);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void dos(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,LOW);
digitalWrite(displayD,HIGH);
digitalWrite(displayE,HIGH);
digitalWrite(displayF,LOW);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void tres(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,HIGH);
digitalWrite(displayE,LOW);
digitalWrite(displayF,LOW);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void cuatro(){
digitalWrite(displayA,LOW);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,LOW);
digitalWrite(displayE,LOW);
digitalWrite(displayF,HIGH);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void cinco(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,LOW);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,HIGH);
digitalWrite(displayE,LOW);
digitalWrite(displayF,HIGH);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void seis(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,LOW);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,HIGH);
digitalWrite(displayE,HIGH);
digitalWrite(displayF,HIGH);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void siete(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,LOW);
digitalWrite(displayE,LOW);
digitalWrite(displayF,LOW);
digitalWrite(displayG,LOW);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
////////////////////////////////////////////////////
void ocho(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,HIGH);
digitalWrite(displayE,HIGH);
digitalWrite(displayF,HIGH);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}
void nueve(){
digitalWrite(displayA,HIGH);
digitalWrite(displayB,HIGH);
digitalWrite(displayC,HIGH);
digitalWrite(displayD,LOW);
digitalWrite(displayE,LOW);
digitalWrite(displayF,HIGH);
digitalWrite(displayG,HIGH);
int lectura1 = digitalRead(banco1);
int lectura2 = digitalRead(banco2);
int lectura3 = digitalRead(banco3);
int lectura4 = digitalRead(banco4);
int estado = digitalRead(canalup);
if(lectura1 == 0){
while(digitalRead(banco1) == 0){
}
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura2 == 0){
while(digitalRead(banco2) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
if(lectura3 == 0){
while(digitalRead(banco3) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,HIGH);
digitalWrite(led4,LOW);
}
if(lectura4 == 0){
while(digitalRead(banco4) == 0){
}
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,HIGH);
}
if(estado == 0){
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
digitalWrite(led3,LOW);
digitalWrite(led4,LOW);
}
}