发表于:2002-08-09 14:28:00
楼主
最近遇到一个有关CAN总线的通讯问题:
通过ADLINK的PCI7841和另外的设备进行通讯
7841采用的芯片为SJA1000,而设备采用的是INTEL82527。
而且:两边的数据包格式也不一样:
7841的数据包是这样:
typedef struct _tagCAN_PACKET
{
DWORD CAN_ID; // CAN id
BYTE rtr; // RTR bit
BYTE len; // Data length
BYTE data[8]; // Data
DWORD time; // Occur time (non use)
BYTE reserved; // future use
}CAN_PACKET;
而设备的数据包为:
typedef struct can_msg_struct /* Structure for storing message info*/
{
unsigned long ident; /* Standard (11 bit) identifier */
unsigned char dataRx[8]; /* dataRx[0] = MsgObjectBase + 7 */
int dataLength; /* Number of bytes of valid data (<9) */
int msgLost; /* TRUE if msg was lost, else FALSE */
} CAN_MSG_STRUCT;
请问双方是否可以通讯??