|
例程里面的can传输只有2个字节,8个字节的,怎么修改呢?我把那个can通信稍微修改了一下(粗体表示),变成8字节通信的,不知道是否正确,麻烦各位帮个忙,看看是否正确。非常感谢!
/* transmit 1 message */
TxMessage.StdId=0x00;
TxMessage.ExtId=0x1234;
TxMessage.IDE=CAN_ID_EXT;
TxMessage.RTR=CAN_RTR_DATA;
TxMessage.DLC=8;
for(i=0;i<8;i++)
{
TxMessage.Data=aa;
} CAN_Transmit(CAN1,&TxMessage);
void CAN1_RX0_IRQHandler(void)
{
CanRxMsg RxMessage;
RxMessage.StdId=0x00;
RxMessage.ExtId=0x00;
RxMessage.IDE=0;
RxMessage.DLC=0;
RxMessage.FMI=0;
for(j=0;j<8;j++)
{
RxMessage.Data[j]=0x00;
} CAN_Receive(CAN1,CAN_FIFO0, &RxMessage);
if((RxMessage.ExtId==0x1234) && (RxMessage.IDE==CAN_ID_EXT)
&& (RxMessage.DLC==8)) {
ret = 1;
}
else
{
ret = 0;
}
} |
|