For thermal pod

Dependencies:   Hepta9axis HeptaBattery HeptaCamera_GPS HeptaTemp HeptaXbee SDFileSystem mbed

main.cpp

Committer:
HEPTA
Date:
2017-09-09
Revision:
19:58fb3ab94fbe
Parent:
17:904bcb46a48d
Child:
20:eb334313e2fe

File content as of revision 19:58fb3ab94fbe:

#include "mbed.h"
#include "SDFileSystem.h"
#include "HeptaXbee.h"
#include "HeptaTemp.h"

Serial pc(USBTX,USBRX);
SDFileSystem sd(p5, p6, p7, p8, "sd");
HeptaXbee xbee(p9,p10);
HeptaTemp temper(p17);
Timer tt;

int main()
{
    int rcmd=0,cmdflag=0;
    float voltage;
    mkdir("/sd/mydir", 0777);
    while(1) {
        wait(1.0);
        xbee.xbee_recieve(&rcmd,&cmdflag);
        pc.printf("rcmd=%d, cmdflag=%d\r\n",rcmd, cmdflag);
        if (cmdflag == 1) {
            pc.printf("Command Get %d\r\n",rcmd);
            if(rcmd == 'a') {
                while(1) {
                    tt.start();
                    FILE *fp = fopen("/sd/mydir/test_thermal.csv", "a");
                    temper.temp_sensing_vol(&voltage);
                    xbee.printf("Volt = %f\r\n",voltage);
                    fprintf(fp,"%f\r\n",voltage);
                    fclose(fp);
                    wait(0.45242);
                    float timer = tt.read();
                    xbee.printf("Time =%f\r\n",timer);
                    tt.stop();
                    tt.reset();
                }
                xbee.initialize();
            }
            if(rcmd == 'b') {
                pc.printf("SD test Mode\r\n");
                FILE *fp = fopen("/sd/mydir/myfile.txt", "w");
                if(fp == NULL) {
                    pc.printf("Could not open file for write\r\n");
                } else {
                    fprintf(fp, "\n\rHello World!\n\r");
                    pc.printf("SD Check Complete!!\r\n");
                    fclose(fp);
                    remove("/sd/mydir/test_thermal.csv");
                }
                xbee.initialize();
            }
        }
    }
}