ATMEL PLC PHY TX Test Console Application.
Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.
#include <stdio.h>
#include "string.h"
#include "asf.h"
#include "conf_pplc_if.h"
#include "conf_example.h"
#include "phy_embedded_app.h"
#include "atpl230.h"
#include "FreeRTOS.h"
#include "task.h"
#include "semphr.h"
#include "queue.h"
Macros | |
#define | APP_CHECK_RESET_PERIOD 5 |
#define | APP_CHECK_RESET_VALUE 0xA500005A |
Functions | |
static void | _reset_plc_modem (void) |
Reset internal PLC Modem. More... | |
static void | prvAppPhyTask (void *pvParameters) |
static void | prvGetRxTask (void *pvparameters) |
static void | prvGetTxResultTask (void *pvParameters) |
void | vPhyEmbeddedAppTask (txPhyEmbeddedConfig_t *xAppPhyCfgTx) |
Variables | |
static uint8_t | sna [6] = {0x00, 0x80, 0xE1, 0x00, 0x00, 0x6F} |
static uint8_t | uc_data_buf [800] |
xTaskHandle | xappConsoleHand |
xTaskHandle | xappPhyHand |
xTaskHandle | xappRxHand |
xTaskHandle | xappTxResHand |
static txPhyEmbeddedConfig_t | xTxPhyCfg |
#define APP_CHECK_RESET_PERIOD 5 |
#define APP_CHECK_RESET_VALUE 0xA500005A |
Referenced by prvAppPhyTask().
|
static |
Reset internal PLC Modem.
References gpio_set_pin_high, gpio_set_pin_low, ioport_set_pin_level(), PPLC_ARST_ACTIVE_LEVEL, PPLC_ARST_GPIO, and PPLC_ARST_INACTIVE_LEVEL.
Referenced by prvAppPhyTask().
|
static |
References _reset_plc_modem(), APP_CHECK_RESET_VALUE, CONSOLE_UART, GPBR0, gpbr_read(), gpbr_write(), HI_STATE, PHY_APP_CMD_MENU_START_MODE, phy_get_cfg_param(), PHY_ID_CFG_AUTODETECT_BRANCH, PHY_ID_CFG_COUPLING_BOARD, PHY_ID_CFG_IMPEDANCE, PHY_ID_CFG_TXRX_CHANNEL, phy_mac_crc_disable(), phy_reset(), PHY_RESET_SOFT_TYPE, phy_set_cfg_param(), phy_tx_frame(), rstc_start_software_reset(), uart_read(), txPhyEmbeddedConfig_t::uc_autodetect, txPhyEmbeddedConfig_t::uc_channel, txPhyEmbeddedConfig_t::uc_coupling, txPhyEmbeddedConfig_t::uc_impedance, txPhyEmbeddedConfig_t::ul_tx_period, UNUSED, vTaskDelayUntil(), wdt_restart(), txPhyEmbeddedConfig_t::xPhyMsg, and xTaskGetTickCount().
Referenced by vPhyEmbeddedAppTask().
|
static |
References xPhyMsgRx_t::data_buf, xPhyMsgRx_t::data_len, LED_Toggle, phy_rx_frame_cb(), PRIME_APP_PHY_TIMER_RATE, uc_data_buf, unused, vTaskDelayUntil(), and xTaskGetTickCount().
Referenced by vPhyEmbeddedAppTask().
|
static |
References ATPL230_TXRXBUF_RESULT_BUSY_CHANNEL, ATPL230_TXRXBUF_RESULT_INPROCESS, ATPL230_TXRXBUF_RESULT_INVALID_SCHEME, ATPL230_TXRXBUF_RESULT_PREV_TX_INPROCESS, ATPL230_TXRXBUF_RESULT_RX_INPROCESS, ATPL230_TXRXBUF_RESULT_SUCCESSFUL, ATPL230_TXRXBUF_RESULT_TIMEOUT, ATPL230_TXRXBUF_RESULT_WRONG_LEN, phy_tx_frame_result_cb(), xPhyMsgTxResult_t::uc_result, txPhyEmbeddedConfig_t::ul_tx_period, UNUSED, vTaskDelayUntil(), and xTaskGetTickCount().
Referenced by vPhyEmbeddedAppTask().
void vPhyEmbeddedAppTask | ( | txPhyEmbeddedConfig_t * | xAppPhyCfgTx | ) |
References phy_mac_crc_disable(), phy_set_cfg_param(), prvAppPhyTask(), prvGetRxTask(), prvGetTxResultTask(), REG_ATPL230_SNA0, sna, TASK_APP_GET_RX_PRIO, TASK_APP_GET_RX_STACK, TASK_APP_GET_TX_RESULT_PRIO, TASK_APP_GET_TX_RESULT_STACK, TASK_APP_PHY_PRIO, TASK_APP_PHY_STACK, xappPhyHand, xappRxHand, xappTxResHand, and xTaskCreate.
Referenced by execute_tx_test().
|
static |
Referenced by vPhyEmbeddedAppTask().
|
static |
Referenced by pplc_if_write16(), pplc_if_write32(), and prvGetRxTask().
xTaskHandle xappConsoleHand |
xTaskHandle xappPhyHand |
Referenced by vPhyEmbeddedAppTask().
xTaskHandle xappRxHand |
Referenced by vPhyEmbeddedAppTask().
xTaskHandle xappTxResHand |
Referenced by vPhyEmbeddedAppTask().
|
static |