8字节can通信如何做?
2010年11月01日 10:02 发布者:xiepeilin
例程里面的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=0x00;
} CAN_Receive(CAN1,CAN_FIFO0, &RxMessage);
if((RxMessage.ExtId==0x1234) && (RxMessage.IDE==CAN_ID_EXT)
&& (RxMessage.DLC==8)) {
ret = 1;
}
else
{
ret = 0;
}
}
网友评论
joshuahu 2010年12月25日
can总线通信比较稳定 就是做起来比较麻烦
can总线通信比较稳定 就是做起来比较麻烦
joshuahu 2010年12月25日
我想顶 没办法顶啊
我想顶 没办法顶啊
lxf2299 2011年11月08日
学习了,
学习了,
还 是自己顶吧