2016-11-23 08:15 AM
I'm working with CAN bus and sometimes my code stop receiving CAN Messages, only send.
The function below/* Receive */
if (HAL_CAN_Receive_IT(CanHandle2, CAN_FIFO0) != HAL_OK)
{
/* Reception Error */
}
returns the HAL_CAN_STATE_BUSY_TX , and always stay there.
To transmit I don't use interrupt like example code CAN_Networking.
I searched in the forum and found any solution, only others related posts.
Is there any solution for this?
#can
2016-11-29 06:59 AM
Hi xrada,
I think It's related to a lock/unlock mechanism issue in the Cube library like this
. This process is under review and a rework will be implemented. Meanwhile,the best approach would be simply removing the call to the lock and unlock in these two drivers as no critical section lock is really required for these drivers.-Hannibal-