If a task or function wants to transmit a CAN frame by calling the function CanBusWrite()
while the configured CAN transmitter is busy, the following steps will be performed:
Panel | ||||
---|---|---|---|---|
| ||||
- The function
CanBusWrite()
is pending on the counting semaphore with the configured TxTimeout. The timeout must be set withCanBusIoCtl()
CANBUS_SET_TX_TIMEOUT
- If the function has the semaphore within the timeout, the given CAN frame is copied to the internal transmission queue. If a timeout error was detected, the function
CanBusWrite()
exits with an error-code.
...