// void setup() {
// Serial.begin(115200);
// DDRD = DDRD | B11111110; // pins (7, 6, 5, 4, 3, 2, 1 = OUTPUT), (0 = INPUT)
// DDRB = DDRB | Bxx000011; // pins (x, x, 13, 12, 11, 10 = INPUT), (9, 8 = OUTPUT)
// DDRC = DDRC | B00000000; // pins x, x, x, x, 17, 16, 15, 14 INPUT
// PORTD = B00000000; // pins 7, 6, 5, 4, 3, 2, x, x LOW
// PORTB = B00000000; // pins x, x, 13, 12, 11, 10, 9, 8 LOW
// PORTC = B00000000; // pins x, x, x, x, 17, 16, 15, 14 LOW
// }
// void loop() {
// Serial.println(PINB, BIN);
// // Serial.println(PINB & (1 << PB0), BIN);
// delay(500);
// // if (PINB & (1 << PB0))
// // PORTD &= (1 << PD0);
// // PORTD &= PIND & B11111111;
// // PORTB &= PINB & B11111111;
// // PORTC &= PINC & B11111111;
// }
byte buttonPin[] = {10, 11, 12, 13, 14, 15, 16, 17}; // PORTB, PORTC
byte ledPin[] = {9, 8, 7, 6, 5, 4, 3, 2}; // PINB, PIND
byte pinSize = sizeof(buttonPin) / sizeof(buttonPin[0]);
void setup() {
for (byte i = 0; i < pinSize; i++) {
pinMode(buttonPin[i], INPUT);
pinMode(ledPin[i], OUTPUT);
}
}
void loop() {
for (byte i = 0; i < pinSize; i++) {
if (digitalRead(buttonPin[i]) == HIGH)
digitalWrite(ledPin[i], HIGH);
else
digitalWrite(ledPin[i], LOW);
}
}