It shows by an example how to read an Analog input signal

Dependencies:   mbed

Il Circuito

/media/uploads/StefanoArrigoni/circuitopotenziometro.jpg

Committer:
perlatecnica
Date:
Mon Nov 02 13:55:39 2015 +0000
Revision:
0:4a795cf05594
Child:
1:45c3cb7f4e8e
v1.0

Who changed what in which revision?

UserRevisionLine numberNew contents of line
perlatecnica 0:4a795cf05594 1 /****************************************************
perlatecnica 0:4a795cf05594 2 * FAST PROTOTYPING WITH NUCLEO *
perlatecnica 0:4a795cf05594 3 * Example Code 06: Variable resistor *
perlatecnica 0:4a795cf05594 4 * Author: Mauro D'Angelo *
perlatecnica 0:4a795cf05594 5 * Organization: Perlatecnica no-profit organization *
perlatecnica 0:4a795cf05594 6 *****************************************************/
perlatecnica 0:4a795cf05594 7
perlatecnica 0:4a795cf05594 8 #include "mbed.h"
perlatecnica 0:4a795cf05594 9
perlatecnica 0:4a795cf05594 10 // Instanzia un oggetto di tipo AnalogIn che chiamo analog_value, e lo assegna al pin A0
perlatecnica 0:4a795cf05594 11 AnalogIn analog_value(A0);
perlatecnica 0:4a795cf05594 12
perlatecnica 0:4a795cf05594 13 DigitalOut led(LED1);
perlatecnica 0:4a795cf05594 14
perlatecnica 0:4a795cf05594 15 int main() {
perlatecnica 0:4a795cf05594 16 float meas;
perlatecnica 0:4a795cf05594 17
perlatecnica 0:4a795cf05594 18 while(1) {
perlatecnica 0:4a795cf05594 19 meas = analog_value.read(); // It reads the analog input value (value from 0.0 to 1.0)
perlatecnica 0:4a795cf05594 20 meas = meas * 3300; // Change the value to be in the 0 to 3300 range
perlatecnica 0:4a795cf05594 21 printf("measure = %.2f mV\r\n", meas);
perlatecnica 0:4a795cf05594 22 if (meas > 2000) { // If the value is greater than 2V then switch the LED on
perlatecnica 0:4a795cf05594 23 led = 1;
perlatecnica 0:4a795cf05594 24 }
perlatecnica 0:4a795cf05594 25 else {
perlatecnica 0:4a795cf05594 26 led = 0;
perlatecnica 0:4a795cf05594 27 }
perlatecnica 0:4a795cf05594 28 wait(0.2); // 200 ms
perlatecnica 0:4a795cf05594 29 }
perlatecnica 0:4a795cf05594 30 }