// LCD1602 and Pi Pico!
#define RED 2
#define YELLOW 5
#define GREEN 9
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 10, 9, 8, 7);
void setup() {
//lcd.begin(16, 2);
//lcd.print("Hello World!");
//lcd.setCursor(2, 1);
//lcd.print("> Pi Pico <");
pinMode(RED, OUTPUT);
pinMode(YELLOW, OUTPUT);
pinMode(GREEN, OUTPUT);
}
static void red(){
lcd.begin(32, 4);
lcd.print("Ampel is RED");
lcd.setCursor(2, 1);
lcd.print("> STOP <");
}
static void yellow_red(){
lcd.begin(32, 4);
lcd.print("Ampel is YELLOW!");
lcd.setCursor(2, 1);
lcd.print("> WARNING < ");
}
static void green(){
lcd.begin(32, 4);
lcd.print("Ampel is GREEN!");
lcd.setCursor(2, 1);
lcd.print("> DRIVE <");
}
void loop() {
delay(1); // Adding a delay() here speeds up the simulation
green();
digitalWrite(GREEN, HIGH);
delay(10000);
digitalWrite(GREEN, LOW);
yellow_red();
digitalWrite(YELLOW, HIGH);
delay(3000);
digitalWrite(YELLOW, LOW);
red();
digitalWrite(RED, HIGH);
delay(6000);
digitalWrite(YELLOW, HIGH);
yellow_red();
delay(3000);
digitalWrite(YELLOW, LOW);
digitalWrite(RED, LOW);
}