This function is the main communication processing.


This function is responsible for performing the necessary response to a received CAN frame.


void CONodeProcess(CO_NODE *node);


Parameter Description
node pointer to node object

Returned Value

  • none


The function CONodeProcess() is most likely called in the background function loop. When using a RTOS, the CANopen node processing from within a separate task is possible, too. In this case, the blocking mode is suitable for most applications:

void CanRxTask(void *arg_p)
    CO_NODE *node = (CO_NODE *)arg_p;   /* task parameter is a ptr to   */
                                        /* CANopen node object          */

    while(1) {                          /* endless RTOS task loop       */
        CONodeProcess (node);           /* wait and process CAN frames  */