feat(driver_twai): add tx wait all done api
This commit is contained in:
@@ -120,6 +120,7 @@ To reduce performance overhead caused by memory copying, the TWAI driver uses po
|
||||
.buffer_len = sizeof(send_buff), // Length of data to transmit
|
||||
};
|
||||
ESP_ERROR_CHECK(twai_node_transmit(node_hdl, &tx_msg, 0)); // Timeout = 0: returns immediately if queue is full
|
||||
ESP_ERROR_CHECK(twai_node_transmit_wait_all_done(node_hdl, -1)); // Wait for transmission to finish
|
||||
|
||||
In this example, :cpp:member:`twai_frame_t::header::id` specifies the ID of the message as 0x01. Message IDs are typically used to indicate the type of message in an application and also play a role in bus arbitration during transmission—lower values indicate higher priority on the bus. :cpp:member:`twai_frame_t::buffer` points to the memory address where the data to be transmitted is stored, and :cpp:member:`twai_frame_t::buffer_len` specifies the length of that data. The :cpp:func:`twai_node_transmit` function is thread-safe and can also be called from an ISR. When called from an ISR, the ``timeout`` parameter is ignored, and the function will not block.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user