From 7b53dd846e53cde6a0abe61b866e252315f8b696 Mon Sep 17 00:00:00 2001 From: aadit Date: Thu, 16 Oct 2025 11:41:54 +0530 Subject: [PATCH] Add ES/Lab/Lab10/ADC.c --- ES/Lab/Lab10/ADC.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 ES/Lab/Lab10/ADC.c diff --git a/ES/Lab/Lab10/ADC.c b/ES/Lab/Lab10/ADC.c new file mode 100644 index 0000000..2cc0067 --- /dev/null +++ b/ES/Lab/Lab10/ADC.c @@ -0,0 +1,20 @@ +#include + +int main(){ + LPC_PINCON -> PINSEL3 = 3 << 28; // P1.30 function 3 + LPC_SC -> PCONP = 1 << 12; // power control + + // ADCR + LPC_ADC -> ADCR = 1 << 4 | 1 << 16 | 1 << 21 | 1 << 24; // ADC4, burst mode, ADC enable, start now + LPC_ADC -> ADINTEN = (1 << 4); // Interrupt (4th channel to be enabled) + + NVIC_EnableIRQ(ADC_IRQn); // Nested Vector Interrupt Controller + + while(1){} // infinite delay +} + +void ADC_IRQHandler(void) +{ + unsigned long Result; + Result = (LPC_ADC -> ADGDR & (0xFFF << 4)) >> 4 ; // Read 12-bit ADC result +}