CONodeProcess

Description

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

Prototype

void CONodeProcess(CO_NODE *node);

ParameterDescription
nodepointer to the CANopen node object

Returned Value

none

Additional Information

The function will block the execution until a CAN frame is received.

Example

The function CONodeProcess() is most likely called in the background function loop. In default state, the function is in blocking mode, therefore the receive timeout should be set to a reasonable value. 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  */
    }
}