//********Poll CAN Comm: if message pending, handle it.
//CRITICAL: currently overrunning from the host is prohibited
if (nBLDC_status & (1<<CANMsgTxPending))
ProcessCANTxMsg();
else
{
lMainInt32R0 = ECanaRegs.CANRMP.all & (1<<CANMailBoxRv_set);
if (lMainInt32R0 != 0) //if non-zero, there is a pending message
{
ECanaRegs.CANRMP.all = lMainInt32R0; //clear the RMP bit
ProcessCANRvMsg();
nBLDC_status |= (1<<CANMsgTxPending);
}
}
不懂nBLDC_status & (1<<CANMsgTxPending)为啥左移 |