Read an analog value using ADC.

Dependencies:   mbed

Revision:
1:0490a15c76e4
Parent:
0:c2d1ad5059da
--- a/main.cpp	Fri Feb 21 10:22:49 2014 +0000
+++ b/main.cpp	Thu Mar 12 08:15:56 2015 +0000
@@ -2,16 +2,22 @@
  
 AnalogIn analog_value(A0);
  
-DigitalOut myled(LED1);
- 
-// Calculate the corresponding acquisition measure for a given value in mV
-#define MV(x) ((0xFFF*x)/3300)
- 
+DigitalOut led(LED1);
+
 int main() {
-    while(1) {      
-        uint16_t meas = analog_value.read_u16(); // Converts and read the analog input value
-        if (meas > MV(1000)) { // If the value is greater than 1000 mV toggle the LED
-          myled = !myled;
+    float meas;
+    
+    printf("\nAnalogIn example\n");
+    
+    while(1) {
+        meas = analog_value.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
+        meas = meas * 3300; // Change the value to be in the 0 to 3300 range
+        printf("measure = %.0f mV\n", meas);
+        if (meas > 2000) { // If the value is greater than 2V then switch the LED on
+          led = 1;
+        }
+        else {
+          led = 0;
         }
         wait(0.2); // 200 ms
     }