Difference between revisions of "ARM ADC Programming"
Line 24: | Line 24: | ||
|Done||EDGE||Channel || Reserved || RESULT|| Reserved | |Done||EDGE||Channel || Reserved || RESULT|| Reserved | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Schematic= | =Schematic= | ||
=Code= | =Code= |
Revision as of 13:30, 18 March 2015
Amruta (talk) 13:28, 17 March 2015 (IST)
Contents
Basics
LPC1768 has 12 bit ADC which is multiplexed among 8 input pins. It's measurement range is typically 3V which means that ADC resolution is approximately 0.7 mV.
Registers
Here we will discuss commonly used ADC registers.
ADCR ( ADC Control Register )
ADCR | ||||||||
---|---|---|---|---|---|---|---|---|
31:28 | 27 | 26:24 | 23:22 | 21 | 20:17 | 16 | 15:8 | 7:0 |
Reserved | EDGE | START | Reserved | PDN | Reserved | BURST | CLCKDIV | SEL |
ADGDR ( ADC Global Data Register )
ADCR | ||||||||
---|---|---|---|---|---|---|---|---|
31 | 27 | 26:24 | 23:16 | 15:4 | 3:0 | |||
Done | EDGE | Channel | Reserved | RESULT | Reserved |
Schematic
Code
/*----------------------------------------------------------------------------- note : Refer adc.h to enable ADC channels. ------------------------------------------------------------------------------*/ #include "lpc17xx.h" //device specific heaader file #include "uart.h" //Explore Embedded UART library which conatins the lcd routines #include "adc.h" //Explore Embedded ADC library which conatins the adc routines /* start the main program */ int main() { uint16_t adc_result; /* Setup and initialize the microcontroller system */ SystemInit(); /* Initialize the UART before displaying any thing on the lcd */ UART_Init(UART0,9600); /* Initialize the adc before starting the conversion */ ADC_Init(); /* Display "ADC Channel zero" on first line*/ UART_Printf("ADC Channel zero"); /* Display the adc channel zero value continously */ while(1) { /*Get the adc value of channel five */ adc_result= ADC_GetAdcValue(5); /*Display the adc value on UART*/ UART_Printf("\n %u",adc_result); } }