William Kane / Generic

Dependents:   LaserioLib

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers abcc_obj_cfg.h Source File

abcc_obj_cfg.h

00001 /*******************************************************************************
00002 ********************************************************************************
00003 **                                                                            **
00004 ** ABCC Starter Kit version 2.01.01 (2015-12-14)                              **
00005 **                                                                            **
00006 ** Delivered with:                                                            **
00007 **    ABCC Driver 4.01.01 (2015-12-14)                                        **
00008 **    ABP         7.16.01 (2015-10-14)                                        **
00009 **                                                                            */
00010 /*******************************************************************************
00011 ********************************************************************************
00012 ** COPYRIGHT NOTIFICATION (c) 2015 HMS Industrial Networks AB                 **
00013 **                                                                            **
00014 ** This code is the property of HMS Industrial Networks AB.                   **
00015 ** The source code may not be reproduced, distributed, or used without        **
00016 ** permission. When used together with a product from HMS, permission is      **
00017 ** granted to modify, reproduce and distribute the code in binary form        **
00018 ** without any restrictions.                                                  **
00019 **                                                                            **
00020 ** THE CODE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. HMS DOES NOT    **
00021 ** WARRANT THAT THE FUNCTIONS OF THE CODE WILL MEET YOUR REQUIREMENTS, OR     **
00022 ** THAT THE OPERATION OF THE CODE WILL BE UNINTERRUPTED OR ERROR-FREE, OR     **
00023 ** THAT DEFECTS IN IT CAN BE CORRECTED.                                       **
00024 ********************************************************************************
00025 ********************************************************************************
00026 ** User configuration of the Anybus objects implementation.
00027 **
00028 ** All configurations in this file should be possible to override if defined
00029 ** in abcc_platform_cfg.h. This allows the target platform to adapt the
00030 ** product configuration to realize its implementation for specific needs.
00031 ********************************************************************************
00032 ********************************************************************************
00033 ** Services:
00034 ********************************************************************************
00035 ********************************************************************************
00036 */
00037 
00038 #ifndef ABCC_OBJ_CFG_H_
00039 #define ABCC_OBJ_CFG_H_
00040 
00041 #include "abcc_platform_cfg.h"
00042 #include "abcc_drv_cfg.h"
00043 
00044 
00045 /*******************************************************************************
00046 ** Constants
00047 ********************************************************************************
00048 */
00049 
00050 /*------------------------------------------------------------------------------
00051 ** Supported networks - Set to TRUE to enable a network
00052 **------------------------------------------------------------------------------
00053 */
00054 #ifndef ECT_OBJ_ENABLE
00055    #define ECT_OBJ_ENABLE                          FALSE
00056 #endif
00057 #ifndef PRT_OBJ_ENABLE
00058    #define PRT_OBJ_ENABLE                          FALSE
00059 #endif
00060 #ifndef EIP_OBJ_ENABLE
00061    #define EIP_OBJ_ENABLE                          FALSE
00062 #endif
00063 #ifndef EPL_OBJ_ENABLE
00064    #define EPL_OBJ_ENABLE                          FALSE
00065 #endif
00066 #ifndef MOD_OBJ_ENABLE
00067    #define MOD_OBJ_ENABLE                          FALSE
00068 #endif
00069 #ifndef COP_OBJ_ENABLE
00070    #define COP_OBJ_ENABLE                          FALSE
00071 #endif
00072 #ifndef DEV_OBJ_ENABLE
00073    #define DEV_OBJ_ENABLE                          FALSE
00074 #endif
00075 #ifndef DPV1_OBJ_ENABLE
00076    #define DPV1_OBJ_ENABLE                         FALSE
00077 #endif
00078 
00079 
00080 /*------------------------------------------------------------------------------
00081 ** Supported host object - Set to TRUE to enable
00082 **------------------------------------------------------------------------------
00083 */
00084 #ifndef ETN_OBJ_ENABLE
00085    #define ETN_OBJ_ENABLE                          FALSE
00086 #endif
00087 #ifndef SYNC_OBJ_ENABLE
00088    #define SYNC_OBJ_ENABLE                         ABCC_CFG_SYNC_ENABLE
00089 #endif
00090 
00091 /*------------------------------------------------------------------------------
00092 ** Sync Object (0xEE)
00093 **------------------------------------------------------------------------------
00094 */
00095 
00096 #if SYNC_OBJ_ENABLE
00097 /*
00098 ** Attribute 1: Cycle time (UINT32 - 0x00000000-0xFFFFFFFF)
00099 */
00100 #ifndef SYNC_IA_CYCLE_TIME_ENABLE
00101    #define SYNC_IA_CYCLE_TIME_ENABLE               TRUE
00102    #define SYNC_IA_CYCLE_TIME_VALUE                0L
00103 #endif
00104 
00105 /*
00106 ** Attribute 2: Output valid (UINT32 - 0x00000000-0xFFFFFFFF)
00107 */
00108 #ifndef SYNC_IA_OUTPUT_VALID_ENABLE
00109    #define SYNC_IA_OUTPUT_VALID_ENABLE             TRUE
00110    #define SYNC_IA_OUTPUT_VALID_VALUE              0
00111 #endif
00112 
00113 /*
00114 ** Attribute 3: Input capture (UINT32 - 0x00000000-0xFFFFFFFF)
00115 */
00116 #ifndef SYNC_IA_INPUT_CAPTURE_ENABLE
00117    #define SYNC_IA_INPUT_CAPTURE_ENABLE            TRUE
00118    #define SYNC_IA_INPUT_CAPTURE_VALUE             0
00119 #endif
00120 
00121 /*
00122 ** Attribute 4: Output processing (UINT32 - 0x00000000-0xFFFFFFFF)
00123 */
00124 #ifndef SYNC_IA_OUTPUT_PROCESSING_ENABLE
00125    #define SYNC_IA_OUTPUT_PROCESSING_ENABLE        TRUE
00126    #define SYNC_IA_OUTPUT_PROCESSING_VALUE         1000L
00127 #endif
00128 
00129 /*
00130 ** Attribute 5: Input processing (UINT32 - 0x00000000-0xFFFFFFFF)
00131 */
00132 #ifndef SYNC_IA_INPUT_PROCESSING_ENABLE
00133    #define SYNC_IA_INPUT_PROCESSING_ENABLE         TRUE
00134    #define SYNC_IA_INPUT_PROCESSING_VALUE          1000L
00135 #endif
00136 
00137 /*
00138 ** Attribute 6: Min cycle time (UINT32 - 0x00000000-0xFFFFFFFF)
00139 */
00140 #ifndef SYNC_IA_MIN_CYCLE_TIME_ENABLE
00141    #define SYNC_IA_MIN_CYCLE_TIME_ENABLE           TRUE
00142    #define SYNC_IA_MIN_CYCLE_TIME_VALUE            1L
00143 #endif
00144 
00145 /*
00146 ** Attribute 7: Sync mode (UINT16 - 0: Nonsynchronous operation
00147 **                                  1: Synchronous operation)
00148 */
00149 #ifndef SYNC_IA_SYNC_MODE_ENABLE
00150    #define SYNC_IA_SYNC_MODE_ENABLE                TRUE
00151    #define SYNC_IA_SYNC_MODE_VALUE                 0x0000
00152 #endif
00153 
00154 /*
00155 ** Attribute 8: Supported sync modes (UINT16 - Bit 0: 1 = Nonsynchronous mode supported
00156 **                                             Bit 1: 1 = Synchronous mode supported
00157 **                                             Bit 2-15: Reserved)
00158 */
00159 #ifndef SYNC_IA_SUPPORTED_SYNC_MODES_ENABLE
00160    #define SYNC_IA_SUPPORTED_SYNC_MODES_ENABLE     TRUE
00161    #define SYNC_IA_SUPPORTED_SYNC_MODES_VALUE      0x0003
00162 #endif
00163 
00164 #endif /* #if SYNC_OBJ_ENABLE */
00165 
00166 /*------------------------------------------------------------------------------
00167 ** Application data Object (0xF5)
00168 **------------------------------------------------------------------------------
00169 */
00170 
00171 /*
00172 ** These defines shall be set to the maximum number of ADIs that could be mapped
00173 ** in either direction. Do not forget to consider remap scenarios if
00174 ** ABCC_CFG_REMAP_SUPPORT_ENABLED is enabled in abcc_drv_cfg.h.
00175 */
00176 #ifndef AD_MAX_NUM_WRITE_ADI_TO_MAP
00177    #define AD_MAX_NUM_WRITE_ADI_TO_MAP             ( 64 )
00178 #endif
00179 #ifndef AD_MAX_NUM_READ_ADI_TO_MAP
00180    #define AD_MAX_NUM_READ_ADI_TO_MAP              ( 64 )
00181 #endif
00182 
00183 /*
00184 ** Attribute 5, 6, 7: Min, max and default attributes  - (BOOL - TRUE/FALSE)
00185 */
00186 #ifndef AD_IA_MIN_MAX_DEFAULT_ENABLE
00187    #define AD_IA_MIN_MAX_DEFAULT_ENABLE            ( TRUE )
00188 #endif
00189 
00190 /*------------------------------------------------------------------------------
00191 ** EtherCAT Object (0xF5)
00192 **------------------------------------------------------------------------------
00193 */
00194 #if ECT_OBJ_ENABLE
00195 /*
00196 ** Attribute 9: ENUM ADIs (Array of UINT16 - {0x0001-0xFFFF})
00197 */
00198 #ifndef ECT_IA_ENUM_ADIS_ENABLE
00199    #define ECT_IA_ENUM_ADIS_ENABLE                 FALSE
00200    #define ECT_IA_ENUM_ADIS_VALUE                  { 0x1357 }
00201    #define ECT_IA_ENUM_ADIS_ARRAY_SIZE             1
00202 #endif
00203 
00204 /*
00205 ** Attribute 11: Write PD assembly instance translation
00206 ** (Array of UINT16 - {0x0001-0xFFFF})
00207 */
00208 #ifndef ECT_IA_WR_PD_ASSY_INST_TRANS_ENABLE
00209    #define ECT_IA_WR_PD_ASSY_INST_TRANS_ENABLE     FALSE
00210    #define ECT_IA_WR_PD_ASSY_INST_TRANS_VALUE      { 0x2468 }
00211    #define ECT_IA_WR_PD_ASSY_INST_TRANS_SIZE       1
00212 #endif
00213 
00214 /*
00215 ** Attribute 12: Read PD assembly instance translation
00216 ** (Array of UINT16 - {0x0001-0xFFFF})
00217 */
00218 #ifndef ECT_IA_RD_PD_ASSY_INST_TRANS_ENABLE
00219    #define ECT_IA_RD_PD_ASSY_INST_TRANS_ENABLE     FALSE
00220    #define ECT_IA_RD_PD_ASSY_INST_TRANS_VALUE      { 0xA5A5 }
00221    #define ECT_IA_RD_PD_ASSY_INST_TRANS_SIZE       1
00222 #endif
00223 
00224 /*
00225 ** Attribute 13: ADI translation (Array of (Struct of {UINT16, UINT16}))
00226 */
00227 #ifndef ECT_IA_ADI_TRANS_ENABLE
00228    #define ECT_IA_ADI_TRANS_ENABLE                 FALSE
00229    #define ECT_IA_ADI_TRANS_VALUE                  { { 0x1234, 0x5678 } }
00230    #define ECT_IA_ADI_TRANS_SIZE                   1
00231 #endif
00232 
00233 /*
00234 ** Attribute 15: Object subindex translation
00235 ** (Array of (Struct of {UINT16, UINT16, UINT8 }))
00236 */
00237 #ifndef ECT_IA_OBJ_SUB_TRANS_ENABLE
00238    #define ECT_IA_OBJ_SUB_TRANS_ENABLE             FALSE
00239    #define ECT_IA_OBJ_SUB_TRANS_VALUE              { { 0x8765, 0x4321, 0x12 } }
00240    #define ECT_IA_OBJ_SUB_TRANS_SIZE               1
00241 #endif
00242 
00243 #endif /* if ECT_OBJ_ENABLE */
00244 
00245 /*------------------------------------------------------------------------------
00246 ** PROFINET IO Object (0xF6)
00247 **------------------------------------------------------------------------------
00248 */
00249 
00250 #if PRT_OBJ_ENABLE
00251 /*
00252 ** Attribute 4: MaxAr (UINT32 - 0x00000000-0xFFFFFFFF)
00253 */
00254 #ifndef PRT_IA_MAX_AR_ENABLE
00255    #define PRT_IA_MAX_AR_ENABLE                    FALSE
00256    #define PRT_IA_MAX_AR_VALUE                     0x00000000
00257 #endif
00258 
00259 /*
00260 ** Attribute 7: Record data Transparent Mode (UINT8 - 0x00-0xFF)
00261 */
00262 #ifndef PRT_IA_RTM_ENABLE
00263    #define PRT_IA_RTM_ENABLE                       FALSE
00264    #define PRT_IA_RTM_VALUE                        0x00
00265 #endif
00266 
00267 /*
00268 ** Attribute 12: IM Revision counter (UINT16 - 0x0000-0xFFFF)
00269 */
00270 #ifndef PRT_IA_IM_REV_CNT_ENABLE
00271    #define PRT_IA_IM_REV_CNT_ENABLE                FALSE
00272    #define PRT_IA_IM_REV_CNT_VALUE                 0xFFFF
00273 #endif
00274 
00275 /*
00276 ** Attribute 13: IM Profile ID (UINT16 - 0x0000-0xFFFF)
00277 */
00278 #ifndef PRT_IA_IM_PROFILE_ID_ENABLE
00279    #define PRT_IA_IM_PROFILE_ID_ENABLE             FALSE
00280    #define PRT_IA_IM_PROFILE_ID_VALUE              0xFFFF
00281 #endif
00282 
00283 /*
00284 ** Attribute 14: IM Profile specific type (UINT16 - 1-6)
00285 */
00286 #ifndef PRT_IA_IM_PROFILE_SPEC_TYPE_ENABLE
00287    #define PRT_IA_IM_PROFILE_SPEC_TYPE_ENABLE      FALSE
00288    #define PRT_IA_IM_PROFILE_SPEC_TYPE_VALUE       0x0004
00289 #endif
00290 
00291 /*
00292 ** Attribute 15: IM Version (2 * UINT8)
00293 */
00294 #ifndef PRT_IA_IM_VER_ENABLE
00295    #define PRT_IA_IM_VER_ENABLE                    FALSE
00296    #define PRT_IA_IM_VER_MAJOR_VALUE               99
00297    #define PRT_IA_IM_VER_MINOR_VALUE               99
00298 #endif
00299 
00300 /*
00301 ** Attribute 16: IM Supported (UINT16 - 0x0000-0xFFFF)
00302 */
00303 #ifndef PRT_IA_IM_SUPPORTED_ENABLE
00304    #define PRT_IA_IM_SUPPORTED_ENABLE              FALSE
00305    #define PRT_IA_IM_SUPPORTED_VALUE               0xFFFF
00306 #endif
00307 
00308 /*
00309 ** Attribute 17: Port 1 MAC Address (Array[6] of UINT8)
00310 */
00311 #ifndef PRT_IA_PORT1_MAC_ADDRESS_ENABLE
00312    #define PRT_IA_PORT1_MAC_ADDRESS_ENABLE         FALSE
00313    #define PRT_IA_PORT1_MAC_ADDRESS_VALUE          "\x00\x00\x00\x00\x00\x00"
00314 #endif
00315 
00316 /*
00317 ** Attribute 18: Port 2 MAC Address (Array[6] of UINT8)
00318 */
00319 #ifndef PRT_IA_PORT2_MAC_ADDRESS_ENABLE
00320    #define PRT_IA_PORT2_MAC_ADDRESS_ENABLE         FALSE
00321    #define PRT_IA_PORT2_MAC_ADDRESS_VALUE          "\x00\x00\x00\x00\x00\x00"
00322 #endif
00323 
00324 /*
00325 ** Attribute 20: Interface Description (Array of CHAR)
00326 */
00327 #ifndef PRT_IA_INTERFACE_DESCRIPTION_ENABLE
00328    #define PRT_IA_INTERFACE_DESCRIPTION_ENABLE     FALSE
00329    #define PRT_IA_INTERFACE_DESCRIPTION_VALUE      "Interface Description"
00330 #endif
00331 
00332 /*
00333 ** Attribute 21: Module Id Assignment mode (UINT8 - 0x00-0xFF)
00334 */
00335 #ifndef PRT_IA_MOD_ID_ASSIGN_MODE_ENABLE
00336    #define PRT_IA_MOD_ID_ASSIGN_MODE_ENABLE        FALSE
00337    #define PRT_IA_MOD_ID_ASSIGN_MODE_VALUE         0
00338 #endif
00339 
00340 /*
00341 ** Attribute 23: PROFIenergy functionality (UINT8 - 0x00-0xFF)
00342 */
00343 #ifndef PRT_IA_PROFIENERGY_FUNC_ENABLE
00344    #define PRT_IA_PROFIENERGY_FUNC_ENABLE          FALSE
00345    #define PRT_IA_PROFIENERGY_FUNC_VALUE           0
00346 #endif
00347 
00348 #endif /* #if PRT_OBJ_ENABLE */
00349 
00350 /*------------------------------------------------------------------------------
00351 ** EtherNet/IP Object (0xF8)
00352 **------------------------------------------------------------------------------
00353 */
00354 
00355 #if EIP_OBJ_ENABLE
00356 /*
00357 ** Attribute 7: Producing instance number (Array of UINT16 - {0x0001-0xFFFF})
00358 */
00359 #ifndef EIP_IA_PROD_INSTANCE_ENABLE
00360    #define EIP_IA_PROD_INSTANCE_ENABLE             FALSE
00361    #define EIP_IA_PROD_INSTANCE_VALUE              { 0x0064 }
00362    #define EIP_IA_PROD_INSTANCE_ARRAY_SIZE         1
00363 #endif
00364 
00365 /*
00366 ** Attribute 8: Consuming instance number (Array of UINT16 - {0x0001-0xFFFF})
00367 */
00368 #ifndef EIP_IA_CONS_INSTANCE_ENABLE
00369    #define EIP_IA_CONS_INSTANCE_ENABLE             FALSE
00370    #define EIP_IA_CONS_INSTANCE_VALUE              { 0x0096 }
00371    #define EIP_IA_CONS_INSTANCE_ARRAY_SIZE         1
00372 #endif
00373 
00374 /*
00375 ** Attribute 9: Enable communication settings from net (BOOL - TRUE/FALSE)
00376 */
00377 #ifndef EIP_IA_COMM_SETTINGS_FROM_NET_ENABLE
00378    #define EIP_IA_COMM_SETTINGS_FROM_NET_ENABLE    FALSE
00379    #define EIP_IA_COMM_SETTINGS_FROM_NET_VALUE     TRUE
00380 #endif
00381 
00382 /*
00383 ** Attribute 11: Enable CIP request forwarding (BOOL - TRUE/FALSE)
00384 */
00385 #ifndef EIP_IA_ENABLE_APP_CIP_OBJECTS_ENABLE
00386    #define EIP_IA_ENABLE_APP_CIP_OBJECTS_ENABLE    FALSE
00387    #define EIP_IA_ENABLE_APP_CIP_OBJECTS_VALUE     FALSE
00388 #endif
00389 
00390 /*
00391 ** Attribute 12: Enable Parameter object (BOOL - TRUE/FALSE)
00392 */
00393 #ifndef EIP_IA_ENABLE_PARAM_OBJECT_ENABLE
00394    #define EIP_IA_ENABLE_PARAM_OBJECT_ENABLE       FALSE
00395    #define EIP_IA_ENABLE_PARAM_OBJECT_VALUE        TRUE
00396 #endif
00397 
00398 /*
00399 ** Attribute 13: Input only heartbeat instance number (UINT16 - 0x0000-0xFFFF)
00400 */
00401 #ifndef EIP_IA_INPUT_INSTANCE_OBJECT_ENABLE
00402    #define EIP_IA_INPUT_INSTANCE_OBJECT_ENABLE     FALSE
00403    #define EIP_IA_INPUT_INSTANCE_OBJECT_VALUE      0x0003
00404 #endif
00405 
00406 /*
00407 ** Attribute 14: Listen only heartbeat instance number (UINT16 - 0x0000-0xFFFF)
00408 */
00409 #ifndef EIP_IA_LISTEN_INSTANCE_OBJECT_ENABLE
00410    #define EIP_IA_LISTEN_INSTANCE_OBJECT_ENABLE    FALSE
00411    #define EIP_IA_LISTEN_INSTANCE_OBJECT_VALUE     0x0004
00412 #endif
00413 
00414 /*
00415 ** Attribute 15: Assembly object Configuration instance number (UINT16 - 0x0000-0xFFFF)
00416 */
00417 #ifndef EIP_IA_CONFIG_INSTANCE_ENABLE
00418    #define EIP_IA_CONFIG_INSTANCE_ENABLE           FALSE
00419    #define EIP_IA_CONFIG_INSTANCE_VALUE            0x0005
00420 #endif
00421 
00422 /*
00423 ** Attribute 16: Disable Strict IO match (BOOL - TRUE/FALSE)
00424 */
00425 #ifndef EIP_IA_DISABLE_STRICT_IO_MATCH_ENABLE
00426    #define EIP_IA_DISABLE_STRICT_IO_MATCH_ENABLE   FALSE
00427    #define EIP_IA_DISABLE_STRICT_IO_MATCH_VALUE    FALSE
00428 #endif
00429 
00430 /*
00431 ** Attribute 17: Enable unconnected routing (BOOL - TRUE/FALSE)
00432 */
00433 #ifndef EIP_IA_ENABLE_UNCONNECTED_SEND_ENABLE
00434    #define EIP_IA_ENABLE_UNCONNECTED_SEND_ENABLE   FALSE
00435    #define EIP_IA_ENABLE_UNCONNECTED_SEND_VALUE    FALSE
00436 #endif
00437 
00438 /*
00439 ** Attribute 18: Input only extended heartbeat instance number (UINT16 - 0x0000-0xFFFF)
00440 */
00441 #ifndef EIP_IA_INPUT_EXT_INSTANCE_OBJECT_ENABLE
00442    #define EIP_IA_INPUT_EXT_INSTANCE_OBJECT_ENABLE FALSE
00443    #define EIP_IA_INPUT_EXT_INSTANCE_OBJECT_VALUE  0x0006
00444 #endif
00445 
00446 /*
00447 ** Attribute 19: Listen only extended heartbeat instance number (UINT16 - 0x0000-0xFFFF)
00448 */
00449 #ifndef EIP_IA_LISTEN_EXT_INSTANCE_OBJECT_ENABLE
00450    #define EIP_IA_LISTEN_EXT_INSTANCE_OBJECT_ENABLE   FALSE
00451    #define EIP_IA_LISTEN_EXT_INSTANCE_OBJECT_VALUE    0x0007
00452 #endif
00453 
00454 /*
00455 ** Attribute 20: Interface label port 1 (Array of CHAR)
00456 */
00457 #ifndef EIP_IA_IF_LABEL_PORT_1_ENABLE
00458    #define EIP_IA_IF_LABEL_PORT_1_ENABLE           FALSE
00459    #define EIP_IA_IF_LABEL_PORT_1_VALUE            "Port 1"
00460 #endif
00461 
00462 /*
00463 ** Attribute 21: Interface label port 2 (Array of CHAR)
00464 */
00465 #ifndef EIP_IA_IF_LABEL_PORT_2_ENABLE
00466    #define EIP_IA_IF_LABEL_PORT_2_ENABLE           FALSE
00467    #define EIP_IA_IF_LABEL_PORT_2_VALUE            "Port 2"
00468 #endif
00469 
00470 /*
00471 ** Attribute 22: Interface label internal port (Array of CHAR)
00472 */
00473 #ifndef EIP_IA_IF_LABEL_PORT_INT_ENABLE
00474    #define EIP_IA_IF_LABEL_PORT_INT_ENABLE         FALSE
00475    #define EIP_IA_IF_LABEL_PORT_INT_VALUE          "Internal"
00476 #endif
00477 
00478 /*
00479 ** Attribute 23: Enable CIP request forwarding extended (BOOL - TRUE/FALSE)
00480 */
00481 #ifndef EIP_IA_ENABLE_APP_CIP_OBJECTS_EXT_ENABLE
00482    #define EIP_IA_ENABLE_APP_CIP_OBJECTS_EXT_ENABLE   FALSE
00483    #define EIP_IA_ENABLE_APP_CIP_OBJECTS_EXT_VALUE    FALSE
00484 #endif
00485 
00486 /*
00487 ** Attribute 24: Prepend producing profile instance (UINT16 - 0x0000-0xFFFF)
00488 */
00489 #ifndef EIP_IA_PREPEND_PRODUCING_ENABLE
00490    #define EIP_IA_PREPEND_PRODUCING_ENABLE         FALSE
00491    #define EIP_IA_PREPEND_PRODUCING_VALUE          0x0000
00492 #endif
00493 
00494 /*
00495 ** Attribute 25: Prepend consuming profile instance (UINT16 - 0x0000-0xFFFF)
00496 */
00497 #ifndef EIP_IA_PREPEND_CONSUMING_ENABLE
00498    #define EIP_IA_PREPEND_CONSUMING_ENABLE         FALSE
00499    #define EIP_IA_PREPEND_CONSUMING_VALUE          0x0000
00500 #endif
00501 
00502 /*
00503 ** Attribute 26: Enable EtherNet/IP QuickConnect (BOOL - TRUE/FALSE)
00504 */
00505 #ifndef EIP_IA_ENABLE_EIP_QC_ENABLE
00506    #define EIP_IA_ENABLE_EIP_QC_ENABLE             FALSE
00507    #define EIP_IA_ENABLE_EIP_QC_VALUE              FALSE
00508 #endif
00509 
00510 /*
00511 ** Attribute 27: Producing Instance Map (Array of eip_InstanceMapType)
00512 */
00513 #ifndef EIP_IA_PROD_INSTANCE_MAP_ENABLE
00514    #define EIP_IA_PROD_INSTANCE_MAP_ENABLE         FALSE
00515    #define EIP_IA_PROD_INSTANCE_MAP_VALUE          { {0, 1}, {0, 1}, {0, 1}, {0, 1}, {0, 1}, {0, 1} }
00516    #define EIP_IA_PROD_INSTANCE_MAP_ARRAY_SIZE     6
00517 #endif
00518 
00519 /*
00520 ** Attribute 28: Consuming Instance Map (Array of eip_InstanceMapType)
00521 */
00522 #ifndef EIP_IA_CONS_INSTANCE_MAP_ENABLE
00523    #define EIP_IA_CONS_INSTANCE_MAP_ENABLE         FALSE
00524    #define EIP_IA_CONS_INSTANCE_MAP_VALUE          { {0, 1}, {0, 1}, {0, 1}, {0, 1}, {0, 1}, {0, 1} }
00525    #define EIP_IA_CONS_INSTANCE_MAP_ARRAY_SIZE     6
00526 #endif
00527 
00528 /*
00529 ** Attribute 29: Ignore Sequence Count Check (BOOL -TRUE/FALSE)
00530 */
00531 #ifndef EIP_IA_IGNORE_SEQ_COUNT_CHECK_ENABLE
00532    #define EIP_IA_IGNORE_SEQ_COUNT_CHECK_ENABLE    FALSE
00533    #define EIP_IA_IGNORE_SEQ_COUNT_CHECK_VALUE     FALSE
00534 #endif
00535 
00536 /*
00537 ** Attribute 30: ABCC ADI Object number (UINT16 - 0x0000-0xFFFF)
00538 */
00539 #ifndef EIP_IA_ABCC_ADI_OBJECT_ENABLE
00540    #define EIP_IA_ABCC_ADI_OBJECT_ENABLE           FALSE
00541    #define EIP_IA_ABCC_ADI_OBJECT_VALUE            0x0000
00542 #endif
00543 
00544 #endif /* #if EIP_OBJ_ENABLE */
00545 
00546 /*------------------------------------------------------------------------------
00547 ** Ethernet Object (0xF9)
00548 **------------------------------------------------------------------------------
00549 */
00550 
00551 #if ETN_OBJ_ENABLE
00552 /*
00553 ** Attribute 2: Enable Host IP Configuration Protocol  (BOOL - TRUE/FALSE)
00554 */
00555 #ifndef ETN_IA_ENABLE_HICP_ENABLE
00556    #define ETN_IA_ENABLE_HICP_ENABLE               FALSE
00557    #define ETN_IA_ENABLE_HICP_VALUE                TRUE
00558 #endif
00559 
00560 /*
00561 ** Attribute 3: Enable webserver  (BOOL - TRUE/FALSE)
00562 */
00563 #ifndef ETN_IA_ENABLE_WEB_ENABLE
00564    #define ETN_IA_ENABLE_WEB_ENABLE                FALSE
00565    #define ETN_IA_ENABLE_WEB_VALUE                 TRUE
00566 #endif
00567 
00568 /*
00569 ** Attribute 4: Enable ModbusTCP  (BOOL - TRUE/FALSE)
00570 */
00571 #ifndef ETN_IA_ENABLE_MOD_TCP_ENABLE
00572    #define ETN_IA_ENABLE_MOD_TCP_ENABLE            FALSE
00573    #define ETN_IA_ENABLE_MOD_TCP_VALUE             TRUE
00574 #endif
00575 
00576 /*
00577 ** Attribute 5: Enable web ADI access  (BOOL - TRUE/FALSE)
00578 */
00579 #ifndef ETN_IA_ENABLE_WEB_ADI_ACCESS_ENABLE
00580    #define ETN_IA_ENABLE_WEB_ADI_ACCESS_ENABLE     FALSE
00581    #define ETN_IA_ENABLE_WEB_ADI_ACCESS_VALUE      TRUE
00582 #endif
00583 
00584 /*
00585 ** Attribute 6: Enable FTP server  (BOOL - TRUE/FALSE)
00586 */
00587 #ifndef ETN_IA_ENABLE_FTP_ENABLE
00588    #define ETN_IA_ENABLE_FTP_ENABLE                FALSE
00589    #define ETN_IA_ENABLE_FTP_VALUE                 TRUE
00590 #endif
00591 
00592 /*
00593 ** Attribute 7: Enable admin mode  (BOOL - TRUE/FALSE)
00594 */
00595 #ifndef ETN_IA_ENABLE_ADMIN_MODE_ENABLE
00596    #define ETN_IA_ENABLE_ADMIN_MODE_ENABLE         FALSE
00597    #define ETN_IA_ENABLE_ADMIN_MODE_VALUE          FALSE
00598 #endif
00599 
00600 /*
00601 ** Attribute 8: Enable network status  (UINT16)
00602 */
00603 #ifndef ETN_IA_NETWORK_STATUS_ENABLE
00604    #define ETN_IA_NETWORK_STATUS_ENABLE            FALSE
00605 #endif
00606 
00607 /*
00608 ** Attribute 9: Port 1 MAC Address (Array[6] of UINT8)
00609 */
00610 #ifndef ETN_IA_PORT1_MAC_ADDRESS_ENABLE
00611    #define ETN_IA_PORT1_MAC_ADDRESS_ENABLE         TRUE
00612    #define ETN_IA_PORT1_MAC_ADDRESS_VALUE          "\x00\x30\x11\x00\x00\x01"
00613 #endif
00614 
00615 /*
00616 ** Attribute 10: Port 2 MAC Address (Array[6] of UINT8)
00617 */
00618 #ifndef ETN_IA_PORT2_MAC_ADDRESS_ENABLE
00619    #define ETN_IA_PORT2_MAC_ADDRESS_ENABLE         TRUE
00620    #define ETN_IA_PORT2_MAC_ADDRESS_VALUE          "\x00\x30\x11\x00\x00\x02"
00621 #endif
00622 
00623 /*
00624 ** Attribute 11: Enable Address Conflict Detection   (BOOL - TRUE/FALSE)
00625 */
00626 #ifndef ETN_IA_ENABLE_ACD_ENABLE
00627    #define ETN_IA_ENABLE_ACD_ENABLE                FALSE
00628    #define ETN_IA_ENABLE_ACD_VALUE                 TRUE
00629 #endif
00630 
00631 /*
00632 ** Attribute 12: Enable Port 1 state   (ENUM)
00633 */
00634 #ifndef ETN_IA_PORT1_STATE_ENABLE
00635    #define ETN_IA_PORT1_STATE_ENABLE               FALSE
00636    #define ETN_IA_PORT1_STATE_VALUE                ABP_ETN_IA_PORT_STATE_ENABLE
00637 #endif
00638 
00639 /*
00640 ** Attribute 13: Enable Port 2 state   (ENUM)
00641 */
00642 #ifndef ETN_IA_PORT2_STATE_ENABLE
00643    #define ETN_IA_PORT2_STATE_ENABLE               FALSE
00644    #define ETN_IA_PORT2_STATE_VALUE                ABP_ETN_IA_PORT_STATE_ENABLE
00645 #endif
00646 
00647 /*
00648 ** Attribute 14: Enable web update  (BOOL - TRUE/FALSE)
00649 */
00650 #ifndef ETN_IA_ENABLE_WEB_UPDATE_ENABLE
00651    #define ETN_IA_ENABLE_WEB_UPDATE_ENABLE         FALSE
00652    #define ETN_IA_ENABLE_WEB_UPDATE_VALUE          TRUE
00653 #endif
00654 
00655 /*
00656 ** Attribute 15: Enable HICP reset (BOOL - TRUE/FALSE)
00657 */
00658 #ifndef ETN_IA_ENABLE_HICP_RESET_ENABLE
00659    #define ETN_IA_ENABLE_HICP_RESET_ENABLE         FALSE
00660    #define ETN_IA_ENABLE_HICP_RESET_VALUE          FALSE
00661 #endif
00662 
00663 /*
00664 ** Attribute 16: Enable web update  (Struct of {UINT32, UINT32, UINT32})
00665 */
00666 #ifndef ETN_IA_IP_CONFIGURATION_ENABLE
00667    #define ETN_IA_IP_CONFIGURATION_ENABLE          FALSE
00668 #endif
00669 
00670 /*
00671 ** Attribute 17: IP address byte 0-2 (Array[3] of UINT8)
00672 */
00673 #ifndef ETN_IA_IP_ADDRESS_BYTE_0_2_ENABLE
00674    #define ETN_IA_IP_ADDRESS_BYTE_0_2_ENABLE       FALSE
00675    #define ETN_IA_IP_ADDRESS_BYTE_0_2_VALUE        "\xC0\xA8\x00"
00676 #endif
00677 
00678 
00679 #ifndef ETN_OBJ_USE_SET_ATTR_SUCCESS_CALLBACK
00680    #define ETN_OBJ_USE_SET_ATTR_SUCCESS_CALLBACK   FALSE
00681 #endif
00682 
00683 #endif /* #if ETN_OBJ_ENABLE */
00684 
00685 /*------------------------------------------------------------------------------
00686 ** Modbus Object (0xFA)
00687 **------------------------------------------------------------------------------
00688 */
00689 
00690 #if MOD_OBJ_ENABLE
00691 /*
00692 ** Attribute 9: No. of ADI indexing bits (UINT8 - 0x00-0xFF)
00693 */
00694 #ifndef MOD_IA_ADI_INDEXING_BITS_ENABLE
00695    #define MOD_IA_ADI_INDEXING_BITS_ENABLE         FALSE
00696    #define MOD_IA_ADI_INDEXING_BITS_VALUE          0x00
00697 #endif
00698 
00699 /*
00700 ** Attribute 10: Enable Modbus Message forwarding (BOOL - TRUE/FALSE)
00701 */
00702 #ifndef MOD_IA_MESSAGE_FORWARDING_ENABLE
00703    #define MOD_IA_MESSAGE_FORWARDING_ENABLE        FALSE
00704    #define MOD_IA_MESSAGE_FORWARDING_VALUE         FALSE
00705 #endif
00706 
00707 /*
00708 ** Attribute 11: Modbus read/write registers command offset (Array of UINT16 - {0x0000-0xFFFF})
00709 */
00710 #ifndef MOD_IA_RW_OFFSET_ENABLE
00711    #define MOD_IA_RW_OFFSET_ENABLE                 FALSE
00712    #define MOD_IA_RW_OFFSET_READ_VALUE             0x0000
00713    #define MOD_IA_RW_OFFSET_WRITE_VALUE            0x0000
00714 #endif
00715 
00716 #endif /* #if MOD_OBJ_ENABLE */
00717 
00718 /*------------------------------------------------------------------------------
00719 ** DeviceNet Object (0xFC)
00720 **------------------------------------------------------------------------------
00721 */
00722 
00723 #if DEV_OBJ_ENABLE
00724 /*
00725 ** Attribute 7: Producing instance number (UINT16 - 0x0001-0xFFFF)
00726 */
00727 #ifndef DEV_IA_PROD_INSTANCE_ENABLE
00728    #define DEV_IA_PROD_INSTANCE_ENABLE             FALSE
00729    #define DEV_IA_PROD_INSTANCE_VALUE              0x0064
00730 #endif
00731 
00732 /*
00733 ** Attribute 8: Consuming instance number (UINT16 - 0x0001-0xFFFF)
00734 */
00735 #ifndef DEV_IA_CONS_INSTANCE_ENABLE
00736    #define DEV_IA_CONS_INSTANCE_ENABLE             FALSE
00737    #define DEV_IA_CONS_INSTANCE_VALUE              0x0096
00738 #endif
00739 
00740 /*
00741 ** Attribute 9: Enable address from net (BOOL - TRUE/FALSE)
00742 */
00743 #ifndef DEV_IA_ADDRESS_FROM_NET_ENABLE
00744    #define DEV_IA_ADDRESS_FROM_NET_ENABLE          FALSE
00745    #define DEV_IA_ADDRESS_FROM_NET_VALUE           FALSE
00746 #endif
00747 
00748 /*
00749 ** Attribute 10: Enable baud rate from net (BOOL - TRUE/FALSE)
00750 */
00751 #ifndef DEV_IA_BAUD_RATE_FROM_NET_ENABLE
00752    #define DEV_IA_BAUD_RATE_FROM_NET_ENABLE        FALSE
00753    #define DEV_IA_BAUD_RATE_FROM_NET_VALUE         FALSE
00754 #endif
00755 
00756 /*
00757 ** Attribute 11: Enable CIP request forwarding (BOOL - TRUE/FALSE)
00758 */
00759 #ifndef DEV_IA_ENABLE_APP_CIP_OBJECTS_ENABLE
00760    #define DEV_IA_ENABLE_APP_CIP_OBJECTS_ENABLE    FALSE
00761    #define DEV_IA_ENABLE_APP_CIP_OBJECTS_VALUE     FALSE
00762 #endif
00763 
00764 /*
00765 ** Attribute 12: Enable Parameter object (BOOL - TRUE/FALSE)
00766 */
00767 #ifndef DEV_IA_ENABLE_PARAM_OBJECT_ENABLE
00768    #define DEV_IA_ENABLE_PARAM_OBJECT_ENABLE       FALSE
00769    #define DEV_IA_ENABLE_PARAM_OBJECT_VALUE        FALSE
00770 #endif
00771 
00772 /*
00773 ** Attribute 13: Enable QuickConnect (BOOL - TRUE/FALSE)
00774 */
00775 #ifndef DEV_IA_ENABLE_QUICK_CONNECT_ENABLE
00776    #define DEV_IA_ENABLE_QUICK_CONNECT_ENABLE      FALSE
00777    #define DEV_IA_ENABLE_QUICK_CONNECT_VALUE       FALSE
00778 #endif
00779 
00780 /*
00781 ** Attribute 18: Prepend producing profile instance (UINT16 - 0x0000-0xFFFF)
00782 */
00783 #ifndef DEV_IA_PREPEND_PRODUCING_ENABLE
00784    #define DEV_IA_PREPEND_PRODUCING_ENABLE         FALSE
00785    #define DEV_IA_PREPEND_PRODUCING_VALUE          0x0000
00786 #endif
00787 
00788 /*
00789 ** Attribute 19: Prepend consuming profile instance (UINT16 - 0x0000-0xFFFF)
00790 */
00791 #ifndef DEV_IA_PREPEND_CONSUMING_ENABLE
00792    #define DEV_IA_PREPEND_CONSUMING_ENABLE         FALSE
00793    #define DEV_IA_PREPEND_CONSUMING_VALUE          0x0000
00794 #endif
00795 
00796 /*
00797 ** Attribute 20: ABCC ADI Object number (UINT16 - 0x0000-0xFFFF)
00798 */
00799 #ifndef DEV_IA_ABCC_ADI_OBJECT_ENABLE
00800    #define DEV_IA_ABCC_ADI_OBJECT_ENABLE           FALSE
00801    #define DEV_IA_ABCC_ADI_OBJECT_VALUE            0x0000
00802 #endif
00803 
00804 #endif /* #if DEV_OBJ_ENABLE */
00805 
00806 /*------------------------------------------------------------------------------
00807 ** PROFIBUS DPV1 Object (0xFD)
00808 **------------------------------------------------------------------------------
00809 */
00810 
00811 #if DPV1_OBJ_ENABLE
00812 /*
00813 ** Attribute 2: Parameterization data (Array of UINT8)
00814 */
00815 #ifndef DPV1_IA_PRM_DATA_ENABLE
00816    #define DPV1_IA_PRM_DATA_ENABLE                 FALSE
00817    #define DPV1_IA_PRM_DATA_VALUE                  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
00818    #define DPV1_IA_PRM_DATA_ARRAY_SIZE             10
00819 #endif
00820 
00821 /*
00822 ** Attribute 3: Expected configuration (Array of UINT8)
00823 */
00824 #ifndef DPV1_IA_EXPECTED_CFG_DATA_ENABLE
00825    #define DPV1_IA_EXPECTED_CFG_DATA_ENABLE        FALSE
00826    #define DPV1_IA_EXPECTED_CFG_DATA_VALUE         {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
00827    #define DPV1_IA_EXPECTED_CFG_DATA_ARRAY_SIZE    10
00828 #endif
00829 
00830 /*
00831 ** Attribute 4: SSA enabled (BOOL - TRUE/FALSE)
00832 */
00833 #ifndef DPV1_IA_SSA_ENABLED_ENABLE
00834    #define DPV1_IA_SSA_ENABLED_ENABLE              FALSE
00835    #define DPV1_IA_SSA_ENABLED_VALUE               FALSE
00836 #endif
00837 
00838 /*
00839 ** Attribute 13: Revision counter (UINT16 - 0x0000-0xFFFF)
00840 */
00841 #ifndef DPV1_IA_REV_COUNTER_ENABLE
00842    #define DPV1_IA_REV_COUNTER_ENABLE              FALSE
00843    #define DPV1_IA_REV_COUNTER_VALUE               0xFFFF
00844 #endif
00845 
00846 /*
00847 ** Attribute 14: Profile ID (UINT16 - 0x0000-0xFFFF)
00848 */
00849 #ifndef DPV1_IA_PROFILE_ID_ENABLE
00850    #define DPV1_IA_PROFILE_ID_ENABLE               FALSE
00851    #define DPV1_IA_PROFILE_ID_VALUE                0xFFFF
00852 #endif
00853 
00854 /*
00855 ** Attribute 15: Profile specific type (UINT16 - 1-6)
00856 */
00857 #ifndef DPV1_IA_PROFILE_SPEC_TYPE_ENABLE
00858    #define DPV1_IA_PROFILE_SPEC_TYPE_ENABLE        FALSE
00859    #define DPV1_IA_PROFILE_SPEC_TYPE_VALUE         0x0004
00860 #endif
00861 
00862 /*
00863 ** Attribute 18: IM header (Array of UINT8)
00864 */
00865 #ifndef DPV1_IA_IM_HEADER_ENABLE
00866    #define DPV1_IA_IM_HEADER_ENABLE                FALSE
00867    #define DPV1_IA_IM_HEADER_VALUE                 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
00868    #define DPV1_IA_IM_HEADER_ARRAY_SIZE            10
00869 #endif
00870 
00871 #endif /* #if DPV1_OBJ_ENABLE */
00872 
00873 /*------------------------------------------------------------------------------
00874 ** Application Object (0xFF)
00875 **------------------------------------------------------------------------------
00876 */
00877 #ifndef APP_OBJ_ENABLE
00878    #define APP_OBJ_ENABLE                          TRUE
00879 #endif
00880 
00881 #if APP_OBJ_ENABLE
00882 /*
00883 ** Attribute 1: Configured (BOOL - TRUE/FALSE)
00884 */
00885 #ifndef APP_IA_CONFIGURED_ENABLE
00886    #define APP_IA_CONFIGURED_ENABLE                TRUE
00887    #define APP_IA_CONFIGURED_VALUE                 FALSE
00888 #endif
00889 
00890 /*
00891 ** Attribute 2: Supported languages (Array of ENUM - {ABP_LANG_*})
00892 */
00893 #ifndef APP_IA_SUP_LANG_ENABLE
00894    #define APP_IA_SUP_LANG_ENABLE                  TRUE
00895    #define APP_IA_SUP_LANG_VALUE                   { ABP_LANG_ENG }
00896    #define APP_IA_SUP_LANG_ARRAY_SIZE              1
00897 #endif
00898 
00899 /*
00900 ** Attribute 3: Serial number (UINT32 - function/variable/0x00000000-0xFFFFFFFF)
00901 */
00902 #ifndef APP_IA_SER_NUM_ENABLE
00903    #define APP_IA_SER_NUM_ENABLE                   FALSE
00904    #define APP_IA_SER_NUM_VALUE                    0
00905 #endif
00906 
00907 /*
00908 ** Attribute 4: Parameter control sum (Array[16] of UINT8, {0x00-0xFF})
00909 */
00910 #ifndef APP_IA_PAR_CRTL_SUM_ENABLE
00911    #define APP_IA_PAR_CRTL_SUM_ENABLE              FALSE
00912    #define APP_IA_PAR_CRTL_SUM_VALUE               { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
00913 #endif
00914 
00915 /*
00916 ** Attribute 5: Candidate firmware available (BOOL - TRUE/FALSE)
00917 */
00918 #ifndef APP_IA_FW_AVAILABLE_ENABLE
00919    #define APP_IA_FW_AVAILABLE_ENABLE              TRUE
00920    #define APP_IA_FW_AVAILABLE_VALUE               FALSE
00921 #endif
00922 
00923 /*
00924 ** Attribute 6: Hardware configurable address (BOOL - TRUE/FALSE)
00925 */
00926 #ifndef APP_IA_HW_CONF_ADDR_ENABLE
00927    #define APP_IA_HW_CONF_ADDR_ENABLE              TRUE
00928    #define APP_IA_HW_CONF_ADDR_VALUE               FALSE
00929 #endif
00930 
00931 #endif /* #if APP_OBJ_ENABLE */
00932 
00933 
00934 /*******************************************************************************
00935 ** Typedefs
00936 ********************************************************************************
00937 */
00938 
00939 /*******************************************************************************
00940 ** Public Globals
00941 ********************************************************************************
00942 */
00943 
00944 /*******************************************************************************
00945 ** Public Services
00946 ********************************************************************************
00947 */
00948 
00949 #include "abcc_identification.h"
00950 
00951 #endif  /* inclusion lock */