This application Performance Analyzer is a Serial interface based application, which communicates with Wireless Analyzer to demonstrate various features and capabilities of Atmel Transceivers.
Modules | |
Application Initialization Process | |
Initializes the Performance Analyzer Application. | |
Peer Search Process | |
Handles the functionalities of peer searching process. | |
Packet error rate measurement | |
Handles the functionalities of Packet Error Rate Measurement(PER) Mode, User can set and get various paramters of Transceiver like Channel,Antenna Diversity,CSMA and do the Packet Error Rate Measurement. | |
Range Measurement | |
Performs the functionalities of Range measurement mode, Evaluate the Communication coverage of the transceiver. | |
Serial Parser | |
Handles all the serial input and output commands. | |
User Interface | |
Handles all User interface related functions such as Button, Print,LED events. | |
Data Structures | |
struct | state_function_t |
This structure forms the jump table to address various main states in this application. More... | |
Functions | |
void | app_alert () |
static void | app_task (void) |
Application task. More... | |
void | config_node_ib (void) |
Function to init the information base for device. More... | |
void | performance_analyzer_task (void) |
This task needs to be called in a while(1) for performing Performance Analyzer tasks. More... | |
void | set_main_state (main_state_t state, void *arg) |
Function to set the main state of state machine. More... | |
void | tal_ed_end_cb (uint8_t energy_level) |
User call back function for finished ED Scan. More... | |
void | tal_rx_frame_cb (frame_info_t *frame) |
User call back function for frame reception. More... | |
void | tal_tx_frame_done_cb (retval_t status, frame_info_t *frame) |
User call back function for frame transmission. More... | |
retval_t | transmit_frame (uint8_t dst_addr_mode, uint8_t *dst_addr, uint8_t src_addr_mode, uint8_t msdu_handle, uint8_t *payload, uint16_t payload_length, uint8_t ack_req) |
Function to transmit frames as per 802.15.4 std. More... | |
Variables | |
void(* | state_function_t::func_ed_end_cb )(uint8_t energy_level) |
void(* | state_function_t::func_main_state_exit )(void) |
void(* | state_function_t::func_main_state_init )(void *arg) |
void(* | state_function_t::func_rx_frame_cb )(frame_info_t *frame) |
void(* | state_function_t::func_sub_state_set )(uint8_t state, void *arg) |
void(* | state_function_t::func_task )(void) |
void(* | state_function_t::func_tx_frame_done_cb )(retval_t status, frame_info_t *frame) |
volatile node_ib_t | node_info |
static state_function_t const | state_table [NUM_MAIN_STATES] |
static uint8_t | storage_buffer [LARGE_BUFFER_SIZE] |
void app_alert | ( | void | ) |
References delay_us, LED0, LED0_GPIO, and LED_Toggle.
Referenced by app_timers_init(), and init_state_init().
|
static |
Application task.
References state_function_t::func_task, if(), and node_ib_t::main_state.
Referenced by performance_analyzer_task().
void config_node_ib | ( | void | ) |
Function to init the information base for device.
References node_ib_t::configure_mode, node_ib_t::msg_seq_num, node_ib_t::peer_found, node_ib_t::peer_short_addr, storage_buffer, node_ib_t::transmitting, and node_ib_t::tx_frame_info.
Referenced by init_state_init().
void performance_analyzer_task | ( | void | ) |
This task needs to be called in a while(1) for performing Performance Analyzer tasks.
References app_task(), pal_task(), serial_data_handler(), and tal_task().
Referenced by main().
void set_main_state | ( | main_state_t | state, |
void * | arg | ||
) |
Function to set the main state of state machine.
state | main state to be set |
arg | argument passed in the state |
References state_function_t::func_main_state_exit, state_function_t::func_main_state_init, state_function_t::func_sub_state_set, node_ib_t::main_state, and node_ib_t::transmitting.
Referenced by app_peer_conf_tmr_handler_cb(), app_reset(), handle_incoming_msg(), peer_req_send_task(), peer_rsp_rcvd_init(), peer_rsp_rcvd_tx_cb(), peer_rsp_send_init(), peer_rsp_send_tx_done_cb(), performance_analyzer_init(), range_test_tx_off_task(), range_test_tx_on_task(), wait_for_conf_rx_cb(), wait_for_event_rx_cb(), and wait_for_event_task().
void tal_ed_end_cb | ( | uint8_t | energy_level | ) |
User call back function for finished ED Scan.
energy_level | Measured energy level during ED Scan |
References state_function_t::func_ed_end_cb, and node_ib_t::main_state.
Referenced by ed_scan_done().
void tal_rx_frame_cb | ( | frame_info_t * | rx_frame | ) |
User call back function for frame reception.
rx_frame | Pointer to received frame structure of type frame_info_t or to received frame array |
References bmm_buffer_free(), frame_info_tag::buffer_header, state_function_t::func_rx_frame_cb, and node_ib_t::main_state.
Referenced by process_incoming_frame().
void tal_tx_frame_done_cb | ( | retval_t | status, |
frame_info_t * | frame | ||
) |
User call back function for frame transmission.
status | Status of frame transmission attempt |
frame | Pointer to frame structure of type frame_info_t |
References state_function_t::func_tx_frame_done_cb, node_ib_t::main_state, and node_ib_t::transmitting.
Referenced by tx_done_handling().
retval_t transmit_frame | ( | uint8_t | dst_addr_mode, |
uint8_t * | dst_addr, | ||
uint8_t | src_addr_mode, | ||
uint8_t | msdu_handle, | ||
uint8_t * | payload, | ||
uint16_t | payload_length, | ||
uint8_t | ack_req | ||
) |
Function to transmit frames as per 802.15.4 std.
dst_addr_mode | destination address mode - can be 16 or 64 bit |
dst_addr | destination address |
src_addr_mode | source address mode - can be 16 or 64 bit |
msdu_handle | msdu handle for the upper layers to track packets |
payload | data payload pointer |
payload_length | data length |
ack_req | specifies ack requested for frame if set to 1 |
References CCPU_ENDIAN_TO_LE16, convert_16_bit_to_byte_array(), convert_64_bit_to_byte_array(), CSMA_UNSLOTTED, DST_PAN_ID, EXT_ADDR_LEN, FAILURE, FCF_2_SOURCE_ADDR_OFFSET, FCF_ACK_REQUEST, FCF_FRAMETYPE_DATA, FCF_LEN, FCF_LONG_ADDR, FCF_PAN_ID_COMPRESSION, FCF_SET_DEST_ADDR_MODE, FCF_SET_SOURCE_ADDR_MODE, FCF_SHORT_ADDR, FCS_LEN, FRAME_OVERHEAD, LARGE_BUFFER_SIZE, frame_info_tag::mpdu, frame_info_tag::msduHandle, node_ib_t::msg_seq_num, PAN_ID_LEN, PL_POS_DST_ADDR_START, SHORT_ADDR_LEN, SRC_PAN_ID, tal_pib, tal_tx_frame(), node_ib_t::transmitting, and node_ib_t::tx_frame_info.
Referenced by range_test_frame_tx(), send_crc_set_req(), send_crc_status_req(), send_crc_status_rsp(), send_disconnect_command(), send_identify_command(), send_parameters_changed(), send_peer_conf(), send_peer_info_req(), send_peer_info_rsp(), send_peer_req(), send_peer_rsp(), send_per_test_start_cmd(), send_range_test_marker_cmd(), send_range_test_marker_rsp(), send_range_test_rsp(), send_range_test_start_cmd(), send_range_test_stop_cmd(), send_remote_cmd(), send_remote_reply_cmd(), send_result_req(), send_result_rsp(), and send_set_default_config_command().
void(* state_function_t::func_ed_end_cb)(uint8_t energy_level) |
Referenced by tal_ed_end_cb().
void(* state_function_t::func_main_state_exit)(void) |
Referenced by set_main_state().
void(* state_function_t::func_main_state_init)(void *arg) |
Referenced by set_main_state().
void(* state_function_t::func_rx_frame_cb)(frame_info_t *frame) |
Referenced by tal_rx_frame_cb().
void(* state_function_t::func_sub_state_set)(uint8_t state, void *arg) |
Referenced by set_main_state().
void(* state_function_t::func_task)(void) |
Referenced by app_task().
void(* state_function_t::func_tx_frame_done_cb)(retval_t status, frame_info_t *frame) |
Referenced by tal_tx_frame_done_cb().
volatile node_ib_t node_info |
Referenced by configuration_mode_selection(), configure_frame_sending(), configure_range_test_frame_sending(), disconnect_peer_node(), handle_incoming_msg(), peer_req_send_task(), peer_rsp_rcvd_exit(), peer_rsp_rcvd_init(), peer_rsp_rcvd_tx_cb(), peer_search_initiator_exit(), peer_search_initiator_init(), peer_search_initiator_rx_cb(), peer_search_initiator_set_sub_state(), peer_search_initiator_task(), peer_search_initiator_tx_done_cb(), peer_search_receptor_exit(), peer_search_receptor_init(), peer_search_receptor_rx_cb(), peer_search_receptor_set_sub_state(), peer_search_receptor_task(), peer_search_receptor_tx_done_cb(), per_mode_initiator_init(), per_mode_initiator_task(), per_mode_initiator_tx_done_cb(), per_mode_receptor_task(), per_mode_receptor_tx_done_cb(), pktstream_test(), pulse_cw_transmission(), range_test_frame_tx(), range_test_timer_handler_cb(), rx_on_test(), send_crc_set_req(), send_crc_status_req(), send_crc_status_rsp(), send_disconnect_command(), send_identify_command(), send_parameters_changed(), send_peer_conf(), send_peer_info_req(), send_peer_info_rsp(), send_peer_req(), send_peer_rsp(), send_per_test_start_cmd(), send_range_test_marker_cmd(), send_range_test_marker_rsp(), send_range_test_rsp(), send_range_test_start_cmd(), send_range_test_stop_cmd(), send_remote_cmd(), send_remote_reply_cmd(), send_result_req(), send_result_rsp(), send_set_default_config_command(), serial_data_handler(), start_cw_transmission(), stop_cw_transmission(), stop_pkt_streaming(), and wait_for_conf_rx_cb().
|
static |
|
static |
Referenced by config_node_ib().