for baska

Dependencies:   Hepta9axis HeptaBattery HeptaCamera_GPS HeptaTemp HeptaXbee SDFileSystem mbed

Fork of Lab1-04_model_program_1 by HEPTA-Sat Training 2017~2018

main.cpp

Committer:
ponpoko1939
Date:
2018-08-21
Revision:
19:7d54c7b47fd8
Parent:
17:ccae1368497e

File content as of revision 19:7d54c7b47fd8:

#include "mbed.h"
#include "HeptaBattery.h"

Serial pc(USBTX,USBRX);

DigitalOut myleds[] = {LED1,LED2,LED3,LED4};
HeptaBattery battery(p16, p26);

int rcmd = 0,cmdflag = 0;

void commandget()
{
    rcmd=pc.getc();
    cmdflag = 1;
}
void receive(int *xrcmd, int *xcmdflag)
{
    pc.attach(commandget,Serial::RxIrq);
    *xrcmd = rcmd;
    *xcmdflag = cmdflag;
}

void initialize()
{
    rcmd = 0;
    cmdflag = 0;
}

int main()
{
    pc.baud(9600);
    float bt;
    int flag = 0;
    while(1) {
        battery.vol(&bt);
        if(bt <= 4.0){
            battery.shut_down_regulator();
            flag = 1;    
        }
        else {
            battery.turn_on_regulator();  
            flag = 0;  
        }
        pc.printf("Vol = %.2f[V]\r\n",bt);
        if(flag == 1){
            pc.printf("Power savig mode ON\r\n");  
        }
        wait(0.5);  
        receive(&rcmd,&cmdflag);
        if (cmdflag == 1) {
            if (rcmd == 'a') {
               
               pc.printf("Connected! = %d\n\r",rcmd);
               for(int i = 1;i <= 10;i++){
                    pc.printf("%d\n\r",i);      
                    wait(1.0); 
               }
            }
            initialize();
        }
    }
}