1 /*-----------------------------------------------------------------------------
2 * EcObjDef.h
3 * Copyright acontis technologies GmbH, Weingarten, Germany
4 * Response Paul Bussmann
5 * Description Master OD structure
6 *---------------------------------------------------------------------------*/
8 #ifndef INC_ECOBJDEF
9 #define INC_ECOBJDEF 1
11 /*-INCLUDES------------------------------------------------------------------*/
12 #ifndef INC_ECOS
13 #include <EcOs.h>
14 #endif
15 #ifndef INC_ECTYPE
16 #include <EcType.h>
17 #endif
19 /*-DEFINES-------------------------------------------------------------------*/
20 /*EC_T_SDOINFOOBJDESC*/
21 #define OBJFLAGS_MAXSUBINDEXMASK 0x00FF
22 #define OBJFLAGS_MAXSUBINDEXSHIFT 0
23 #define OBJFLAGS_OBJCODEMASK 0x0F00
24 #define OBJFLAGS_OBJCODESHIFT 8
25 #define OBJCODE_VAR 0x07
26 #define OBJCODE_ARR 0x08
27 #define OBJCODE_REC 0x09
29 /*EC_T_SDOINFOENTRYDESC*/
30 #define ACCESS_READWRITE 0x003F
31 #define ACCESS_READ 0x0007
32 #define ACCESS_READ_PREOP 0x0001
33 #define ACCESS_READ_SAFEOP 0x0002
34 #define ACCESS_READ_OP 0x0004
35 #define ACCESS_WRITE 0x0038
36 #define ACCESS_WRITE_PREOP 0x0008
37 #define ACCESS_WRITE_SAFEOP 0x0010
38 #define ACCESS_WRITE_OP 0x0020
39 #define OBJACCESS_NOPDOMAPPING 0x0000
40 #define OBJACCESS_RXPDOMAPPING 0x0040
41 #define OBJACCESS_TXPDOMAPPING 0x0080
42 #define OBJACCESS_BACKUP 0x0100
43 #define OBJACCESS_SETTINGS 0x0200
44 #define OBJACCESS_FORCE 0x8000
46 /* SDO indexes */
47 #define COEOBJID_DEVICE_TYPE ((EC_T_WORD)0x1000)
48 #define COEOBJID_MANF_DEVICE_NAME ((EC_T_WORD)0x1008)
49 #define COEOBJID_MANF_HW_VERSION ((EC_T_WORD)0x1009)
50 #define COEOBJID_MANF_SW_VERSION ((EC_T_WORD)0x100A)
51 #define COEOBJID_IDENTITY_OBJECT ((EC_T_WORD)0x1018)
53 #define COEOBJID_ENDLIST ((EC_T_WORD)0xFFFF)
55 /*-TYPEDEFS------------------------------------------------------------------*/
56 /* Identity */
57 #include EC_PACKED_INCLUDESTART(1)
58 typedef struct _EC_T_OBJ1018
59 {
60 EC_T_WORD wSubIndex0; /* Subindex 000 */
61 EC_T_DWORD dwVendorID; /* Subindex 001 */
62 EC_T_DWORD dwProductcode; /* Subindex 002 */
63 EC_T_DWORD dwRevision; /* Subindex 003 */
64 EC_T_DWORD dwSerialnumber; /* Subindex 004 */
65 } EC_PACKED(1) EC_T_OBJ1018;
66 #include EC_PACKED_INCLUDESTOP
69 #endif /* INC_ECOBJDEF */
71 /*-END OF SOURCE FILE--------------------------------------------------------*/