Version FC

Dependencies:   DmTftLibrary eeprom SX1280Lib filesystem mbed

Fork of MSNV2-Terminal_V1-5 by Francis CHATAIN

Revision:
15:9c1c4368670f
Parent:
12:e9ec35413787
Child:
20:b0281e8a375a
diff -r 1705f050b69a -r 9c1c4368670f main.cpp
--- a/main.cpp	Mon Aug 27 16:34:28 2018 +0000
+++ b/main.cpp	Tue Aug 28 14:47:32 2018 +0000
@@ -24,10 +24,11 @@
 
 
 //******************************************************************************
-//     Watch Dog functionnality
+//     Timers
 //******************************************************************************
 uint16_t TimerPayload, TimerGoodhealth, TimerSynchro, TimerListening = 0L ;
-
+volatile uint32_t listenFlag=0, syncFlag=0, goodHealthFlag=0, payloadFlag=0, irqFlag=0; 
+ 
 LowPowerTicker  wakeUpPayload                   ;       // normal wake up 
 void wakeUpPayloadCallback      (void)          ; 
 
@@ -79,7 +80,32 @@
 // ============================================================================= LOOP  
 void loop () { 
     while(1) { 
-        // deepsleep ();     // perd la conf uart 
+        if(listenFlag){     // Listen radio
+            listenFlag=0;  
+            app.manageListening();
+            printf ("*** MAIN ***  wakeUpListeningCallback   \r\n");
+        }  
+        if(syncFlag){       // Prepare response
+            syncFlag=0; 
+            app.manageSynchro();
+            printf ("*** MAIN ***  wakeUpSynchroCallback   \r\n");
+        } 
+        if(goodHealthFlag){ // Prepare response
+            goodHealthFlag=0; 
+            app.manageGoodhealth(); 
+            printf ("*** MAIN ***  wakeUpGoodhealthCallback  r\n");
+        } 
+        if(payloadFlag){    // read Sensors
+            payloadFlag=0; 
+            app.manageSensors(); 
+            printf ("*** MAIN ***  wakeUpPayloadCallback   \r\n"); 
+        }  
+        if(irqFlag){        // handle IRQ actions
+            irqFlag=0; 
+            app.manageConfiguration(); 
+            printf ("*** MAIN ***  wakeUpIrqTacSwitch   \r\n"); 
+        } 
+        // deepsleep ();    // breaks UART 
         //sleep () ; 
         wait(1);
     } 
@@ -93,33 +119,38 @@
 // IRQ du tac switch    TODO 
 // ============================================================ IRQ TAC SWITCH
 void wakeUpIrqTacSwitch (void) {
-    printf ("*** MAIN ***  wakeUpIrqTacSwitch   \r\n");  
-    app.manageConfiguration         () ;   // IRQ   
+    //printf ("*** MAIN ***  wakeUpIrqTacSwitch   \r\n");  
+    //app.manageConfiguration         () ;   // IRQ  
+    irqFlag=1; 
 }
 
 
 // ============================================================ WATCH DOG PAYLOAD 
 void wakeUpPayloadCallback (void) {
-    printf ("*** MAIN ***  wakeUpPayloadCallback   \r\n");  
-    app.manageSensors         () ;   // read Sensors   
+    //printf ("*** MAIN ***  wakeUpPayloadCallback   \r\n");  
+    //app.manageSensors         () ;   // read Sensors   
+    payloadFlag=1; 
 }
 
 // ============================================================ WATCH DOG GOODHEALTH
 void wakeUpGoodhealthCallback (void) {
-    printf ("*** MAIN ***  wakeUpGoodhealthCallback  ==========================   \r\n");
-    app.manageGoodhealth () ;   // Prepare response  
+    //printf ("*** MAIN ***  wakeUpGoodhealthCallback  ==========================   \r\n");
+    //app.manageGoodhealth () ;   // Prepare response  
+    goodHealthFlag=1; 
 }
 
 // ============================================================ WATCH DOG SYNCHRO
 void wakeUpSynchroCallback (void) {
-    printf ("*** MAIN ***  wakeUpSynchroCallback   \r\n");
-    app.manageSynchro () ;   // Prepare response  
+    //printf ("*** MAIN ***  wakeUpSynchroCallback   \r\n");
+    //app.manageSynchro () ;   // Prepare response  
+    syncFlag=1;
 }
 
 // ============================================================ WATCH DOG LISTENING
 void wakeUpListeningCallback (void) {
-    printf ("*** MAIN ***  wakeUpListeningCallback   \r\n");
-    app.manageListening () ;   // Ecoute radio   
+    //printf ("*** MAIN ***  wakeUpListeningCallback   \r\n");
+    //app.manageListening () ;   // Ecoute radio  
+    listenFlag=1;   
 }
 
 //*****************************************************************************