Digital = ON or OFF
Digital pins can only be in two states: HIGH (5V, ON) or LOW (0V, OFF). Like a light switch!
Digital Output: Controlling LEDs
int ledPin = 9;
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH); // LED ON
delay(500);
digitalWrite(ledPin, LOW); // LED OFF
delay(500);
}
Digital Input: Reading Buttons
int buttonPin = 2;
int ledPin = 13;
void setup() {
pinMode(buttonPin, INPUT_PULLUP); // Built-in pull-up resistor
pinMode(ledPin, OUTPUT);
}
void loop() {
int buttonState = digitalRead(buttonPin);
if (buttonState == LOW) { // Button pressed (LOW with pull-up)
digitalWrite(ledPin, HIGH); // LED ON
} else {
digitalWrite(ledPin, LOW); // LED OFF
}
}
Multiple LEDs: Traffic Light
int red = 11, yellow = 10, green = 9;
void setup() {
pinMode(red, OUTPUT);
pinMode(yellow, OUTPUT);
pinMode(green, OUTPUT);
}
void loop() {
digitalWrite(green, HIGH); delay(3000); // Green 3s
digitalWrite(green, LOW);
digitalWrite(yellow, HIGH); delay(1000); // Yellow 1s
digitalWrite(yellow, LOW);
digitalWrite(red, HIGH); delay(3000); // Red 3s
digitalWrite(red, LOW);
}