Алгоритм работы светофора с
использованием
массива в среде
Arduino IDE.
Более простое решение с большим
количеством строк смотрите в уроке:
Урок7- Светофор на Arduino своими руками. Пишемскетч, используя функции
int lighter[10][4] = {{1,0,0,5}, // Зеленый, Желтый, Красный, Задержка
{1,1,0,2},
{0,0,1,5},
{0,0,0,1},
{0,0,1,1},
{0,0,0,1},
{0,0,1,1},
{0,0,0,1},
{0,0,1,1},
{0,1,0,2}};
void setup () {
pinMode (3, OUTPUT); //Красный
pinMode (4, OUTPUT); //Желтый
pinMode (5, OUTPUT); //Зеленый
}
void loop () {
for (int i = 0; i < 10; i++) {
for (int j = 0; j < 3; j++) {
digitalWrite(j+3, lighter[i][j]);
}
delay (lighter[i][3] * 1000);
for (int j = 0; j < 3; j++) {
digitalWrite(j+3, LOW);
}
}
}
Данный пример
не позволяет реализовать полноценную
работу светофора, но на достаточно
распространенном и понятном примере
можно разобраться с массивами в
среде Arduino IDE.