STM32 CAN 发送和接收 寄存器变化过程
发送:
区分 Nonautomatic retransmission mode(禁止自动重发) 和 自动重发模式
每次请求发送 会得到三种结果: SEND OK \ arlost仲裁失败 \ 发送失败
自动重发模式:
收到发送请求之后,TXRQ = 1; 无论是仲裁失败或发送失败, 都会自动重发, 直到发送成功. TXOK=1, 硬件认为完成请求后 RQCP = 1;
只能把RQCP置1,作为发送请求的完成.
禁止自动重发模式:
收到发送请求之后,TXRQ = 1; 如果仲裁失败 ALST标志位置1
如果发送失败 TERR标志位置1
如果发送成功 TXOK标志位置1.
硬件认为完成请求后 RQCP = 1; 只能把RQCP置1,作为发送请求的完成.
接收: