在标准帧连续发送都能成功。
在扩展帧连续发送就第一次能成功。
单步调试没有问题。
到这发送位不复位 CANx->sTxMailBox[transmit_mailbox].TIR |= ((TxMessage->ExtId << 3) | \
TxMessage->IDE | \
TxMessage->RTR);
标准帧这就没问题 CANx->sTxMailBox[transmit_mailbox].TIR |= ((TxMessage->StdId << 21) | \
TxMessage->RTR);
把 CANx->sTxMailBox[transmit_mailbox].TIR |= ((TxMessage->ExtId << 3) | \ TxMessage->IDE | \
TxMessage->RTR);
改成 CANx->sTxMailBox[transmit_mailbox].TIR |= ((TxMessage->ExtId << 3) | \
TxMessage->IDE &
0xfffffffe;
就没问题了。
请问正常的发送位在哪清零?
|