CAN communication function

CAN communication function

Function name

Function

onCanxStart

Enable CAN communication

onCanxstop

Close CAN communication

setBitrate

Set CAN communication rate

addFillter

Set the ID filter

reciveData

Receive CAN data

sendData

Send CAN data

1onCanxStart              

[Description]

Enable CAN communication

Normal return value =0, error return value <0

[Usage]

int onCanxStart(PortID);

[Example]

    int PortID , Result;

    PortID = 0; //0COM0    1COM1

    Result = 0;

    Result = onCanxStart (PortID);

2onCanxstop        

[Description]

Close CAN communication

Normal returns 0, error returns non-0

[Usage]

int onCanxstop (PortID);

[Example]

    int PortID , Result;

    PortID = 0; //0COM0    1COM1

    Result = 0;

    Result = onCanxstop (PortID);

3setBitrate           

[Description]

Set CAN communication rate

Normal returns 0, error returns non-0

[Usage]

int setBitrate (Bitrate,PortID);

[Example]

       int PortID, Bitrate, Result;

       PortID    = 0;        //0COM0    1COM1

       Bitrate = 5*1000;              // Set the baud rate 5K set range 5K 10K 20K maximum to 1M

       Result = 0;

       Result = setBitrate ( Bitrate, PortID )// COM0 sets the communication rate to 5000

4addFillter                   

[Description]

Set the ID filter

Normal returns 0, error returns non-0

[Usage]

int addFillter ( CanID, CanMask, PortID );

[Example]

    Int PortID, Result, CanID, CanMask;

       PortID = 0;                 //0COM0    1COM1

       Result = 0;

       CanID  = 0x11;         // Set the filter start ID number

       CanMask = 0x11;      // Set the filter end ID number, and start and end can be the same

       Result = addFillter ( CanID, CanMask, PortID );   // Set to receive only data with CAN ID 0x11 normally returns 0 error returns non-0 value


5reciveData          

[Description]

Receive CAN data

Normal return received data length, error return data length <0

[Usage]

int reciveData ( data, Len, PortID, &CanId )

[Example]

       int PortID, Result, Len;

       unsigned int CanId;

       unsigned char data[128];              // Receive data buffer

       PortID    = 0;                             //0COM0    1COM1

       Len = 128;                                       // Receive buffer length

       Result = reciveData ( ( unsigned char * ) data, Len, PortID, &CanId );

6sendData                   

[Description]

Send CAN data

Normal returns 0, error returns non-0

[Usage]

int sendData ( data, Len, PortID, CanId, CanType )

[Example]

       int PortID, Result, Len, CanType, CanId, i;

       unsigned char data[128];

       PortID    = 0;        //0COM0    1COM1

       Result    = 0;

       Len        = 8;

       CanId    = 0x22;

       CanType       = 0;        // Frame type: standard frame: 0 extended frame:0x80000000

       for ( i = 0; i < Len; ++i )

       {

              data[i] = i;

       }

       Result = sendData ( ( unsigned char * ) data, Len, PortID, CanId, CanType );// Standard frame, COM0 sends data data, length 127,CAN ID 0x22