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: HEPTA_CDH HEPTA_COM HEPTA_EPS HEPTA_SENSOR mbed
Diff: main.cpp
- Revision:
- 29:3d7a0b3a1b8a
- Parent:
- 28:80d6576011e1
- Child:
- 30:c95e6e3f302a
--- a/main.cpp Sun Nov 14 08:10:45 2021 +0000 +++ b/main.cpp Sun Nov 14 10:27:21 2021 +0000 @@ -1,17 +1,17 @@ #include "mbed.h" #include "HEPTA_CDH.h" #include "HEPTA_EPS.h" -DigitalOut cond[]={LED1,LED2,LED3,LED4}; -Serial gs(USBTX,USBRX); // for ground station HEPTA_CDH cdh(p5, p6, p7, p8, "sd"); HEPTA_EPS eps(p16,p26); +DigitalOut condition(LED1); +Serial gs(USBTX,USBRX,9600); Timer sattime; -int rcmd = 0,cmdflag = 0; //command variable +int rcmd = 0, cmdflag = 0; //command variable //getting command and flag void commandget() { - rcmd=gs.getc(); + rcmd = gs.getc(); cmdflag = 1; } //interrupting @@ -24,44 +24,53 @@ { rcmd = 0; cmdflag = 0; - cond[0] = 0; + condition = 0; } -int main() { - gs.baud(9600); +int main() +{ gs.printf("From Sat : Operation Start...\r\n"); - int flag = 0; // condition - float btvol,temp; //Voltage, Temerature + int flag = 0; // condition + float batvol,temp; //Voltage, Temerature sattime.start(); receive(rcmd,cmdflag); //interupting by ground station command - + eps.turn_on_regulator();//turn on 3.3V conveter for(int i = 0; i < 100; i++) { - //Sensing and Transmitting HK data - eps.vol(&btvol); - temp = 28.5; - gs.printf("HEPTASAT::Condition = %d, Time = %f [s], batVol = %.2f [V],Temp = %.2f [C]\r\n",flag,sattime.read(),btvol,temp); - //Condition - cond[0] = 1; - //Power Saving Mode - if(btvol <= 3.5) { + //satellite condition led + condition = !condition; + + //senssing HK data(dummy data) + eps.vol(&batvol); + temp = 28.5; + + //Transmitting HK data to Ground Station(GS) + gs.printf("HEPTASAT::Condition = %d, Time = %f [s], batVol = %.2f [V],Temp = %.2f [C]\r\n",flag,sattime.read(),batvol,temp); + wait_ms(1000); + + //Power Saving Mode + if(batvol <= 3.5){ eps.shut_down_regulator(); + gs.printf("Power saving mode ON\r\n"); flag = 1; - } else { + } else if((flag == 1) & (batvol > 3.7)) { eps.turn_on_regulator(); + gs.printf("Power saving mode OFF\r\n"); flag = 0; } - if(flag == 1) { - gs.printf("Power saving mode ON\r\n"); - } + //Contents of command if (cmdflag == 1) { if (rcmd == 'a') { for(int j=0;j<5;j++){ gs.printf("HEPTASAT::Hello World!\r\n"); - cond[0] = 0; - wait(1); - cond[0] = 1; + condition = 1; + wait_ms(1000); } + }else if(rcmd == 'b') { + + + + } initialize(); }