vr1.1

Dependencies:   FreescaleIAP mbed-rtos mbed

Fork of CDMS_RTOS_v1_1 by Team Fox

Committer:
cholletisaik777
Date:
Fri Jul 03 08:38:12 2015 +0000
Revision:
7:c270a9e37290
Child:
8:607ae92fa6af
cdms clean code

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cholletisaik777 7:c270a9e37290 1 #include "mbed.h"
cholletisaik777 7:c270a9e37290 2 #include "pin_config.h"
cholletisaik777 7:c270a9e37290 3
cholletisaik777 7:c270a9e37290 4 #define COMM_TX_EN_PIN PIN64 //COMM receiver enable
cholletisaik777 7:c270a9e37290 5 #define PYLD_EN_PIN PIN73 // Payload switch enable
cholletisaik777 7:c270a9e37290 6
cholletisaik777 7:c270a9e37290 7 DigitalOut COMM_TX_EN(COMM_TX_EN_PIN); //assuming active high
cholletisaik777 7:c270a9e37290 8 DigitalOut PYLD_EN(PYLD_EN_PIN); //assuming active high
cholletisaik777 7:c270a9e37290 9
cholletisaik777 7:c270a9e37290 10 void FCTN_POWER_MODE(int SOC) //flag corresponds to the power mode
cholletisaik777 7:c270a9e37290 11 {
cholletisaik777 7:c270a9e37290 12 printf("Entered Power Management \n");
cholletisaik777 7:c270a9e37290 13 printf("Battery Level %d \n",SOC);
cholletisaik777 7:c270a9e37290 14 // range of battery level is dummy. yet to be fixed
cholletisaik777 7:c270a9e37290 15 if(SOC>=85)
cholletisaik777 7:c270a9e37290 16 {
cholletisaik777 7:c270a9e37290 17 COMM_TX_EN = 1; //high power mode : everything is on
cholletisaik777 7:c270a9e37290 18 PYLD_EN = 1;
cholletisaik777 7:c270a9e37290 19 }
cholletisaik777 7:c270a9e37290 20 else if(SOC<85 && SOC>=70)
cholletisaik777 7:c270a9e37290 21 {
cholletisaik777 7:c270a9e37290 22 COMM_TX_EN = 1; //COMM TX is on
cholletisaik777 7:c270a9e37290 23 PYLD_EN = 1; //payload switch enable
cholletisaik777 7:c270a9e37290 24 }
cholletisaik777 7:c270a9e37290 25 else if(SOC<55 && SOC>=70)
cholletisaik777 7:c270a9e37290 26 {
cholletisaik777 7:c270a9e37290 27 COMM_TX_EN = 1; //COMM TX is off
cholletisaik777 7:c270a9e37290 28 PYLD_EN = 0; //payload switch disable
cholletisaik777 7:c270a9e37290 29 }
cholletisaik777 7:c270a9e37290 30 else if(SOC<40 && SOC>=55)
cholletisaik777 7:c270a9e37290 31 {
cholletisaik777 7:c270a9e37290 32 COMM_TX_EN = 1; //COMM TX is off
cholletisaik777 7:c270a9e37290 33 PYLD_EN = 0; //payload switch disable
cholletisaik777 7:c270a9e37290 34 }
cholletisaik777 7:c270a9e37290 35
cholletisaik777 7:c270a9e37290 36
cholletisaik777 7:c270a9e37290 37 }