import test

Dependencies:   mbed

main.cpp

Committer:
andrewPV
Date:
2016-12-19
Revision:
1:89aa667d1a9b
Parent:
0:bf84ee4ea1d2
Child:
2:b4f8b72a22ec

File content as of revision 1:89aa667d1a9b:

#include "mbed.h"

LocalFileSystem local("local");               // Create the local filesystem under the name "local"
AnalogIn in(A0);

#if !DEVICE_ANALOGOUT
#error You cannot use this example as the AnalogOut is not supported on this device.
#else
AnalogOut out(PA_4);
#endif

DigitalOut led(LED1);


int main()
{
    FILE *fp = fopen("/local/out.txt", "w");  // Open "out.txt" on the local file system for writing
    fprintf(fp, "Hello World!");
    fclose(fp);

    printf("\nAnalog loop example\n");
    printf("*** Connect A0 and PA_4 pins together ***\n");
    while(1) {
        for (float out_value = 0.0f; out_value < 1.1f; out_value += 0.1f) {
            // Output value using DAC
            out.write(out_value);
            wait(0.1);
            // Read ADC input
            float in_value = in.read();
            // Display difference between two values
            float diff = fabs(out_value - in_value);
            printf("(out:%.4f) - (in:%.4f) = (%.4f) ", out_value, in_value, diff);
            if (diff > 0.05f) {
                printf("FAIL\n");
            } else {
                printf("OK\n");
                printf("\033[1A"); // Moves cursor up of 1 line
            }
            led = !led;
        }
    }
}