677 lines
27 KiB
C
677 lines
27 KiB
C
/*
|
|
* Copyright (c) 2019 Vestas Wind Systems A/S
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
/*******************************************************************************
|
|
|
|
File - CO_OD.c/CO_OD.h
|
|
CANopen Object Dictionary.
|
|
|
|
This file was automatically generated with libedssharp Object
|
|
Dictionary Editor v0.8-7-g2e53bbc DON'T EDIT THIS FILE MANUALLY !!!!
|
|
*******************************************************************************/
|
|
|
|
|
|
#ifndef CO_OD_H_
|
|
#define CO_OD_H_
|
|
|
|
/*******************************************************************************
|
|
CANopen DATA TYPES
|
|
*******************************************************************************/
|
|
typedef bool_t BOOLEAN;
|
|
typedef uint8_t UNSIGNED8;
|
|
typedef uint16_t UNSIGNED16;
|
|
typedef uint32_t UNSIGNED32;
|
|
typedef uint64_t UNSIGNED64;
|
|
typedef int8_t INTEGER8;
|
|
typedef int16_t INTEGER16;
|
|
typedef int32_t INTEGER32;
|
|
typedef int64_t INTEGER64;
|
|
typedef float32_t REAL32;
|
|
typedef float64_t REAL64;
|
|
typedef char_t VISIBLE_STRING;
|
|
typedef oChar_t OCTET_STRING;
|
|
|
|
#ifdef DOMAIN
|
|
#undef DOMAIN
|
|
#endif
|
|
|
|
typedef domain_t DOMAIN;
|
|
|
|
#ifndef timeOfDay_t
|
|
typedef union {
|
|
unsigned long long ullValue;
|
|
struct {
|
|
unsigned long ms : 28;
|
|
unsigned reserved : 4;
|
|
unsigned days : 16;
|
|
unsigned reserved2 : 16;
|
|
};
|
|
} timeOfDay_t;
|
|
#endif
|
|
|
|
typedef timeOfDay_t TIME_OF_DAY;
|
|
typedef timeOfDay_t TIME_DIFFERENCE;
|
|
|
|
|
|
/*******************************************************************************
|
|
FILE INFO:
|
|
FileName: objdict.eds
|
|
FileVersion: 1
|
|
CreationTime: 2:52PM
|
|
CreationDate: 09-18-2019
|
|
CreatedBy:
|
|
******************************************************************************/
|
|
|
|
|
|
/*******************************************************************************
|
|
DEVICE INFO:
|
|
VendorName:
|
|
VendorNumber 0
|
|
ProductName: Zephyr RTOS CANopen sample
|
|
ProductNumber: 0
|
|
******************************************************************************/
|
|
|
|
|
|
/*******************************************************************************
|
|
FEATURES
|
|
*******************************************************************************/
|
|
#define CO_NO_SYNC 1 /* Associated objects: 1005-1007 */
|
|
#define CO_NO_EMERGENCY 1 /* Associated objects: 1014, 1015 */
|
|
#define CO_NO_TIME 1 /* Associated objects: 1012, 1013 */
|
|
#define CO_NO_SDO_SERVER 1 /* Associated objects: 1200-127F */
|
|
#define CO_NO_SDO_CLIENT 0 /* Associated objects: 1280-12FF */
|
|
#define CO_NO_LSS_SERVER 0 /* LSS Slave */
|
|
#define CO_NO_LSS_CLIENT 0 /* LSS Master */
|
|
#define CO_NO_RPDO 4 /* Associated objects: 14xx, 16xx */
|
|
#define CO_NO_TPDO 4 /* Associated objects: 18xx, 1Axx */
|
|
#define CO_NO_NMT_MASTER 0
|
|
|
|
|
|
/*******************************************************************************
|
|
OBJECT DICTIONARY
|
|
*******************************************************************************/
|
|
#define CO_OD_NoOfElements 45
|
|
|
|
|
|
/*******************************************************************************
|
|
TYPE DEFINITIONS FOR RECORDS
|
|
*******************************************************************************/
|
|
/*1018 */ typedef struct {
|
|
UNSIGNED8 maxSubIndex;
|
|
UNSIGNED32 vendorID;
|
|
UNSIGNED32 productCode;
|
|
UNSIGNED32 revisionNumber;
|
|
UNSIGNED32 serialNumber;
|
|
} OD_identity_t;
|
|
/*1200 */ typedef struct {
|
|
UNSIGNED8 maxSubIndex;
|
|
UNSIGNED32 COB_IDClientToServer;
|
|
UNSIGNED32 COB_IDServerToClient;
|
|
} OD_SDOServerParameter_t;
|
|
/*1280 */ typedef struct {
|
|
UNSIGNED8 maxSubIndex;
|
|
UNSIGNED32 COB_IDClientToServer;
|
|
UNSIGNED32 COB_IDServerToClient;
|
|
UNSIGNED8 nodeIDOfTheSDOServer;
|
|
} OD_SDOClientParameter_t;
|
|
/*1400 */ typedef struct {
|
|
UNSIGNED8 maxSubIndex;
|
|
UNSIGNED32 COB_IDUsedByRPDO;
|
|
UNSIGNED8 transmissionType;
|
|
} OD_RPDOCommunicationParameter_t;
|
|
/*1600 */ typedef struct {
|
|
UNSIGNED8 numberOfMappedObjects;
|
|
UNSIGNED32 mappedObject1;
|
|
UNSIGNED32 mappedObject2;
|
|
UNSIGNED32 mappedObject3;
|
|
UNSIGNED32 mappedObject4;
|
|
UNSIGNED32 mappedObject5;
|
|
UNSIGNED32 mappedObject6;
|
|
UNSIGNED32 mappedObject7;
|
|
UNSIGNED32 mappedObject8;
|
|
} OD_RPDOMappingParameter_t;
|
|
/*1800 */ typedef struct {
|
|
UNSIGNED8 maxSubIndex;
|
|
UNSIGNED32 COB_IDUsedByTPDO;
|
|
UNSIGNED8 transmissionType;
|
|
UNSIGNED16 inhibitTime;
|
|
UNSIGNED8 compatibilityEntry;
|
|
UNSIGNED16 eventTimer;
|
|
UNSIGNED8 SYNCStartValue;
|
|
} OD_TPDOCommunicationParameter_t;
|
|
/*1a00 */ typedef struct {
|
|
UNSIGNED8 numberOfMappedObjects;
|
|
UNSIGNED32 mappedObject1;
|
|
UNSIGNED32 mappedObject2;
|
|
UNSIGNED32 mappedObject3;
|
|
UNSIGNED32 mappedObject4;
|
|
UNSIGNED32 mappedObject5;
|
|
UNSIGNED32 mappedObject6;
|
|
UNSIGNED32 mappedObject7;
|
|
UNSIGNED32 mappedObject8;
|
|
} OD_TPDOMappingParameter_t;
|
|
|
|
/*******************************************************************************
|
|
TYPE DEFINITIONS FOR OBJECT DICTIONARY INDEXES
|
|
|
|
some of those are redundant with CO_SDO.h CO_ObjDicId_t <Common CiA301 object
|
|
dictionary entries>
|
|
*******************************************************************************/
|
|
/*1000 */
|
|
#define OD_1000_deviceType 0x1000
|
|
|
|
/*1001 */
|
|
#define OD_1001_errorRegister 0x1001
|
|
|
|
/*1002 */
|
|
#define OD_1002_manufacturerStatusRegister 0x1002
|
|
|
|
/*1003 */
|
|
#define OD_1003_preDefinedErrorField 0x1003
|
|
|
|
#define OD_1003_0_preDefinedErrorField_maxSubIndex 0
|
|
#define OD_1003_1_preDefinedErrorField_standardErrorField 1
|
|
#define OD_1003_2_preDefinedErrorField_standardErrorField 2
|
|
#define OD_1003_3_preDefinedErrorField_standardErrorField 3
|
|
#define OD_1003_4_preDefinedErrorField_standardErrorField 4
|
|
#define OD_1003_5_preDefinedErrorField_standardErrorField 5
|
|
#define OD_1003_6_preDefinedErrorField_standardErrorField 6
|
|
#define OD_1003_7_preDefinedErrorField_standardErrorField 7
|
|
#define OD_1003_8_preDefinedErrorField_standardErrorField 8
|
|
|
|
/*1005 */
|
|
#define OD_1005_COB_ID_SYNCMessage 0x1005
|
|
|
|
/*1006 */
|
|
#define OD_1006_communicationCyclePeriod 0x1006
|
|
|
|
/*1007 */
|
|
#define OD_1007_synchronousWindowLength 0x1007
|
|
|
|
/*1008 */
|
|
#define OD_1008_manufacturerDeviceName 0x1008
|
|
|
|
/*1009 */
|
|
#define OD_1009_manufacturerHardwareVersion 0x1009
|
|
|
|
/*100a */
|
|
#define OD_100a_manufacturerSoftwareVersion 0x100a
|
|
|
|
/*1010 */
|
|
#define OD_1010_storeParameters 0x1010
|
|
|
|
#define OD_1010_0_storeParameters_maxSubIndex 0
|
|
#define OD_1010_1_storeParameters_saveAllParameters 1
|
|
|
|
/*1011 */
|
|
#define OD_1011_restoreDefaultParameters 0x1011
|
|
|
|
#define OD_1011_0_restoreDefaultParameters_maxSubIndex 0
|
|
#define OD_1011_1_restoreDefaultParameters_restoreAllDefaultParameters 1
|
|
|
|
/*1012 */
|
|
#define OD_1012_COB_ID_TIME 0x1012
|
|
|
|
/*1014 */
|
|
#define OD_1014_COB_ID_EMCY 0x1014
|
|
|
|
/*1015 */
|
|
#define OD_1015_inhibitTimeEMCY 0x1015
|
|
|
|
/*1016 */
|
|
#define OD_1016_consumerHeartbeatTime 0x1016
|
|
|
|
#define OD_1016_0_consumerHeartbeatTime_maxSubIndex 0
|
|
#define OD_1016_1_consumerHeartbeatTime_consumerHeartbeatTime 1
|
|
#define OD_1016_2_consumerHeartbeatTime_consumerHeartbeatTime 2
|
|
#define OD_1016_3_consumerHeartbeatTime_consumerHeartbeatTime 3
|
|
#define OD_1016_4_consumerHeartbeatTime_consumerHeartbeatTime 4
|
|
|
|
/*1017 */
|
|
#define OD_1017_producerHeartbeatTime 0x1017
|
|
|
|
/*1018 */
|
|
#define OD_1018_identity 0x1018
|
|
|
|
#define OD_1018_0_identity_maxSubIndex 0
|
|
#define OD_1018_1_identity_vendorID 1
|
|
#define OD_1018_2_identity_productCode 2
|
|
#define OD_1018_3_identity_revisionNumber 3
|
|
#define OD_1018_4_identity_serialNumber 4
|
|
|
|
/*1019 */
|
|
#define OD_1019_synchronousCounterOverflowValue 0x1019
|
|
|
|
/*1029 */
|
|
#define OD_1029_errorBehavior 0x1029
|
|
|
|
#define OD_1029_0_errorBehavior_maxSubIndex 0
|
|
#define OD_1029_1_errorBehavior_communication 1
|
|
#define OD_1029_2_errorBehavior_communicationOther 2
|
|
#define OD_1029_3_errorBehavior_communicationPassive 3
|
|
#define OD_1029_4_errorBehavior_generic 4
|
|
#define OD_1029_5_errorBehavior_deviceProfile 5
|
|
#define OD_1029_6_errorBehavior_manufacturerSpecific 6
|
|
|
|
/*1200 */
|
|
#define OD_1200_SDOServerParameter 0x1200
|
|
|
|
#define OD_1200_0_SDOServerParameter_maxSubIndex 0
|
|
#define OD_1200_1_SDOServerParameter_COB_IDClientToServer 1
|
|
#define OD_1200_2_SDOServerParameter_COB_IDServerToClient 2
|
|
|
|
/*1400 */
|
|
#define OD_1400_RPDOCommunicationParameter 0x1400
|
|
|
|
#define OD_1400_0_RPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1400_1_RPDOCommunicationParameter_COB_IDUsedByRPDO 1
|
|
#define OD_1400_2_RPDOCommunicationParameter_transmissionType 2
|
|
|
|
/*1401 */
|
|
#define OD_1401_RPDOCommunicationParameter 0x1401
|
|
|
|
#define OD_1401_0_RPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1401_1_RPDOCommunicationParameter_COB_IDUsedByRPDO 1
|
|
#define OD_1401_2_RPDOCommunicationParameter_transmissionType 2
|
|
|
|
/*1402 */
|
|
#define OD_1402_RPDOCommunicationParameter 0x1402
|
|
|
|
#define OD_1402_0_RPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1402_1_RPDOCommunicationParameter_COB_IDUsedByRPDO 1
|
|
#define OD_1402_2_RPDOCommunicationParameter_transmissionType 2
|
|
|
|
/*1403 */
|
|
#define OD_1403_RPDOCommunicationParameter 0x1403
|
|
|
|
#define OD_1403_0_RPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1403_1_RPDOCommunicationParameter_COB_IDUsedByRPDO 1
|
|
#define OD_1403_2_RPDOCommunicationParameter_transmissionType 2
|
|
|
|
/*1600 */
|
|
#define OD_1600_RPDOMappingParameter 0x1600
|
|
|
|
#define OD_1600_0_RPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1600_1_RPDOMappingParameter_mappedObject1 1
|
|
#define OD_1600_2_RPDOMappingParameter_mappedObject2 2
|
|
#define OD_1600_3_RPDOMappingParameter_mappedObject3 3
|
|
#define OD_1600_4_RPDOMappingParameter_mappedObject4 4
|
|
#define OD_1600_5_RPDOMappingParameter_mappedObject5 5
|
|
#define OD_1600_6_RPDOMappingParameter_mappedObject6 6
|
|
#define OD_1600_7_RPDOMappingParameter_mappedObject7 7
|
|
#define OD_1600_8_RPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1601 */
|
|
#define OD_1601_RPDOMappingParameter 0x1601
|
|
|
|
#define OD_1601_0_RPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1601_1_RPDOMappingParameter_mappedObject1 1
|
|
#define OD_1601_2_RPDOMappingParameter_mappedObject2 2
|
|
#define OD_1601_3_RPDOMappingParameter_mappedObject3 3
|
|
#define OD_1601_4_RPDOMappingParameter_mappedObject4 4
|
|
#define OD_1601_5_RPDOMappingParameter_mappedObject5 5
|
|
#define OD_1601_6_RPDOMappingParameter_mappedObject6 6
|
|
#define OD_1601_7_RPDOMappingParameter_mappedObject7 7
|
|
#define OD_1601_8_RPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1602 */
|
|
#define OD_1602_RPDOMappingParameter 0x1602
|
|
|
|
#define OD_1602_0_RPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1602_1_RPDOMappingParameter_mappedObject1 1
|
|
#define OD_1602_2_RPDOMappingParameter_mappedObject2 2
|
|
#define OD_1602_3_RPDOMappingParameter_mappedObject3 3
|
|
#define OD_1602_4_RPDOMappingParameter_mappedObject4 4
|
|
#define OD_1602_5_RPDOMappingParameter_mappedObject5 5
|
|
#define OD_1602_6_RPDOMappingParameter_mappedObject6 6
|
|
#define OD_1602_7_RPDOMappingParameter_mappedObject7 7
|
|
#define OD_1602_8_RPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1603 */
|
|
#define OD_1603_RPDOMappingParameter 0x1603
|
|
|
|
#define OD_1603_0_RPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1603_1_RPDOMappingParameter_mappedObject1 1
|
|
#define OD_1603_2_RPDOMappingParameter_mappedObject2 2
|
|
#define OD_1603_3_RPDOMappingParameter_mappedObject3 3
|
|
#define OD_1603_4_RPDOMappingParameter_mappedObject4 4
|
|
#define OD_1603_5_RPDOMappingParameter_mappedObject5 5
|
|
#define OD_1603_6_RPDOMappingParameter_mappedObject6 6
|
|
#define OD_1603_7_RPDOMappingParameter_mappedObject7 7
|
|
#define OD_1603_8_RPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1800 */
|
|
#define OD_1800_TPDOCommunicationParameter 0x1800
|
|
|
|
#define OD_1800_0_TPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1800_1_TPDOCommunicationParameter_COB_IDUsedByTPDO 1
|
|
#define OD_1800_2_TPDOCommunicationParameter_transmissionType 2
|
|
#define OD_1800_3_TPDOCommunicationParameter_inhibitTime 3
|
|
#define OD_1800_4_TPDOCommunicationParameter_compatibilityEntry 4
|
|
#define OD_1800_5_TPDOCommunicationParameter_eventTimer 5
|
|
#define OD_1800_6_TPDOCommunicationParameter_SYNCStartValue 6
|
|
|
|
/*1801 */
|
|
#define OD_1801_TPDOCommunicationParameter 0x1801
|
|
|
|
#define OD_1801_0_TPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1801_1_TPDOCommunicationParameter_COB_IDUsedByTPDO 1
|
|
#define OD_1801_2_TPDOCommunicationParameter_transmissionType 2
|
|
#define OD_1801_3_TPDOCommunicationParameter_inhibitTime 3
|
|
#define OD_1801_4_TPDOCommunicationParameter_compatibilityEntry 4
|
|
#define OD_1801_5_TPDOCommunicationParameter_eventTimer 5
|
|
#define OD_1801_6_TPDOCommunicationParameter_SYNCStartValue 6
|
|
|
|
/*1802 */
|
|
#define OD_1802_TPDOCommunicationParameter 0x1802
|
|
|
|
#define OD_1802_0_TPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1802_1_TPDOCommunicationParameter_COB_IDUsedByTPDO 1
|
|
#define OD_1802_2_TPDOCommunicationParameter_transmissionType 2
|
|
#define OD_1802_3_TPDOCommunicationParameter_inhibitTime 3
|
|
#define OD_1802_4_TPDOCommunicationParameter_compatibilityEntry 4
|
|
#define OD_1802_5_TPDOCommunicationParameter_eventTimer 5
|
|
#define OD_1802_6_TPDOCommunicationParameter_SYNCStartValue 6
|
|
|
|
/*1803 */
|
|
#define OD_1803_TPDOCommunicationParameter 0x1803
|
|
|
|
#define OD_1803_0_TPDOCommunicationParameter_maxSubIndex 0
|
|
#define OD_1803_1_TPDOCommunicationParameter_COB_IDUsedByTPDO 1
|
|
#define OD_1803_2_TPDOCommunicationParameter_transmissionType 2
|
|
#define OD_1803_3_TPDOCommunicationParameter_inhibitTime 3
|
|
#define OD_1803_4_TPDOCommunicationParameter_compatibilityEntry 4
|
|
#define OD_1803_5_TPDOCommunicationParameter_eventTimer 5
|
|
#define OD_1803_6_TPDOCommunicationParameter_SYNCStartValue 6
|
|
|
|
/*1a00 */
|
|
#define OD_1a00_TPDOMappingParameter 0x1a00
|
|
|
|
#define OD_1a00_0_TPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1a00_1_TPDOMappingParameter_mappedObject1 1
|
|
#define OD_1a00_2_TPDOMappingParameter_mappedObject2 2
|
|
#define OD_1a00_3_TPDOMappingParameter_mappedObject3 3
|
|
#define OD_1a00_4_TPDOMappingParameter_mappedObject4 4
|
|
#define OD_1a00_5_TPDOMappingParameter_mappedObject5 5
|
|
#define OD_1a00_6_TPDOMappingParameter_mappedObject6 6
|
|
#define OD_1a00_7_TPDOMappingParameter_mappedObject7 7
|
|
#define OD_1a00_8_TPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1a01 */
|
|
#define OD_1a01_TPDOMappingParameter 0x1a01
|
|
|
|
#define OD_1a01_0_TPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1a01_1_TPDOMappingParameter_mappedObject1 1
|
|
#define OD_1a01_2_TPDOMappingParameter_mappedObject2 2
|
|
#define OD_1a01_3_TPDOMappingParameter_mappedObject3 3
|
|
#define OD_1a01_4_TPDOMappingParameter_mappedObject4 4
|
|
#define OD_1a01_5_TPDOMappingParameter_mappedObject5 5
|
|
#define OD_1a01_6_TPDOMappingParameter_mappedObject6 6
|
|
#define OD_1a01_7_TPDOMappingParameter_mappedObject7 7
|
|
#define OD_1a01_8_TPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1a02 */
|
|
#define OD_1a02_TPDOMappingParameter 0x1a02
|
|
|
|
#define OD_1a02_0_TPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1a02_1_TPDOMappingParameter_mappedObject1 1
|
|
#define OD_1a02_2_TPDOMappingParameter_mappedObject2 2
|
|
#define OD_1a02_3_TPDOMappingParameter_mappedObject3 3
|
|
#define OD_1a02_4_TPDOMappingParameter_mappedObject4 4
|
|
#define OD_1a02_5_TPDOMappingParameter_mappedObject5 5
|
|
#define OD_1a02_6_TPDOMappingParameter_mappedObject6 6
|
|
#define OD_1a02_7_TPDOMappingParameter_mappedObject7 7
|
|
#define OD_1a02_8_TPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1a03 */
|
|
#define OD_1a03_TPDOMappingParameter 0x1a03
|
|
|
|
#define OD_1a03_0_TPDOMappingParameter_maxSubIndex 0
|
|
#define OD_1a03_1_TPDOMappingParameter_mappedObject1 1
|
|
#define OD_1a03_2_TPDOMappingParameter_mappedObject2 2
|
|
#define OD_1a03_3_TPDOMappingParameter_mappedObject3 3
|
|
#define OD_1a03_4_TPDOMappingParameter_mappedObject4 4
|
|
#define OD_1a03_5_TPDOMappingParameter_mappedObject5 5
|
|
#define OD_1a03_6_TPDOMappingParameter_mappedObject6 6
|
|
#define OD_1a03_7_TPDOMappingParameter_mappedObject7 7
|
|
#define OD_1a03_8_TPDOMappingParameter_mappedObject8 8
|
|
|
|
/*1f50 */
|
|
#define OD_1f50_programData 0x1f50
|
|
|
|
#define OD_1f50_0_programData_maxSubIndex 0
|
|
#define OD_1f50_1_programData_ 1
|
|
|
|
/*1f51 */
|
|
#define OD_1f51_programControl 0x1f51
|
|
|
|
#define OD_1f51_0_programControl_maxSubIndex 0
|
|
#define OD_1f51_1_programControl_ 1
|
|
|
|
/*1f56 */
|
|
#define OD_1f56_programSoftwareIdentification 0x1f56
|
|
|
|
#define OD_1f56_0_programSoftwareIdentification_maxSubIndex 0
|
|
#define OD_1f56_1_programSoftwareIdentification_ 1
|
|
|
|
/*1f57 */
|
|
#define OD_1f57_flashStatusIdentification 0x1f57
|
|
|
|
#define OD_1f57_0_flashStatusIdentification_maxSubIndex 0
|
|
#define OD_1f57_1_flashStatusIdentification_ 1
|
|
|
|
/*1f80 */
|
|
#define OD_1f80_NMTStartup 0x1f80
|
|
|
|
/*2100 */
|
|
#define OD_2100_errorStatusBits 0x2100
|
|
|
|
/*2101 */
|
|
#define OD_2101_powerOnCounter 0x2101
|
|
|
|
/*2102 */
|
|
#define OD_2102_buttonPressCounter 0x2102
|
|
|
|
/*******************************************************************************
|
|
STRUCTURES FOR VARIABLES IN DIFFERENT MEMORY LOCATIONS
|
|
*******************************************************************************/
|
|
#define CO_OD_FIRST_LAST_WORD 0x55 /* Any value from 0x01 to 0xFE. If changed, EEPROM will be reinitialized. */
|
|
|
|
/***** Structure for ROM variables ********************************************/
|
|
struct sCO_OD_ROM {
|
|
UNSIGNED32 FirstWord;
|
|
|
|
/*1000 */ UNSIGNED32 deviceType;
|
|
/*1005 */ UNSIGNED32 COB_ID_SYNCMessage;
|
|
/*1006 */ UNSIGNED32 communicationCyclePeriod;
|
|
/*1007 */ UNSIGNED32 synchronousWindowLength;
|
|
/*1008 */ VISIBLE_STRING manufacturerDeviceName[23];
|
|
/*1009 */ VISIBLE_STRING manufacturerHardwareVersion[4];
|
|
/*100a */ VISIBLE_STRING manufacturerSoftwareVersion[4];
|
|
/*1012 */ UNSIGNED32 COB_ID_TIME;
|
|
/*1014 */ UNSIGNED32 COB_ID_EMCY;
|
|
/*1015 */ UNSIGNED16 inhibitTimeEMCY;
|
|
/*1016 */ UNSIGNED32 consumerHeartbeatTime[4];
|
|
/*1017 */ UNSIGNED16 producerHeartbeatTime;
|
|
/*1018 */ OD_identity_t identity;
|
|
/*1019 */ UNSIGNED8 synchronousCounterOverflowValue;
|
|
/*1029 */ UNSIGNED8 errorBehavior[6];
|
|
/*1200 */ OD_SDOServerParameter_t SDOServerParameter[1];
|
|
/*1400 */ OD_RPDOCommunicationParameter_t RPDOCommunicationParameter[4];
|
|
/*1600 */ OD_RPDOMappingParameter_t RPDOMappingParameter[4];
|
|
/*1800 */ OD_TPDOCommunicationParameter_t TPDOCommunicationParameter[4];
|
|
/*1a00 */ OD_TPDOMappingParameter_t TPDOMappingParameter[4];
|
|
/*1f80 */ UNSIGNED32 NMTStartup;
|
|
|
|
UNSIGNED32 LastWord;
|
|
};
|
|
|
|
/***** Structure for RAM variables ********************************************/
|
|
struct sCO_OD_RAM {
|
|
UNSIGNED32 FirstWord;
|
|
|
|
/*1001 */ UNSIGNED8 errorRegister;
|
|
/*1002 */ UNSIGNED32 manufacturerStatusRegister;
|
|
/*1003 */ UNSIGNED32 preDefinedErrorField[8];
|
|
/*1010 */ UNSIGNED32 storeParameters[1];
|
|
/*1011 */ UNSIGNED32 restoreDefaultParameters[1];
|
|
/*1f50 */ DOMAIN programData[1];
|
|
/*1f51 */ UNSIGNED8 programControl[1];
|
|
/*1f56 */ UNSIGNED32 programSoftwareIdentification[1];
|
|
/*1f57 */ UNSIGNED32 flashStatusIdentification[1];
|
|
/*2100 */ OCTET_STRING errorStatusBits[10];
|
|
/*2102 */ UNSIGNED32 buttonPressCounter;
|
|
|
|
UNSIGNED32 LastWord;
|
|
};
|
|
|
|
/***** Structure for EEPROM variables ********************************************/
|
|
struct sCO_OD_EEPROM {
|
|
UNSIGNED32 FirstWord;
|
|
|
|
/*2101 */ UNSIGNED32 powerOnCounter;
|
|
|
|
UNSIGNED32 LastWord;
|
|
};
|
|
|
|
/***** Declaration of Object Dictionary variables *****************************/
|
|
extern struct sCO_OD_ROM CO_OD_ROM;
|
|
|
|
extern struct sCO_OD_RAM CO_OD_RAM;
|
|
|
|
extern struct sCO_OD_EEPROM CO_OD_EEPROM;
|
|
|
|
/*******************************************************************************
|
|
ALIASES FOR OBJECT DICTIONARY VARIABLES
|
|
*******************************************************************************/
|
|
/*1000, Data Type: UNSIGNED32 */
|
|
#define OD_deviceType CO_OD_ROM.deviceType
|
|
|
|
/*1001, Data Type: UNSIGNED8 */
|
|
#define OD_errorRegister CO_OD_RAM.errorRegister
|
|
|
|
/*1002, Data Type: UNSIGNED32 */
|
|
#define OD_manufacturerStatusRegister CO_OD_RAM.manufacturerStatusRegister
|
|
|
|
/*1003, Data Type: UNSIGNED32, Array[8] */
|
|
#define OD_preDefinedErrorField CO_OD_RAM.preDefinedErrorField
|
|
#define ODL_preDefinedErrorField_arrayLength 8
|
|
#define ODA_preDefinedErrorField_standardErrorField 0
|
|
|
|
/*1005, Data Type: UNSIGNED32 */
|
|
#define OD_COB_ID_SYNCMessage CO_OD_ROM.COB_ID_SYNCMessage
|
|
|
|
/*1006, Data Type: UNSIGNED32 */
|
|
#define OD_communicationCyclePeriod CO_OD_ROM.communicationCyclePeriod
|
|
|
|
/*1007, Data Type: UNSIGNED32 */
|
|
#define OD_synchronousWindowLength CO_OD_ROM.synchronousWindowLength
|
|
|
|
/*1008, Data Type: VISIBLE_STRING */
|
|
#define OD_manufacturerDeviceName CO_OD_ROM.manufacturerDeviceName
|
|
#define ODL_manufacturerDeviceName_stringLength 23
|
|
|
|
/*1009, Data Type: VISIBLE_STRING */
|
|
#define OD_manufacturerHardwareVersion CO_OD_ROM.manufacturerHardwareVersion
|
|
#define ODL_manufacturerHardwareVersion_stringLength 4
|
|
|
|
/*100a, Data Type: VISIBLE_STRING */
|
|
#define OD_manufacturerSoftwareVersion CO_OD_ROM.manufacturerSoftwareVersion
|
|
#define ODL_manufacturerSoftwareVersion_stringLength 4
|
|
|
|
/*1010, Data Type: UNSIGNED32, Array[1] */
|
|
#define OD_storeParameters CO_OD_RAM.storeParameters
|
|
#define ODL_storeParameters_arrayLength 1
|
|
#define ODA_storeParameters_saveAllParameters 0
|
|
|
|
/*1011, Data Type: UNSIGNED32, Array[1] */
|
|
#define OD_restoreDefaultParameters CO_OD_RAM.restoreDefaultParameters
|
|
#define ODL_restoreDefaultParameters_arrayLength 1
|
|
#define ODA_restoreDefaultParameters_restoreAllDefaultParameters 0
|
|
|
|
/*1012, Data Type: UNSIGNED32 */
|
|
#define OD_COB_ID_TIME CO_OD_ROM.COB_ID_TIME
|
|
|
|
/*1014, Data Type: UNSIGNED32 */
|
|
#define OD_COB_ID_EMCY CO_OD_ROM.COB_ID_EMCY
|
|
|
|
/*1015, Data Type: UNSIGNED16 */
|
|
#define OD_inhibitTimeEMCY CO_OD_ROM.inhibitTimeEMCY
|
|
|
|
/*1016, Data Type: UNSIGNED32, Array[4] */
|
|
#define OD_consumerHeartbeatTime CO_OD_ROM.consumerHeartbeatTime
|
|
#define ODL_consumerHeartbeatTime_arrayLength 4
|
|
#define ODA_consumerHeartbeatTime_consumerHeartbeatTime 0
|
|
|
|
/*1017, Data Type: UNSIGNED16 */
|
|
#define OD_producerHeartbeatTime CO_OD_ROM.producerHeartbeatTime
|
|
|
|
/*1018, Data Type: identity_t */
|
|
#define OD_identity CO_OD_ROM.identity
|
|
|
|
/*1019, Data Type: UNSIGNED8 */
|
|
#define OD_synchronousCounterOverflowValue CO_OD_ROM.synchronousCounterOverflowValue
|
|
|
|
/*1029, Data Type: UNSIGNED8, Array[6] */
|
|
#define OD_errorBehavior CO_OD_ROM.errorBehavior
|
|
#define ODL_errorBehavior_arrayLength 6
|
|
#define ODA_errorBehavior_communication 0
|
|
#define ODA_errorBehavior_communicationOther 1
|
|
#define ODA_errorBehavior_communicationPassive 2
|
|
#define ODA_errorBehavior_generic 3
|
|
#define ODA_errorBehavior_deviceProfile 4
|
|
#define ODA_errorBehavior_manufacturerSpecific 5
|
|
|
|
/*1200, Data Type: SDOServerParameter_t */
|
|
#define OD_SDOServerParameter CO_OD_ROM.SDOServerParameter
|
|
|
|
/*1400, Data Type: RPDOCommunicationParameter_t */
|
|
#define OD_RPDOCommunicationParameter CO_OD_ROM.RPDOCommunicationParameter
|
|
|
|
/*1600, Data Type: RPDOMappingParameter_t */
|
|
#define OD_RPDOMappingParameter CO_OD_ROM.RPDOMappingParameter
|
|
|
|
/*1800, Data Type: TPDOCommunicationParameter_t */
|
|
#define OD_TPDOCommunicationParameter CO_OD_ROM.TPDOCommunicationParameter
|
|
|
|
/*1a00, Data Type: TPDOMappingParameter_t */
|
|
#define OD_TPDOMappingParameter CO_OD_ROM.TPDOMappingParameter
|
|
|
|
/*1f50, Data Type: DOMAIN, Array[1] */
|
|
#define OD_programData CO_OD_RAM.programData
|
|
#define ODL_programData_arrayLength 1
|
|
#define ODA_programData_ 0
|
|
|
|
/*1f51, Data Type: UNSIGNED8, Array[1] */
|
|
#define OD_programControl CO_OD_RAM.programControl
|
|
#define ODL_programControl_arrayLength 1
|
|
#define ODA_programControl_ 0
|
|
|
|
/*1f56, Data Type: UNSIGNED32, Array[1] */
|
|
#define OD_programSoftwareIdentification CO_OD_RAM.programSoftwareIdentification
|
|
#define ODL_programSoftwareIdentification_arrayLength 1
|
|
#define ODA_programSoftwareIdentification_ 0
|
|
|
|
/*1f57, Data Type: UNSIGNED32, Array[1] */
|
|
#define OD_flashStatusIdentification CO_OD_RAM.flashStatusIdentification
|
|
#define ODL_flashStatusIdentification_arrayLength 1
|
|
#define ODA_flashStatusIdentification_ 0
|
|
|
|
/*1f80, Data Type: UNSIGNED32 */
|
|
#define OD_NMTStartup CO_OD_ROM.NMTStartup
|
|
|
|
/*2100, Data Type: OCTET_STRING */
|
|
#define OD_errorStatusBits CO_OD_RAM.errorStatusBits
|
|
#define ODL_errorStatusBits_stringLength 10
|
|
|
|
/*2101, Data Type: UNSIGNED32 */
|
|
#define OD_powerOnCounter CO_OD_EEPROM.powerOnCounter
|
|
|
|
/*2102, Data Type: UNSIGNED32 */
|
|
#define OD_buttonPressCounter CO_OD_RAM.buttonPressCounter
|
|
|
|
#endif
|