//Primeiras linhas de código, trabalhando //com switch/case
//Mux control pins
int r0 = 2;
int r1 = 3;
int r2 = 4;
//int s0 = 2;
//int s1 = 3;
//int s2 = 4;
int saida = A0;
int t=50;
int x;
void setup()
{
pinMode(r0, OUTPUT);
pinMode(r1, OUTPUT);
pinMode(r2, OUTPUT);
pinMode(saida, OUTPUT);
digitalWrite(r0, LOW);
digitalWrite(r1, LOW);
digitalWrite(r2, LOW);
digitalWrite(saida, LOW);
Serial.begin(9600);
}
void loop()
{
for (x=0; x<8; x++)
{
toca();
}
for (x=7; x>=0; x--)
{
toca();
}
}
void toca()
{
switch (x)
{
case 0:
{
digitalWrite(r0, LOW);
digitalWrite(r1, LOW);
digitalWrite(r2, LOW);
}
break;
case 1:
{
digitalWrite(r0, HIGH);
digitalWrite(r1, LOW);
digitalWrite(r2, LOW);
}
break;
case 2:
{
digitalWrite(r0, LOW);
digitalWrite(r1, HIGH);
digitalWrite(r2, LOW);
}
break;
case 3:
{
digitalWrite(r0, HIGH);
digitalWrite(r1, HIGH);
digitalWrite(r2, LOW);
}
break;
case 4:
{
digitalWrite(r0, LOW);
digitalWrite(r1, LOW);
digitalWrite(r2, HIGH);
}
break;
case 5:
{
digitalWrite(r0, HIGH);
digitalWrite(r1, LOW);
digitalWrite(r2, HIGH);
}
break;
case 6:
{
digitalWrite(r0, LOW);
digitalWrite(r1, HIGH);
digitalWrite(r2, HIGH);
}
break;
case 7:
{
digitalWrite(r0, HIGH);
digitalWrite(r1, HIGH);
digitalWrite(r2, HIGH);
}
break;
}
digitalWrite(saida, HIGH);
delay(t);
digitalWrite(saida, LOW);
}
Tags:
Comentar
Substitua todo o switch(x) {} por isso
digitalWrite(r0, x&0x01);
digitalWrite(r1, x&0x02);
digitalWrite(r2, x&0x04);
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por
Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!
Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)