From 279b278d8ff65db8a18eead1a69cf2152e4e540a Mon Sep 17 00:00:00 2001 From: aadit Date: Thu, 4 Sep 2025 12:46:55 +0530 Subject: [PATCH] Add ES/Lab/Lab7/SwitchCounter.c --- ES/Lab/Lab7/SwitchCounter.c | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 ES/Lab/Lab7/SwitchCounter.c diff --git a/ES/Lab/Lab7/SwitchCounter.c b/ES/Lab/Lab7/SwitchCounter.c new file mode 100644 index 0000000..07f82b9 --- /dev/null +++ b/ES/Lab/Lab7/SwitchCounter.c @@ -0,0 +1,21 @@ +// Question - Connect a key on P1.23 and LEDs on P0.4-0.11. WAP in EC to display the number of times the PUSH to OFF switch is pressed on LEDs. +#include + +int main(){ + unsigned long x, count = 0; + + LPC_PINCON -> PINSEL0 = 0x0000<<8 ; // LED + LPC_PINCON -> PINSEL3 = 0; // SWITCH + + LPC_GPIO0 -> FIODIR = 0xFF<<4; // LED + LPC_GPIO1 -> FIODIR = 0 << 23; // SWITCH + + while(1){ + x = LPC_GPIO1 -> FIOPIN & 1 << 23; // Initial value to refer to + if(!x){ + count = (count + 1)%255; // Counter + LPC_GPIO0 -> FIOPIN = count << 4; // Modifying FIOPIN value to match count + + } +} +}