adc.c

Go to the documentation of this file.
00001 
00039 #include <drv/adc.h>
00040 
00041 #include CPU_CSOURCE(adc)
00042 
00043 #include <cfg/debug.h>     // ASSERT()
00044 #include <cfg/macros.h>    // MIN()
00045 #include <cfg/compiler.h>
00046 #include <cfg/module.h>
00047 
00051 adcread_t adc_read(adc_ch_t ch)
00052 {
00053     ASSERT(ch <= (adc_ch_t)ADC_MUX_MAXCH);
00054     ch = MIN(ch, (adc_ch_t)ADC_MUX_MAXCH);
00055 
00056     adc_hw_select_ch(ch);
00057 
00058     return(adc_hw_read());
00059 }
00060 
00061 MOD_DEFINE(adc);
00062 
00066 void adc_init(void)
00067 {
00068     adc_hw_init();
00069 
00070     MOD_INIT(adc);
00071 }