add comment to ADC driver
authorNIIBE Yutaka <gniibe@fsij.org>
Mon, 19 Aug 2013 00:54:50 +0000 (09:54 +0900)
committerNIIBE Yutaka <gniibe@fsij.org>
Mon, 19 Aug 2013 00:54:50 +0000 (09:54 +0900)
src/adc_stm32f103.c

index 30e5a4f..ded94fe 100644 (file)
@@ -1,5 +1,7 @@
 /*
  * adc_stm32f103.c - ADC driver for STM32F103
+ *                   In this ADC driver, but there are NeuG specific parts.
+ *                   You need to modify to use this as generic ADC driver.
  *
  * Copyright (C) 2011, 2012, 2013 Free Software Initiative of Japan
  * Author: NIIBE Yutaka <gniibe@fsij.org>
@@ -161,6 +163,12 @@ void adc_start (void)
   ADC2->SQR3 = NEUG_ADC_SETTING2_SQR3;
 
 #ifdef DELIBARATELY_DO_IT_WRONG_START_STOP
+  /*
+   * We could just let ADC run always continuously and enable/disable
+   * DMA to receive data from ADC, and it is good to get stable data.
+   * Our purpose is not to get correct data but noise. 
+   * In fact, we can get more noise when we start/stop ADC each time.
+   */
   ADC2->CR2 = 0;
   ADC1->CR2 = 0;
 #endif
@@ -180,7 +188,10 @@ void adc_start_conversion (int offset, int count)
   ADC2->CR2 = ADC_CR2_EXTTRIG | ADC_CR2_CONT | ADC_CR2_ADON;
   ADC1->CR2 = (ADC_CR2_TSVREFE | ADC_CR2_EXTTRIG | ADC_CR2_SWSTART
               | ADC_CR2_EXTSEL | ADC_CR2_DMA | ADC_CR2_CONT | ADC_CR2_ADON);
-  /* Start conversion.  tSTAB is 1uS, but we don't follow the spec.  */
+  /*
+   * Start conversion.  tSTAB is 1uS, but we don't follow the spec, to
+   * get more noise.
+   */
   ADC2->CR2 = ADC_CR2_EXTTRIG | ADC_CR2_CONT | ADC_CR2_ADON;
   ADC1->CR2 = (ADC_CR2_TSVREFE | ADC_CR2_EXTTRIG | ADC_CR2_SWSTART
               | ADC_CR2_EXTSEL | ADC_CR2_DMA | ADC_CR2_CONT | ADC_CR2_ADON);