SOEM  v1.4.0
Macros | Functions
ethercatconfig.h File Reference

Headerfile for ethercatconfig.c. More...

Macros

#define EC_NODEOFFSET   0x1000
 
#define EC_TEMPNODE   0xffff
 

Functions

int ecx_config_init (ecx_contextt *context, uint8 usetable)
 
int ecx_config_map_group (ecx_contextt *context, void *pIOmap, uint8 group)
 
int ecx_config_overlap_map_group (ecx_contextt *context, void *pIOmap, uint8 group)
 
int ecx_recover_slave (ecx_contextt *context, uint16 slave, int timeout)
 
int ecx_reconfig_slave (ecx_contextt *context, uint16 slave, int timeout)
 

Detailed Description

Headerfile for ethercatconfig.c.

Macro Definition Documentation

◆ EC_NODEOFFSET

#define EC_NODEOFFSET   0x1000

◆ EC_TEMPNODE

#define EC_TEMPNODE   0xffff

Function Documentation

◆ ecx_config_init()

int ecx_config_init ( ecx_contextt *  context,
uint8  usetable 
)

Enumerate and init all slaves.

Parameters
[in]context= context struct
[in]usetable= TRUE when using configtable to init slaves, FALSE otherwise
Returns
Workcounter of slave discover datagram = number of slaves found

◆ ecx_config_map_group()

int ecx_config_map_group ( ecx_contextt *  context,
void *  pIOmap,
uint8  group 
)

Map all PDOs in one group of slaves to IOmap with Outputs/Inputs in sequential order (legacy SOEM way).

Parameters
[in]context= context struct
[out]pIOmap= pointer to IOmap
[in]group= group to map, 0 = all groups
Returns
IOmap size

◆ ecx_config_overlap_map_group()

int ecx_config_overlap_map_group ( ecx_contextt *  context,
void *  pIOmap,
uint8  group 
)

Map all PDOs in one group of slaves to IOmap with Outputs/Inputs overlapping. NOTE: Must use this for TI ESC when using LRW.

Parameters
[in]context= context struct
[out]pIOmap= pointer to IOmap
[in]group= group to map, 0 = all groups
Returns
IOmap size

◆ ecx_reconfig_slave()

int ecx_reconfig_slave ( ecx_contextt *  context,
uint16  slave,
int  timeout 
)

Reconfigure slave.

Parameters
[in]context= context struct
[in]slave= slave to reconfigure
[in]timeout= local timeout f.e. EC_TIMEOUTRET3
Returns
Slave state

◆ ecx_recover_slave()

int ecx_recover_slave ( ecx_contextt *  context,
uint16  slave,
int  timeout 
)

Recover slave.

Parameters
[in]context= context struct
[in]slave= slave to recover
[in]timeout= local timeout f.e. EC_TIMEOUTRET3
Returns
>0 if successful