adc.c

Go to the documentation of this file.
00001 
00042 #include <drv/adc.h>
00043 
00044 #include CPU_CSOURCE(adc)
00045 
00046 #include <cfg/debug.h>     // ASSERT()
00047 #include <cfg/macros.h>    // MIN()
00048 #include <cfg/compiler.h>
00049 #include <cfg/module.h>
00050 
00054 adcread_t adc_read(adc_ch_t ch)
00055 {
00056     ASSERT(ch <= (adc_ch_t)ADC_MUX_MAXCH);
00057     ch = MIN(ch, (adc_ch_t)ADC_MUX_MAXCH);
00058 
00059     adc_hw_select_ch(ch);
00060 
00061     return(adc_hw_read());
00062 }
00063 
00064 MOD_DEFINE(adc);
00065 
00069 void adc_init(void)
00070 {
00071     adc_hw_init();
00072 
00073     MOD_INIT(adc);
00074 }