SOES implementation i.c.w. ET1100 (Beckhoff ASIC)

Dependencies:   KL25Z_ClockControl MODSERIAL mbed

Fork of EtherCAT-XbusMaster by First Last

Revision:
29:95ef6b54ec8e
Parent:
23:2b2cdba08259
Child:
30:8cf6fbc953b5
--- a/EtherCAT/objectlist.h	Tue Mar 10 09:43:41 2015 +0000
+++ b/EtherCAT/objectlist.h	Tue Mar 10 10:13:16 2015 +0000
@@ -197,45 +197,45 @@
   {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x70000108}       //First Object, pointing to object 7001:01
 };
 const _objd SDO1A00[]=                                              //TxPDO mapping (objects from slave to master)
-{{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x0A},               //Number of TxPDOs
-  {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000110},       //First Object, pointing to object  6000:01
-  {0x02,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000210},       //Second Object, pointing to object 6000:02      //..
-  {0x03,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000310},
-  {0x04,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000410},
-  {0x05,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000510},
-  {0x06,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000610},
-  {0x07,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000710},
-  {0x08,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000810},
-  {0x09,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000910},
-  {0x0A,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000A10}
+{{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x09},               //Number of TxPDOs
+  {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000120},       //First Object, pointing to object  6000:01
+  {0x02,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000220},       //Second Object, pointing to object 6000:02      //..
+  {0x03,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000320},
+  {0x04,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000420},
+  {0x05,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000520},
+  {0x06,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000620},
+  {0x07,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000720},
+  {0x08,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000820},
+  {0x09,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000920}
+  //{0x0A,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60000A20}
 };
 
 const _objd SDO1A01[]=                                              //TxPDO mapping (objects from slave to master)
-{{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x0A},               //Number of TxPDOs
-  {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010110},       //First Object, pointing to object  6001:01
-  {0x02,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010210},       //Second Object, pointing to object 6001:02      //..
-  {0x03,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010310},
-  {0x04,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010410},
-  {0x05,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010510},
-  {0x06,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010610},
-  {0x07,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010710},
-  {0x08,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010810},
-  {0x09,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010910},
-  {0x0A,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010A10}
+{{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x09},               //Number of TxPDOs
+  {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010120},       //First Object, pointing to object  6001:01
+  {0x02,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010220},       //Second Object, pointing to object 6001:02      //..
+  {0x03,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010320},
+  {0x04,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010420},
+  {0x05,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010520},
+  {0x06,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010620},
+  {0x07,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010720},
+  {0x08,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010820},
+  {0x09,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010920}
+  //{0x0A,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60010A10}
 };
 
 const _objd SDO1A02[]=                                              //TxPDO mapping (objects from slave to master)
-{{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x0A},               //Number of TxPDOs
-  {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020110},       //First Object, pointing to object  6002:01
-  {0x02,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020210},       //Second Object, pointing to object 6002:02      //..
-  {0x03,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020310},
-  {0x04,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020410},
-  {0x05,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020510},
-  {0x06,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020610},
-  {0x07,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020710},
-  {0x08,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020810},
-  {0x09,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020910},
-  {0x0A,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020A10}
+{{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x09},               //Number of TxPDOs
+  {0x01,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020120},       //First Object, pointing to object  6002:01
+  {0x02,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020220},       //Second Object, pointing to object 6002:02      //..
+  {0x03,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020320},
+  {0x04,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020420},
+  {0x05,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020520},
+  {0x06,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020620},
+  {0x07,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020720},
+  {0x08,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020820},
+  {0x09,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020920}
+  //{0x0A,DTYPE_UNSIGNED32,32,ATYPE_R,&acNameMO[0],0x60020A20}
 };
 
 const _objd SDO1A03[]=                                              //TxPDO mapping (objects from slave to master)
@@ -256,7 +256,7 @@
 {{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acName1C11[0],0x00}};
 const _objd SDO1C12[]=                                              //RxPDO Assign objects
 {{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x01},               //Number of Entries
-  {0x01,DTYPE_UNSIGNED16,16,ATYPE_R,&acNameMO[0],0x1600}           //Send objects in index 0x1600
+  {0x01,DTYPE_UNSIGNED16,32,ATYPE_R,&acNameMO[0],0x1600}           //Send objects in index 0x1600
 };
 const _objd SDO1C13[]=                                              //TxPDO Assign objects ; CHANGEABLE, thus 'RWpre' mode
 {{0x00,DTYPE_UNSIGNED8,8,ATYPE_R,&acNameNOE[0],0x04},               //Number of Entries
@@ -267,45 +267,45 @@
 };
 
 const _objd SDO6000[]=                                                      //TxPDO module
-{{0x00,DTYPE_UNSIGNED8  ,8,ATYPE_R,&acNameNOE[0],0x0A},                     //Number of elements
-  {0x01,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_01[0],0,&(Rb.first.acc[0])},//6000:01 is acc X
-  {0x02,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_02[0],0,&(Rb.first.acc[1])},//6000:02 is acc Y
-  {0x03,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_03[0],0,&(Rb.first.acc[2])},//6000:03 is acc Z
-  {0x04,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_04[0],0,&(Rb.first.gyr[0])},//6000:04 is gyr X
-  {0x05,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_05[0],0,&(Rb.first.gyr[1])},//6000:05 is gyr Y
-  {0x06,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_06[0],0,&(Rb.first.gyr[2])},//6000:06 is gyr Z
-  {0x07,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_07[0],0,&(Rb.first.mag[0])},//6000:07 is mag X
-  {0x08,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_08[0],0,&(Rb.first.mag[1])},//6000:08 is mag Y
-  {0x09,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_09[0],0,&(Rb.first.mag[2])},//6000:09 is mag Z
-  {0x0A,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_0A[0],0,&(Rb.first.temp)}   //6000:0A is imu temperature
+{{0x00,DTYPE_UNSIGNED8  ,8,ATYPE_R,&acNameNOE[0],0x09},                     //Number of elements
+  {0x01,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_01[0],0,&(Rb.first.acc[0])},//6000:01 is acc X
+  {0x02,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_02[0],0,&(Rb.first.acc[1])},//6000:02 is acc Y
+  {0x03,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_03[0],0,&(Rb.first.acc[2])},//6000:03 is acc Z
+  {0x04,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_04[0],0,&(Rb.first.gyr[0])},//6000:04 is gyr X
+  {0x05,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_05[0],0,&(Rb.first.gyr[1])},//6000:05 is gyr Y
+  {0x06,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_06[0],0,&(Rb.first.gyr[2])},//6000:06 is gyr Z
+  {0x07,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_07[0],0,&(Rb.first.mag[0])},//6000:07 is mag X
+  {0x08,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_08[0],0,&(Rb.first.mag[1])},//6000:08 is mag Y
+  {0x09,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_09[0],0,&(Rb.first.mag[2])}//6000:09 is mag Z
+  //{0x0A,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_0A[0],0,&(Rb.first.temp)}   //6000:0A is imu temperature
 };
 
 const _objd SDO6001[]=                                                      //TxPDO module
-{{0x00,DTYPE_UNSIGNED8  ,8,ATYPE_R,&acNameNOE[0],0x0A},                     //Number of elements
-  {0x01,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_01[0],0,&(Rb.second.acc[0])},//6001:01 is acc X
-  {0x02,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_02[0],0,&(Rb.second.acc[1])},//6001:02 is acc Y
-  {0x03,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_03[0],0,&(Rb.second.acc[2])},//6001:03 is acc Z
-  {0x04,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_04[0],0,&(Rb.second.gyr[0])},//6001:04 is gyr X
-  {0x05,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_05[0],0,&(Rb.second.gyr[1])},//6001:05 is gyr Y
-  {0x06,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_06[0],0,&(Rb.second.gyr[2])},//6001:06 is gyr Z
-  {0x07,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_07[0],0,&(Rb.second.mag[0])},//6001:07 is mag X
-  {0x08,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_08[0],0,&(Rb.second.mag[1])},//6001:08 is mag Y
-  {0x09,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_09[0],0,&(Rb.second.mag[2])},//6001:09 is mag Z
-  {0x0A,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_0A[0],0,&(Rb.second.temp)}   //6001:0A is imu temperature
+{{0x00,DTYPE_UNSIGNED8  ,8,ATYPE_R,&acNameNOE[0],0x09},                     //Number of elements
+  {0x01,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_01[0],0,&(Rb.second.acc[0])},//6001:01 is acc X
+  {0x02,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_02[0],0,&(Rb.second.acc[1])},//6001:02 is acc Y
+  {0x03,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_03[0],0,&(Rb.second.acc[2])},//6001:03 is acc Z
+  {0x04,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_04[0],0,&(Rb.second.gyr[0])},//6001:04 is gyr X
+  {0x05,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_05[0],0,&(Rb.second.gyr[1])},//6001:05 is gyr Y
+  {0x06,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_06[0],0,&(Rb.second.gyr[2])},//6001:06 is gyr Z
+  {0x07,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_07[0],0,&(Rb.second.mag[0])},//6001:07 is mag X
+  {0x08,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_08[0],0,&(Rb.second.mag[1])},//6001:08 is mag Y
+  {0x09,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_09[0],0,&(Rb.second.mag[2])}//6001:09 is mag Z
+  //{0x0A,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_0A[0],0,&(Rb.second.temp)}   //6001:0A is imu temperature
 };
 
 const _objd SDO6002[]=                                                      //TxPDO module
-{{0x00,DTYPE_UNSIGNED8  ,8,ATYPE_R,&acNameNOE[0],0x0A},                     //Number of elements
-  {0x01,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_01[0],0,&(Rb.third.acc[0])},//6002:01 is acc X
-  {0x02,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_02[0],0,&(Rb.third.acc[1])},//6002:02 is acc Y
-  {0x03,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_03[0],0,&(Rb.third.acc[2])},//6002:03 is acc Z
-  {0x04,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_04[0],0,&(Rb.third.gyr[0])},//6002:04 is gyr X
-  {0x05,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_05[0],0,&(Rb.third.gyr[1])},//6002:05 is gyr Y
-  {0x06,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_06[0],0,&(Rb.third.gyr[2])},//6002:06 is gyr Z
-  {0x07,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_07[0],0,&(Rb.third.mag[0])},//6002:07 is mag X
-  {0x08,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_08[0],0,&(Rb.third.mag[1])},//6002:08 is mag Y
-  {0x09,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_09[0],0,&(Rb.third.mag[2])},//6002:09 is mag Z
-  {0x0A,DTYPE_UNSIGNED16  ,16,ATYPE_R,&acName6000_0A[0],0,&(Rb.third.temp)}   //6002:0A is imu temperature
+{{0x00,DTYPE_UNSIGNED8  ,8,ATYPE_R,&acNameNOE[0],0x09},                     //Number of elements
+  {0x01,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_01[0],0,&(Rb.third.acc[0])},//6002:01 is acc X
+  {0x02,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_02[0],0,&(Rb.third.acc[1])},//6002:02 is acc Y
+  {0x03,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_03[0],0,&(Rb.third.acc[2])},//6002:03 is acc Z
+  {0x04,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_04[0],0,&(Rb.third.gyr[0])},//6002:04 is gyr X
+  {0x05,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_05[0],0,&(Rb.third.gyr[1])},//6002:05 is gyr Y
+  {0x06,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_06[0],0,&(Rb.third.gyr[2])},//6002:06 is gyr Z
+  {0x07,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_07[0],0,&(Rb.third.mag[0])},//6002:07 is mag X
+  {0x08,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_08[0],0,&(Rb.third.mag[1])},//6002:08 is mag Y
+  {0x09,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_09[0],0,&(Rb.third.mag[2])}//6002:09 is mag Z
+  //{0x0A,DTYPE_REAL32  ,32,ATYPE_R,&acName6000_0A[0],0,&(Rb.third.temp)}   //6002:0A is imu temperature
 };
 
 const _objd SDO6003[]=                                                      //TxPDO module
@@ -330,18 +330,18 @@
   {0x100A,OTYPE_VAR     , 0,0,&acName100A[0],&SDO100A[0]},      //Software Version
   {0x1018,OTYPE_RECORD  , 4,0,&acName1018[0],&SDO1018[0]},      //Identity
   {0x1600,OTYPE_RECORD  , 0x01,0,&acName1600[0],&SDO1600[0]},   //RxPDO mapping
-  {0x1A00,OTYPE_RECORD  , 10,0,&acName1A00[0],&SDO1A00[0]},   //TxPDO mapping
-  {0x1A01,OTYPE_RECORD  , 10,0,&acName1A01[0],&SDO1A01[0]},   //TxPDO mapping
-  {0x1A02,OTYPE_RECORD  , 10,0,&acName1A02[0],&SDO1A02[0]},   //TxPDO mapping
+  {0x1A00,OTYPE_RECORD  , 9,0,&acName1A00[0],&SDO1A00[0]},   //TxPDO mapping
+  {0x1A01,OTYPE_RECORD  , 9,0,&acName1A01[0],&SDO1A01[0]},   //TxPDO mapping
+  {0x1A02,OTYPE_RECORD  , 9,0,&acName1A02[0],&SDO1A02[0]},   //TxPDO mapping
   {0x1A03,OTYPE_RECORD  ,  1,0,&acName1A03[0],&SDO1A03[0]},   //TxPDO mapping
   {0x1C00,OTYPE_ARRAY   , 4,0,&acName1C00[0],&SDO1C00[0]},      //Sync Manager configuration
   {0x1C10,OTYPE_ARRAY   , 0,0,&acName1C10[0],&SDO1C10[0]},      //Sync Manager 0 PDO assignment
   {0x1C11,OTYPE_ARRAY   , 0,0,&acName1C11[0],&SDO1C11[0]},      //Sync Manager 1 PDO assignment
   {0x1C12,OTYPE_ARRAY   , 1,0,&acName1C12[0],&SDO1C12[0]},      //RxPDO objects
   {0x1C13,OTYPE_ARRAY   , 4,0,&acName1C13[0],&SDO1C13[0]},      //TxPDO objects
-  {0x6000,OTYPE_ARRAY   , 10,0,&acName6000[0],&SDO6000[0]},   //TxPDO module
-  {0x6001,OTYPE_ARRAY   , 10,0,&acName6001[0],&SDO6001[0]},   //TxPDO module
-  {0x6002,OTYPE_ARRAY   , 10,0,&acName6002[0],&SDO6002[0]},   //TxPDO module
+  {0x6000,OTYPE_ARRAY   , 9,0,&acName6000[0],&SDO6000[0]},   //TxPDO module
+  {0x6001,OTYPE_ARRAY   , 9,0,&acName6001[0],&SDO6001[0]},   //TxPDO module
+  {0x6002,OTYPE_ARRAY   , 9,0,&acName6002[0],&SDO6002[0]},   //TxPDO module
   {0x6003,OTYPE_ARRAY   ,  1,0,&acName6003[0],&SDO6003[0]},   //TxPDO module
   {0x7000,OTYPE_ARRAY   , 0x01,0,&acName7000[0],&SDO7000[0]},   //RxPDO module
   {0x8000,OTYPE_ARRAY   , 0x01,0,&acName8000[0],&SDO8000[0]},   //RxPDO module