
Compression code changed and RLY_TMTC pointers managed
Dependencies: FreescaleIAP SimpleDMA mbed-rtos mbed
Fork of CDMS_CODE by
Revision 226:a37ba29a7ae9, committed 2016-07-04
- Comitter:
- chaithanyarss
- Date:
- Mon Jul 04 17:07:14 2016 +0000
- Parent:
- 225:e6a3ffe4a530
- Commit message:
- Testing BAE commands through main
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/main.cpp Mon Jul 04 14:48:16 2016 +0000 +++ b/main.cpp Mon Jul 04 17:07:14 2016 +0000 @@ -1,7 +1,4 @@ - // TESTING PUSH PULL IN MAIN CPP - - #include "mbed.h" #define DEBUG 1 @@ -15,29 +12,31 @@ #include "pinconfig.h" #include "DefinitionsAndGlobals.h" #include "crc.h" +#include "cdms_rtc.h" +#include "cdms_sd.h" #include "i2c.h" #include "COM_SND_TM_functions.h" #include "COM_SND_TM.h" -#include "cdms_rtc.h" -#include "cdms_sd.h" +#include "Flash.h" +#include "FMS_all.h" #include "common_functions.h" #include "RESET_functions.h" #include "CDMS_HK.h" #include "OBSRS.h" #include "adf.h" #include "COM_RCV_TC.h" -//#include "Flash.h" -#include "FMS_all.h" #include "CDMS_PL.h" #include "COM_MNG_TMTC.h" +#include "COM_POWER_OFF_TX.h" #include "COM_POWER_ON_TX.h" -#include "COM_POWER_OFF_TX.h" #include "Compression.h" #include "ThreadsAndFunctions.h" #include "TEST_PL.h" +void CDMS_INIT(); + #define PL_TC(tm_ptr){\ - Base_tc *beacon_tc = new Short_tc;\ + Base_tc *beacon_tc = new Long_tc;\ beacon_tc->next_TC = NULL;\ PUTshort_or_long(beacon_tc,SHORT_TC_CODE);\ PUTcrc_pass(beacon_tc,0x1);\ @@ -51,9 +50,10 @@ beacon_tc->TC_string[6] = 0;\ beacon_tc->TC_string[7] = 0;\ beacon_tc->TC_string[8] = 0;\ - uint16_t crc16 = crc16_gen(beacon_tc->TC_string, 9);\ - beacon_tc->TC_string[9] = (crc16 & 0xFF00)>>8;\ - beacon_tc->TC_string[10] = (crc16 & 0x00FF);\ + beacon_tc->TC_string[9] = 0x1d;\ + beacon_tc->TC_string[10] = 0xd9;\ + for(uint8_t z=11;z<135;z++)\ + {beacon_tc->TC_string[z] = 0;}\ tm_ptr = FCTN_CDMS_RLY_TMTC(beacon_tc);\ } #define OBSRS_TC(tm_ptr){\ @@ -84,109 +84,111 @@ transmit_adf;\ gPC.puts("exit_adf\r\n");\ } -//void set_sig(){gSCIENCE_THREAD->signal_set(SCIENCE_SIGNAL);} + +void CDMS_INIT() +{ + CDMS_INIT_STATUS = 1; + + spi.format(8,0); + spi.frequency(1000000); + + cs_sd = 1; + gCS_RTC = 1; + gCS_ADF = 1; + + //FLASH_INIT(); + FCTN_CDMS_INIT_RTC(); + FCTN_CDMS_SD_INIT(); + +} + int main() { - - CDMS_I2C_GPIO = 0; - PL_I2C_GPIO = 0; - - //gLEDR = 1; - + + CDMS_I2C_GPIO = 0; + PL_I2C_GPIO = 0; + // ******************INITIALISATIONS START****************** - // COM RX - + RX1M.baud(1200); gRX_HEAD_DATA_NODE = new COM_RX_DATA_NODE; gRX_HEAD_DATA_NODE->next_node = NULL; gRX_CURRENT_DATA_NODE = gRX_HEAD_DATA_NODE; gRX_COUNT = 0; -// gRX_CURRENT_PTR = gRX_CURRENT_DATA_NODE->values; + //gRX_CURRENT_PTR = gRX_CURRENT_DATA_NODE->values; RX1M.attach(&rx_read, Serial::RxIrq); - + // DEBUG //gPC.puts("welcome to mng_tm_tc\r\n"); gPC.baud(115200);//changed for bypassing COM - - // COMMON SPI - spi.format(8,0); - spi.frequency(1000000); + - // SD CARD - cs_sd = 1; - gCS_RTC = 1; - gCS_ADF = 1; - FCTN_CDMS_INIT_RTC();/* rtc initialization*/ - FCTN_CDMS_SD_INIT();/* sd card initialization*/ - - + CDMS_INIT(); + uint8_t test[512] = {0}; disk_write(test,7000); //to be used only just before launch - - #if DEBUG + +#if DEBUG gPC.puts("welcome to mng_tmtc\r\n"); - #endif - - - +#endif + + + // COM_MNG_TMTC THREAD gCOM_MNG_TMTC_THREAD = new Thread(COM_MNG_TMTC_FUN); gCOM_MNG_TMTC_THREAD->set_priority(osPriorityHigh); - #if DEBUG +#if DEBUG gPC.puts("allocating threads\r\n"); - #endif +#endif gSCIENCE_THREAD = new Thread(SCIENCE_FUN); - // gPC.puts("step one complete\r\n"); + // gPC.puts("step one complete\r\n"); gSCIENCE_THREAD->set_priority(osPriorityAboveNormal); - #if DEBUG +#if DEBUG gPC.puts("competed allocating threads\r\n"); - #endif - - +#endif + + master.frequency(400000); - PL_wo_dma = new RtosTimer(payload_isr_fun_dma, osTimerPeriodic,(void * )NULL); + //PL_wo_dma = new RtosTimer(payload_isr_fun_dma, osTimerPeriodic,(void * )NULL); //PL_wo_dma->start(6000);// gSCIENCE_THREAD->signal_set(SCIENCE_SIGNAL); - - - - - /*gPC.printf("PL_TC sending\r\n"); + + + + gPC.printf("PL_TC sending\r\n"); + + Base_tm *tm_ptr = new Long_tm; + PL_TC(tm_ptr); + + gPC.printf("PL_TC sent"); - Base_tm *tm_ptr = new Short_tm; - OBSRS_TC(tm_ptr); - - gPC.printf("PL_TC sent"); - */ // *******************INITIALISATIONS END******************** - + FCTN_CDMS_HK_MAIN((void *)NULL); //RtosTimer gCDMS_HK_TIMER(FCTN_CDMS_HK_MAIN, osTimerPeriodic); - //gCDMS_HK_TIMER.start(5000); - + //gCDMS_HK_TIMER.start(30000); + /*starting the thread with signal*/ //set_sig(); //payload_isr_fun(); - + /*Calculating Stack used*/ - + int state; - /*while (true) { - Thread::wait(500); - state = gSCIENCE_THREAD->get_state(); - //gPC.printf("Thread state %d\r\n", state); - if(state == Thread::Inactive) + /*while (true) { + Thread::wait(500); + state = gSCIENCE_THREAD->get_state(); + //gPC.printf("Thread state %d\r\n", state); + if(state == Thread::Inactive) {delete gSCIENCE_THREAD; break;} }*/ - - - - while(true){ + + while(true) { Thread::wait(osWaitForever); //state = gCOM_MNG_TMTC_THREAD->get_state() + '0'; - gLEDG = !gLEDG; - //gPC.putc(state); + gLEDG = !gLEDG; + //gPC.putc(state); } } \ No newline at end of file