CDMS_CODE_samp_23SEP_DMA_flag

Dependencies:   FreescaleIAP SimpleDMA mbed-rtos mbed

Fork of CDMS_CODE_samp_23SEP_DMA by iitm sat

Revision:
235:c127b15409b2
Parent:
224:3ac1f91e0ebc
Child:
248:407ab7e337cd
Child:
255:642ea552ac77
Child:
257:7d404e9dc9e2
--- a/FMS_all.h	Tue Jul 05 16:04:31 2016 +0000
+++ b/FMS_all.h	Wed Jul 06 08:09:22 2016 +0000
@@ -1,12 +1,17 @@
 
+//Run processes
 void P_PL_INIT();
 void P_PL_MAIN();
 void P_COM_INIT();
 void P_CDMS_HK_MAIN();
 void P_PL_RCV_SC_DATA();
 void P_CDMS_INIT_SD();
+
+// Switch ON/OFF functions
 void CDMS_SD_SW_ON();
 void CDMS_SD_SW_OFF();
+void CDMS_RTC_ON();
+void CDMS_RTC_OFF();
 void SW_ON_BAE();
 void SW_OFF_BAE();
 void SW_ON_PL_BEE();
@@ -15,13 +20,24 @@
 void SW_OFF_PL_EPS();
 void SW_ON_V_A_EN();
 void SW_OFF_V_A_EN();
+
+// RST functions
 void RST_SD();
+void SW_RST_BAE();
+void SW_RST_PL_BEE();
 void RST_BAE();
 void RST_PL_BEE();
+void CDMS_INTERNAL_RESET();
+void SYS_PWR_RESET();  // Have to be decided with EPS team.
+void EPS_V_A_EN();
+void EPS_V_C_EN();
+
 void RST_HK_COUNTER();
 uint8_t CDMS_RD_SD_HK(uint8_t *);
+void CDMS_RD_RTC(uint64_t *);
+void CDMS_CALIB_RTC();
 void CDMS_RESET();
-void CDMS_INTERNAL_RESET();
+
 
 void P_PL_INIT()
 {
@@ -30,22 +46,22 @@
 
 void P_PL_MAIN()
 {
-    
+   // FCTN_CDMS_PL_MAIN((void *)NULL);
 }
 
 void P_COM_INIT()
 {
-    
+    P_COM_INIT;
 }
 
 void P_CDMS_HK_MAIN()
 {
-    //FCTN_CDMS_HK_MAIN();
+    FCTN_CDMS_HK_MAIN((void *)NULL);
 }
 
 void P_PL_RCV_SC_DATA()
 {
-
+    
 }
 
 void P_CDMS_INIT_SD()
@@ -55,74 +71,149 @@
 
 void CDMS_SD_SW_ON()
 {
-    SD_SW_EN_DS = 0; //powering on SD
+    SD_SW_EN_DS = 0;
 }
 
 void CDMS_SD_SW_OFF()
 {
-    SD_SW_EN_DS = 0; //powering on SD
-}
-
-void SW_ON_BAE()
-{
-    BAE_SW_EN_DS = 0; //Power ON BAE
+    SD_SW_EN_DS = 1;
 }
 
-void SW_OFF_BAE()
+void CDMS_RTC_ON()
 {
-    BAE_SW_EN_DS = 1; //Switch OFF BAE
+    
 }
 
-void SW_ON_PL_BEE()
-{
-    PL_SW_EN_DS = 0; //Power ON PL
-}
-
-void SW_OFF_PL_BEE()
-{
-      PL_SW_EN_DS = 1;  // switching OFF PL    
-}
-
-void SW_ON_PL_EPS()
+void CDMS_RTC_OFF()
 {
     
 }
 
+void SW_ON_BAE()
+{
+    BAE_SW_EN_DS = 0;
+}
+
+void SW_OFF_BAE()
+{
+    BAE_SW_EN_DS = 1;
+}
+
+void SW_ON_PL_BEE()
+{
+    PYLD_DFF_CLK = 0;\
+    PYLD_DFF = 1;\
+    wait_us(1);\
+    PYLD_DFF_CLK = 1;\
+    wait_us(1);\
+    PYLD_DFF_CLK = 0;\
+    wait_us(1);\
+}
+
+void SW_OFF_PL_BEE()
+{
+    PYLD_DFF_CLK = 0;
+    PYLD_DFF = 0;
+    wait_us(1);
+    PYLD_DFF_CLK = 1;
+    wait_us(1);
+    PYLD_DFF_CLK = 0;
+    wait_us(1);
+}
+
+void SW_ON_PL_EPS()
+{
+    PYLD_EPS_DFF_PWR_CLK = 0;\
+    PYLD_EPS_DFF_PWR = 1;\
+    wait_us(1);\
+    PYLD_EPS_DFF_PWR_CLK = 1;\
+    wait_us(1);\
+    PYLD_EPS_DFF_PWR_CLK = 0;\
+    wait_us(1);\
+}
+
 void SW_OFF_PL_EPS()
 {
-
+    PYLD_EPS_DFF_PWR_CLK = 0;\
+    PYLD_EPS_DFF_PWR = 0;\
+    wait_us(1);\
+    PYLD_EPS_DFF_PWR_CLK = 1;\
+    wait_us(1);\
+    PYLD_EPS_DFF_PWR_CLK = 0;\
+    wait_us(1);\
 }
 
 void SW_ON_V_A_EN()
 {
-    
+    TRXY_PWR_CNTRL = 1;
+    TRZ_PWR_CNTRL = 1;
 }
 
 void SW_OFF_V_A_EN()
 {
-
+    TRXY_PWR_CNTRL = 0;
+    TRZ_PWR_CNTRL = 0;    
 }
 
 void RST_SD()
 {
-    SD_SW_EN_DS = 1; //switching off SD card
+    SD_SW_EN_DS = 1;
     wait_ms(10);
     SD_SW_EN_DS = 0;
-    FCTN_CDMS_SD_INIT();
+}
+
+void SW_RST_BAE()
+{
+    BAE_SW_EN_DS = 1;
+    wait_ms(10);
+    BAE_SW_EN_DS = 0;
+}
+
+void SW_RST_PL_BEE()
+{
+    PYLD_DFF = 1;
+    wait_ms(10);
+    PYLD_DFF = 0;
 }
 
 void RST_BAE()
 {
-    BAE_SW_EN_DS = 1; //Switch OFF BAE
+    RESET_TO_BAE = 1;
     wait_ms(10);
-    BAE_SW_EN_DS = 0; //Switch ON BAE
+    RESET_TO_BAE = 0;
 }
 
 void RST_PL_BEE()
 {
-    PL_SW_EN_DS = 1;  // switching OFF PL
+    RESET_TO_PYLD = 1;
     wait_ms(10);
-    PL_SW_EN_DS = 0;  // Switch ON PL
+    RESET_TO_PYLD = 0;
+}
+
+void CDMS_INTERNAL_RESET()
+{
+    NVIC_SystemReset();
+}
+
+void SYS_PWR_RESET()  // Have to be decided with EPS team.
+{
+    
+}
+
+void EPS_V_A_EN()     // This is a reset function
+{
+    TRXY_PWR_CNTRL = 0;
+    TRZ_PWR_CNTRL = 0;
+    wait_ms(10);
+    TRXY_PWR_CNTRL = 1;
+    TRZ_PWR_CNTRL = 1;
+}
+
+void EPS_V_C_EN()     // This is a reset function
+{
+    COM_RX_CNTRL = 0;
+    wait_ms(10);
+    COM_RX_CNTRL = 1;
 }
 
 void RST_HK_COUNTER()
@@ -151,12 +242,24 @@
     return ACK;
 }
 
+void CDMS_RD_RTC(uint64_t *time)
+{
+    *time = FCTN_CDMS_RD_RTC();
+}
+
+void CDMS_CALIB_RTC()
+{
+    
+}
+
 void CDMS_RESET()
 {
     NVIC_SystemReset();    
 }
 
-void CDMS_INTERNAL_RESET()
+/*
+//void CDMS_INTERNAL_RESET()
 {
     
-}
\ No newline at end of file
+}
+*/
\ No newline at end of file