Para o desenvolvimento do algoritmo vamos precisar de utilizar a biblioteca PCF8574, disponível para download abaixo. Para incluir a mesma na IDE do seu Arduino vá ao Menu Rascunho > Incluir Biblioteca > Adicionar Biblioteca .ZIP... e selecione o ficheiro que fez download.
Embora sejam 4 semáforos estes trabalham em pares. Assim, a nossa preocupação será criar o algoritmo para fazer funcionar dois deles em simultâneo. O código que criei foi este:
Neste momento, como podemos verificar, já temos todos os semáforos a funcionar. No entanto, verificamos que a tensão de corrente que chega aos LEDs não é suficiente para que estes tenham uma boa luminosidade. Deste modo, e para solucionar este problema, teremos de utilizar um transistor para cada LED (resistor de ligação ao PCF8574 de 10K e resistor para o LED de 150 Ohm).
Na próxima etapa iremos criar os semáforos pedonais.