CiA402 Application interface.
CiA402 Application interface.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
Neither the name of Texas Instruments Incorporated nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#if !(defined PROTECT_ECSUBDEVICECIA402_H)
#define PROTECT_ECSUBDEVICECIA402_H 1
#include <osal.h>
#include <ecSlvApi.h>
#include <ESL_os.h>
#define AXES_NUMBER (3u)
#define ENABLE_DYNAMIC_POSITION_LIMITS 0
#if (defined ENABLE_DYNAMIC_POSITION_LIMITS) && (0==ENABLE_DYNAMIC_POSITION_LIMITS)
#define MIN_AXIS_POSITION_LIMIT (INT32_MIN)
#define MAX_AXIS_POSITION_LIMIT (INT32_MAX)
#endif
{
{
{
{
#if (defined __cplusplus)
extern "C" {
#endif
#if (defined __cplusplus)
}
#endif
#endif
void EC_SLV_APP_CIA_applicationInit(EC_SLV_APP_CIA_Application_t *pAppInstance_p)
Initialize subdevice application example.
Definition ecSubDeviceCiA402.c:959
Definition ecSlvApiInternal.h:130
Definition ecSlvApiInternal.h:144
Definition ecSlvApiInternal.h:351
Definition ecSlvApiInternal.h:173
uint8_t state
Definition ecSubDeviceCiA402.h:181
EC_API_SLV_SCoE_Object_t * pt200FRecObj
Definition ecSubDeviceCiA402.h:189
clock_t diff
Definition ecSubDeviceCiA402.h:184
uint16_t realPdoOutLen
Definition ecSubDeviceCiA402.h:203
TaskP_Object mainThreadHandle
Definition ecSubDeviceCiA402.h:169
uint8_t * pdRxBuffer
Definition ecSubDeviceCiA402.h:200
void * loopThreadHandle
Definition ecSubDeviceCiA402.h:171
EC_API_SLV_Pdo_t * ptRxPdo1600
Definition ecSubDeviceCiA402.h:191
EC_API_SLV_SCoE_Object_t * pt2007RecObj
Definition ecSubDeviceCiA402.h:188
EC_API_SLV_Pdo_t * ptRxPdo1601
Definition ecSubDeviceCiA402.h:192
void * gpioHandle
Definition ecSubDeviceCiA402.h:174
uint8_t * pdTxBuffer
Definition ecSubDeviceCiA402.h:201
int32_t trigger
Definition ecSubDeviceCiA402.h:179
EC_API_SLV_Pdo_t * ptTxPdo1A01
Definition ecSubDeviceCiA402.h:195
uint8_t rsvd[3]
Definition ecSubDeviceCiA402.h:182
void * ioexpLedHandle
Definition ecSubDeviceCiA402.h:176
EC_API_SLV_SCoE_Object_t * pt2002RecObj
Definition ecSubDeviceCiA402.h:187
uint16_t realPdoInLen
Definition ecSubDeviceCiA402.h:204
uint32_t pdoInLen
Definition ecSubDeviceCiA402.h:199
TaskP_Params mainThreadParam
Definition ecSubDeviceCiA402.h:170
EC_API_SLV_Pdo_t * ptTxPdo1A02
Definition ecSubDeviceCiA402.h:196
uint32_t selectedPruInstance
Definition ecSubDeviceCiA402.h:166
EC_API_SLV_Pdo_t * ptTxPdo1A00
Definition ecSubDeviceCiA402.h:194
EC_API_SLV_SHandle_t * ptEcSlvApi
Definition ecSubDeviceCiA402.h:207
void * remoteHandle
Definition ecSubDeviceCiA402.h:175
EC_API_SLV_SCoE_Object_t * ptRecObjOut
Definition ecSubDeviceCiA402.h:186
int32_t msec
Definition ecSubDeviceCiA402.h:178
EC_API_SLV_Pdo_t * ptRxPdo1602
Definition ecSubDeviceCiA402.h:193
uint32_t pdoOutLen
Definition ecSubDeviceCiA402.h:198
clock_t prev
Definition ecSubDeviceCiA402.h:183
EC_SLV_APP_sCIA_axisData_t CiA402_axisData[AXES_NUMBER]
Definition ecSubDeviceCiA402.h:205
Definition ecSubDeviceCiA402.h:165
EC_SLV_APP_sCIA_object_t statusWordIndex
Definition ecSubDeviceCiA402.h:89
EC_SLV_APP_sCIA_object_t targetTorqueIndex
Definition ecSubDeviceCiA402.h:111
EC_SLV_APP_sCIA_object_t targetVelocityIndex
Definition ecSubDeviceCiA402.h:121
int32_t posLimitMax
Definition ecSubDeviceCiA402.h:159
EC_SLV_APP_sCIA_object_t faultReactionIndex
Definition ecSubDeviceCiA402.h:94
EC_SLV_APP_sCIA_object_t modesOfOperationDisplayIndex
Definition ecSubDeviceCiA402.h:96
EC_SLV_APP_sCIA_object_t targetPositionIndex
Definition ecSubDeviceCiA402.h:116
EC_SLV_APP_sCIA_object_t modesOfOperationIndex
Definition ecSubDeviceCiA402.h:95
EC_SLV_APP_sCIA_object_t velocityActualValueIndex
Definition ecSubDeviceCiA402.h:106
EC_SLV_APP_sCIA_object_t quickStopIndex
Definition ecSubDeviceCiA402.h:90
int32_t posLimitMin
Definition ecSubDeviceCiA402.h:160
EC_SLV_APP_sCIA_objectEntry_t positionLimitMin
Definition ecSubDeviceCiA402.h:157
EC_SLV_APP_sCIA_object_t disableOperationIndex
Definition ecSubDeviceCiA402.h:92
EC_SLV_APP_sCIA_object_t controlWordIndex
Definition ecSubDeviceCiA402.h:88
EC_SLV_APP_sCIA_object_t supportedDriveModesIndex
Definition ecSubDeviceCiA402.h:154
EC_SLV_APP_sCIA_object_t torqueActualValueIndex
Definition ecSubDeviceCiA402.h:114
EC_SLV_APP_sCIA_object_t positionActualValueIndex
Definition ecSubDeviceCiA402.h:99
EC_SLV_APP_sCIA_objectEntry_t positionLimitMax
Definition ecSubDeviceCiA402.h:156
EC_SLV_APP_sCIA_object_t shutdownIndex
Definition ecSubDeviceCiA402.h:91
EC_SLV_APP_sCIA_object_t swPositionLimitIndex
Definition ecSubDeviceCiA402.h:119
Definition ecSubDeviceCiA402.h:86
uint32_t pdoOffset
Definition ecSubDeviceCiA402.h:73
EC_API_SLV_SCoE_Object_t * pSdo
Definition ecSubDeviceCiA402.h:69
uint32_t pdoObjectOffset
Definition ecSubDeviceCiA402.h:72
EC_API_SLV_Pdo_t * pdoObject
Definition ecSubDeviceCiA402.h:71
uint16_t objectIndex
Definition ecSubDeviceCiA402.h:68
EC_API_SLV_SCoE_ObjEntry_t * pObjetEntry
Definition ecSubDeviceCiA402.h:82
EC_API_SLV_SCoE_Object_t * pSdo
Definition ecSubDeviceCiA402.h:80
uint16_t objectIndex
Definition ecSubDeviceCiA402.h:78
uint8_t objectSubIndex
Definition ecSubDeviceCiA402.h:79
Definition ecSubDeviceCiA402.h:77
Definition ecSubDeviceCiA402.h:67