Microchip® Advanced Software Framework

api_encoder.c File Reference

Encodes mac api's to comman byte stream.

Copyright (c) 2013-2018 Microchip Technology Inc. and its subsidiaries.

#include <string.h>
#include "compiler.h"
#include "sio2ncp.h"
#include "api_parser.h"

Macros

#define MAX_MAC_PIB_ATTRIBUTE_ID   (macMinSIFSPeriod)
 
#define MAX_PHY_PIB_ATTRIBUTE_ID   (phySymbolsPerOctet)
 
#define MIN_MAC_PIB_ATTRIBUTE_ID   (macAckWaitDuration)
 
#define MIN_PRIVATE_PIB_ATTRIBUTE_ID   (macIeeeAddress)
 

Functions

static FLASH_DECLARE (uint8_t phy_pib_size[])
 
uint8_t mac_get_pib_attribute_size (uint8_t pib_attribute_id)
 
retval_t wpan_init (void)
 The stack initialization function. More...
 
bool wpan_mcps_data_req (uint8_t SrcAddrMode, wpan_addr_spec_t *DstAddrSpec, uint8_t msduLength, uint8_t *msdu, uint8_t msduHandle, uint8_t TxOptions)
 Initiate MCPS-DATA.request service and have it placed in the MCPS-SAP queue. More...
 
bool wpan_mcps_purge_req (const uint8_t msduHandle)
 Initiate MCPS-PURGE.request service and have it placed in the MCPS-SAP queue. More...
 
bool wpan_mlme_associate_req (uint8_t LogicalChannel, uint8_t ChannelPage, wpan_addr_spec_t *CoordAddrSpec, uint8_t CapabilityInformation)
 Initiate MLME-ASSOCIATE.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_associate_resp (uint64_t DeviceAddress, uint16_t AssocShortAddress, uint8_t status)
 Initiate MLME-ASSOCIATE.response service and place it in the MLME-SAP queue. More...
 
bool wpan_mlme_disassociate_req (wpan_addr_spec_t *DeviceAddrSpec, uint8_t DisassociateReason, bool TxIndirect)
 Inititate MLME-DISASSOCIATE.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_get_req (uint8_t PIBAttribute)
 Initiate MLME-GET.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_orphan_resp (uint64_t OrphanAddress, uint16_t ShortAddress, bool AssociatedMember)
 Initiate MLME-ORPHAN.response service and have it placed in MLME_SAP queue. More...
 
bool wpan_mlme_poll_req (wpan_addr_spec_t *CoordAddrSpec)
 Initiate MLME-POLL.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_reset_req (bool SetDefaultPib)
 Initiate MLME-RESET.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_rx_enable_req (bool DeferPermit, uint32_t RxOnTime, uint32_t RxOnDuration)
 Initiate MLME-RX-ENABLE.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_scan_req (uint8_t ScanType, uint32_t ScanChannels, uint8_t ScanDuration, uint8_t ChannelPage)
 Initiate MLME-SCAN.request service and have it placed in the MLME-SAP queue. More...
 
bool wpan_mlme_set_req (uint8_t PIBAttribute, void *PIBAttributeValue)
 Initiate MLME-SET.request service and have it placed in MLME_SAP queue. More...
 
bool wpan_mlme_start_req (uint16_t PANId, uint8_t LogicalChannel, uint8_t ChannelPage, uint8_t BeaconOrder, uint8_t SuperframeOrder, bool PANCoordinator, bool BatteryLifeExtension, bool CoordRealignment)
 Initiate MLME-START service and have it placed in the MLME-SAP queue. More...
 

Variables

static uint8_t length = 0
 
static uint8_t * tx_buff_ptr = &tx_buffer[CMD_POS]
 
static uint8_t tx_buffer [TX_BUFFER_LENGTH] = {0}