EtherNet/IP™ Adapter  2.01.00
appProduct.c

EtherNet/IP™ Adapter Example Application.

Author
KUNBUS GmbH
Date
2021-06-09
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
#include <stdbool.h>
#include <string.h>
#include <stdarg.h>
#include <api/EI_API.h>
#include <api/EI_API_def.h>
#include <osal.h>
#include <osal_error.h>
#include <hwal.h>
#include <ti_drivers_config.h>
#include <ti_board_config.h>
#include <board.h>
#include <kbTrace.h>
#include <CMN_os.h>
#include <CMN_app.h>
#include <CMN_CPU_api.h>
#include <drivers/CUST_drivers.h>
#include <appWebServer.h>
#include <app.h>
int main(
int argc,
char* argv[])
{
uint32_t err;
APP_SParams_t params;
/* Application configuration. */
params.application.taskPrio = OSAL_TASK_ePRIO_EIP_MAIN;
/* HWAL configuration. */
params.hwal.taskPrio = OSAL_TASK_ePRIO_EIP_HWAL_HIGH; // Value change will have no impact.
/* LWIP configuration */
params.lwip.taskPrio = OSAL_TASK_ePRIO_EIP_LWIP_TCPIP; // Value change will have no impact.
/* EtherNet/IP Adapter configuration */
params.adapter.taskPrioPacket = OSAL_TASK_ePRIO_EIP_PACKET;
params.adapter.taskPrioStatistic = OSAL_TASK_ePRIO_EIP_STATISTIC;
/* Custom drivers configuration - PRU-ICSS. */
params.customDrivers.pruIcss.instance = PRU_ICSS_BLOCK_INSTANCE;
params.customDrivers.pruIcss.ethPhy.instance_0 = PRU_ICSS_ETHPHY_0_INSTANCE;
params.customDrivers.pruIcss.ethPhy.instance_1 = PRU_ICSS_ETHPHY_1_INSTANCE;
params.customDrivers.pruIcss.ethPhy.taskPrioPhyMdixTask = OSAL_TASK_ePRIO_EIP_PHYMDIX;
params.customDrivers.pruIcss.timeSync.taskPrioDelayRqTx = OSAL_TASK_ePRIO_EIP_TIMESYNC_DEL,
params.customDrivers.pruIcss.timeSync.taskPrioTxTimeStamp = OSAL_TASK_ePRIO_EIP_TIMESYNC_TS,
params.customDrivers.pruIcss.timeSync.taskPrioNRT = OSAL_TASK_ePRIO_EIP_TIMESYNC_NRT,
params.customDrivers.pruIcss.timeSync.taskPrioBackground = OSAL_TASK_ePRIO_EIP_TIMESYNC_BAC,
/* Custom drivers configuration - EEPROM. */
params.customDrivers.eeprom.taskPrio = OSAL_TASK_ePRIO_EIP_EEPROM,
/* Custom drivers configuration - FLASH. */
params.customDrivers.flash.taskPrio = OSAL_TASK_ePRIO_EIP_FLASH,
#if (defined CPU_LOAD_MONITOR) && (1==CPU_LOAD_MONITOR)
/* Web Server configuration. */
params.webServer.taskPrio = OSAL_TASK_ePRIO_EIP_WEBSERVER;
/* CPU load configuration. */
params.cpuLoad.taskPrio = OSAL_TASK_ePRIO_EIP_CPULOAD;
params.cpuLoad.output = CMN_CPU_API_eOUT_NONE;
#endif
CMN_OS_init ();
OSAL_registerErrorHandler (EI_APP_osErrorHandlerCb);
#if defined(QUICK_CONNECT)
OSAL_printfSuppress(true);
#endif
err = OSAL_init ();
if (err != OSAL_NO_ERROR)
{
goto laError;
}
CMN_APP_mainCreate(EI_APP_mainTask, &params, params.application.taskPrio);
OSAL_startOs ();
return (0);
//-------------------------------------------------------------------------------------------------
laError:
return (-1);
}
OSAL_TASK_EPriority_t taskPrioPacket
Definition: app.h:60
OSAL_TASK_EPriority_t taskPrioStatistic
Definition: app.h:61
OSAL_TASK_EPriority_t taskPrio
Definition: app.h:45
OSAL_TASK_EPriority_t taskPrio
Definition: app.h:50
OSAL_TASK_EPriority_t taskPrio
Definition: app.h:55
CUST_DRIVERS_SInit_t customDrivers
Definition: app.h:70
APP_SAdapter_t adapter
Definition: app.h:69
APP_SLwip_t lwip
Definition: app.h:68
APP_SHwal_t hwal
Definition: app.h:67
APP_SApplication_t application
Definition: app.h:66
Definition: app.h:65
OSAL_TASK_EPriority_t taskPrio
Definition: CUST_drivers.h:107
OSAL_TASK_EPriority_t taskPrio
Definition: CUST_drivers.h:112
CUST_DRIVERS_SInitPruIcss_t pruIcss
Definition: CUST_drivers.h:117
CUST_DRIVERS_SEepromParams_t eeprom
Definition: CUST_drivers.h:118
CUST_DRIVERS_SFlashParams_t flash
Definition: CUST_drivers.h:119
CUST_PHY_SInit_t ethPhy
Definition: CUST_drivers.h:101
uint32_t instance
Definition: CUST_drivers.h:100
CUST_DRIVERS_SInitTimeSync_t timeSync
Definition: CUST_drivers.h:102
OSAL_TASK_EPriority_t taskPrioBackground
Definition: CUST_drivers.h:95
OSAL_TASK_EPriority_t taskPrioDelayRqTx
Definition: CUST_drivers.h:92
OSAL_TASK_EPriority_t taskPrioNRT
Definition: CUST_drivers.h:94
OSAL_TASK_EPriority_t taskPrioTxTimeStamp
Definition: CUST_drivers.h:93
OSAL_TASK_EPriority_t taskPrioPhyMdixTask
Definition: CUST_phy.h:56
uint32_t instance_1
Definition: CUST_phy.h:55
uint32_t instance_0
Definition: CUST_phy.h:54