Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp
- Committer:
- msouchet
- Date:
- 2018-04-12
- Revision:
- 0:b4f22fa54d82
File content as of revision 0:b4f22fa54d82:
#include "mbed.h"
AnalogIn analog_value(A0);
AnalogOut sortie(D7);
Timer Chronometre;
Ticker interruption;
float amplitude;
DigitalOut led(LED1);
void signal_de_sortie() {
sortie = (float) (0.5+amplitude*sin(Chronometre.read()*314));
}
int main()
{
Chronometre.start();
float meas_r;
float meas_v;
unsigned int valeur_numerique;
interruption.attach(&signal_de_sortie, 0.001); // exécute la fonction 1000 x par secondes
printf("\nAnalogIn example\n");
while(1) {
meas_r = analog_value.read(); // Read the analog input value (value from 0.0 to 1.0 = full ADC conversion range)
meas_v = meas_r * 3300; // Converts value in the 0V-3.3V range
valeur_numerique = analog_value.read_u16();
// Display values
printf("measure = %d = %f = %.0f mV\n", valeur_numerique, meas_r, meas_v);
// sortie = meas_r;
amplitude = meas_r / 2;
// LED is ON is the value is below 1V
if (meas_v < 1000) {
led = 1; // LED ON
} else {
led = 0; // LED OFF
}
wait(1.0); // 1 second
}
}