aadadf

Dependencies:   mbed-rtos mbed

Fork of cdms_rtos_v1_1_test by Team Fox

Committer:
pradeepvk2208
Date:
Sat Nov 07 12:06:40 2015 +0000
Revision:
1:c0c5ac8eac80
Parent:
0:4da7c8fdd429
hey cdms_pl

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sureshsusurla 0:4da7c8fdd429 1 #include "mbed.h"
sureshsusurla 0:4da7c8fdd429 2 #include "rtos.h"
sureshsusurla 0:4da7c8fdd429 3 #include "pinconfig.h"
sureshsusurla 0:4da7c8fdd429 4 #include "cdms_sd.h"
pradeepvk2208 1:c0c5ac8eac80 5 #include "MKL46Z4.h"
pradeepvk2208 1:c0c5ac8eac80 6 #include "PL_SC_RECEIVE.h"
sureshsusurla 0:4da7c8fdd429 7
sureshsusurla 0:4da7c8fdd429 8 Serial main1(USBTX,USBRX);
sureshsusurla 0:4da7c8fdd429 9
sureshsusurla 0:4da7c8fdd429 10 Thread *ptr_t_sc_data;
sureshsusurla 0:4da7c8fdd429 11 Thread *ptr_t_tctm;
sureshsusurla 0:4da7c8fdd429 12
sureshsusurla 0:4da7c8fdd429 13 InterruptIn pl_sc_data(PIN81);
pradeepvk2208 1:c0c5ac8eac80 14 InterruptIn PYLD_I2C_Int(PIN100);
sureshsusurla 0:4da7c8fdd429 15
sureshsusurla 0:4da7c8fdd429 16 /* only for sd testing*/
sureshsusurla 0:4da7c8fdd429 17 uint8_t write_to_sd[512];
sureshsusurla 0:4da7c8fdd429 18 uint8_t read_from_sd[512];
sureshsusurla 0:4da7c8fdd429 19 /* end*/
sureshsusurla 0:4da7c8fdd429 20
sureshsusurla 0:4da7c8fdd429 21 void BAE_HK();
sureshsusurla 0:4da7c8fdd429 22 void CDMS_HK();
sureshsusurla 0:4da7c8fdd429 23 void PL_MODE();
sureshsusurla 0:4da7c8fdd429 24 void FCTN_PL_RCV_SC_DATA();
sureshsusurla 0:4da7c8fdd429 25 void FCTN_COM_COMP_SC_DATA();
sureshsusurla 0:4da7c8fdd429 26
sureshsusurla 0:4da7c8fdd429 27 //extern void FCTN_CDMS_INIT_SD();
sureshsusurla 0:4da7c8fdd429 28 //extern int FCTN_CDMS_WR_SD(const uint8_t *, uint64_t);
sureshsusurla 0:4da7c8fdd429 29 //extern int FCTN_CDMS_RD_SD(uint8_t *, uint64_t);
sureshsusurla 0:4da7c8fdd429 30
sureshsusurla 0:4da7c8fdd429 31 //extern void FCTN_CDMS_INIT_SD();
sureshsusurla 0:4da7c8fdd429 32 extern int disk_write(const uint8_t *, uint64_t);
sureshsusurla 0:4da7c8fdd429 33 extern int disk_read(uint8_t *, uint64_t);
sureshsusurla 0:4da7c8fdd429 34 extern int initialise_card();
sureshsusurla 0:4da7c8fdd429 35 extern int disk_initialize();
sureshsusurla 0:4da7c8fdd429 36
sureshsusurla 0:4da7c8fdd429 37 extern void FCTN_CDMS_INIT_RTC();
sureshsusurla 0:4da7c8fdd429 38 extern void FCTN_CDMS_RD_RTC();
sureshsusurla 0:4da7c8fdd429 39
sureshsusurla 0:4da7c8fdd429 40 void TSC_HK_BAE_CDMS_PL_MODE(void const *args)
sureshsusurla 0:4da7c8fdd429 41 {
sureshsusurla 0:4da7c8fdd429 42 BAE_HK();
sureshsusurla 0:4da7c8fdd429 43 CDMS_HK();
sureshsusurla 0:4da7c8fdd429 44 PL_MODE();
sureshsusurla 0:4da7c8fdd429 45 }
sureshsusurla 0:4da7c8fdd429 46
sureshsusurla 0:4da7c8fdd429 47 void BAE_HK()
sureshsusurla 0:4da7c8fdd429 48 {
sureshsusurla 0:4da7c8fdd429 49 main1.printf("\nBAE_HK Function Executed\r\n");
sureshsusurla 0:4da7c8fdd429 50 }
sureshsusurla 0:4da7c8fdd429 51
sureshsusurla 0:4da7c8fdd429 52 void CDMS_HK()
sureshsusurla 0:4da7c8fdd429 53 {
sureshsusurla 0:4da7c8fdd429 54 main1.printf("\nCDMS_HK Function Executed\r\n");
sureshsusurla 0:4da7c8fdd429 55 FCTN_CDMS_RD_RTC();
sureshsusurla 0:4da7c8fdd429 56 disk_write(write_to_sd,4);
sureshsusurla 0:4da7c8fdd429 57 disk_read(read_from_sd,4);
sureshsusurla 0:4da7c8fdd429 58 for(int i=0;i<512;i++)
sureshsusurla 0:4da7c8fdd429 59 {
sureshsusurla 0:4da7c8fdd429 60 main1.printf("%d",read_from_sd[i]);
sureshsusurla 0:4da7c8fdd429 61 }
sureshsusurla 0:4da7c8fdd429 62 }
sureshsusurla 0:4da7c8fdd429 63
sureshsusurla 0:4da7c8fdd429 64 void PL_MODE()
sureshsusurla 0:4da7c8fdd429 65 {
pradeepvk2208 1:c0c5ac8eac80 66 FUNC_MASTER_WRITE;
sureshsusurla 0:4da7c8fdd429 67 main1.printf("\nPL_MODE Function Executed\r\n");
sureshsusurla 0:4da7c8fdd429 68 }
sureshsusurla 0:4da7c8fdd429 69
sureshsusurla 0:4da7c8fdd429 70 void T_CDMS_RLY_TCTM(void const *args)
sureshsusurla 0:4da7c8fdd429 71 {
sureshsusurla 0:4da7c8fdd429 72 while(1)
sureshsusurla 0:4da7c8fdd429 73 {
sureshsusurla 0:4da7c8fdd429 74 Thread::signal_wait(0x3);
sureshsusurla 0:4da7c8fdd429 75 main1.printf("in T_CDMS_RLY_TM\r\n");
sureshsusurla 0:4da7c8fdd429 76 //FUNC_CDMS_RLY_TM();
sureshsusurla 0:4da7c8fdd429 77 }
sureshsusurla 0:4da7c8fdd429 78 }
sureshsusurla 0:4da7c8fdd429 79
sureshsusurla 0:4da7c8fdd429 80 void T_PL_RCV_SC_DATA(void const *args)
sureshsusurla 0:4da7c8fdd429 81 {
sureshsusurla 0:4da7c8fdd429 82 while(1)
sureshsusurla 0:4da7c8fdd429 83 {
sureshsusurla 0:4da7c8fdd429 84 Thread::signal_wait(0x1);
sureshsusurla 0:4da7c8fdd429 85 FCTN_PL_RCV_SC_DATA();
sureshsusurla 0:4da7c8fdd429 86 FCTN_COM_COMP_SC_DATA();
sureshsusurla 0:4da7c8fdd429 87 FCTN_CDMS_RD_RTC();
sureshsusurla 0:4da7c8fdd429 88 disk_write(write_to_sd,2);
sureshsusurla 0:4da7c8fdd429 89 disk_read(read_from_sd,2);
sureshsusurla 0:4da7c8fdd429 90 for(int i=0;i<512;i++)
sureshsusurla 0:4da7c8fdd429 91 {
sureshsusurla 0:4da7c8fdd429 92 main1.printf("%d",read_from_sd[i]);
sureshsusurla 0:4da7c8fdd429 93 }
sureshsusurla 0:4da7c8fdd429 94 }
sureshsusurla 0:4da7c8fdd429 95 }
sureshsusurla 0:4da7c8fdd429 96
sureshsusurla 0:4da7c8fdd429 97 void ISR_PL_RCV_SC_DATA()
sureshsusurla 0:4da7c8fdd429 98 {
sureshsusurla 0:4da7c8fdd429 99 ptr_t_sc_data->signal_set(0x1);
sureshsusurla 0:4da7c8fdd429 100 }
sureshsusurla 0:4da7c8fdd429 101
sureshsusurla 0:4da7c8fdd429 102 void FCTN_PL_RCV_SC_DATA()
sureshsusurla 0:4da7c8fdd429 103 {
pradeepvk2208 1:c0c5ac8eac80 104 payloadProcess();
sureshsusurla 0:4da7c8fdd429 105 main1.printf("\nFCTN_PL_RCV_SC_DATA Function Executed\r\n");
sureshsusurla 0:4da7c8fdd429 106 }
sureshsusurla 0:4da7c8fdd429 107
sureshsusurla 0:4da7c8fdd429 108 void FCTN_COM_COMP_SC_DATA()
sureshsusurla 0:4da7c8fdd429 109 {
sureshsusurla 0:4da7c8fdd429 110 main1.printf("\nFCTN_COM_COMP_SC_DATA Function Executed\r\n");
sureshsusurla 0:4da7c8fdd429 111 }
sureshsusurla 0:4da7c8fdd429 112
sureshsusurla 0:4da7c8fdd429 113 void FCTN_CDMS_WR_SD()
sureshsusurla 0:4da7c8fdd429 114 {
sureshsusurla 0:4da7c8fdd429 115 main1.printf("\nFCTN_CDMS_WR_SD Function Executed\r\n");
sureshsusurla 0:4da7c8fdd429 116 }
sureshsusurla 0:4da7c8fdd429 117
sureshsusurla 0:4da7c8fdd429 118 int main()
sureshsusurla 0:4da7c8fdd429 119 {
sureshsusurla 0:4da7c8fdd429 120 main1.printf("\n\r CDMS Activated \n");
sureshsusurla 0:4da7c8fdd429 121 initialise_card();
sureshsusurla 0:4da7c8fdd429 122 disk_initialize();
sureshsusurla 0:4da7c8fdd429 123 FCTN_CDMS_INIT_RTC();
pradeepvk2208 1:c0c5ac8eac80 124 FCTN_CDMS_PL_INIT();
pradeepvk2208 1:c0c5ac8eac80 125
pradeepvk2208 1:c0c5ac8eac80 126
sureshsusurla 0:4da7c8fdd429 127 for(int i=0;i<512;i++)
sureshsusurla 0:4da7c8fdd429 128 {
sureshsusurla 0:4da7c8fdd429 129 write_to_sd[i] = i;
sureshsusurla 0:4da7c8fdd429 130 }
sureshsusurla 0:4da7c8fdd429 131 RtosTimer TIMER_HK_ACQ(TSC_HK_BAE_CDMS_PL_MODE,osTimerPeriodic);
sureshsusurla 0:4da7c8fdd429 132 TIMER_HK_ACQ.start(10000);
sureshsusurla 0:4da7c8fdd429 133 ptr_t_tctm = new Thread (T_CDMS_RLY_TCTM);
sureshsusurla 0:4da7c8fdd429 134 ptr_t_sc_data = new Thread (T_PL_RCV_SC_DATA);
sureshsusurla 0:4da7c8fdd429 135 pl_sc_data.rise(&ISR_PL_RCV_SC_DATA);
pradeepvk2208 1:c0c5ac8eac80 136 PYLD_I2C_Int.rise(&readds);
sureshsusurla 0:4da7c8fdd429 137 while(1);
sureshsusurla 0:4da7c8fdd429 138 }