这里的mbox不是八位吗,为什么可以mbox= CAN_Transmit(CAN1, &TxMessage); TxMessage有很多位的

2019-10-16 04:49发布

u8 Can_Send_Msg(u8* msg,u8 len)
{       
        u8 mbox;
        u16 i=0;
        CanTxMsg TxMessage;
        TxMessage.StdId=0x12;                        // 标准标识符
        TxMessage.ExtId=0x12;                        // 设置扩展标示符
        TxMessage.IDE=CAN_Id_Standard;         // 标准帧
        TxMessage.RTR=CAN_RTR_Data;                // 数据帧
        TxMessage.DLC=len;                                // 要发送的数据长度
        for(i=0;i<len;i++)
        TxMessage.Data=msg;                                  
        mbox= CAN_Transmit(CAN1, &TxMessage);  
        i=0;
        while((CAN_TransmitStatus(CAN1, mbox)==CAN_TxStatus_Failed)&&(i<0XFFF))i++;        //等待发送结束
        if(i>=0XFFF)return 1;
        return 0;         
}

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。