Pradeep Kotipalli
/
cdms_rtos_v1_1_test_sat
aadadf
Fork of cdms_rtos_v1_1_test by
main.cpp@0:4da7c8fdd429, 2015-11-07 (annotated)
- Committer:
- sureshsusurla
- Date:
- Sat Nov 07 09:55:44 2015 +0000
- Revision:
- 0:4da7c8fdd429
- Child:
- 1:c0c5ac8eac80
cdms_rtos_v1_1_working_01_11_2015;
Who changed what in which revision?
User | Revision | Line number | New 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" |
sureshsusurla | 0:4da7c8fdd429 | 5 | |
sureshsusurla | 0:4da7c8fdd429 | 6 | Serial main1(USBTX,USBRX); |
sureshsusurla | 0:4da7c8fdd429 | 7 | |
sureshsusurla | 0:4da7c8fdd429 | 8 | Thread *ptr_t_sc_data; |
sureshsusurla | 0:4da7c8fdd429 | 9 | Thread *ptr_t_tctm; |
sureshsusurla | 0:4da7c8fdd429 | 10 | |
sureshsusurla | 0:4da7c8fdd429 | 11 | InterruptIn pl_sc_data(PIN81); |
sureshsusurla | 0:4da7c8fdd429 | 12 | |
sureshsusurla | 0:4da7c8fdd429 | 13 | /* only for sd testing*/ |
sureshsusurla | 0:4da7c8fdd429 | 14 | uint8_t write_to_sd[512]; |
sureshsusurla | 0:4da7c8fdd429 | 15 | uint8_t read_from_sd[512]; |
sureshsusurla | 0:4da7c8fdd429 | 16 | /* end*/ |
sureshsusurla | 0:4da7c8fdd429 | 17 | |
sureshsusurla | 0:4da7c8fdd429 | 18 | void BAE_HK(); |
sureshsusurla | 0:4da7c8fdd429 | 19 | void CDMS_HK(); |
sureshsusurla | 0:4da7c8fdd429 | 20 | void PL_MODE(); |
sureshsusurla | 0:4da7c8fdd429 | 21 | void FCTN_PL_RCV_SC_DATA(); |
sureshsusurla | 0:4da7c8fdd429 | 22 | void FCTN_COM_COMP_SC_DATA(); |
sureshsusurla | 0:4da7c8fdd429 | 23 | |
sureshsusurla | 0:4da7c8fdd429 | 24 | //extern void FCTN_CDMS_INIT_SD(); |
sureshsusurla | 0:4da7c8fdd429 | 25 | //extern int FCTN_CDMS_WR_SD(const uint8_t *, uint64_t); |
sureshsusurla | 0:4da7c8fdd429 | 26 | //extern int FCTN_CDMS_RD_SD(uint8_t *, uint64_t); |
sureshsusurla | 0:4da7c8fdd429 | 27 | |
sureshsusurla | 0:4da7c8fdd429 | 28 | //extern void FCTN_CDMS_INIT_SD(); |
sureshsusurla | 0:4da7c8fdd429 | 29 | extern int disk_write(const uint8_t *, uint64_t); |
sureshsusurla | 0:4da7c8fdd429 | 30 | extern int disk_read(uint8_t *, uint64_t); |
sureshsusurla | 0:4da7c8fdd429 | 31 | extern int initialise_card(); |
sureshsusurla | 0:4da7c8fdd429 | 32 | extern int disk_initialize(); |
sureshsusurla | 0:4da7c8fdd429 | 33 | |
sureshsusurla | 0:4da7c8fdd429 | 34 | extern void FCTN_CDMS_INIT_RTC(); |
sureshsusurla | 0:4da7c8fdd429 | 35 | extern void FCTN_CDMS_RD_RTC(); |
sureshsusurla | 0:4da7c8fdd429 | 36 | |
sureshsusurla | 0:4da7c8fdd429 | 37 | void TSC_HK_BAE_CDMS_PL_MODE(void const *args) |
sureshsusurla | 0:4da7c8fdd429 | 38 | { |
sureshsusurla | 0:4da7c8fdd429 | 39 | BAE_HK(); |
sureshsusurla | 0:4da7c8fdd429 | 40 | CDMS_HK(); |
sureshsusurla | 0:4da7c8fdd429 | 41 | PL_MODE(); |
sureshsusurla | 0:4da7c8fdd429 | 42 | } |
sureshsusurla | 0:4da7c8fdd429 | 43 | |
sureshsusurla | 0:4da7c8fdd429 | 44 | void BAE_HK() |
sureshsusurla | 0:4da7c8fdd429 | 45 | { |
sureshsusurla | 0:4da7c8fdd429 | 46 | main1.printf("\nBAE_HK Function Executed\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 47 | } |
sureshsusurla | 0:4da7c8fdd429 | 48 | |
sureshsusurla | 0:4da7c8fdd429 | 49 | void CDMS_HK() |
sureshsusurla | 0:4da7c8fdd429 | 50 | { |
sureshsusurla | 0:4da7c8fdd429 | 51 | main1.printf("\nCDMS_HK Function Executed\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 52 | FCTN_CDMS_RD_RTC(); |
sureshsusurla | 0:4da7c8fdd429 | 53 | disk_write(write_to_sd,4); |
sureshsusurla | 0:4da7c8fdd429 | 54 | disk_read(read_from_sd,4); |
sureshsusurla | 0:4da7c8fdd429 | 55 | for(int i=0;i<512;i++) |
sureshsusurla | 0:4da7c8fdd429 | 56 | { |
sureshsusurla | 0:4da7c8fdd429 | 57 | main1.printf("%d",read_from_sd[i]); |
sureshsusurla | 0:4da7c8fdd429 | 58 | } |
sureshsusurla | 0:4da7c8fdd429 | 59 | } |
sureshsusurla | 0:4da7c8fdd429 | 60 | |
sureshsusurla | 0:4da7c8fdd429 | 61 | void PL_MODE() |
sureshsusurla | 0:4da7c8fdd429 | 62 | { |
sureshsusurla | 0:4da7c8fdd429 | 63 | main1.printf("\nPL_MODE Function Executed\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 64 | } |
sureshsusurla | 0:4da7c8fdd429 | 65 | |
sureshsusurla | 0:4da7c8fdd429 | 66 | void T_CDMS_RLY_TCTM(void const *args) |
sureshsusurla | 0:4da7c8fdd429 | 67 | { |
sureshsusurla | 0:4da7c8fdd429 | 68 | while(1) |
sureshsusurla | 0:4da7c8fdd429 | 69 | { |
sureshsusurla | 0:4da7c8fdd429 | 70 | Thread::signal_wait(0x3); |
sureshsusurla | 0:4da7c8fdd429 | 71 | main1.printf("in T_CDMS_RLY_TM\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 72 | //FUNC_CDMS_RLY_TM(); |
sureshsusurla | 0:4da7c8fdd429 | 73 | } |
sureshsusurla | 0:4da7c8fdd429 | 74 | } |
sureshsusurla | 0:4da7c8fdd429 | 75 | |
sureshsusurla | 0:4da7c8fdd429 | 76 | void T_PL_RCV_SC_DATA(void const *args) |
sureshsusurla | 0:4da7c8fdd429 | 77 | { |
sureshsusurla | 0:4da7c8fdd429 | 78 | while(1) |
sureshsusurla | 0:4da7c8fdd429 | 79 | { |
sureshsusurla | 0:4da7c8fdd429 | 80 | Thread::signal_wait(0x1); |
sureshsusurla | 0:4da7c8fdd429 | 81 | FCTN_PL_RCV_SC_DATA(); |
sureshsusurla | 0:4da7c8fdd429 | 82 | FCTN_COM_COMP_SC_DATA(); |
sureshsusurla | 0:4da7c8fdd429 | 83 | FCTN_CDMS_RD_RTC(); |
sureshsusurla | 0:4da7c8fdd429 | 84 | disk_write(write_to_sd,2); |
sureshsusurla | 0:4da7c8fdd429 | 85 | disk_read(read_from_sd,2); |
sureshsusurla | 0:4da7c8fdd429 | 86 | for(int i=0;i<512;i++) |
sureshsusurla | 0:4da7c8fdd429 | 87 | { |
sureshsusurla | 0:4da7c8fdd429 | 88 | main1.printf("%d",read_from_sd[i]); |
sureshsusurla | 0:4da7c8fdd429 | 89 | } |
sureshsusurla | 0:4da7c8fdd429 | 90 | } |
sureshsusurla | 0:4da7c8fdd429 | 91 | } |
sureshsusurla | 0:4da7c8fdd429 | 92 | |
sureshsusurla | 0:4da7c8fdd429 | 93 | void ISR_PL_RCV_SC_DATA() |
sureshsusurla | 0:4da7c8fdd429 | 94 | { |
sureshsusurla | 0:4da7c8fdd429 | 95 | ptr_t_sc_data->signal_set(0x1); |
sureshsusurla | 0:4da7c8fdd429 | 96 | } |
sureshsusurla | 0:4da7c8fdd429 | 97 | |
sureshsusurla | 0:4da7c8fdd429 | 98 | void FCTN_PL_RCV_SC_DATA() |
sureshsusurla | 0:4da7c8fdd429 | 99 | { |
sureshsusurla | 0:4da7c8fdd429 | 100 | main1.printf("\nFCTN_PL_RCV_SC_DATA Function Executed\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 101 | } |
sureshsusurla | 0:4da7c8fdd429 | 102 | |
sureshsusurla | 0:4da7c8fdd429 | 103 | void FCTN_COM_COMP_SC_DATA() |
sureshsusurla | 0:4da7c8fdd429 | 104 | { |
sureshsusurla | 0:4da7c8fdd429 | 105 | main1.printf("\nFCTN_COM_COMP_SC_DATA Function Executed\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 106 | } |
sureshsusurla | 0:4da7c8fdd429 | 107 | |
sureshsusurla | 0:4da7c8fdd429 | 108 | void FCTN_CDMS_WR_SD() |
sureshsusurla | 0:4da7c8fdd429 | 109 | { |
sureshsusurla | 0:4da7c8fdd429 | 110 | main1.printf("\nFCTN_CDMS_WR_SD Function Executed\r\n"); |
sureshsusurla | 0:4da7c8fdd429 | 111 | } |
sureshsusurla | 0:4da7c8fdd429 | 112 | |
sureshsusurla | 0:4da7c8fdd429 | 113 | int main() |
sureshsusurla | 0:4da7c8fdd429 | 114 | { |
sureshsusurla | 0:4da7c8fdd429 | 115 | main1.printf("\n\r CDMS Activated \n"); |
sureshsusurla | 0:4da7c8fdd429 | 116 | initialise_card(); |
sureshsusurla | 0:4da7c8fdd429 | 117 | disk_initialize(); |
sureshsusurla | 0:4da7c8fdd429 | 118 | FCTN_CDMS_INIT_RTC(); |
sureshsusurla | 0:4da7c8fdd429 | 119 | for(int i=0;i<512;i++) |
sureshsusurla | 0:4da7c8fdd429 | 120 | { |
sureshsusurla | 0:4da7c8fdd429 | 121 | write_to_sd[i] = i; |
sureshsusurla | 0:4da7c8fdd429 | 122 | } |
sureshsusurla | 0:4da7c8fdd429 | 123 | RtosTimer TIMER_HK_ACQ(TSC_HK_BAE_CDMS_PL_MODE,osTimerPeriodic); |
sureshsusurla | 0:4da7c8fdd429 | 124 | TIMER_HK_ACQ.start(10000); |
sureshsusurla | 0:4da7c8fdd429 | 125 | ptr_t_tctm = new Thread (T_CDMS_RLY_TCTM); |
sureshsusurla | 0:4da7c8fdd429 | 126 | ptr_t_sc_data = new Thread (T_PL_RCV_SC_DATA); |
sureshsusurla | 0:4da7c8fdd429 | 127 | pl_sc_data.rise(&ISR_PL_RCV_SC_DATA); |
sureshsusurla | 0:4da7c8fdd429 | 128 | |
sureshsusurla | 0:4da7c8fdd429 | 129 | while(1); |
sureshsusurla | 0:4da7c8fdd429 | 130 | } |