Skip to end of banner
Go to start of banner

CIF-API vs CIFX-API

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 2 Next »

The following table compares the major CIF-API functions with the CIFX-API functions.


CIF-API

CIFX-API

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Open the driver */
sRet = DevOpenDriver(usBoardNumber);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Open the driver */
lRet = xDriverOpen(.............);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read Firmware information field */
sRet = DevGetInfo( usBoardNumber,              /* DeviceNumber        */   
                   GET_FIRMWARE_INFO,          /* InfoArea            */
                   sizeof(FIRMWAREINFO),       /* Size of bytes to read */
                   &abInfo[0]); /* Pointer to user buffer */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read Firmware information field */
lRet = xChannelInfo(...............................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Signal board, application is running */
sRet = DevSetHostState( usBoardNumber,       /* DeviceNumber        */
                       HOST_READY,           /* Mode                */
                        0L);                  /* Pointer to user buffer */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Signal host is ready */
lRet = xChannelHostState(..........);

/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Switch BUS on  */
lRet = xChannelBusState( ..CIFX_BUS_ON.....);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read mailbox information */
sRet = DevGetMBXState( usBoardNumber,         /* DeviceNumber        */
                       &usDevState,           /* Buffer for device state */
                       &usHostState);         /* Buffer for host state */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read mailbox information */
lRet = xChannelMBXState(................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Write parameters to communication board */
sRet = DevPutTaskParameter( usBoardNumber,   /* Device number             */
                           1,                   /* Protokoll task number     */
                            sizeof(aParameter),  /* Lenght of bytes           */
                            &aParameter );       /* Pointer to data  buffer   */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Write parameters to communication board */
=> No function available, only via "RCX_SET_CONFIG_REQUEST" command packet
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Reset board so it can take the parameters */
sRet = DevReset( usBoardNumber,                  /* Device number          */
                 WARMSTART,                      /* Reset mode, Warmstart  */
                 8000L);                         /* Timeout  8000 ms       */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Reset board */
lRet = xChannelReset(.....................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read a message from the receive mailbox */
sRet = DevGetMessage (  usBoardNumber,          /* Device Number             */
                        sizeof(tMessage),        /* Users buffer size         */
                       (MSG_STRUC *)&tMessage, /* Pointer to user buffer    */
                        5000L );                 /* Timeout                   */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read a packet from the receive mailbox */
lRet =  xChannelGetPacket(........................);
ATTENTION: CIFX packet are using a different structur
("RCX_PACKET_HEADER" / "RCX_PACKET")
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Write a message to the send mailbox */
sRet = DevPutMessage (  usBoardNumber,          /* Device Number             */
                        (MSG_STRUC *)&tMessage,  /* Pointer to user buffer    */
                        5000L );                 /* Timeout                   */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Write a message to the send mailbox */
lRet =  xChannelPutPacket(........................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read and write I/O data */
sRet = DevExchangeIO ( usBoardNumber,      /* Device Number   */
                    0,                        /* usSendOffset    */
                      4,                        /* usSendSize      */
                       &tIOSendData[0],    /* *pvSendData     */
                       0,                        /* usReceiveOffset */
                      4,                        /* usReceiveSize   */
                      &tIORecvData[0],    /* *pvReceiveData  */
                      100L );                   /* ulTimeout       */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Read the I/O input data area */
lRet = xChannelIORead(..............);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Write the I/O output data area */
lRet = xChannelIOWrite(................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Signal board, application is not running */
sRet = DevSetHostState( usBoardNumber,           /* DeviceNumber        */
                        HOST_NOT_READY,         /* Mode                */
                        0L);                     /* Pointer to user buffer */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Shut off BUS communication */
lRet = xChannelBusState( ..CIFX_BUS_OFF..);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Signal application not running */
lRet = xChannelHostState(.............................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Close communication */
sRet = DevExitBoard( usBoardNumber); /* Device number  */
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Close communication channel */
lRet = xChannelClose(................................);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Close Driver */
sRet = DevCloseDriver(0);
/* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
/* Close Driver */
lRet = xDriverClose()



































  • No labels