Transmission while transmitter is busy
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:
CAN transmission while transmitter is busy
CanBusWrite()
is pending on the counting semaphore with the configured TxTimeout. The timeout must be set with CanBusIoCtl()
CANBUS_SET_TX_TIMEOUT
CanBusWrite()
exits with an error-code.Asynchronous to this actions, the transmission complete interrupt of the CAN controller shall activate the function CanBusTxHandler()
:
Write()
is used to pass the CAN frame to the CAN controller.End