Configuration module for EtherCAT master.
More...
#include <stdio.h>
#include <string.h>
#include "osal.h"
#include "oshw.h"
#include "ethercattype.h"
#include "ethercatbase.h"
#include "ethercatmain.h"
#include "ethercatcoe.h"
#include "ethercatsoe.h"
#include "ethercatconfig.h"
#include "ethercatconfiglist.h"
|
int | ec_findconfig (uint32 man, uint32 id) |
|
int | ecx_config_init (ecx_contextt *context, uint8 usetable) |
|
int | ecx_config_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) |
|
int | ec_config_init (uint8 usetable) |
|
int | ec_config_map_group (void *pIOmap, uint8 group) |
|
int | ec_config_map (void *pIOmap) |
|
int | ec_config (uint8 usetable, void *pIOmap) |
|
int | ec_recover_slave (uint16 slave, int timeout) |
|
int | ec_reconfig_slave (uint16 slave, int timeout) |
|
Configuration module for EtherCAT master.
After successful initialisation with ec_init() or ec_init_redundant() the slaves can be auto configured with this module.
#define EC_DEFAULTDOSM0 0x00010044 |
standard SM0 flags configuration for digital output slaves
#define EC_DEFAULTMBXSM0 0x00010026 |
standard SM0 flags configuration for mailbox slaves
#define EC_DEFAULTMBXSM1 0x00010022 |
standard SM1 flags configuration for mailbox slaves
#define EC_PRINT |
( |
|
... | ) |
do {} while (0) |
int ec_config |
( |
uint8 |
usetable, |
|
|
void * |
pIOmap |
|
) |
| |
Enumerate / map and init all slaves.
- Parameters
-
[in] | usetable | = TRUE when using configtable to init slaves, FALSE otherwise |
[out] | pIOmap | = pointer to IOmap |
- Returns
- Workcounter of slave discover datagram = number of slaves found
int ec_config_init |
( |
uint8 |
usetable | ) |
|
int ec_config_map |
( |
void * |
pIOmap | ) |
|
Map all PDOs from slaves to IOmap.
- Parameters
-
[out] | pIOmap | = pointer to IOmap |
- Returns
- IOmap size
int ec_config_map_group |
( |
void * |
pIOmap, |
|
|
uint8 |
group |
|
) |
| |
int ec_findconfig |
( |
uint32 |
man, |
|
|
uint32 |
id |
|
) |
| |
Find slave in standard configuration list ec_configlist[]
- Parameters
-
[in] | man | = manufacturer |
[in] | id | = ID |
- Returns
- index in ec_configlist[] when found, otherwise 0
int ec_reconfig_slave |
( |
uint16 |
slave, |
|
|
int |
timeout |
|
) |
| |
int ec_recover_slave |
( |
uint16 |
slave, |
|
|
int |
timeout |
|
) |
| |
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
int ecx_config_map_group |
( |
ecx_contextt * |
context, |
|
|
void * |
pIOmap, |
|
|
uint8 |
group |
|
) |
| |
Map all PDOs in one group of slaves to IOmap.
- Parameters
-
[in] | context | = context struct |
[out] | pIOmap | = pointer to IOmap |
[in] | group | = group to map, 0 = all groups |
- Returns
- IOmap size
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
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