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: SimpleDMA mbed-rtos mbed eeprom
Fork of COM_MNG_TMTC_SIMPLE by
Revision 3:6c81fc8834e2, committed 2015-12-23
- Comitter:
- shreeshas95
- Date:
- Wed Dec 23 05:37:55 2015 +0000
- Parent:
- 2:2caf2a9a13aa
- Child:
- 4:104dd82c99b8
- Commit message:
- for krishan to test adf
Changed in this revision
--- a/DefinitionsAndGlobals.h Tue Dec 22 06:09:48 2015 +0000
+++ b/DefinitionsAndGlobals.h Wed Dec 23 05:37:55 2015 +0000
@@ -83,6 +83,9 @@
#define OBOSC_SUB_REP_LE 0x0F
#define OBOSC_SUB_RESET 0x07
+// PAYLOAD
+ #define PAYLOAD_BUFFER_LENGTH 2190
+
// ****************GLOBAL VARIABLES******************
// DEBUG
Serial gPC( USBTX, USBRX );
@@ -130,4 +133,8 @@
uint8_t gLAST_L1_ACK[TM_SHORT_SIZE];
uint8_t gLAST_L1_ACK_BUFFER[TM_SHORT_SIZE];
uint8_t gOBOSC_PSC = PSC_START_VALUE;
-Base_tc* gOBOSC_HEAD = NULL;
\ No newline at end of file
+Base_tc* gOBOSC_HEAD = NULL;
+
+// SCIENCE_THREAD
+Thread* gSCIENCE_THREAD = NULL;
+uint8_t gPAYLOAD_BUFFER[PAYLOAD_BUFFER_LENGTH];
\ No newline at end of file
--- a/ThreadsAndFunctions.h Tue Dec 22 06:09:48 2015 +0000
+++ b/ThreadsAndFunctions.h Wed Dec 23 05:37:55 2015 +0000
@@ -151,4 +151,48 @@
gFLAGS = gFLAGS & (~COM_SESSION_FLAG);
}
}
+}
+
+void SCIENCE_FUN(void const *args){
+// SPIpayload.format(8,0);
+// SPIpayload.frequency(1000000);
+ for ( int i = 0 ; i < PAYLOAD_BUFFER_LENGTH ; i++ ){
+ gPAYLOAD_BUFFER[i] = 1;
+ }
+
+ // initialise the buffer for dma
+ // SPIpayload.bulkRead_init(VAR_SPACE::payload_dma_buffer, PAYLOAD_DMA_SIZE, &payload_interrupt_fun);
+ // start dma read
+ // SPIpayload.bulkRead_start();
+
+ // attach DMA interrupt
+ while(true){
+ gSCIENCE_THREAD->signal_wait(0x01);
+
+//*********************************************************THE TEST
+
+ //read rtc time later
+ uint64_t RTC_time = 0;
+ Science_Data_Compression::complete_compression( gPAYLOAD_BUFFER , RTC_time);
+// SPI_mutex.lock();
+// disk_write(SDcard_lastWritten , 5);
+// SPI_mutex.unlock();
+
+//**********************************************THE TEST
+
+
+
+// counter_for_payload++;
+// if(counter_for_payload == 10){
+// payload_ticker.detach();
+// ledg = 0;
+// PC.puts("its over\r\n");
+// }
+
+
+
+
+// SPIpayload.bulkRead_start();
+
+ }
}
\ No newline at end of file
--- a/adf.h Tue Dec 22 06:09:48 2015 +0000
+++ b/adf.h Wed Dec 23 05:37:55 2015 +0000
@@ -484,7 +484,7 @@
send_data;\
while(loop_on){\
/*led2=!led2;*/\
- Thread::signal_wait(COM_MNG_TMTC_SIGNAL_ADF_SD);\
+ gCOM_MNG_TMTC_THREAD->signal_wait(COM_MNG_TMTC_SIGNAL_ADF_SD);\
if(ADF_off){\
SPI_mutex.lock();\
ticker.detach();\
@@ -540,7 +540,7 @@
// ADF_non_responsive_timeout.attach(&ADF_non_responsive_fun, 10);
while(loop_on){
- Thread::signal_wait(COM_MNG_TMTC_SIGNAL_ADF_NSD);
+ gCOM_MNG_TMTC_THREAD->signal_wait(COM_MNG_TMTC_SIGNAL_ADF_NSD);
// if( ADF_non_responsive_flag == false ){
if(ADF_off){
SPI_mutex.lock();
--- a/main.cpp Tue Dec 22 06:09:48 2015 +0000
+++ b/main.cpp Wed Dec 23 05:37:55 2015 +0000
@@ -53,6 +53,10 @@
gCOM_MNG_TMTC_THREAD->set_priority(osPriorityAboveNormal);
// *******************INITIALISATIONS END********************
+ // SCIENCE THREAD
+ gSCIENCE_THREAD = new Thread(SCIENCE_FUN);
+ gSCIENCE_THREAD->set_priority(osPriorityBelowNormal);
+
//adf test
gPC.puts("Testing ADF\r\n");
Base_tm *testTM = new Short_tm;
