This interface is designed for realtime modules that want to use EtherCAT. There are functions to request a master, to map process data, to communicate with slaves via CoE and to configure and activate the bus.
|
Functions |
| ec_slave_t * | ecrt_domain_register_pdo (ec_domain_t *domain, const char *address, uint32_t vendor_id, uint32_t product_code, uint16_t pdo_index, uint8_t pdo_subindex, void **data_ptr) |
| | Registers a PDO in a domain.
|
| int | ecrt_domain_register_pdo_list (ec_domain_t *domain, const ec_pdo_reg_t *pdos) |
| | Registeres a bunch of data fields.
|
| void | ecrt_domain_process (ec_domain_t *domain) |
| | Processes received process data and requeues the domain datagram(s).
|
| int | ecrt_domain_state (const ec_domain_t *domain) |
| | Returns the state of a domain.
|
| ec_domain_t * | ecrt_master_create_domain (ec_master_t *master) |
| | Creates a domain.
|
| int | ecrt_master_activate (ec_master_t *master) |
| | Configures all slaves and leads them to the OP state.
|
| void | ecrt_master_deactivate (ec_master_t *master) |
| | Resets all slaves to INIT state.
|
| void | ecrt_master_send (ec_master_t *master) |
| | Asynchronous sending of datagrams.
|
| void | ecrt_master_receive (ec_master_t *master) |
| | Asynchronous receiving of datagrams.
|
| void | ecrt_master_prepare (ec_master_t *master) |
| | Prepares synchronous IO.
|
| void | ecrt_master_run (ec_master_t *master) |
| | Does all cyclic master work.
|
| ec_slave_t * | ecrt_master_get_slave (const ec_master_t *master, const char *address) |
| | Translates an ASCII coded bus-address to a slave pointer.
|
| void | ecrt_master_callbacks (ec_master_t *master, int(*request_cb)(void *), void(*release_cb)(void *), void *cb_data) |
| | Sets the locking callbacks.
|
| ec_master_t * | ecrt_request_master (unsigned int master_index) |
| | Reserves an EtherCAT master for realtime operation.
|
| void | ecrt_release_master (ec_master_t *master) |
| | Releases a reserved EtherCAT master.
|
| int | ecrt_slave_conf_sdo8 (ec_slave_t *slave, uint16_t sdo_index, uint8_t sdo_subindex, uint8_t value) |
| int | ecrt_slave_conf_sdo16 (ec_slave_t *slave, uint16_t sdo_index, uint8_t sdo_subindex, uint16_t value) |
| int | ecrt_slave_conf_sdo32 (ec_slave_t *slave, uint16_t sdo_index, uint8_t sdo_subindex, uint32_t value) |
| int | ecrt_slave_pdo_size (ec_slave_t *slave, uint16_t pdo_index, uint8_t pdo_subindex, size_t size) |