Сделаем модель светофора, которым будет управлять Arduino. Для этого нам понадобится несколько проводов, плата для проводов, три светодиода (красный, желтый и зеленый) и, конечно же, Arduino.
Во-первых, давайте соберем это. Подключите один вывод диода к цифровому выходу Arduino, а другой к земле (GND на Arduino). Сделайте то же самое для всех трех периодов (разные цифровые выходы для разных периодов). Не забывайте, что существует только одна ориентация диода, в которой протекает ток, поэтому, если диод не светится, вам, возможно, придется перевернуть его. Другое дело, что у Arduino может быть только одно пространство для ввода земли. Итак, подключите GND Arduino к плате, а другие провода, которые должны быть заземлены, к тому же потенциальному месту на плате.
Теперь нам нужно создать конечный автомат, который будет управлять включением и выключением периодов. Одно состояние будет представлено включением или выключением света и задержкой, в течение которой они будут светиться. Например, одно конкретное состояние состоит из включенного красного света, выключенного желтого и выключенного зеленого и времени задержки 3 секунды. Посмотрите на реализацию в конце, чтобы увидеть, какие состояния существуют, но вы должны сделать это, зная, как светятся настоящие светофоры.
Всего есть четыре состояния, которые будут идти одно за другим. Из последнего состояния происходит переход к первому, и цикл продолжается. Я использую целое число как представление состояния, добавление 1 для перехода между состояниями и по модулю, чтобы последнее состояние переходило к первому.

Вот его реализация, которую можно опубликовать на Arduino UNO и запустить: github.com/lsamec/myProjects/blob/master/trafficLights.ino