|
IgH EtherCAT Master
1.6.8
|
EtherCAT slave structure. More...
Go to the source code of this file.
Data Structures | |
| struct | ec_slave_port_t |
| Slave port. More... | |
| struct | ec_sii_t |
| Slave information interface data. More... | |
| struct | ec_slave |
| EtherCAT slave. More... | |
Macros | |
| #define | EC_SLAVE_INFO(slave, fmt, args...) |
| Convenience macro for printing slave-specific information to syslog. More... | |
| #define | EC_SLAVE_ERR(slave, fmt, args...) |
| Convenience macro for printing slave-specific errors to syslog. More... | |
| #define | EC_SLAVE_WARN(slave, fmt, args...) |
| Convenience macro for printing slave-specific warnings to syslog. More... | |
| #define | EC_SLAVE_DBG(slave, level, fmt, args...) |
| Convenience macro for printing slave-specific debug messages to syslog. More... | |
Functions | |
| void | ec_slave_init (ec_slave_t *, ec_master_t *, ec_device_index_t, uint16_t, uint16_t) |
| Slave constructor. More... | |
| void | ec_slave_clear (ec_slave_t *) |
| Slave destructor. More... | |
| void | ec_slave_clear_sync_managers (ec_slave_t *) |
| Clear the sync manager array. | |
| void | ec_slave_request_state (ec_slave_t *, ec_slave_state_t) |
| Request a slave state and resets the error flag. | |
| void | ec_slave_set_state (ec_slave_t *, ec_slave_state_t) |
| Sets the application state of a slave. | |
| int | ec_slave_fetch_sii_strings (ec_slave_t *, const uint8_t *, size_t) |
| Fetches data from a STRING category. More... | |
| int | ec_slave_fetch_sii_general (ec_slave_t *, const uint8_t *, size_t) |
| Fetches data from a GENERAL category. More... | |
| int | ec_slave_fetch_sii_syncs (ec_slave_t *, const uint8_t *, size_t) |
| Fetches data from a SYNC MANAGER category. More... | |
| int | ec_slave_fetch_sii_pdos (ec_slave_t *, const uint8_t *, size_t, ec_direction_t) |
| Fetches data from a [RT]xPDO category. More... | |
| ec_sync_t * | ec_slave_get_sync (ec_slave_t *, uint8_t) |
| Get the sync manager given an index. More... | |
| void | ec_slave_sdo_dict_info (const ec_slave_t *, unsigned int *, unsigned int *) |
| Counts the total number of SDOs and entries in the dictionary. | |
| ec_sdo_t * | ec_slave_get_sdo (ec_slave_t *, uint16_t) |
| Get an SDO from the dictionary. More... | |
| const ec_sdo_t * | ec_slave_get_sdo_const (const ec_slave_t *, uint16_t) |
| Get an SDO from the dictionary. More... | |
| const ec_sdo_t * | ec_slave_get_sdo_by_pos_const (const ec_slave_t *, uint16_t) |
| Get an SDO from the dictionary, given its position in the list. More... | |
| uint16_t | ec_slave_sdo_count (const ec_slave_t *) |
| Get the number of SDOs in the dictionary. More... | |
| const ec_pdo_t * | ec_slave_find_pdo (const ec_slave_t *, uint16_t) |
| Finds a mapped PDO. More... | |
| void | ec_slave_attach_pdo_names (ec_slave_t *) |
| Attach PDO names. | |
| void | ec_slave_calc_port_delays (ec_slave_t *) |
| Calculates the port transmission delays. | |
| void | ec_slave_calc_transmission_delays_rec (ec_slave_t *, uint32_t *) |
| Recursively calculates transmission delays. | |
EtherCAT slave structure.
Definition in file slave.h.
| #define EC_SLAVE_INFO | ( | slave, | |
| fmt, | |||
| args... | |||
| ) |
Convenience macro for printing slave-specific information to syslog.
This will print the message in fmt with a prefixed "EtherCAT <INDEX>-<POSITION>: ", where INDEX is the master index and POSITION is the slave's ring position.
| slave | EtherCAT slave |
| fmt | format string (like in printf()) |
| args | arguments (optional) |
| #define EC_SLAVE_ERR | ( | slave, | |
| fmt, | |||
| args... | |||
| ) |
Convenience macro for printing slave-specific errors to syslog.
This will print the message in fmt with a prefixed "EtherCAT <INDEX>-<POSITION>: ", where INDEX is the master index and POSITION is the slave's ring position.
| slave | EtherCAT slave |
| fmt | format string (like in printf()) |
| args | arguments (optional) |
| #define EC_SLAVE_WARN | ( | slave, | |
| fmt, | |||
| args... | |||
| ) |
Convenience macro for printing slave-specific warnings to syslog.
This will print the message in fmt with a prefixed "EtherCAT <INDEX>-<POSITION>: ", where INDEX is the master index and POSITION is the slave's ring position.
| slave | EtherCAT slave |
| fmt | format string (like in printf()) |
| args | arguments (optional) |
| #define EC_SLAVE_DBG | ( | slave, | |
| level, | |||
| fmt, | |||
| args... | |||
| ) |
Convenience macro for printing slave-specific debug messages to syslog.
This will print the message in fmt with a prefixed "EtherCAT <INDEX>-<POSITION>: ", where INDEX is the master index and POSITION is the slave's ring position.
| slave | EtherCAT slave |
| level | Debug level. Master's debug level must be >= level for output. |
| fmt | format string (like in printf()) |
| args | arguments (optional) |
| void ec_slave_init | ( | ec_slave_t * | slave, |
| ec_master_t * | master, | ||
| ec_device_index_t | dev_idx, | ||
| uint16_t | ring_position, | ||
| uint16_t | station_address | ||
| ) |
| void ec_slave_clear | ( | ec_slave_t * | slave | ) |
| int ec_slave_fetch_sii_strings | ( | ec_slave_t * | slave, |
| const uint8_t * | data, | ||
| size_t | data_size | ||
| ) |
| int ec_slave_fetch_sii_general | ( | ec_slave_t * | slave, |
| const uint8_t * | data, | ||
| size_t | data_size | ||
| ) |
| int ec_slave_fetch_sii_syncs | ( | ec_slave_t * | slave, |
| const uint8_t * | data, | ||
| size_t | data_size | ||
| ) |
| int ec_slave_fetch_sii_pdos | ( | ec_slave_t * | slave, |
| const uint8_t * | data, | ||
| size_t | data_size, | ||
| ec_direction_t | dir | ||
| ) |
| ec_sync_t* ec_slave_get_sync | ( | ec_slave_t * | slave, |
| uint8_t | sync_index | ||
| ) |
| ec_sdo_t* ec_slave_get_sdo | ( | ec_slave_t * | slave, |
| uint16_t | index | ||
| ) |
| const ec_sdo_t* ec_slave_get_sdo_const | ( | const ec_slave_t * | slave, |
| uint16_t | index | ||
| ) |
| const ec_sdo_t* ec_slave_get_sdo_by_pos_const | ( | const ec_slave_t * | slave, |
| uint16_t | sdo_position | ||
| ) |
| uint16_t ec_slave_sdo_count | ( | const ec_slave_t * | slave | ) |
| const ec_pdo_t* ec_slave_find_pdo | ( | const ec_slave_t * | slave, |
| uint16_t | index | ||
| ) |