Slave Implementation of WANOT Slave

Dependencies:   SX1276Lib mbed-src

Committer:
semsem
Date:
Mon May 23 22:28:07 2016 +0000
Revision:
0:80ebf9b1dd4f
WANOT

Who changed what in which revision?

UserRevisionLine numberNew contents of line
semsem 0:80ebf9b1dd4f 1 #include "WANOT.h"
semsem 0:80ebf9b1dd4f 2
semsem 0:80ebf9b1dd4f 3 /*
semsem 0:80ebf9b1dd4f 4 * Global variables declarations
semsem 0:80ebf9b1dd4f 5 */
semsem 0:80ebf9b1dd4f 6
semsem 0:80ebf9b1dd4f 7 volatile SuperSlotStates SuperSlotState = SetUp_Beacon_Phase;
semsem 0:80ebf9b1dd4f 8 Timeout SwitchState;
semsem 0:80ebf9b1dd4f 9
semsem 0:80ebf9b1dd4f 10 void SwitchState_Fn(void)
semsem 0:80ebf9b1dd4f 11 {
semsem 0:80ebf9b1dd4f 12 switch(SuperSlotState) {
semsem 0:80ebf9b1dd4f 13 case SetUp_Beacon_Phase:
semsem 0:80ebf9b1dd4f 14 debug("Switching to SetUp Phase State !!\n\r");
semsem 0:80ebf9b1dd4f 15 SuperSlotState = SetUp_Phase;
semsem 0:80ebf9b1dd4f 16 SwitchState.attach(&SwitchState_Fn,SET_UP_INTERVAL);
semsem 0:80ebf9b1dd4f 17 break;
semsem 0:80ebf9b1dd4f 18
semsem 0:80ebf9b1dd4f 19 case SetUp_Phase:
semsem 0:80ebf9b1dd4f 20 debug("Switching to TDMA Phase State !!\n\r");
semsem 0:80ebf9b1dd4f 21 SuperSlotState = TDMA_Phase;
semsem 0:80ebf9b1dd4f 22 SwitchState.attach(&SwitchState_Fn,TDMA_INTERVAL);
semsem 0:80ebf9b1dd4f 23 break;
semsem 0:80ebf9b1dd4f 24
semsem 0:80ebf9b1dd4f 25 case TDMA_Phase:
semsem 0:80ebf9b1dd4f 26 debug("SuperSlot States finished\n\r\n\r\n\r");
semsem 0:80ebf9b1dd4f 27 debug("Switching to SetUp Beacon State !! \n\r");
semsem 0:80ebf9b1dd4f 28 SuperSlotState = SetUp_Beacon_Phase;
semsem 0:80ebf9b1dd4f 29 SwitchState.attach(&SwitchState_Fn, BEACON_SET_UP_INTERVAL);
semsem 0:80ebf9b1dd4f 30 break;
semsem 0:80ebf9b1dd4f 31
semsem 0:80ebf9b1dd4f 32 }
semsem 0:80ebf9b1dd4f 33 }
semsem 0:80ebf9b1dd4f 34
semsem 0:80ebf9b1dd4f 35 void SuperSlotInit ()
semsem 0:80ebf9b1dd4f 36 {
semsem 0:80ebf9b1dd4f 37
semsem 0:80ebf9b1dd4f 38 debug("Switching to SetUp Beacon State !! \n\r");
semsem 0:80ebf9b1dd4f 39 SuperSlotState = SetUp_Beacon_Phase;
semsem 0:80ebf9b1dd4f 40 SwitchState.attach(&SwitchState_Fn, BEACON_SET_UP_INTERVAL);
semsem 0:80ebf9b1dd4f 41 }