|
IgH EtherCAT Master
1.5.2
|
EtherCAT Mailbox Gateway state machine. More...
Go to the source code of this file.
Macros | |
| #define | DEBUG_RETRIES 0 |
| Enable debug output for retries. | |
| #define | DEBUG_LONG 0 |
| Enable warning output if transfers take too long. | |
Functions | |
| void | ec_fsm_mbg_start (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| MBox Gateway state: START. More... | |
| void | ec_fsm_mbg_request (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| MBox Gateway: REQUEST. More... | |
| void | ec_fsm_mbg_check (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| MBox Gateway state: CHECK. More... | |
| void | ec_fsm_mbg_response (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| MBox Gateway state: RESPONSE. More... | |
| void | ec_fsm_mbg_response_data (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| MBox Gateway state: RESPONSE DATA. More... | |
| void | ec_fsm_mbg_end (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| State: END. More... | |
| void | ec_fsm_mbg_error (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| State: ERROR. More... | |
| void | ec_fsm_mbg_init (ec_fsm_mbg_t *fsm) |
| Constructor. More... | |
| void | ec_fsm_mbg_clear (ec_fsm_mbg_t *fsm) |
| Destructor. More... | |
| void | ec_fsm_mbg_transfer (ec_fsm_mbg_t *fsm, ec_slave_t *slave, ec_mbg_request_t *request) |
| Starts to transfer a mailbox gateway request to/from a slave. More... | |
| int | ec_fsm_mbg_exec (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| Executes the current state of the state machine. More... | |
| int | ec_fsm_mbg_success (const ec_fsm_mbg_t *fsm) |
| Returns, if the state machine terminated with success. More... | |
| int | ec_fsm_mbg_prepare_start (ec_fsm_mbg_t *fsm, ec_datagram_t *datagram) |
| Prepare a request. More... | |
| int | mbox_type_to_prot (uint8_t mbox_type, uint8_t *mbox_prot) |
| convert mailbox type number to mailbox prototype flag More... | |
EtherCAT Mailbox Gateway state machine.
Definition in file fsm_mbox_gateway.c.
| void ec_fsm_mbg_start | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
MBox Gateway state: START.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 212 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_request | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
MBox Gateway: REQUEST.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 271 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_check | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
MBox Gateway state: CHECK.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 344 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_response | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
MBox Gateway state: RESPONSE.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 417 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_response_data | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
MBox Gateway state: RESPONSE DATA.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 462 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_end | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
State: END.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 578 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_error | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
State: ERROR.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 565 of file fsm_mbox_gateway.c.
| void ec_fsm_mbg_init | ( | ec_fsm_mbg_t * | fsm | ) |
| void ec_fsm_mbg_clear | ( | ec_fsm_mbg_t * | fsm | ) |
| void ec_fsm_mbg_transfer | ( | ec_fsm_mbg_t * | fsm, |
| ec_slave_t * | slave, | ||
| ec_mbg_request_t * | request | ||
| ) |
Starts to transfer a mailbox gateway request to/from a slave.
| fsm | State machine. |
| slave | EtherCAT slave. |
| request | MBox Gateway request. |
Definition at line 89 of file fsm_mbox_gateway.c.
| int ec_fsm_mbg_exec | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Executes the current state of the state machine.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 107 of file fsm_mbox_gateway.c.
| int ec_fsm_mbg_success | ( | const ec_fsm_mbg_t * | fsm | ) |
Returns, if the state machine terminated with success.
| fsm | Finite state machine |
Definition at line 131 of file fsm_mbox_gateway.c.
| int ec_fsm_mbg_prepare_start | ( | ec_fsm_mbg_t * | fsm, |
| ec_datagram_t * | datagram | ||
| ) |
Prepare a request.
| fsm | Finite state machine. |
| datagram | Datagram to use. |
Definition at line 146 of file fsm_mbox_gateway.c.
| int mbox_type_to_prot | ( | uint8_t | mbox_type, |
| uint8_t * | mbox_prot | ||
| ) |
convert mailbox type number to mailbox prototype flag
Definition at line 189 of file fsm_mbox_gateway.c.