Aloha implementation of LoRa technology

Dependencies:   SX1276Lib mbed

Fork of SX1276PingPong by Semtech

Committer:
rba90
Date:
Tue May 31 09:52:21 2016 +0000
Revision:
15:f790f35839db
Child:
16:c3c6b13c3c42
Initial prototype

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rba90 15:f790f35839db 1 #ifndef ALOHA_H_
rba90 15:f790f35839db 2 #define ALOHA_H_
rba90 15:f790f35839db 3
rba90 15:f790f35839db 4 #include "mbed.h"
rba90 15:f790f35839db 5
rba90 15:f790f35839db 6 #define ALOHA_MAX_ATTEMPT 3
rba90 15:f790f35839db 7
rba90 15:f790f35839db 8 class Aloha
rba90 15:f790f35839db 9 {
rba90 15:f790f35839db 10 public:
rba90 15:f790f35839db 11 typedef enum
rba90 15:f790f35839db 12 {
rba90 15:f790f35839db 13 IDLE = 0,
rba90 15:f790f35839db 14 PENDING,
rba90 15:f790f35839db 15 RETRANSMIT,
rba90 15:f790f35839db 16 EXPIRED
rba90 15:f790f35839db 17 } AlohaState_t;
rba90 15:f790f35839db 18
rba90 15:f790f35839db 19 public:
rba90 15:f790f35839db 20 Timeout AlohaAckTimeout;
rba90 15:f790f35839db 21 uint32_t delay;
rba90 15:f790f35839db 22 int attempts;
rba90 15:f790f35839db 23
rba90 15:f790f35839db 24 AlohaState_t state;
rba90 15:f790f35839db 25
rba90 15:f790f35839db 26 public:
rba90 15:f790f35839db 27 Aloha()
rba90 15:f790f35839db 28 {
rba90 15:f790f35839db 29 attempts = 0;
rba90 15:f790f35839db 30 state = Aloha::IDLE;
rba90 15:f790f35839db 31 }
rba90 15:f790f35839db 32 ~Aloha()
rba90 15:f790f35839db 33 {
rba90 15:f790f35839db 34
rba90 15:f790f35839db 35 }
rba90 15:f790f35839db 36 };
rba90 15:f790f35839db 37
rba90 15:f790f35839db 38 #endif