Muntai honen helburua 4 interruptoren bitartez 10 led kontrolatzea da. 4 interruptore horien bidez 0 tik 10era zenbaki bat sartuko diogu sistema bitarrean eta zenbakiari dagokion led kopuruak piztu behar dira.
Proteus 7.7 erabili dugu zirkuitu hau simulatzeko:
.

.
.
Eta hemen bideo bat dugu zirkuituaren funtzionamenduarekin
.
Azkenik, ariketa hau egiteko programa daukagu:
void setup()
{
Serial.begin(9600); // abre el puerto serie a 9600 bps:
pinMode(A0, INPUT);
pinMode(A1, INPUT);
pinMode(A2, INPUT);
pinMode(A3, INPUT);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
void loop()
{
digitalRead(A0);
digitalRead(A1);
digitalRead(A2);
digitalRead(A3);
if((digitalRead(A0)==HIGH)&&(digitalRead(A1)==HIGH)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, LOW);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==LOW)&&(digitalRead(A1)==HIGH)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==HIGH)&&(digitalRead(A1)==LOW)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==LOW)&&(digitalRead(A1)==LOW)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, LOW);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==HIGH)&&(digitalRead(A1)==HIGH)&&(digitalRead(A2)==LOW)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, LOW);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==LOW)&&(digitalRead(A1)==HIGH)&&(digitalRead(A2)==LOW)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, LOW);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==HIGH)&&(digitalRead(A1)==LOW)&&(digitalRead(A2)==LOW)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==LOW)&&(digitalRead(A1)==LOW)&&(digitalRead(A2)==LOW)&&
(digitalRead(A3)==HIGH))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==HIGH)&&(digitalRead(A1)==HIGH)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==LOW))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==LOW)&&(digitalRead(A1)==HIGH)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==LOW))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, LOW);
}
if((digitalRead(A0)==HIGH)&&(digitalRead(A1)==LOW)&&(digitalRead(A2)==HIGH)&&
(digitalRead(A3)==LOW))
{
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
digitalWrite(5, HIGH);
digitalWrite(6, HIGH);
digitalWrite(7, HIGH);
digitalWrite(8, HIGH);
digitalWrite(9, HIGH);
digitalWrite(10, HIGH);
digitalWrite(11, HIGH);
}
}
