Oleksandr Malyuskin / Mbed 2 deprecated STM32_read_analog

Dependencies:   mbed

Committer:
malyuskin
Date:
Thu Mar 11 14:21:37 2021 +0000
Revision:
0:e8cb21f0ea92
AnalogIn - reading input voltage using analog pin

Who changed what in which revision?

UserRevisionLine numberNew contents of line
malyuskin 0:e8cb21f0ea92 1 #include "mbed.h"
malyuskin 0:e8cb21f0ea92 2
malyuskin 0:e8cb21f0ea92 3 AnalogIn analog_value(A0);
malyuskin 0:e8cb21f0ea92 4
malyuskin 0:e8cb21f0ea92 5 DigitalOut led(D12);
malyuskin 0:e8cb21f0ea92 6
malyuskin 0:e8cb21f0ea92 7 void blink(float delay);
malyuskin 0:e8cb21f0ea92 8
malyuskin 0:e8cb21f0ea92 9 int main()
malyuskin 0:e8cb21f0ea92 10 {
malyuskin 0:e8cb21f0ea92 11 float meas_r;
malyuskin 0:e8cb21f0ea92 12 float meas_v;
malyuskin 0:e8cb21f0ea92 13 float delay = 1.0;
malyuskin 0:e8cb21f0ea92 14 float delay1 = 0.4;
malyuskin 0:e8cb21f0ea92 15
malyuskin 0:e8cb21f0ea92 16 printf("\nAnalogIn example\n");
malyuskin 0:e8cb21f0ea92 17
malyuskin 0:e8cb21f0ea92 18 while(1) {
malyuskin 0:e8cb21f0ea92 19
malyuskin 0:e8cb21f0ea92 20 meas_r = analog_value.read(); // Read the analog input value
malyuskin 0:e8cb21f0ea92 21 //(value from 0.0 to 1.0 = full ADC conversion range)
malyuskin 0:e8cb21f0ea92 22
malyuskin 0:e8cb21f0ea92 23 meas_v = meas_r * 3300; // Converts value in the 0V-3.3V range
malyuskin 0:e8cb21f0ea92 24
malyuskin 0:e8cb21f0ea92 25 // Display values
malyuskin 0:e8cb21f0ea92 26 printf("measure = %f = %.0f mV\n", meas_r, meas_v);
malyuskin 0:e8cb21f0ea92 27 printf("\n");
malyuskin 0:e8cb21f0ea92 28
malyuskin 0:e8cb21f0ea92 29 // LED is ON is the value is below 1V
malyuskin 0:e8cb21f0ea92 30 if (meas_v < 1000) {
malyuskin 0:e8cb21f0ea92 31
malyuskin 0:e8cb21f0ea92 32 blink(delay);
malyuskin 0:e8cb21f0ea92 33
malyuskin 0:e8cb21f0ea92 34 }
malyuskin 0:e8cb21f0ea92 35 else {
malyuskin 0:e8cb21f0ea92 36
malyuskin 0:e8cb21f0ea92 37 blink(delay1);
malyuskin 0:e8cb21f0ea92 38 }
malyuskin 0:e8cb21f0ea92 39
malyuskin 0:e8cb21f0ea92 40 wait(0.2); // 0.2 second
malyuskin 0:e8cb21f0ea92 41 }
malyuskin 0:e8cb21f0ea92 42 }
malyuskin 0:e8cb21f0ea92 43
malyuskin 0:e8cb21f0ea92 44 void blink(float delay) {
malyuskin 0:e8cb21f0ea92 45 led.write(1);
malyuskin 0:e8cb21f0ea92 46 wait (delay);
malyuskin 0:e8cb21f0ea92 47 led.write(0);
malyuskin 0:e8cb21f0ea92 48 wait (delay);
malyuskin 0:e8cb21f0ea92 49 }