summaryrefslogtreecommitdiffhomepage
path: root/digital/beacon/src/network.h
diff options
context:
space:
mode:
Diffstat (limited to 'digital/beacon/src/network.h')
-rw-r--r--digital/beacon/src/network.h76
1 files changed, 46 insertions, 30 deletions
diff --git a/digital/beacon/src/network.h b/digital/beacon/src/network.h
index 10673c25..8bb82954 100644
--- a/digital/beacon/src/network.h
+++ b/digital/beacon/src/network.h
@@ -28,60 +28,76 @@
#include <zdo.h>
-// #define MAX_RETRIES_BEFORE_REJOIN 6
-
-// typedef struct
-// {
-// uint8_t header[APS_ASDU_OFFSET];
-// uint8_t data;
-// uint8_t footer[APS_AFFIX_LENGTH - APS_ASDU_OFFSET];
-// }buff_t;
-
-
typedef struct
{
- uint8_t messageId; // message ID
- uint8_t data[APP_MAX_PACKET_SIZE]; // data
-}AppMessage_t;
+ uint8_t messageId; // message ID
+ uint8_t data[APP_MAX_PACKET_SIZE]; // data
+} AppMessage_t;
+
-// Application network messsage buffer descriptor
typedef struct
{
- uint8_t header[APS_ASDU_OFFSET]; // Auxiliary header (required by stack)
- AppMessage_t message; // Application message
- uint8_t footer[APS_AFFIX_LENGTH - APS_ASDU_OFFSET]; // Auxiliary footer (required by stack)
-}AppMessageBuffer_t;
+ uint8_t header[APS_ASDU_OFFSET]; // Auxiliary header (required by stack)
+ AppMessage_t message; // Application message
+ uint8_t footer[APS_AFFIX_LENGTH - APS_ASDU_OFFSET]; // Auxiliary footer (required by stack)
+} AppMessageBuffer_t;
+typedef enum
+{
+ NETWORK_JACK_STATE,
+ NETWORK_OPPONENT_NUMBER,
+ NETWORK_ANGLE_DEGREE
+} TMessage_type;
-void APS_DataIndication(APS_DataInd_t* dataInd);
-void APS_DataConf(APS_DataConf_t* confInfo);
-void ZDO_StartNetworkConf(ZDO_StartNetworkConf_t* confirmInfo);
-void ZDO_UnbindIndication(ZDO_UnbindInd_t *unbindInd);
-void ZDO_BindIndication(ZDO_BindInd_t *bindInd);
-void ZDO_WakeUpInd(void);
+typedef enum
+{
+ NETWORK_MSG_TYPE_FIELD,
+ NETWORK_MSG_ADDR_FIELD,
+ NETWORK_MSG_DATA_FIELD
+} TMessage_field;
+/* This function intializes network parameters */
void network_init(void);
+
+/* This function starts the network according to the defined configuraiton*/
void network_start(void);
-/* This function returns the network status */
-uint16_t network_get_status(void);
+/* ZDO_StartNetwork primitive confirmation callback */
+void ZDO_StartNetworkConf(ZDO_StartNetworkConf_t* confirmInfo);
-void send_data(uint8_t type, uint8_t data);
-void send_angle(int angle_degree);
+/* This function quits the joined network */
void network_leave(void);
+
/* Leave network response */
void zdpLeaveResp(ZDO_ZdpResp_t *zdpResp);
+/* Wakeup event handler (dummy) */
+void ZDO_WakeUpInd(void);
+
+/* Stub for ZDO Binding Indication */
+void ZDO_BindIndication(ZDO_BindInd_t *bindInd);
+
+/* Stub for ZDO Unbinding Indication */
+void ZDO_UnbindIndication(ZDO_UnbindInd_t *unbindInd);
+
+/* Update network status event handler */
+void ZDO_MgmtNwkUpdateNotf(ZDO_MgmtNwkUpdateNotf_t *nwkParams);
+
/* This function returns the LQI of the joined network */
uint8_t network_get_lqi(void);
/* This function returns the RSSI of the joined network */
int8_t network_get_rssi(void);
+/* This function must be used to send data through zigbee network */
+void network_send_data(TMessage_type type, uint8_t data);
+/* brief Handler of aps data sent confirmation */
+void APS_DataConf(APS_DataConf_t* confInfo);
-#endif // ifndef _NETWORK_H
+/* APS data indication handler */
+void APS_DataIndication(APS_DataInd_t* indData);
-// eof network.h
+#endif