Add flag to configure the adc with wizard.
[bertos.git] / bertos / cfg / cfg_adc.h
index 4a3fb2b323c417e4a84a612e9553fb70b9a00b5c..62a65734d66224fffb7a71478eb2f2b8be8fd9f4 100644 (file)
@@ -18,7 +18,7 @@
  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
  *
  * As a special exception, you may use this file as part of a free software
- * library without restriction.  Specifically, if other files instantiate
+ * library without restriction.  Specifically, if other files instantiateboards/sam3x-ek/examples/display/main.c
  * templates or use macros or inline functions from this file, or you compile
  * this file and link it with other files to produce an executable, this
  * file does not by itself cause the resulting executable to be covered by
@@ -30,9 +30,8 @@
  *
  * -->
  *
- * \brief Configuration file for ADC module.
+ * \brief Configuration file for the ADC module.
  *
- * \version $Id$
  * \author Daniele Basile <asterix@develer.com>
  */
 
 /**
  * Module logging level.
  *
- * $WIZARD = { "type" : "enum", "value_list" : "log_level" }
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_level"
  */
 #define ADC_LOG_LEVEL      LOG_LVL_INFO
 
 /**
- * module logging format.
+ * Module logging format.
  *
- * $WIZARD = { "type" : "enum", "value_list" : "log_format" }
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "log_format"
  */
 #define ADC_LOG_FORMAT     LOG_FMT_VERBOSE
 
 /**
- * Frequency clock for ADC conversion.
+ * Clock Frequency for ADC conversion.
+ * This frequency will be rounded down to an integer
+ * submultiple of CPU_FREQ.
  *
- * $WIZARD = { "type" : "int" }
+ * $WIZ$ type = "int"
+ * $WIZ$ supports = "at91"
+ * $WIZ$ max = 5000000
  */
 #define CONFIG_ADC_CLOCK        4800000UL
 
 /**
- * Minimum time for startup a conversion in micro second.
+ * Minimum time for starting up a conversion [us].
  *
- * $WIZARD = { "type" : "int" }
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 20
+ * $WIZ$ supports = "at91"
  */
 #define CONFIG_ADC_STARTUP_TIME 20
 
 /**
- * Minimum time for sample and hold in nano second.
+ * Minimum time for sample and hold [ns].
  *
- * $WIZARD = { "type" : "int" }
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 600
+ * $WIZ$ supports = "at91"
  */
 #define CONFIG_ADC_SHTIME       834
 
 /**
- * ADC setting for AVR target.
+ * ADC Voltage Reference.
  *
- * $WIZARD = {"type" : "int" }
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "avr_adc_refs"
+ * $WIZ$ supports = "avr"
  */
-#define CONFIG_ADC_AVR_REF      1
-/*
- * ADC setting for AVR target.
+#define CONFIG_ADC_AVR_REF      ADC_AVR_AVCC
+
+/**
+ * ADC clock divisor from main crystal.
  *
- * $WIZARD = {"type" : "int" }
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 2
+ * $WIZ$ max = 128
+ * $WIZ$ supports = "avr"
  */
 #define CONFIG_ADC_AVR_DIVISOR  2
 
 /**
- * Enable ADS strobe.
+ * Enable ADC strobe for debugging ADC ISR.
  *
- * $WIZARD = {"type" : "boolean" }
+ * $WIZ$ type = "boolean"
  */
 #define CONFIG_ADC_STROBE  0
 
+
+/**
+ * Start up timer[s] = startup value / ADCClock [Hz]
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "sam3_adc_sut"
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_SUT         ADC_SUT512
+
+/**
+ * Analog Settling Time[s] = settling value / ADCClock[Hz]
+ *
+ * $WIZ$ type = "enum"
+ * $WIZ$ value_list = "sam3_adc_stt"
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_STTLING     ADC_AST17
+
+/**
+ * Tracking Time[s] = (TRACKTIM + 1) / ADCClock[Hz]
+ *
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 0
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_TRACKTIM    0
+
+/**
+ * Transfer Period[s] = (TRANSFER * 2 + 3) ADCClock[Hz]
+ *
+ * $WIZ$ type = "int"
+ * $WIZ$ min = 0
+ * $WIZ$ supports = "sam3"
+ */
+#define CONFIG_ADC_TRANSFER    1
+
 #endif /* CFG_ADC_H */