The blocking nature of the code around the message reading is not welcome in tight control loops.
e.g.
bool VescUart::getVescValues(uint8_t canId)
Sends the get values command then calls receiveUartMessage which waits for a response before returning.
As the response messages are atomic can we just treat the getVescValue function as a request then have a processRX function that handles the response(s)?
The blocking nature of the code around the message reading is not welcome in tight control loops. e.g. bool VescUart::getVescValues(uint8_t canId) Sends the get values command then calls receiveUartMessage which waits for a response before returning.
As the response messages are atomic can we just treat the getVescValue function as a request then have a processRX function that handles the response(s)?