Go to the documentation of this file.00001
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 #include "config.h"
00047
00048 #ifdef USE_ADC //!< this define is set on config.h file
00049 #include "adc_drv.h"
00050
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060
00065 void init_adc(void)
00066 {
00067 Enable_adc();
00068 # if (ADC_RIGHT_ADJUST_RESULT == 1)
00069 Right_adjust_adc_result();
00070 # elif (ADC_RIGHT_ADJUST_RESULT == 0)
00071 Left_adjust_adc_result();
00072 # else
00073 # error (ADC_RIGHT_ADJUST_RESULT should be 0 or 1... See config.h file)
00074 # endif
00075
00076 # if (ADC_HIGH_SPEED_MODE == 1)
00077 Enable_adc_high_speed_mode();
00078 # elif (ADC_HIGH_SPEED_MODE == 0)
00079 Disable_adc_high_speed_mode();
00080 # else
00081 # error (ADC_HIGH_SPEED_MODE should be 0 or 1... See config.h file)
00082 # endif
00083
00084 # if (ADC_INTERNAL_VREF == 2)
00085 Enable_vcc_vref();
00086 # elif (ADC_INTERNAL_VREF == 1)
00087 Enable_internal_vref();
00088 # elif (ADC_INTERNAL_VREF == 0)
00089 Enable_vcc_vref();
00090 # else
00091 # error (ADC_INTERNAL_VREF should be 0, 1 or 2... See config.h file)
00092 # endif
00093
00094 # if (ADC_IT == 1)
00095 Enable_all_it();
00096 Enable_adc_it();
00097 # elif (ADC_IT == 0)
00098 Disable_adc_it();
00099 # else
00100 # error (ADC_IT should be 0 or 1... See config.h file)
00101 # endif
00102
00103 # if (ADC_PRESCALER == 128)
00104 Set_adc_prescaler(7);
00105 # elif (ADC_PRESCALER == 64)
00106 Set_adc_prescaler(6);
00107 # elif (ADC_PRESCALER == 32)
00108 Set_adc_prescaler(5);
00109 # elif (ADC_PRESCALER == 16)
00110 Set_adc_prescaler(4);
00111 # elif (ADC_PRESCALER == 8)
00112 Set_adc_prescaler( 3);
00113 # elif (ADC_PRESCALER == 4)
00114 Set_adc_prescaler( 2);
00115 # elif (ADC_PRESCALER == 2)
00116 Set_adc_prescaler( 1);
00117 # else
00118 # error (ADC_PRESCALER should be 2, 4, 8, 16, 32, 64 or 128... See config.h file)
00119 # endif
00120 }
00121
00122 #endif // USE_ADC