# Importations de bibliothèques
from machine import Pin, SoftI2C
from time import sleep
import ssd1306
# Configuration des broches (pins)
led_green = Pin(4, Pin.OUT)
led_red = Pin(15, Pin.OUT)
led_yellow = Pin(2, Pin.OUT)
i2c = SoftI2C(scl=Pin(22), sda=Pin(21))

# Définition des dimensions de l'écran OLED
oled_width = 128
oled_height = 64

try:
    # Initialisation de l'écran OLED
    oled = ssd1306.SSD1306_I2C(oled_width, oled_height, i2c)

    # Définition des fonctions
    def red():
        led_red.value(1)
        led_yellow.value(0)
        led_green.value(0)

    def yellow():
        led_yellow.value(1)
        led_red.value(0)
        led_green.value(0)

    def green():
        led_green.value(1)
        led_red.value(0)
        led_yellow.value(0)
    def off():
        led_red.value(0)
        led_yellow.value(0)
        led_green.value(0)

    # Programme principal
    led_yellow.value(0)
    led_green.value(1)

    while True:
        red()
        oled.fill(0)
        oled.text("..stop..", 34, 22)
        oled.show()
        print("...............start red.................")
        a = 10
        for i in range(10):
            print(a)
            a = a - 1
            sleep(1)
        off()
        oled.fill(0)
        oled.text("care full", 34, 22)
        oled.show()
        print("...............care fall bro.................")
        yellow()
        b = 1
        for i in range(3):
            print(b)
            b = b - 1
            sleep(1)
        off()
        for i in range(5):
            yellow()
            sleep(0.2)
        green()
        oled.fill(0)
        oled.text("lest go!!", 34, 22)
        oled.show()
        print("...............go dude.................")
        c = 10
        for i in range(10):
            print(c)
            c = c - 1
            sleep(1)

except Exception as e:
    print("Une erreur s'est produite :", e)