1318 lines
63 KiB
C
1318 lines
63 KiB
C
/*******************************************************************************
|
||
CANopen Object Dictionary definition for CANopenNode V4
|
||
|
||
This file was automatically generated by CANopenEditor v4.1-1-ga49a51a
|
||
|
||
https://github.com/CANopenNode/CANopenNode
|
||
https://github.com/CANopenNode/CANopenEditor
|
||
|
||
DON'T EDIT THIS FILE MANUALLY !!!!
|
||
********************************************************************************
|
||
|
||
File info:
|
||
File Names: OD.h; OD.c
|
||
Project File: DS301_profile.xpd
|
||
File Version: 1
|
||
|
||
Created: 23. 11. 2020 12:00:00
|
||
Created By:
|
||
Modified: 17. 03. 2023 02:07:28
|
||
Modified By:
|
||
|
||
Device Info:
|
||
Vendor Name:
|
||
Vendor ID:
|
||
Product Name: New Product
|
||
Product ID:
|
||
|
||
Description:
|
||
*******************************************************************************/
|
||
|
||
#ifndef OD_H
|
||
#define OD_H
|
||
|
||
#include "301/CO_ODinterface.h"
|
||
|
||
/*******************************************************************************
|
||
Counters of OD objects
|
||
*******************************************************************************/
|
||
#define OD_CNT_NMT 1
|
||
#define OD_CNT_EM 1
|
||
#define OD_CNT_SYNC 1
|
||
#define OD_CNT_SYNC_PROD 1
|
||
#define OD_CNT_STORAGE 1
|
||
#define OD_CNT_TIME 1
|
||
#define OD_CNT_EM_PROD 1
|
||
#define OD_CNT_HB_CONS 1
|
||
#define OD_CNT_HB_PROD 1
|
||
#define OD_CNT_SDO_SRV 1
|
||
#define OD_CNT_SDO_CLI 1
|
||
#define OD_CNT_RPDO 4
|
||
#define OD_CNT_TPDO 4
|
||
|
||
/*******************************************************************************
|
||
Sizes of OD arrays
|
||
*******************************************************************************/
|
||
#define OD_CNT_ARR_1003 16
|
||
#define OD_CNT_ARR_1010 4
|
||
#define OD_CNT_ARR_1011 4
|
||
#define OD_CNT_ARR_1016 8
|
||
#define OD_CNT_ARR_2110 16
|
||
#define OD_CNT_ARR_2111 16
|
||
#define OD_CNT_ARR_2112 16
|
||
#define OD_CNT_ARR_6000 8
|
||
#define OD_CNT_ARR_6002 8
|
||
#define OD_CNT_ARR_6003 8
|
||
#define OD_CNT_ARR_6005 8
|
||
#define OD_CNT_ARR_6006 8
|
||
#define OD_CNT_ARR_6007 8
|
||
#define OD_CNT_ARR_6008 8
|
||
#define OD_CNT_ARR_6020 8
|
||
#define OD_CNT_ARR_6030 8
|
||
#define OD_CNT_ARR_6038 8
|
||
#define OD_CNT_ARR_6050 8
|
||
#define OD_CNT_ARR_6060 8
|
||
#define OD_CNT_ARR_6070 8
|
||
#define OD_CNT_ARR_6100 8
|
||
#define OD_CNT_ARR_6102 8
|
||
#define OD_CNT_ARR_6103 8
|
||
#define OD_CNT_ARR_6106 8
|
||
#define OD_CNT_ARR_6107 8
|
||
#define OD_CNT_ARR_6108 8
|
||
#define OD_CNT_ARR_6120 8
|
||
#define OD_CNT_ARR_6122 8
|
||
#define OD_CNT_ARR_6123 8
|
||
#define OD_CNT_ARR_6126 8
|
||
#define OD_CNT_ARR_6127 8
|
||
#define OD_CNT_ARR_6128 8
|
||
#define OD_CNT_ARR_6200 8
|
||
#define OD_CNT_ARR_6202 8
|
||
#define OD_CNT_ARR_6206 8
|
||
#define OD_CNT_ARR_6207 8
|
||
#define OD_CNT_ARR_6208 8
|
||
#define OD_CNT_ARR_6220 128
|
||
#define OD_CNT_ARR_6240 8
|
||
#define OD_CNT_ARR_6250 8
|
||
#define OD_CNT_ARR_6260 8
|
||
#define OD_CNT_ARR_6270 8
|
||
#define OD_CNT_ARR_6300 8
|
||
#define OD_CNT_ARR_6302 8
|
||
#define OD_CNT_ARR_6306 8
|
||
#define OD_CNT_ARR_6307 8
|
||
#define OD_CNT_ARR_6308 8
|
||
#define OD_CNT_ARR_6320 8
|
||
#define OD_CNT_ARR_6322 8
|
||
#define OD_CNT_ARR_6326 8
|
||
#define OD_CNT_ARR_6327 8
|
||
#define OD_CNT_ARR_6328 8
|
||
#define OD_CNT_ARR_6400 16
|
||
#define OD_CNT_ARR_6401 16
|
||
#define OD_CNT_ARR_6402 16
|
||
#define OD_CNT_ARR_6410 8
|
||
#define OD_CNT_ARR_6411 8
|
||
#define OD_CNT_ARR_6412 8
|
||
#define OD_CNT_ARR_6421 16
|
||
#define OD_CNT_ARR_6422 16
|
||
#define OD_CNT_ARR_6424 16
|
||
#define OD_CNT_ARR_6425 16
|
||
#define OD_CNT_ARR_6426 16
|
||
#define OD_CNT_ARR_6427 16
|
||
#define OD_CNT_ARR_6428 16
|
||
#define OD_CNT_ARR_6429 16
|
||
#define OD_CNT_ARR_642A 16
|
||
#define OD_CNT_ARR_642B 16
|
||
#define OD_CNT_ARR_642C 16
|
||
#define OD_CNT_ARR_642D 16
|
||
#define OD_CNT_ARR_642E 16
|
||
#define OD_CNT_ARR_642F 16
|
||
#define OD_CNT_ARR_6430 16
|
||
#define OD_CNT_ARR_6431 16
|
||
#define OD_CNT_ARR_6432 16
|
||
|
||
/*******************************************************************************
|
||
OD data declaration of all groups
|
||
*******************************************************************************/
|
||
typedef struct {
|
||
/* This object describes the type of device and its functionality. For multiple device modules the
|
||
additional information field shall contain FFFF h . In this case, the 67FF h object shall be
|
||
implemented. Figure 1 shows the value structure as defined in /CiA301/ and specifies the
|
||
additional information field. Table 2 specifies the values for the fields I/O functionality and M.
|
||
At least one I/O functionality decribed with bit 16 to 19 shall be implemented in the device.
|
||
The pre-defined, generic PDO mapping is described in this specification, the Manufacturer -
|
||
specific PDO mapping is not in the scope of this specification. In case a joystick module is
|
||
implemented, /CiA401-2/ shall be applied for purpose of the implementation.
|
||
|
||
31 Specific functionality 24
|
||
23 M
|
||
22 I/O functionality 16
|
||
15 Device profile number 0
|
||
|
||
31 Additional information 16
|
||
15 General information 0
|
||
|
||
31 MSB
|
||
0 LSB
|
||
Figure 1 — Value structure
|
||
|
||
Table 2 — Value definition for the I/O functionality field and the M field
|
||
Field name Definition
|
||
|
||
Device profile number 401d
|
||
I/O functionality – Bit 16 1b = digital input(s) implemented
|
||
0b = not implemented
|
||
I/O functionality – Bit 17 1b = digital output(s) implemented
|
||
0b = not implemented
|
||
I/O functionality – Bit 18 1b = analog input(s) implemented
|
||
0b = not implemented
|
||
I/O functionality – Bit 19 1b = analog output(s) implemented
|
||
0b = not implemented
|
||
I/O functionality – Bit 20 to Bit 21 Reserved (00 b)
|
||
I/O functionality – Bit 22 0b
|
||
M(apping of PDOs) 1b = Manufacturer-specific PDO mapping is implemented
|
||
0b = Pre-defined, generic PDO mapping is implemented (see 6.2.4
|
||
to 6.2.11)
|
||
|
||
|
||
Table 3 — Value definition for the specific functionality field
|
||
Value Specific function
|
||
0000 0000 b No specific function
|
||
0000 0001 b to 0000 0111 b Joystick module
|
||
0000 1000 b to 1000 0000 b Reserved
|
||
1000 0001 b to 1111 1111 b Operator environment interface module
|
||
*/
|
||
uint32_t x1000_deviceType;
|
||
uint32_t x1005_COB_ID_SYNCMessage;
|
||
uint32_t x1006_communicationCyclePeriod;
|
||
uint32_t x1007_synchronousWindowLength;
|
||
uint32_t x1012_COB_IDTimeStampObject;
|
||
uint32_t x1014_COB_ID_EMCY;
|
||
uint16_t x1015_inhibitTimeEMCY;
|
||
uint8_t x1016_consumerHeartbeatTime_sub0;
|
||
uint32_t x1016_consumerHeartbeatTime[OD_CNT_ARR_1016];
|
||
uint16_t x1017_producerHeartbeatTime;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t vendor_ID;
|
||
uint32_t productCode;
|
||
uint32_t revisionNumber;
|
||
uint32_t serialNumber;
|
||
} x1018_identity;
|
||
uint8_t x1019_synchronousCounterOverflowValue;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDClientToServerTx;
|
||
uint32_t COB_IDServerToClientRx;
|
||
uint8_t node_IDOfTheSDOServer;
|
||
} x1280_SDOClientParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByRPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t eventTimer;
|
||
} x1400_RPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByRPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t eventTimer;
|
||
} x1401_RPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByRPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t eventTimer;
|
||
} x1402_RPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByRPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t eventTimer;
|
||
} x1403_RPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1600_RPDOMappingParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1601_RPDOMappingParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1602_RPDOMappingParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1603_RPDOMappingParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByTPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t inhibitTime;
|
||
uint16_t eventTimer;
|
||
uint8_t SYNCStartValue;
|
||
} x1800_TPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByTPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t inhibitTime;
|
||
uint16_t eventTimer;
|
||
uint8_t SYNCStartValue;
|
||
} x1801_TPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByTPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t inhibitTime;
|
||
uint16_t eventTimer;
|
||
uint8_t SYNCStartValue;
|
||
} x1802_TPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDUsedByTPDO;
|
||
uint8_t transmissionType;
|
||
uint16_t inhibitTime;
|
||
uint16_t eventTimer;
|
||
uint8_t SYNCStartValue;
|
||
} x1803_TPDOCommunicationParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1A00_TPDOMappingParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1A01_TPDOMappingParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1A02_TPDOMappingParameter;
|
||
struct {
|
||
uint8_t numberOfMappedApplicationObjectsInPDO;
|
||
uint32_t applicationObject1;
|
||
uint32_t applicationObject2;
|
||
uint32_t applicationObject3;
|
||
uint32_t applicationObject4;
|
||
uint32_t applicationObject5;
|
||
uint32_t applicationObject6;
|
||
uint32_t applicationObject7;
|
||
uint32_t applicationObject8;
|
||
} x1A03_TPDOMappingParameter;
|
||
} OD_PERSIST_COMM_t;
|
||
|
||
typedef struct {
|
||
uint8_t x1001_errorRegister;
|
||
uint8_t x1010_storeParameters_sub0;
|
||
uint32_t x1010_storeParameters[OD_CNT_ARR_1010];
|
||
uint8_t x1011_restoreDefaultParameters_sub0;
|
||
uint32_t x1011_restoreDefaultParameters[OD_CNT_ARR_1011];
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
uint32_t COB_IDClientToServerRx;
|
||
uint32_t COB_IDServerToClientTx;
|
||
} x1200_SDOServerParameter;
|
||
uint8_t x2100_errorStatusBits[10];
|
||
uint8_t x2110_variableInt32_sub0;
|
||
int32_t x2110_variableInt32[OD_CNT_ARR_2110];
|
||
uint8_t x6000_readDigitalInput8_bit_sub0;
|
||
uint8_t x6000_readDigitalInput8_bit[OD_CNT_ARR_6000];
|
||
|
||
/* This object shall indicate the configured polarity of a group of 8 input lines. The input polarity
|
||
can be inverted individually.
|
||
1 b = input inverted
|
||
0 b = input not inverted
|
||
If the object is not supported the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6002_polarityDigitalInput8_bit_sub0;
|
||
uint8_t x6002_polarityDigitalInput8_bit[OD_CNT_ARR_6002];
|
||
|
||
/* This object shall enable and disable an additional configurable filter constant. If the object is
|
||
not supported, the device shall behave according to the default value. The type of the filter
|
||
constant and the configuration of the filter constant are manufacturer -specific.
|
||
1 = enabled
|
||
0 = disabled
|
||
*/
|
||
uint8_t x6003_digitalFilterEnable8_bit_sub0;
|
||
uint8_t x6003_digitalFilterEnable8_bit[OD_CNT_ARR_6003];
|
||
|
||
/* This object shall enable and disable globally the interrupt behavior without changing the
|
||
interrupt masks. In event-driven mode the device transmits the input values depending on the
|
||
interrupt masks in objects 6006 h , 6007 h , and 6008 h (resp. 6050 h to 6057 h, 6060 h to 6067 h ,
|
||
6070 h to 6077 h , or 6106 h , 6107 h , 6108 h , or 6126 h , 6127 h , 6128 h ) and the PDO transmission
|
||
type. If the object is not supported, the device shall behave according to the default value.
|
||
TRUE = global interrupt enabled
|
||
FALSE = global interrupt disabled
|
||
*/
|
||
uint8_t x6005_globalInterruptEnableDigital8_bit;
|
||
/*
|
||
This object shall determine, which input port lines shall activate an interrupt by positive or/and
|
||
negative edge detection.
|
||
If the object is not supported the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6006_digitalInterruptMaskAnyChange8_bit_sub0;
|
||
uint8_t x6006_digitalInterruptMaskAnyChange8_bit[OD_CNT_ARR_6006];
|
||
|
||
/* This object shall determine, which input port lines shall activate an interrupt by positive edge
|
||
detection (logical 0 to 1). This is done for groups of 8 lines. The values shall be in an ”OR”
|
||
connection to the values of 6006 h object (Interrupt mask any change 8-bit). If inputs are
|
||
inverted by 6002 h object (polarity input 8-bit), the positive logical edge shall correspond to
|
||
negative physical edge.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
*/
|
||
uint8_t x6007_digitalInterruptMaskLowToHigh8_bit_sub0;
|
||
uint8_t x6007_digitalInterruptMaskLowToHigh8_bit[OD_CNT_ARR_6007];
|
||
|
||
/* This object shall determine, which input port lines shall activate an interrupt by negative edge
|
||
detection (logical 1 to 0). This is done for groups of 8 lines. The values shall be in an ”OR”
|
||
connection to the values of 6006 h object (Interrupt mask any change 8-bit). If inputs are
|
||
inverted by 6002 h object (polarity input 8-bit), the negative logical edge shall correspond to
|
||
positive physical edge.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
*/
|
||
uint8_t x6008_digitalInterruptMaskHighToLow8_bit_sub0;
|
||
uint8_t x6008_digitalInterruptMaskHighToLow8_bit[OD_CNT_ARR_6008];
|
||
|
||
/*
|
||
These objects shall read single input lines information. A maximum of 128 input lines are
|
||
addressable with one Index. The 6020 h object shall address the input lines 1 to 128, the 6021 h
|
||
object shall address the input lines 129 to 256, etc.
|
||
*/
|
||
uint8_t x6020_readDigitalInputBit1To128_sub0;
|
||
uint8_t x6020_readDigitalInputBit1To128[OD_CNT_ARR_6020];
|
||
|
||
/* These objects shall indicate the configured polarity of single input lines. A maximum of 128
|
||
input lines are addressable with one Index. The 6030 h object shall address the input lines 1 to
|
||
128, the 6031 h object shall address the input lines 129 to 256, etc.
|
||
TRUE = input inverted
|
||
FALSE = input not inverted
|
||
If these objects are not supported the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6030_polarityDigitalInputBit1To128_sub0;
|
||
uint8_t x6030_polarityDigitalInputBit1To128[OD_CNT_ARR_6030];
|
||
|
||
/* These objects shall enable and disable an additional configurable filter constant. If these
|
||
objects are not supported, the device shall behave according to the default value. The type of
|
||
the filter constant and the configuration of the filter constant are manufacturer -specific. The
|
||
6038 h object shall address the input lines 1 to 128, the 6039 h object shall address the input
|
||
lines 129 to 256, etc.
|
||
TRUE = enabled
|
||
FALSE = disable
|
||
*/
|
||
uint8_t x6038_filterConstantDigitalInputBit1To128_sub0;
|
||
uint8_t x6038_filterConstantDigitalInputBit1To128[OD_CNT_ARR_6038];
|
||
|
||
/* These objects shall set interrupt masks for single input lines. A maximum of 128 bit inputs are
|
||
addressable with one Index. The 6050 h object shall address the input lines 1 to 128, the 6051 h
|
||
object shall address the input lines 129 to 256, etc.
|
||
TRUE = interrupt enabled
|
||
FALSE = interrupt disabled
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6050_interruptMaskDigitalInputAnyChange1To128_sub0;
|
||
uint8_t x6050_interruptMaskDigitalInputAnyChange1To128[OD_CNT_ARR_6050];
|
||
|
||
/* These objects shall set interrupt masks for a single input line. A maximum of 128 bit inputs
|
||
are addressable with one Index. The 6060 h object shall address the input lines 1 to 128, the
|
||
6061 h object shall address the input lines 129 to 256, etc. The values shall be in an ”OR”
|
||
connection to the values of 6050 h to 6057 h objects (interrupt mask any change). If inputs are
|
||
inverted by 6030 h to 6037 h objects (polarity input), the positive logical edge shall correspond
|
||
to negative physical edge.
|
||
TRUE = interrupt enabled
|
||
FALSE = interrupt disabled
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6060_interruptMaskDigitalInputLowToHigh1To128_sub0;
|
||
uint8_t x6060_interruptMaskDigitalInputLowToHigh1To128[OD_CNT_ARR_6060];
|
||
|
||
/*
|
||
These objects shall set interrupt masks for single input lines. A maximum of 128 bit inputs are
|
||
addressable with one Index. The 6070 h object shall address the input lines 1 to 128, the 6071 h
|
||
object shall address the input lines 129 to 256, etc. The values shall be in an ”OR” connection
|
||
to the values of 6050 h to 6057 h objects (interrupt mask any change). If inputs are inverted by
|
||
6030 h to 6037 h objects (polarity input), the negative logical edge shall correspond to positive
|
||
physical edge.
|
||
TRUE = interrupt enabled
|
||
FALSE = interrupt disabled
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6070_interruptMaskDigitalInputHighToLow1To128_sub0;
|
||
uint8_t x6070_interruptMaskDigitalInputHighToLow1To128[OD_CNT_ARR_6070];
|
||
|
||
/*
|
||
The object shall read a group of 16 input lines as 16-bit information. A maximum of 254 x 16-
|
||
bit words is addressable (4064 inputs).
|
||
*/
|
||
uint8_t x6100_readDigitalInput16_bit_sub0;
|
||
uint16_t x6100_readDigitalInput16_bit[OD_CNT_ARR_6100];
|
||
|
||
/* This object shall indicate the configured polarity for a group of 16 input lines. The inputs can
|
||
be inverted individually.
|
||
1 = input inverted
|
||
0 = input not inverted
|
||
If the object is not supported the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6102_polarityDigitalInput16_bit_sub0;
|
||
uint16_t x6102_polarityDigitalInput16_bit[OD_CNT_ARR_6102];
|
||
|
||
/* This object shall enable and disable an additional configurable filter constant. If the object is
|
||
not supported, the device shall behave according to the default value. The type of the filter
|
||
constant and the configuration of the filter constant are manufacturer -specific.
|
||
1 = enabled
|
||
0 = disabled
|
||
*/
|
||
uint8_t x6103_digitalFilterEnable16_bit_sub0;
|
||
uint16_t x6103_digitalFilterEnable16_bit[OD_CNT_ARR_6103];
|
||
/* This object shall determine, which input port lines shall activate an interrupt. This is done for
|
||
groups of 16 lines and for any change of a digital input line.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
*/
|
||
uint8_t x6106_interruptMaskDigitalInputAnyChange16_bit_sub0;
|
||
uint16_t x6106_interruptMaskDigitalInputAnyChange16_bit[OD_CNT_ARR_6106];
|
||
|
||
/* This object shall determine, which input port lines shall activate an interrupt. This is done for
|
||
groups of 16 lines and for a change from low -to-high of a digital input line. The values shall be
|
||
in an ”OR” connection to the values of 6106 h object (interrupt mask any change 16-bit). If
|
||
inputs are inverted by 6102 h object (polarity input 16-bit), the positive logical edge shall
|
||
correspond to negative physical edge.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled */
|
||
uint8_t x6107_interruptMaskDigitalInputLowToHigh16_bit_sub0;
|
||
uint16_t x6107_interruptMaskDigitalInputLowToHigh16_bit[OD_CNT_ARR_6107];
|
||
|
||
/* This object shall determine, which input port lines shall activate an interrupt. This is done for
|
||
groups of 16 lines and for a change from high-to-low of a digital input line. The values shall be
|
||
in an ”OR” connection to the values of 6106 h object (interrupt mask any change 16-bit). If
|
||
inputs are inverted by 6102 h object (polarity input 16-bit), the negative logical edge shall
|
||
correspond to positive physical edge.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
*/
|
||
uint8_t x6108_interruptMaskDigitalInputHighToLow16_bit_sub0;
|
||
uint16_t x6108_interruptMaskDigitalInputHighToLow16_bit[OD_CNT_ARR_6108];
|
||
|
||
/* This object shall read a group of 32 input lines as 32-bit information. A maximum of 254 x 32-
|
||
*/
|
||
uint8_t x6120_readDigitalInput32_bit_sub0;
|
||
uint32_t x6120_readDigitalInput32_bit[OD_CNT_ARR_6120];
|
||
|
||
/* This object shall indicate the configured polarity for a group of 32 input lines. Inputs can be
|
||
inverted individually.
|
||
1 = input inverted
|
||
0 = input not inverted
|
||
If the object is not supported the device shall behave according to the default value. */
|
||
uint8_t x6122_polarityDigitalInput32_bit_sub0;
|
||
uint32_t x6122_polarityDigitalInput32_bit[OD_CNT_ARR_6122];
|
||
/* This object shall enable and disable an additional configurable filter constant. If the object is
|
||
not supported, the device shall behave according to the default value. The type of the filter
|
||
constant and the configuration of the filter constant are manufacturer -specific.
|
||
1 = enabled
|
||
0 = disabled */
|
||
uint8_t x6123_digitalFilterEnable32_bit_sub0;
|
||
uint32_t x6123_digitalFilterEnable32_bit[OD_CNT_ARR_6123];
|
||
|
||
/* This object shall determine which input port lines shall activate an interrupt. This is done for
|
||
groups of 32 lines and for any change of a digital input line.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6126_interruptMaskDigitalInputAnyChange32_bit_sub0;
|
||
uint32_t x6126_interruptMaskDigitalInputAnyChange32_bit[OD_CNT_ARR_6126];
|
||
|
||
/*
|
||
This object shall determine, which input port lines shall activate an interrupt. This is done for
|
||
groups of 32 lines and for a change from low -to-high of a digital input line. The values shall be
|
||
in an ”OR” connection to the values of 6126 h object (interrupt mask any change 32-bit). If
|
||
inputs are inverted by 6122 h object (polarity input 32-bit), the positive logical edge shall
|
||
correspond to negative physical edge.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
*/
|
||
uint8_t x6127_interruptMaskDigitalInputLowToHigh32_bit_sub0;
|
||
uint32_t x6127_interruptMaskDigitalInputLowToHigh32_bit[OD_CNT_ARR_6127];
|
||
|
||
/*
|
||
This object shall determine, which input port lines shall activate an interrupt. This is done for
|
||
groups of 32 lines and for a change from high-to-low of a digital input line. The values shall be
|
||
in an ”OR” connection to the values of 6126 h object (interrupt mask any change 32-bit). If
|
||
inputs are inverted by 6122 h object (polarity input 32-bit), the negative logical edge shall
|
||
correspond to positive physical edge.
|
||
1 = interrupt enabled
|
||
0 = interrupt disabled
|
||
*/
|
||
uint8_t x6128_interruptMaskDigitalInputHighToLow32_bit_sub0;
|
||
uint32_t x6128_interruptMaskDigitalInputHighToLow32_bit[OD_CNT_ARR_6128];
|
||
|
||
/* This object shall set a group of 8 output lines as a byte of information. A maximum of 254 x 8
|
||
bit output blocks is addressable. */
|
||
uint8_t x6200_writeDigitalOutput8_bit_sub0;
|
||
uint8_t x6200_writeDigitalOutput8_bit[OD_CNT_ARR_6200];
|
||
|
||
/* This object shall indicate the configured polarity of a group of 8 output lines. The output
|
||
polarity can be inverted individually.
|
||
1 = output inverted
|
||
0 = output not inverted */
|
||
uint8_t x6202_changePolarityDigitalOutput8_bit_sub0;
|
||
uint8_t x6202_changePolarityDigitalOutput8_bit[OD_CNT_ARR_6202];
|
||
|
||
/* This object shall indicate, whether an output is set to a pre-defined error value (see 6207 h
|
||
object) in case of an internal device failure or a 'Stop Remote Node' indication.
|
||
1 = output value shall take the pre-defined condition specified in 6207 h object
|
||
0 = output value shall be kept if an error occurs
|
||
*/
|
||
uint8_t x6206_errorModeDigitalOutput8_bit_sub0;
|
||
uint8_t x6206_errorModeDigitalOutput8_bit[OD_CNT_ARR_6206];
|
||
|
||
/* This Object shall indicate to which value the outputs shall be set at device failures (see
|
||
chapter 5.2) if the corresponding error mode is active.
|
||
0 = output shall be set to ‘0’ in case of fault, if 6206 h object is enabled
|
||
1 = output shall be set to ‘1’ in case of fault, if 6206 h object is enabled
|
||
*/
|
||
uint8_t x6207_errorValueDigitalOutput8_bit_sub0;
|
||
uint8_t x6207_errorValueDigitalOutput8_bit[OD_CNT_ARR_6207];
|
||
|
||
/* This object shall indicate an additional configurable output filter mask for a group of 8 outputs.
|
||
1 = output shall be set to the received output value
|
||
0 = don’t care, the received output value is neglected for the appropriated output channel, the
|
||
old output value shall be kept.
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6208_filterMaskDigitalOutput8_bit_sub0;
|
||
uint8_t x6208_filterMaskDigitalOutput8_bit[OD_CNT_ARR_6208];
|
||
|
||
/* These objects shall set single output line information. A maximum of 128 outputs are
|
||
addressable with one Index. The 6220 h object shall address output lines 1 to 128, the 6221 h
|
||
object shall address output lines 129 to 256, etc. */
|
||
uint8_t x6220_writeDigitalOutputBit1To128_sub0;
|
||
uint8_t x6220_writeDigitalOutputBit1To128[OD_CNT_ARR_6220];
|
||
|
||
/* These objects shall set the polarity of single output lines. A maximum of 128 outputs are
|
||
addressable with one Index. The 6240 h object shall address output lines 1 to 128, the 6241 h
|
||
object shall address output lines 129 to 256, etc.
|
||
TRUE = output inverted
|
||
FALSE = output not inverted */
|
||
uint8_t x6240_changePolarityDigitalOutputBit1To128_sub0;
|
||
uint8_t x6240_changePolarityDigitalOutputBit1To128[OD_CNT_ARR_6240];
|
||
|
||
/* These objects shall indicate, whether an output is set to a pre -defined error value (see 6260 h
|
||
to 6267 h objects) in case of an internal device failure a 'Stop remote node' indication. A
|
||
maximum of 128 outputs are addressable with one Index. The 6250 h object shall address
|
||
output lines 1 to 128, the 6251 h object shall address output lines 129 to 256, etc.
|
||
TRUE = output value shall take the pre-defined condition as specified in 6260 h to 6267 h
|
||
objects
|
||
FALSE = output value shall be kept if an error occurs
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6250_errorModeDigitalOutputLines1To128_sub0;
|
||
uint8_t x6250_errorModeDigitalOutputLines1To128[OD_CNT_ARR_6250];
|
||
|
||
/* This Object shall indicate to which value the outputs shall be set at device failures (see
|
||
chapter 5.2) if the corresponding error mode is active. A maximum of 128 outputs are
|
||
addressable with one Index. The 6260 h object shall address output lines 1 to 128, the 6261 h
|
||
object shall address output lines 129 to 256, etc.
|
||
FALSE = output shall be set to ‘0’ in case of fault, if the corresponding object (6250 h to 6257 h )
|
||
is enabled
|
||
TRUE = output shall be set to ‘1’ in case of fault, if the corresponding object (6250 h to 6257 h )
|
||
is enabled
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6260_errorValueDigitalOutputBit1To128_sub0;
|
||
uint8_t x6260_errorValueDigitalOutputBit1To128[OD_CNT_ARR_6260];
|
||
|
||
/* This object shall indicate an additional configurable output filter mask for a single output.
|
||
TRUE = output shall set to the received output value
|
||
FALSE = don’t care the received output value is neglected for the appropriated output
|
||
channel, the old output value shall be kept
|
||
A maximum of 128 outputs are addressable with one Index. The 6270 h object shall address
|
||
output lines 1 to 128, the 6271 h object shall address output lines 129 to 256, etc.
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6270_filterMaskDigitalOutputBit1To128_sub0;
|
||
uint8_t x6270_filterMaskDigitalOutputBit1To128[OD_CNT_ARR_6270];
|
||
|
||
/* This object shall set a group of 16 output lines as 2 -byte information. A maximum of 255 x 16-
|
||
bit words is addressable (4080 outputs). */
|
||
uint8_t x6300_writeDigitalOutput16_bit_sub0;
|
||
uint16_t x6300_writeDigitalOutput16_bit[OD_CNT_ARR_6300];
|
||
|
||
/* This object shall indicate the configured polarity for a group of 16 output lines. The output
|
||
polarity can be inverted individually.
|
||
1 = enabled
|
||
0 = disabled
|
||
If the object is not supported the device shall behave according to the default value. */
|
||
uint8_t x6302_changePolarityDigitalOutput16_bit_sub0;
|
||
uint16_t x6302_changePolarityDigitalOutput16_bit[OD_CNT_ARR_6302];
|
||
|
||
/* These objects shall indicate, whether an output is set to a pre -defined error value (see 6307 h
|
||
object) in case of an internal device failure a 'Stop Remote Node' indication.
|
||
1 = output value shall take the pre-defined condition as specified in 6307 h object
|
||
0 = output value shall be kept if an error occurs
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6306_errorModeDigitalOutput16_bit_sub0;
|
||
uint16_t x6306_errorModeDigitalOutput16_bit[OD_CNT_ARR_6306];
|
||
|
||
/* This Object shall indicate to which value the outputs shall be set at device failures (see
|
||
chapter 5.2) if the corresponding error mode is active.
|
||
0 = output shall be set to ‘0’ in case of fault, if 6306h object is enabled
|
||
1 = output shall be set to ‘1’ in case of fault, if 6306h object is enabled
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6307_errorValueDigitalOutput16_bit_sub0;
|
||
uint16_t x6307_errorValueDigitalOutput16_bit[OD_CNT_ARR_6307];
|
||
|
||
/* This object shall define an additional configurable output filter mask for a group of 16 outputs.
|
||
1 = output is shall set to the received output value
|
||
0 = don’t care, the received output value is neglected for the appropriated output channel, the
|
||
old output value shall be kept.
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6308_filterMaskDigitalOutput16_bit_sub0;
|
||
uint16_t x6308_filterMaskDigitalOutput16_bit[OD_CNT_ARR_6308];
|
||
|
||
/* This object shall set a group of 32 output lines as 4 -Byte information. A maximum of 255 x 32-
|
||
bit words is addressable (8160 outputs). */
|
||
uint8_t x6320_writeDigitalOutput32_bit_sub0;
|
||
uint32_t x6320_writeDigitalOutput32_bit[OD_CNT_ARR_6320];
|
||
|
||
/* This object shall define the polarity for a group of 32 output lines. The output polarity can be
|
||
inverted individually.
|
||
1 = enabled
|
||
0 = disabled
|
||
If the object is not supported the device shall behave accordingly to the default value. */
|
||
uint8_t x6322_changePolarityDigitalOutput32_bit_sub0;
|
||
uint32_t x6322_changePolarityDigitalOutput32_bit[OD_CNT_ARR_6322];
|
||
|
||
/* These objects shall indicate, whether an output is set to a pre -defined error value (see also
|
||
6327 h object) in case of an internal device failure a 'Stop Remote Node' indication.
|
||
1 = output value shall take the pre-defined condition as specified in 6327 h object
|
||
0 = output value shall be kept if an error occurs
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6326_errorModeDigitalOutput32_bit_sub0;
|
||
uint32_t x6326_errorModeDigitalOutput32_bit[OD_CNT_ARR_6326];
|
||
|
||
/* This Object shall indicate to which value the outputs shall be set at device failures (see
|
||
chapter 5.2) if the corresponding error mode is active.
|
||
0 = output shall be set to ‘0’ in case of fault, if 6326 h object is enabled
|
||
1 = output shall be set to ‘1’ in case of fault, if 6326 h object is enabled
|
||
If the object is not supported, the device shall behave according to the default value. */
|
||
uint8_t x6327_errorValueDigitalOutput32_bit_sub0;
|
||
uint32_t x6327_errorValueDigitalOutput32_bit[OD_CNT_ARR_6327];
|
||
|
||
/* This object shall define an additional configurable output filter mask for a group of 32 outputs.
|
||
1 = output shall be set to the received output value
|
||
0 = don’t care the received output value is neglected for the appropriated output channel, the
|
||
old output value shall be kept.
|
||
If the object is not supported, the device shall behave accordingly to the default value. */
|
||
uint8_t x6328_filterMaskDigitalOutput32_bit_sub0;
|
||
uint32_t x6328_filterMaskDigitalOutput32_bit[OD_CNT_ARR_6328];
|
||
|
||
/* This object shall read the value of the input channel 'n'. The value size is 8 -bit or less. The
|
||
value shall always be left adjusted. The remaining bits at the right side of the LSB shall be set
|
||
to zero. */
|
||
uint8_t x6400_readAnalogInput8_bit_sub0;
|
||
uint8_t x6400_readAnalogInput8_bit[OD_CNT_ARR_6400];
|
||
|
||
/* This object shall read the value of the input channel 'n'. The value is 16-bit wide or less. The
|
||
value shall always be left adjusted. The remaining bits at the right side of the LSB shall be set
|
||
to zero. */
|
||
uint8_t x6401_readAnalogInput16_bit_sub0;
|
||
int16_t x6401_readAnalogInput16_bit[OD_CNT_ARR_6401];
|
||
|
||
/* This object shall read the value of the input channel 'n'. The value is 32 -bit wide or less. The
|
||
value shall always be left adjusted. The remaining bits at the right side of the LSB shall be set
|
||
to zero. */
|
||
uint8_t x6402_readAnalogInput32_bit_sub0;
|
||
int32_t x6402_readAnalogInput32_bit[OD_CNT_ARR_6402];
|
||
|
||
/* This object shall write an integer8 value to the output channel 'n'. The value shall always be
|
||
left adjusted. */
|
||
uint8_t x6410_writeAnalogOutput8_bit_sub0;
|
||
int8_t x6410_writeAnalogOutput8_bit[OD_CNT_ARR_6410];
|
||
|
||
/* This object shall write an integer16 value to the output channel 'n'. The value shall always be
|
||
left adjusted. */
|
||
uint8_t x6411_writeAnalogOutput16_bit_sub0;
|
||
int16_t x6411_writeAnalogOutput16_bit[OD_CNT_ARR_6411];
|
||
|
||
/* This object shall write an integer32 value to the output channel 'n'. The value shall always be
|
||
left adjusted. */
|
||
uint8_t x6412_writeAnalogOutput32_bit_sub0;
|
||
int32_t x6412_writeAnalogOutput32_bit[OD_CNT_ARR_6412];
|
||
|
||
/*
|
||
This object shall determine, which events shall cause an interrupt for a specific channel.
|
||
Any bit set to 1 b shall trigger the corresponding analog input. If the object is not supported, the device
|
||
shall behave according to the default value.
|
||
bit 0 0b Upper limit not exceeded
|
||
bit 0 1b Upper limit exceeded
|
||
bit 1 0b Input not below lower limit
|
||
bit 1 1b Input below lower limit
|
||
bit 2 0b Input not changed by more than delta
|
||
bit 2 1b Input changed by more than delta
|
||
bit 3 0b Input not reduced by more than negative delta
|
||
bit 3 1b Input reduced by more than negative delta
|
||
bit 4 0b Input not increased by more than positive delta
|
||
bit 4 1b Input increased by more than positive delta
|
||
bit 5 0b Reserved for future use
|
||
*/
|
||
uint8_t x6421_analogInputInterruptTriggerSelection_bit_sub0;
|
||
int32_t x6421_analogInputInterruptTriggerSelection_bit[OD_CNT_ARR_6421];
|
||
|
||
/*
|
||
This object shall determine, which channel has produced an interrupt. The bits set shall relate
|
||
to the number of the channels that have produced interrupts. The bits shall be reset
|
||
automatically after read by SDO or transmitted by means of a PDO.
|
||
1 = interrupt produced
|
||
0 = no interrupt produced
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
*/
|
||
uint8_t x6422_analogInputInterruptSource_bit_sub0;
|
||
int32_t x6422_analogInputInterruptSource_bit[OD_CNT_ARR_6422];
|
||
/*
|
||
This object shall enable and disable globally the interrupt behavior without changing the
|
||
interrupt mask. By default, no analog input activates an interrupt.
|
||
TRUE = global interrupt enabled
|
||
FALSE = global interrupt disabled
|
||
*/
|
||
uint8_t x6423_analogInputGlobalInterruptEnable;
|
||
/*
|
||
This object shall trigger an interrupt if enabled (see 6423 h object) and the analog input is
|
||
equal to, or rises above the given value. The value shall always be left adjusted. As long as
|
||
the trigger condition is met, every change of the analog input data generates a new interrupt,
|
||
if there is no additional trigger condition, e.g. an input interrupt delta (6426 h ).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt upper limit float object (6429 h ) shall also cause a
|
||
value change in the 6424 h object and vice versa.
|
||
*/
|
||
uint8_t x6424_analogInputUpperLimitInteger_bit_sub0;
|
||
int32_t x6424_analogInputUpperLimitInteger_bit[OD_CNT_ARR_6424];
|
||
/*
|
||
This object shall trigger an interrupt if enabled (see 6423 h object) and the analog input falls
|
||
below the given value. The value shall always be left adjusted. As long as the trigger
|
||
condition is met, every change of the analog input data generates a new interrupt, if there is
|
||
no additional trigger condition, e.g. an input interrupt delta (6426 h ).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt lower limit float object (642A h ) shall also cause a
|
||
value change in the 6425 h object and vice versa.
|
||
*/
|
||
uint8_t x6425_analogInputLowerLimitInteger_bit_sub0;
|
||
int32_t x6425_analogInputLowerLimitInteger_bit[OD_CNT_ARR_6425];
|
||
/*
|
||
This object shall set the delta value (rising or falling above or below the last communicated
|
||
value) for interrupt-enabled analog inputs (see 6423 h object).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt delta float object (642B h ) shall also cause a value
|
||
change in 6426 h object and vice versa.
|
||
*/
|
||
uint8_t x6426_analogInputInterruptDeltaUnsigned_bit_sub0;
|
||
int32_t x6426_analogInputInterruptDeltaUnsigned_bit[OD_CNT_ARR_6426];
|
||
/*
|
||
This object shall set the negative delta value (falling below the last communicated value) for
|
||
interrupt-enabled analog inputs (see 6423 h object).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt negative delta float object (642C h ) shall also cause
|
||
a value change in the 6427 h object and vice versa.
|
||
*/
|
||
uint8_t x6427_analogInputInterruptNegativeDeltaUnsigned_bit_sub0;
|
||
int32_t x6427_analogInputInterruptNegativeDeltaUnsigned_bit[OD_CNT_ARR_6427];
|
||
/*
|
||
This object shall set the positive delta value (rising above the last communicated value) for
|
||
interrupt-enabled analog inputs (see 6423 h object).
|
||
If the object is not supported, the device shall behave accordingly to the default value.
|
||
Configuration of the analog input interrupt positive delta float object (642D h ) shall also cause
|
||
a value change in the 6428 h object and vice versa.
|
||
*/
|
||
uint8_t x6428_analogInputInterruptPositiveDeltaUnsigned_bit_sub0;
|
||
int32_t x6428_analogInputInterruptPositiveDeltaUnsigned_bit[OD_CNT_ARR_6428];
|
||
/*
|
||
This object shall set the converted upper limits for interrupt-enabled analog inputs (see 6423 h
|
||
object). As long as the trigger condition is met, every change of the analog input data
|
||
generates a new interrupt, if there is no additional trigger condition, e.g. an input interrupt
|
||
delta (642B h ).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt upper limit integer object (6424 h ) shall also cause a
|
||
value change in the 6429 h object and vice versa.
|
||
*/
|
||
uint8_t x6429_analogInputInterruptUpperLimitFloat_bit_sub0;
|
||
float32_t x6429_analogInputInterruptUpperLimitFloat_bit[OD_CNT_ARR_6429];
|
||
/*
|
||
This object shall set the lower limits for interrupt -enabled analog inputs (see 6423 h object). As
|
||
long as the trigger condition is met, every change of the analog input data generates a new
|
||
interrupt, if there is no additional trigger condition, e.g. an input interrupt delta (642B h ).
|
||
If the object is not supported, the device shall behave accordingly to the default value.
|
||
Configuration of the analog input interrupt lower limit integer object (6425 h ) shall also cause a
|
||
value change in the 642A h object and vice versa.
|
||
*/
|
||
uint8_t x642A_analogInputInterruptLowerLimitFloat_bit_sub0;
|
||
float32_t x642A_analogInputInterruptLowerLimitFloat_bit[OD_CNT_ARR_642A];
|
||
/*
|
||
This object shall set the delta value (rising or falling above or below the last sample) in float
|
||
format for interrupt-enabled analog inputs (see 6423 h object).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt delta unsigned object (6426 h) shall also cause a
|
||
value change in the 642B h object and vice versa.
|
||
*/
|
||
uint8_t x642B_analogInputInterruptDeltaFloat_bit_sub0;
|
||
float32_t x642B_analogInputInterruptDeltaFloat_bit[OD_CNT_ARR_642B];
|
||
/*
|
||
This object shall set the negative delta value (falling below the last sample) in float format for
|
||
interrupt-enabled analog inputs (see 6423 h object).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt negative delta unsigned object (6427 h ) shall also
|
||
cause a value change in the 642C h object and vice versa.
|
||
*/
|
||
uint8_t x642C_analogInputInterruptNegativeDeltaFloat_bit_sub0;
|
||
float32_t x642C_analogInputInterruptNegativeDeltaFloat_bit[OD_CNT_ARR_642C];
|
||
/*
|
||
This object shall set the positive delta value (rising above the last sample) in float format for
|
||
interrupt-enabled analog inputs (see 6423 h object).
|
||
If the object is not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input interrupt positive delta unsigned object (6428 h ) shall also
|
||
cause a value change in the 642D h object and vice versa.
|
||
*/
|
||
uint8_t x642D_analogInputInterruptPositiveDeltaFloat_bit_sub0;
|
||
float32_t x642D_analogInputInterruptPositiveDeltaFloat_bit[OD_CNT_ARR_642D];
|
||
/*
|
||
This object shall set the offsets in float format for input data (6403 h object) for channel 'n'.
|
||
Figure 6 specifies the relationship between the analog input objects for the 16 -bit access. The
|
||
analog input offset float value shall be calculated by the formula defined in the sub -clause
|
||
8.4.4.
|
||
If the object is not supported, the device shall behave accordingly to 6431 h object, or if that
|
||
object is also not supported, the device shall behave accordingly to the default value.
|
||
Configuration of the analog input offset integer object (6431 h ) shall also cause a value change
|
||
in the 642E h object and vice versa.
|
||
*/
|
||
uint8_t x642E_analogInputOffsetFloat_bit_sub0;
|
||
float32_t x642E_analogInputOffsetFloat_bit[OD_CNT_ARR_642E];
|
||
/*
|
||
This object shall set the pre-scaling in float format for input data (6403 h object). Figure 6
|
||
specifies the relationship between the analog input objects for the 16 -bit access. The analog
|
||
input pre-scaling float value shall be calculated by the formula defined in the sub -clause 8.4.4.
|
||
If the object is not supported, the device shall behave accordingly to 6432 h object, or if that
|
||
object is also not supported, the device shall behave accordingly to the default value.
|
||
Configuration of the analog input pre-scaling integer object (6432 h ) shall also cause a value
|
||
change in the 642F h object and vice versa.
|
||
*/
|
||
uint8_t x642F_analogInputPreScalingFloat_bit_sub0;
|
||
float32_t x642F_analogInputPreScalingFloat_bit[OD_CNT_ARR_642F];
|
||
/*
|
||
This object shall assign SI units and prefixes for analog inputs. The value structure is
|
||
specified in Figure 9.
|
||
31 Prefix 24
|
||
23 SI Numerator 16
|
||
15 SI Denominator 8
|
||
7 reserved 0
|
||
*/
|
||
uint8_t x6430_analogInputSIUnit_bit_sub0;
|
||
uint8_t x6430_analogInputSIUnit_bit[OD_CNT_ARR_6430];
|
||
/*
|
||
This object shall set the offset in integer format for input data (6403 h object). Figure 6
|
||
specifies the relationship between the analog input objects for the 16 -bit access. The analog
|
||
input offset integer value shall be calculated by the formula defined in the sub -clause 8.4.4.
|
||
If the object is not supported, the device shall behave according to 642E h object, or if that
|
||
object is also not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input offset float object (642E h ) shall also cause a value change in
|
||
the 6431 h object and vice versa.
|
||
*/
|
||
uint8_t x6431_analogInputOffsetInteger_bit_sub0;
|
||
int32_t x6431_analogInputOffsetInteger_bit[OD_CNT_ARR_6431];
|
||
|
||
/* This object shall set the pre-scaling in integer format or input data (6403 h object). Figure 6
|
||
specifies the relationship between the analog input objects for the 16 -bit access. The analog
|
||
input pre-scaling integer value shall be calculated by the formula defined in the sub -clause
|
||
8.4.4.
|
||
If the object is not supported, the device shall behave according to 642F h object, or if that
|
||
object is also not supported, the device shall behave according to the default value.
|
||
Configuration of the analog input pre-scaling float object (642F h ) shall also cause a value
|
||
change in the 6432 h object and vice versa.
|
||
*/
|
||
uint8_t x6432_analogInputPreScalingInteger_bit_sub0;
|
||
int32_t x6432_analogInputPreScalingInteger_bit[OD_CNT_ARR_6432];
|
||
|
||
/* This object shall describe the first logical device in a multiple device module according to
|
||
/CiA301/. */
|
||
uint32_t x67FF_deviceType;
|
||
|
||
} OD_RAM_t;
|
||
|
||
typedef struct {
|
||
uint32_t x2106_power_onCounter;
|
||
uint8_t x2112_variableNV_Int32AutoSave_sub0;
|
||
int32_t x2112_variableNV_Int32AutoSave[OD_CNT_ARR_2112];
|
||
} OD_PERSIST_APP_AUTO_t;
|
||
|
||
typedef struct {
|
||
uint8_t x2111_variableInt32Save_sub0;
|
||
int32_t x2111_variableInt32Save[OD_CNT_ARR_2111];
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
int64_t I64;
|
||
uint64_t U64;
|
||
float32_t R32;
|
||
float64_t R64;
|
||
uint16_t parameterWithDefaultValue;
|
||
} x2120_demoRecord;
|
||
struct {
|
||
uint8_t highestSub_indexSupported;
|
||
char stringShort[4];
|
||
char stringLong[1001];
|
||
uint8_t octetString[10];
|
||
} x2121_demoStrings;
|
||
} OD_PERSIST_APP_t;
|
||
|
||
#ifndef OD_ATTR_PERSIST_COMM
|
||
#define OD_ATTR_PERSIST_COMM
|
||
#endif
|
||
extern OD_ATTR_PERSIST_COMM OD_PERSIST_COMM_t OD_PERSIST_COMM;
|
||
|
||
#ifndef OD_ATTR_RAM
|
||
#define OD_ATTR_RAM
|
||
#endif
|
||
extern OD_ATTR_RAM OD_RAM_t OD_RAM;
|
||
|
||
#ifndef OD_ATTR_PERSIST_APP_AUTO
|
||
#define OD_ATTR_PERSIST_APP_AUTO
|
||
#endif
|
||
extern OD_ATTR_PERSIST_APP_AUTO OD_PERSIST_APP_AUTO_t OD_PERSIST_APP_AUTO;
|
||
|
||
#ifndef OD_ATTR_PERSIST_APP
|
||
#define OD_ATTR_PERSIST_APP
|
||
#endif
|
||
extern OD_ATTR_PERSIST_APP OD_PERSIST_APP_t OD_PERSIST_APP;
|
||
|
||
#ifndef OD_ATTR_OD
|
||
#define OD_ATTR_OD
|
||
#endif
|
||
extern OD_ATTR_OD OD_t* OD;
|
||
|
||
/*******************************************************************************
|
||
Object dictionary entries - shortcuts
|
||
*******************************************************************************/
|
||
#define OD_ENTRY_H1000 &OD->list[0]
|
||
#define OD_ENTRY_H1001 &OD->list[1]
|
||
#define OD_ENTRY_H1003 &OD->list[2]
|
||
#define OD_ENTRY_H1005 &OD->list[3]
|
||
#define OD_ENTRY_H1006 &OD->list[4]
|
||
#define OD_ENTRY_H1007 &OD->list[5]
|
||
#define OD_ENTRY_H1008 &OD->list[6]
|
||
#define OD_ENTRY_H1009 &OD->list[7]
|
||
#define OD_ENTRY_H100A &OD->list[8]
|
||
#define OD_ENTRY_H1010 &OD->list[9]
|
||
#define OD_ENTRY_H1011 &OD->list[10]
|
||
#define OD_ENTRY_H1012 &OD->list[11]
|
||
#define OD_ENTRY_H1014 &OD->list[12]
|
||
#define OD_ENTRY_H1015 &OD->list[13]
|
||
#define OD_ENTRY_H1016 &OD->list[14]
|
||
#define OD_ENTRY_H1017 &OD->list[15]
|
||
#define OD_ENTRY_H1018 &OD->list[16]
|
||
#define OD_ENTRY_H1019 &OD->list[17]
|
||
#define OD_ENTRY_H1200 &OD->list[18]
|
||
#define OD_ENTRY_H1400 &OD->list[19]
|
||
#define OD_ENTRY_H1401 &OD->list[20]
|
||
#define OD_ENTRY_H1402 &OD->list[21]
|
||
#define OD_ENTRY_H1403 &OD->list[22]
|
||
#define OD_ENTRY_H1600 &OD->list[23]
|
||
#define OD_ENTRY_H1601 &OD->list[24]
|
||
#define OD_ENTRY_H1602 &OD->list[25]
|
||
#define OD_ENTRY_H1603 &OD->list[26]
|
||
#define OD_ENTRY_H1800 &OD->list[27]
|
||
#define OD_ENTRY_H1801 &OD->list[28]
|
||
#define OD_ENTRY_H1802 &OD->list[29]
|
||
#define OD_ENTRY_H1803 &OD->list[30]
|
||
#define OD_ENTRY_H1A00 &OD->list[31]
|
||
#define OD_ENTRY_H1A01 &OD->list[32]
|
||
#define OD_ENTRY_H1A02 &OD->list[33]
|
||
#define OD_ENTRY_H1A03 &OD->list[34]
|
||
#define OD_ENTRY_H2100 &OD->list[35]
|
||
#define OD_ENTRY_H2106 &OD->list[36]
|
||
#define OD_ENTRY_H2110 &OD->list[37]
|
||
#define OD_ENTRY_H2111 &OD->list[38]
|
||
#define OD_ENTRY_H2112 &OD->list[39]
|
||
#define OD_ENTRY_H2120 &OD->list[40]
|
||
#define OD_ENTRY_H2121 &OD->list[41]
|
||
#define OD_ENTRY_H2122 &OD->list[42]
|
||
#define OD_ENTRY_H6000 &OD->list[43]
|
||
#define OD_ENTRY_H6002 &OD->list[44]
|
||
#define OD_ENTRY_H6003 &OD->list[45]
|
||
#define OD_ENTRY_H6005 &OD->list[46]
|
||
#define OD_ENTRY_H6006 &OD->list[47]
|
||
#define OD_ENTRY_H6007 &OD->list[48]
|
||
#define OD_ENTRY_H6008 &OD->list[49]
|
||
#define OD_ENTRY_H6020 &OD->list[50]
|
||
#define OD_ENTRY_H6030 &OD->list[51]
|
||
#define OD_ENTRY_H6038 &OD->list[52]
|
||
#define OD_ENTRY_H6050 &OD->list[53]
|
||
#define OD_ENTRY_H6060 &OD->list[54]
|
||
#define OD_ENTRY_H6070 &OD->list[55]
|
||
#define OD_ENTRY_H6100 &OD->list[56]
|
||
#define OD_ENTRY_H6102 &OD->list[57]
|
||
#define OD_ENTRY_H6103 &OD->list[58]
|
||
#define OD_ENTRY_H6106 &OD->list[59]
|
||
#define OD_ENTRY_H6107 &OD->list[60]
|
||
#define OD_ENTRY_H6108 &OD->list[61]
|
||
#define OD_ENTRY_H6120 &OD->list[62]
|
||
#define OD_ENTRY_H6122 &OD->list[63]
|
||
#define OD_ENTRY_H6123 &OD->list[64]
|
||
#define OD_ENTRY_H6126 &OD->list[65]
|
||
#define OD_ENTRY_H6127 &OD->list[66]
|
||
#define OD_ENTRY_H6128 &OD->list[67]
|
||
#define OD_ENTRY_H6200 &OD->list[68]
|
||
#define OD_ENTRY_H6202 &OD->list[69]
|
||
#define OD_ENTRY_H6206 &OD->list[70]
|
||
#define OD_ENTRY_H6207 &OD->list[71]
|
||
#define OD_ENTRY_H6208 &OD->list[72]
|
||
#define OD_ENTRY_H6220 &OD->list[73]
|
||
#define OD_ENTRY_H6240 &OD->list[74]
|
||
#define OD_ENTRY_H6250 &OD->list[75]
|
||
#define OD_ENTRY_H6260 &OD->list[76]
|
||
#define OD_ENTRY_H6270 &OD->list[77]
|
||
#define OD_ENTRY_H6300 &OD->list[78]
|
||
#define OD_ENTRY_H6302 &OD->list[79]
|
||
#define OD_ENTRY_H6306 &OD->list[80]
|
||
#define OD_ENTRY_H6307 &OD->list[81]
|
||
#define OD_ENTRY_H6308 &OD->list[82]
|
||
#define OD_ENTRY_H6320 &OD->list[83]
|
||
#define OD_ENTRY_H6322 &OD->list[84]
|
||
#define OD_ENTRY_H6326 &OD->list[85]
|
||
#define OD_ENTRY_H6327 &OD->list[86]
|
||
#define OD_ENTRY_H6328 &OD->list[87]
|
||
#define OD_ENTRY_H6400 &OD->list[88]
|
||
#define OD_ENTRY_H6401 &OD->list[89]
|
||
#define OD_ENTRY_H6402 &OD->list[90]
|
||
#define OD_ENTRY_H6410 &OD->list[91]
|
||
#define OD_ENTRY_H6411 &OD->list[92]
|
||
#define OD_ENTRY_H6412 &OD->list[93]
|
||
#define OD_ENTRY_H6421 &OD->list[94]
|
||
#define OD_ENTRY_H6422 &OD->list[95]
|
||
#define OD_ENTRY_H6423 &OD->list[96]
|
||
#define OD_ENTRY_H6424 &OD->list[97]
|
||
#define OD_ENTRY_H6425 &OD->list[98]
|
||
#define OD_ENTRY_H6426 &OD->list[99]
|
||
#define OD_ENTRY_H6427 &OD->list[100]
|
||
#define OD_ENTRY_H6428 &OD->list[101]
|
||
#define OD_ENTRY_H6429 &OD->list[102]
|
||
#define OD_ENTRY_H642A &OD->list[103]
|
||
#define OD_ENTRY_H642B &OD->list[104]
|
||
#define OD_ENTRY_H642C &OD->list[105]
|
||
#define OD_ENTRY_H642D &OD->list[106]
|
||
#define OD_ENTRY_H642E &OD->list[107]
|
||
#define OD_ENTRY_H642F &OD->list[108]
|
||
#define OD_ENTRY_H6430 &OD->list[109]
|
||
#define OD_ENTRY_H6431 &OD->list[110]
|
||
#define OD_ENTRY_H6432 &OD->list[111]
|
||
#define OD_ENTRY_H67FF &OD->list[112]
|
||
|
||
/*******************************************************************************
|
||
Object dictionary entries - shortcuts with names
|
||
*******************************************************************************/
|
||
#define OD_ENTRY_H1000_deviceType &OD->list[0]
|
||
#define OD_ENTRY_H1001_errorRegister &OD->list[1]
|
||
#define OD_ENTRY_H1003_pre_definedErrorField &OD->list[2]
|
||
#define OD_ENTRY_H1005_COB_ID_SYNCMessage &OD->list[3]
|
||
#define OD_ENTRY_H1006_communicationCyclePeriod &OD->list[4]
|
||
#define OD_ENTRY_H1007_synchronousWindowLength &OD->list[5]
|
||
#define OD_ENTRY_H1008_manufacturerDeviceName &OD->list[6]
|
||
#define OD_ENTRY_H1009_manufacturerHardwareVersion &OD->list[7]
|
||
#define OD_ENTRY_H100A_manufacturerSoftwareVersion &OD->list[8]
|
||
#define OD_ENTRY_H1010_storeParameters &OD->list[9]
|
||
#define OD_ENTRY_H1011_restoreDefaultParameters &OD->list[10]
|
||
#define OD_ENTRY_H1012_COB_IDTimeStampObject &OD->list[11]
|
||
#define OD_ENTRY_H1014_COB_ID_EMCY &OD->list[12]
|
||
#define OD_ENTRY_H1015_inhibitTimeEMCY &OD->list[13]
|
||
#define OD_ENTRY_H1016_consumerHeartbeatTime &OD->list[14]
|
||
#define OD_ENTRY_H1017_producerHeartbeatTime &OD->list[15]
|
||
#define OD_ENTRY_H1018_identity &OD->list[16]
|
||
#define OD_ENTRY_H1019_synchronousCounterOverflowValue &OD->list[17]
|
||
#define OD_ENTRY_H1200_SDOServerParameter &OD->list[18]
|
||
#define OD_ENTRY_H1400_RPDOCommunicationParameter &OD->list[19]
|
||
#define OD_ENTRY_H1401_RPDOCommunicationParameter &OD->list[20]
|
||
#define OD_ENTRY_H1402_RPDOCommunicationParameter &OD->list[21]
|
||
#define OD_ENTRY_H1403_RPDOCommunicationParameter &OD->list[22]
|
||
#define OD_ENTRY_H1600_RPDOMappingParameter &OD->list[23]
|
||
#define OD_ENTRY_H1601_RPDOMappingParameter &OD->list[24]
|
||
#define OD_ENTRY_H1602_RPDOMappingParameter &OD->list[25]
|
||
#define OD_ENTRY_H1603_RPDOMappingParameter &OD->list[26]
|
||
#define OD_ENTRY_H1800_TPDOCommunicationParameter &OD->list[27]
|
||
#define OD_ENTRY_H1801_TPDOCommunicationParameter &OD->list[28]
|
||
#define OD_ENTRY_H1802_TPDOCommunicationParameter &OD->list[29]
|
||
#define OD_ENTRY_H1803_TPDOCommunicationParameter &OD->list[30]
|
||
#define OD_ENTRY_H1A00_TPDOMappingParameter &OD->list[31]
|
||
#define OD_ENTRY_H1A01_TPDOMappingParameter &OD->list[32]
|
||
#define OD_ENTRY_H1A02_TPDOMappingParameter &OD->list[33]
|
||
#define OD_ENTRY_H1A03_TPDOMappingParameter &OD->list[34]
|
||
#define OD_ENTRY_H2100_errorStatusBits &OD->list[35]
|
||
#define OD_ENTRY_H2106_power_onCounter &OD->list[36]
|
||
#define OD_ENTRY_H2110_variableInt32 &OD->list[37]
|
||
#define OD_ENTRY_H2111_variableInt32Save &OD->list[38]
|
||
#define OD_ENTRY_H2112_variableNV_Int32AutoSave &OD->list[39]
|
||
#define OD_ENTRY_H2120_demoRecord &OD->list[40]
|
||
#define OD_ENTRY_H2121_demoStrings &OD->list[41]
|
||
#define OD_ENTRY_H2122_demoDomain &OD->list[42]
|
||
#define OD_ENTRY_H6000_readDigitalInput8_bit &OD->list[43]
|
||
#define OD_ENTRY_H6002_polarityDigitalInput8_bit &OD->list[44]
|
||
#define OD_ENTRY_H6003_digitalFilterEnable8_bit &OD->list[45]
|
||
#define OD_ENTRY_H6005_globalInterruptEnableDigital8_bit &OD->list[46]
|
||
#define OD_ENTRY_H6006_digitalInterruptMaskAnyChange8_bit &OD->list[47]
|
||
#define OD_ENTRY_H6007_digitalInterruptMaskLowToHigh8_bit &OD->list[48]
|
||
#define OD_ENTRY_H6008_digitalInterruptMaskHighToLow8_bit &OD->list[49]
|
||
#define OD_ENTRY_H6020_readDigitalInputBit1To128 &OD->list[50]
|
||
#define OD_ENTRY_H6030_polarityDigitalInputBit1To128 &OD->list[51]
|
||
#define OD_ENTRY_H6038_filterConstantDigitalInputBit1To128 &OD->list[52]
|
||
#define OD_ENTRY_H6050_interruptMaskDigitalInputAnyChange1To128 &OD->list[53]
|
||
#define OD_ENTRY_H6060_interruptMaskDigitalInputLowToHigh1To128 &OD->list[54]
|
||
#define OD_ENTRY_H6070_interruptMaskDigitalInputHighToLow1To128 &OD->list[55]
|
||
#define OD_ENTRY_H6100_readDigitalInput16_bit &OD->list[56]
|
||
#define OD_ENTRY_H6102_polarityDigitalInput16_bit &OD->list[57]
|
||
#define OD_ENTRY_H6103_digitalFilterEnable16_bit &OD->list[58]
|
||
#define OD_ENTRY_H6106_interruptMaskDigitalInputAnyChange16_bit &OD->list[59]
|
||
#define OD_ENTRY_H6107_interruptMaskDigitalInputLowToHigh16_bit &OD->list[60]
|
||
#define OD_ENTRY_H6108_interruptMaskDigitalInputHighToLow16_bit &OD->list[61]
|
||
#define OD_ENTRY_H6120_readDigitalInput32_bit &OD->list[62]
|
||
#define OD_ENTRY_H6122_polarityDigitalInput32_bit &OD->list[63]
|
||
#define OD_ENTRY_H6123_digitalFilterEnable32_bit &OD->list[64]
|
||
#define OD_ENTRY_H6126_interruptMaskDigitalInputAnyChange32_bit &OD->list[65]
|
||
#define OD_ENTRY_H6127_interruptMaskDigitalInputLowToHigh32_bit &OD->list[66]
|
||
#define OD_ENTRY_H6128_interruptMaskDigitalInputHighToLow32_bit &OD->list[67]
|
||
#define OD_ENTRY_H6200_writeDigitalOutput8_bit &OD->list[68]
|
||
#define OD_ENTRY_H6202_changePolarityDigitalOutput8_bit &OD->list[69]
|
||
#define OD_ENTRY_H6206_errorModeDigitalOutput8_bit &OD->list[70]
|
||
#define OD_ENTRY_H6207_errorValueDigitalOutput8_bit &OD->list[71]
|
||
#define OD_ENTRY_H6208_filterMaskDigitalOutput8_bit &OD->list[72]
|
||
#define OD_ENTRY_H6220_writeDigitalOutputBit1To128 &OD->list[73]
|
||
#define OD_ENTRY_H6240_changePolarityDigitalOutputBit1To128 &OD->list[74]
|
||
#define OD_ENTRY_H6250_errorModeDigitalOutputLines1To128 &OD->list[75]
|
||
#define OD_ENTRY_H6260_errorValueDigitalOutputBit1To128 &OD->list[76]
|
||
#define OD_ENTRY_H6270_filterMaskDigitalOutputBit1To128 &OD->list[77]
|
||
#define OD_ENTRY_H6300_writeDigitalOutput16_bit &OD->list[78]
|
||
#define OD_ENTRY_H6302_changePolarityDigitalOutput16_bit &OD->list[79]
|
||
#define OD_ENTRY_H6306_errorModeDigitalOutput16_bit &OD->list[80]
|
||
#define OD_ENTRY_H6307_errorValueDigitalOutput16_bit &OD->list[81]
|
||
#define OD_ENTRY_H6308_filterMaskDigitalOutput16_bit &OD->list[82]
|
||
#define OD_ENTRY_H6320_writeDigitalOutput32_bit &OD->list[83]
|
||
#define OD_ENTRY_H6322_changePolarityDigitalOutput32_bit &OD->list[84]
|
||
#define OD_ENTRY_H6326_errorModeDigitalOutput32_bit &OD->list[85]
|
||
#define OD_ENTRY_H6327_errorValueDigitalOutput32_bit &OD->list[86]
|
||
#define OD_ENTRY_H6328_filterMaskDigitalOutput32_bit &OD->list[87]
|
||
#define OD_ENTRY_H6400_readAnalogInput8_bit &OD->list[88]
|
||
#define OD_ENTRY_H6401_readAnalogInput16_bit &OD->list[89]
|
||
#define OD_ENTRY_H6402_readAnalogInput32_bit &OD->list[90]
|
||
#define OD_ENTRY_H6410_writeAnalogOutput8_bit &OD->list[91]
|
||
#define OD_ENTRY_H6411_writeAnalogOutput16_bit &OD->list[92]
|
||
#define OD_ENTRY_H6412_writeAnalogOutput32_bit &OD->list[93]
|
||
#define OD_ENTRY_H6421_analogInputInterruptTriggerSelection_bit &OD->list[94]
|
||
#define OD_ENTRY_H6422_analogInputInterruptSource_bit &OD->list[95]
|
||
#define OD_ENTRY_H6423_analogInputGlobalInterruptEnable &OD->list[96]
|
||
#define OD_ENTRY_H6424_analogInputUpperLimitInteger_bit &OD->list[97]
|
||
#define OD_ENTRY_H6425_analogInputLowerLimitInteger_bit &OD->list[98]
|
||
#define OD_ENTRY_H6426_analogInputInterruptDeltaUnsigned_bit &OD->list[99]
|
||
#define OD_ENTRY_H6427_analogInputInterruptNegativeDeltaUnsigned_bit &OD->list[100]
|
||
#define OD_ENTRY_H6428_analogInputInterruptPositiveDeltaUnsigned_bit &OD->list[101]
|
||
#define OD_ENTRY_H6429_analogInputInterruptUpperLimitFloat_bit &OD->list[102]
|
||
#define OD_ENTRY_H642A_analogInputInterruptLowerLimitFloat_bit &OD->list[103]
|
||
#define OD_ENTRY_H642B_analogInputInterruptDeltaFloat_bit &OD->list[104]
|
||
#define OD_ENTRY_H642C_analogInputInterruptNegativeDeltaFloat_bit &OD->list[105]
|
||
#define OD_ENTRY_H642D_analogInputInterruptPositiveDeltaFloat_bit &OD->list[106]
|
||
#define OD_ENTRY_H642E_analogInputOffsetFloat_bit &OD->list[107]
|
||
#define OD_ENTRY_H642F_analogInputPreScalingFloat_bit &OD->list[108]
|
||
#define OD_ENTRY_H6430_analogInputSIUnit_bit &OD->list[109]
|
||
#define OD_ENTRY_H6431_analogInputOffsetInteger_bit &OD->list[110]
|
||
#define OD_ENTRY_H6432_analogInputPreScalingInteger_bit &OD->list[111]
|
||
#define OD_ENTRY_H67FF_deviceType &OD->list[112]
|
||
|
||
/*******************************************************************************
|
||
OD config structure
|
||
*******************************************************************************/
|
||
#ifdef CO_MULTIPLE_OD
|
||
#define OD_INIT_CONFIG(config) \
|
||
{ \
|
||
(config).CNT_NMT = OD_CNT_NMT; \
|
||
(config).ENTRY_H1017 = OD_ENTRY_H1017; \
|
||
(config).CNT_HB_CONS = OD_CNT_HB_CONS; \
|
||
(config).CNT_ARR_1016 = OD_CNT_ARR_1016; \
|
||
(config).ENTRY_H1016 = OD_ENTRY_H1016; \
|
||
(config).CNT_EM = OD_CNT_EM; \
|
||
(config).ENTRY_H1001 = OD_ENTRY_H1001; \
|
||
(config).ENTRY_H1014 = OD_ENTRY_H1014; \
|
||
(config).ENTRY_H1015 = OD_ENTRY_H1015; \
|
||
(config).CNT_ARR_1003 = OD_CNT_ARR_1003; \
|
||
(config).ENTRY_H1003 = OD_ENTRY_H1003; \
|
||
(config).CNT_SDO_SRV = OD_CNT_SDO_SRV; \
|
||
(config).ENTRY_H1200 = OD_ENTRY_H1200; \
|
||
(config).CNT_SDO_CLI = OD_CNT_SDO_CLI; \
|
||
(config).ENTRY_H1280 = OD_ENTRY_H1280; \
|
||
(config).CNT_TIME = OD_CNT_TIME; \
|
||
(config).ENTRY_H1012 = OD_ENTRY_H1012; \
|
||
(config).CNT_SYNC = OD_CNT_SYNC; \
|
||
(config).ENTRY_H1005 = OD_ENTRY_H1005; \
|
||
(config).ENTRY_H1006 = OD_ENTRY_H1006; \
|
||
(config).ENTRY_H1007 = OD_ENTRY_H1007; \
|
||
(config).ENTRY_H1019 = OD_ENTRY_H1019; \
|
||
(config).CNT_RPDO = OD_CNT_RPDO; \
|
||
(config).ENTRY_H1400 = OD_ENTRY_H1400; \
|
||
(config).ENTRY_H1600 = OD_ENTRY_H1600; \
|
||
(config).CNT_TPDO = OD_CNT_TPDO; \
|
||
(config).ENTRY_H1800 = OD_ENTRY_H1800; \
|
||
(config).ENTRY_H1A00 = OD_ENTRY_H1A00; \
|
||
(config).CNT_LEDS = 0; \
|
||
(config).CNT_GFC = 0; \
|
||
(config).ENTRY_H1300 = NULL; \
|
||
(config).CNT_SRDO = 0; \
|
||
(config).ENTRY_H1301 = NULL; \
|
||
(config).ENTRY_H1381 = NULL; \
|
||
(config).ENTRY_H13FE = NULL; \
|
||
(config).ENTRY_H13FF = NULL; \
|
||
(config).CNT_LSS_SLV = 0; \
|
||
(config).CNT_LSS_MST = 0; \
|
||
(config).CNT_GTWA = 0; \
|
||
(config).CNT_TRACE = 0; \
|
||
}
|
||
#endif
|
||
|
||
#endif /* OD_H */
|