From bcff11785c52aedbffa0e7e29fe6cc26399f2278 Mon Sep 17 00:00:00 2001 From: hugogogo Date: Wed, 5 Mar 2025 14:11:45 +0100 Subject: [PATCH] first version with delay --- module01/ex00/main.c | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/module01/ex00/main.c b/module01/ex00/main.c index 81e0195..8e24ca3 100644 --- a/module01/ex00/main.c +++ b/module01/ex00/main.c @@ -1,6 +1,10 @@ #include #include +// #define FIRST_LETTER_IMPL(x) #x[0] +// #define FIRST_LETTER(x) FIRST_LETTER_IMPL(x) +// #define PORT_LETTER(PIN) FIRST_LETTER(PIN) + #define SET(REGISTER, BIT) REGISTER |= 1 << BIT #define CLEAR(REGISTER, BIT) REGISTER &= ~(1 << BIT) #define TEST(REGISTER, BIT) REGISTER & 1 << BIT @@ -12,6 +16,9 @@ #define MODE_OUTPUT(PORT, BIT) SET(DDR ## PORT, BIT) #define IS_PIN_SET(PORT, BIT) (TEST_PIN(PORT, BIT)) == 0 #define IS_PIN_CLEAR(PORT, BIT) (TEST_PIN(PORT, BIT)) == 1 +#define TURN_ON(_PORT, BIT) SET(PORT ## _PORT, BIT) +#define TURN_OFF(_PORT, BIT) CLEAR(PORT ## _PORT, BIT) + #define D1 0 #define D2 1 @@ -20,7 +27,16 @@ #define SW1 2 #define SW2 4 +#define TIME 500 + +#define LED1 B0 + int main() { - MODE_OUTPUT(B, D1); - SET(PORTB, D1); + MODE_OUTPUT(B, D2); + TURN_OFF(B, D2); + + while(1) { + TOGGLE_PIN(B, D2); + _delay_ms(TIME); + } } \ No newline at end of file