Microchip® Advanced Software Framework

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Slotted CSMA Module

Transmits data using Slotted CSMA/CA mechanism.

Typedefs

typedef enum csma_state_tag csma_state_t
 

Enumerations

enum  csma_state_tag {
  CSMA_IDLE = 0,
  BACKOFF_WAITING_FOR_CCA_TIMER,
  BACKOFF_WAITING_FOR_BEACON,
  CSMA_ACCESS_FAILURE,
  FRAME_SENDING,
  TX_DONE_SUCCESS,
  TX_DONE_FRAME_PENDING,
  TX_DONE_NO_ACK,
  NO_BEACON_TRACKING,
  CSMA_HANDLE_BEACON
}
 

Functions

uint16_t calc_frame_transmit_duration (uint8_t *phy_frame)
 Calculates the entire transaction duration. More...
 
bool slotted_csma_start (bool perform_frame_retry)
 Starts slotted CSMA. More...
 
void slotted_csma_state_handling (void)
 State machine handling slotted CSMA. More...
 

Enumerator
CSMA_IDLE 
BACKOFF_WAITING_FOR_CCA_TIMER 
BACKOFF_WAITING_FOR_BEACON 
CSMA_ACCESS_FAILURE 
FRAME_SENDING 
TX_DONE_SUCCESS 
TX_DONE_FRAME_PENDING 
TX_DONE_NO_ACK 
NO_BEACON_TRACKING 
CSMA_HANDLE_BEACON 

uint16_t calc_frame_transmit_duration ( uint8_t *  phy_frame)