examples/TestMasterSlave/TestSlave.c
changeset 236 905677ed00f3
parent 235 f812bf6b7237
child 284 24bf3d692993
equal deleted inserted replaced
235:f812bf6b7237 236:905677ed00f3
    16 UNS8 SlaveMap8 = 0x0;		/* Mapped at index 0x2007, subindex 0x00 */
    16 UNS8 SlaveMap8 = 0x0;		/* Mapped at index 0x2007, subindex 0x00 */
    17 UNS8 SlaveMap9 = 0x0;		/* Mapped at index 0x2008, subindex 0x00 */
    17 UNS8 SlaveMap9 = 0x0;		/* Mapped at index 0x2008, subindex 0x00 */
    18 UNS32 SlaveMap10 = 0x0;		/* Mapped at index 0x2009, subindex 0x00 */
    18 UNS32 SlaveMap10 = 0x0;		/* Mapped at index 0x2009, subindex 0x00 */
    19 UNS16 SlaveMap11 = 0x0;		/* Mapped at index 0x200A, subindex 0x00 */
    19 UNS16 SlaveMap11 = 0x0;		/* Mapped at index 0x200A, subindex 0x00 */
    20 INTEGER16 SlaveMap12 = 0x0;		/* Mapped at index 0x200B, subindex 0x00 */
    20 INTEGER16 SlaveMap12 = 0x0;		/* Mapped at index 0x200B, subindex 0x00 */
       
    21 INTEGER16 SlaveMap13 = 0x4D2;		/* Mapped at index 0x200C, subindex 0x00 */
    21 
    22 
    22 /**************************************************************************/
    23 /**************************************************************************/
    23 /* Declaration of the value range types                                   */
    24 /* Declaration of the value range types                                   */
    24 /**************************************************************************/
    25 /**************************************************************************/
    25 
    26 
    32 
    33 
    33 /**************************************************************************/
    34 /**************************************************************************/
    34 /* The node id                                                            */
    35 /* The node id                                                            */
    35 /**************************************************************************/
    36 /**************************************************************************/
    36 /* node_id default value.*/
    37 /* node_id default value.*/
    37 UNS8 TestSlave_bDeviceNodeId = 0x00;
    38 UNS8 TestSlave_bDeviceNodeId = 0x02;
    38 
    39 
    39 /**************************************************************************/
    40 /**************************************************************************/
    40 /* Array of message processing information */
    41 /* Array of message processing information */
    41 
    42 
    42 const UNS8 TestSlave_iam_a_slave = 1;
    43 const UNS8 TestSlave_iam_a_slave = 1;
   179                     UNS32 TestSlave_obj1800_COB_ID_used_by_PDO = 0x182;	/* 386 */
   180                     UNS32 TestSlave_obj1800_COB_ID_used_by_PDO = 0x182;	/* 386 */
   180                     UNS8 TestSlave_obj1800_Transmission_Type = 0x0;	/* 0 */
   181                     UNS8 TestSlave_obj1800_Transmission_Type = 0x0;	/* 0 */
   181                     UNS16 TestSlave_obj1800_Inhibit_Time = 0x0;	/* 0 */
   182                     UNS16 TestSlave_obj1800_Inhibit_Time = 0x0;	/* 0 */
   182                     UNS8 TestSlave_obj1800_Compatibility_Entry = 0x0;	/* 0 */
   183                     UNS8 TestSlave_obj1800_Compatibility_Entry = 0x0;	/* 0 */
   183                     UNS16 TestSlave_obj1800_Event_Timer = 0x0;	/* 0 */
   184                     UNS16 TestSlave_obj1800_Event_Timer = 0x0;	/* 0 */
       
   185                     ODCallback_t TestSlave_Index1800_callbacks[] = 
       
   186                      {
       
   187                        NULL,
       
   188                        NULL,
       
   189                        NULL,
       
   190                        NULL,
       
   191                        NULL,
       
   192                        NULL,
       
   193                      };
   184                     subindex TestSlave_Index1800[] = 
   194                     subindex TestSlave_Index1800[] = 
   185                      {
   195                      {
   186                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1800 },
   196                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1800 },
   187                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1800_COB_ID_used_by_PDO },
   197                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1800_COB_ID_used_by_PDO },
   188                        { RW|TO_BE_SAVE, uint8, sizeof (UNS8), (void*)&TestSlave_obj1800_Transmission_Type },
   198                        { RW|TO_BE_SAVE, uint8, sizeof (UNS8), (void*)&TestSlave_obj1800_Transmission_Type },
   191                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Event_Timer }
   201                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Event_Timer }
   192                      };
   202                      };
   193 
   203 
   194 /* index 0x1801 :   Transmit PDO 2 Parameter. */
   204 /* index 0x1801 :   Transmit PDO 2 Parameter. */
   195                     UNS8 TestSlave_highestSubIndex_obj1801 = 5; /* number of subindex - 1*/
   205                     UNS8 TestSlave_highestSubIndex_obj1801 = 5; /* number of subindex - 1*/
   196                     UNS32 TestSlave_obj1801_COB_ID_used_by_PDO = 0x0;	/* 0 */
   206                     UNS32 TestSlave_obj1801_COB_ID_used_by_PDO = 0x282;	/* 642 */
   197                     UNS8 TestSlave_obj1801_Transmission_Type = 0x0;	/* 0 */
   207                     UNS8 TestSlave_obj1801_Transmission_Type = 0x0;	/* 0 */
   198                     UNS16 TestSlave_obj1801_Inhibit_Time = 0x0;	/* 0 */
   208                     UNS16 TestSlave_obj1801_Inhibit_Time = 0x0;	/* 0 */
   199                     UNS8 TestSlave_obj1801_Compatibility_Entry = 0x0;	/* 0 */
   209                     UNS8 TestSlave_obj1801_Compatibility_Entry = 0x0;	/* 0 */
   200                     UNS16 TestSlave_obj1801_Event_Timer = 0x0;	/* 0 */
   210                     UNS16 TestSlave_obj1801_Event_Timer = 0x0;	/* 0 */
       
   211                     ODCallback_t TestSlave_Index1801_callbacks[] = 
       
   212                      {
       
   213                        NULL,
       
   214                        NULL,
       
   215                        NULL,
       
   216                        NULL,
       
   217                        NULL,
       
   218                        NULL,
       
   219                      };
   201                     subindex TestSlave_Index1801[] = 
   220                     subindex TestSlave_Index1801[] = 
   202                      {
   221                      {
   203                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1801 },
   222                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1801 },
   204                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1801_COB_ID_used_by_PDO },
   223                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1801_COB_ID_used_by_PDO },
   205                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1801_Transmission_Type },
   224                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1801_Transmission_Type },
   208                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Event_Timer }
   227                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Event_Timer }
   209                      };
   228                      };
   210 
   229 
   211 /* index 0x1802 :   Transmit PDO 3 Parameter. */
   230 /* index 0x1802 :   Transmit PDO 3 Parameter. */
   212                     UNS8 TestSlave_highestSubIndex_obj1802 = 5; /* number of subindex - 1*/
   231                     UNS8 TestSlave_highestSubIndex_obj1802 = 5; /* number of subindex - 1*/
   213                     UNS32 TestSlave_obj1802_COB_ID_used_by_PDO = 0x380;	/* 896 */
   232                     UNS32 TestSlave_obj1802_COB_ID_used_by_PDO = 0x382;	/* 898 */
   214                     UNS8 TestSlave_obj1802_Transmission_Type = 0xFF;	/* 255 */
   233                     UNS8 TestSlave_obj1802_Transmission_Type = 0xFF;	/* 255 */
   215                     UNS16 TestSlave_obj1802_Inhibit_Time = 0x1388;	/* 5000 */
   234                     UNS16 TestSlave_obj1802_Inhibit_Time = 0x1388;	/* 5000 */
   216                     UNS8 TestSlave_obj1802_Compatibility_Entry = 0x0;	/* 0 */
   235                     UNS8 TestSlave_obj1802_Compatibility_Entry = 0x0;	/* 0 */
   217                     UNS16 TestSlave_obj1802_Event_Timer = 0x3E8;	/* 1000 */
   236                     UNS16 TestSlave_obj1802_Event_Timer = 0x3E8;	/* 1000 */
       
   237                     ODCallback_t TestSlave_Index1802_callbacks[] = 
       
   238                      {
       
   239                        NULL,
       
   240                        NULL,
       
   241                        NULL,
       
   242                        NULL,
       
   243                        NULL,
       
   244                        NULL,
       
   245                      };
   218                     subindex TestSlave_Index1802[] = 
   246                     subindex TestSlave_Index1802[] = 
   219                      {
   247                      {
   220                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1802 },
   248                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1802 },
   221                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1802_COB_ID_used_by_PDO },
   249                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1802_COB_ID_used_by_PDO },
   222                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1802_Transmission_Type },
   250                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1802_Transmission_Type },
   223                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1802_Inhibit_Time },
   251                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1802_Inhibit_Time },
   224                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1802_Compatibility_Entry },
   252                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1802_Compatibility_Entry },
   225                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1802_Event_Timer }
   253                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1802_Event_Timer }
       
   254                      };
       
   255 
       
   256 /* index 0x1803 :   Transmit PDO 4 Parameter. */
       
   257                     UNS8 TestSlave_highestSubIndex_obj1803 = 5; /* number of subindex - 1*/
       
   258                     UNS32 TestSlave_obj1803_COB_ID_used_by_PDO = 0x482;	/* 1154 */
       
   259                     UNS8 TestSlave_obj1803_Transmission_Type = 0xFC;	/* 252 */
       
   260                     UNS16 TestSlave_obj1803_Inhibit_Time = 0x0;	/* 0 */
       
   261                     UNS8 TestSlave_obj1803_Compatibility_Entry = 0x0;	/* 0 */
       
   262                     UNS16 TestSlave_obj1803_Event_Timer = 0x0;	/* 0 */
       
   263                     ODCallback_t TestSlave_Index1803_callbacks[] = 
       
   264                      {
       
   265                        NULL,
       
   266                        NULL,
       
   267                        NULL,
       
   268                        NULL,
       
   269                        NULL,
       
   270                        NULL,
       
   271                      };
       
   272                     subindex TestSlave_Index1803[] = 
       
   273                      {
       
   274                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1803 },
       
   275                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1803_COB_ID_used_by_PDO },
       
   276                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1803_Transmission_Type },
       
   277                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1803_Inhibit_Time },
       
   278                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1803_Compatibility_Entry },
       
   279                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1803_Event_Timer }
       
   280                      };
       
   281 
       
   282 /* index 0x1804 :   Transmit PDO 5 Parameter. */
       
   283                     UNS8 TestSlave_highestSubIndex_obj1804 = 5; /* number of subindex - 1*/
       
   284                     UNS32 TestSlave_obj1804_COB_ID_used_by_PDO = 0x401;	/* 1025 */
       
   285                     UNS8 TestSlave_obj1804_Transmission_Type = 0xFD;	/* 253 */
       
   286                     UNS16 TestSlave_obj1804_Inhibit_Time = 0x0;	/* 0 */
       
   287                     UNS8 TestSlave_obj1804_Compatibility_Entry = 0x0;	/* 0 */
       
   288                     UNS16 TestSlave_obj1804_Event_Timer = 0x0;	/* 0 */
       
   289                     ODCallback_t TestSlave_Index1804_callbacks[] = 
       
   290                      {
       
   291                        NULL,
       
   292                        NULL,
       
   293                        NULL,
       
   294                        NULL,
       
   295                        NULL,
       
   296                        NULL,
       
   297                      };
       
   298                     subindex TestSlave_Index1804[] = 
       
   299                      {
       
   300                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1804 },
       
   301                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1804_COB_ID_used_by_PDO },
       
   302                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1804_Transmission_Type },
       
   303                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1804_Inhibit_Time },
       
   304                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1804_Compatibility_Entry },
       
   305                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1804_Event_Timer }
   226                      };
   306                      };
   227 
   307 
   228 /* index 0x1A00 :   Transmit PDO 1 Mapping. */
   308 /* index 0x1A00 :   Transmit PDO 1 Mapping. */
   229                     UNS8 TestSlave_highestSubIndex_obj1A00 = 10; /* number of subindex - 1*/
   309                     UNS8 TestSlave_highestSubIndex_obj1A00 = 10; /* number of subindex - 1*/
   230                     UNS32 TestSlave_obj1A00[] = 
   310                     UNS32 TestSlave_obj1A00[] = 
   277                      {
   357                      {
   278                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A02 },
   358                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A02 },
   279                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A02[0] }
   359                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A02[0] }
   280                      };
   360                      };
   281 
   361 
       
   362 /* index 0x1A03 :   Transmit PDO 4 Mapping. */
       
   363                     UNS8 TestSlave_highestSubIndex_obj1A03 = 1; /* number of subindex - 1*/
       
   364                     UNS32 TestSlave_obj1A03[] = 
       
   365                     {
       
   366                       0x200C0010	/* 537657360 */
       
   367                     };
       
   368                     subindex TestSlave_Index1A03[] = 
       
   369                      {
       
   370                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A03 },
       
   371                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A03[0] }
       
   372                      };
       
   373 
       
   374 /* index 0x1A04 :   Transmit PDO 5 Mapping. */
       
   375                     UNS8 TestSlave_highestSubIndex_obj1A04 = 1; /* number of subindex - 1*/
       
   376                     UNS32 TestSlave_obj1A04[] = 
       
   377                     {
       
   378                       0x200C0010	/* 537657360 */
       
   379                     };
       
   380                     subindex TestSlave_Index1A04[] = 
       
   381                      {
       
   382                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A04 },
       
   383                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A04[0] }
       
   384                      };
       
   385 
   282 /* index 0x2000 :   Mapped variable SlaveMap1 */
   386 /* index 0x2000 :   Mapped variable SlaveMap1 */
   283                     subindex TestSlave_Index2000[] = 
   387                     subindex TestSlave_Index2000[] = 
   284                      {
   388                      {
   285                        { RW, boolean, sizeof (UNS8), (void*)&SlaveMap1 }
   389                        { RW, boolean, sizeof (UNS8), (void*)&SlaveMap1 }
   286                      };
   390                      };
   347 
   451 
   348 /* index 0x200B :   Mapped variable SlaveMap12 */
   452 /* index 0x200B :   Mapped variable SlaveMap12 */
   349                     subindex TestSlave_Index200B[] = 
   453                     subindex TestSlave_Index200B[] = 
   350                      {
   454                      {
   351                        { RW, int16, sizeof (INTEGER16), (void*)&SlaveMap12 }
   455                        { RW, int16, sizeof (INTEGER16), (void*)&SlaveMap12 }
       
   456                      };
       
   457 
       
   458 /* index 0x200C :   Mapped variable SlaveMap13 */
       
   459                     subindex TestSlave_Index200C[] = 
       
   460                      {
       
   461                        { RW, int16, sizeof (INTEGER16), (void*)&SlaveMap13 }
   352                      };
   462                      };
   353 
   463 
   354 const indextable TestSlave_objdict[] = 
   464 const indextable TestSlave_objdict[] = 
   355 {
   465 {
   356   { (subindex*)TestSlave_Index1000,sizeof(TestSlave_Index1000)/sizeof(TestSlave_Index1000[0]), 0x1000},
   466   { (subindex*)TestSlave_Index1000,sizeof(TestSlave_Index1000)/sizeof(TestSlave_Index1000[0]), 0x1000},
   363   { (subindex*)TestSlave_Index1018,sizeof(TestSlave_Index1018)/sizeof(TestSlave_Index1018[0]), 0x1018},
   473   { (subindex*)TestSlave_Index1018,sizeof(TestSlave_Index1018)/sizeof(TestSlave_Index1018[0]), 0x1018},
   364   { (subindex*)TestSlave_Index1200,sizeof(TestSlave_Index1200)/sizeof(TestSlave_Index1200[0]), 0x1200},
   474   { (subindex*)TestSlave_Index1200,sizeof(TestSlave_Index1200)/sizeof(TestSlave_Index1200[0]), 0x1200},
   365   { (subindex*)TestSlave_Index1800,sizeof(TestSlave_Index1800)/sizeof(TestSlave_Index1800[0]), 0x1800},
   475   { (subindex*)TestSlave_Index1800,sizeof(TestSlave_Index1800)/sizeof(TestSlave_Index1800[0]), 0x1800},
   366   { (subindex*)TestSlave_Index1801,sizeof(TestSlave_Index1801)/sizeof(TestSlave_Index1801[0]), 0x1801},
   476   { (subindex*)TestSlave_Index1801,sizeof(TestSlave_Index1801)/sizeof(TestSlave_Index1801[0]), 0x1801},
   367   { (subindex*)TestSlave_Index1802,sizeof(TestSlave_Index1802)/sizeof(TestSlave_Index1802[0]), 0x1802},
   477   { (subindex*)TestSlave_Index1802,sizeof(TestSlave_Index1802)/sizeof(TestSlave_Index1802[0]), 0x1802},
       
   478   { (subindex*)TestSlave_Index1803,sizeof(TestSlave_Index1803)/sizeof(TestSlave_Index1803[0]), 0x1803},
       
   479   { (subindex*)TestSlave_Index1804,sizeof(TestSlave_Index1804)/sizeof(TestSlave_Index1804[0]), 0x1804},
   368   { (subindex*)TestSlave_Index1A00,sizeof(TestSlave_Index1A00)/sizeof(TestSlave_Index1A00[0]), 0x1A00},
   480   { (subindex*)TestSlave_Index1A00,sizeof(TestSlave_Index1A00)/sizeof(TestSlave_Index1A00[0]), 0x1A00},
   369   { (subindex*)TestSlave_Index1A01,sizeof(TestSlave_Index1A01)/sizeof(TestSlave_Index1A01[0]), 0x1A01},
   481   { (subindex*)TestSlave_Index1A01,sizeof(TestSlave_Index1A01)/sizeof(TestSlave_Index1A01[0]), 0x1A01},
   370   { (subindex*)TestSlave_Index1A02,sizeof(TestSlave_Index1A02)/sizeof(TestSlave_Index1A02[0]), 0x1A02},
   482   { (subindex*)TestSlave_Index1A02,sizeof(TestSlave_Index1A02)/sizeof(TestSlave_Index1A02[0]), 0x1A02},
       
   483   { (subindex*)TestSlave_Index1A03,sizeof(TestSlave_Index1A03)/sizeof(TestSlave_Index1A03[0]), 0x1A03},
       
   484   { (subindex*)TestSlave_Index1A04,sizeof(TestSlave_Index1A04)/sizeof(TestSlave_Index1A04[0]), 0x1A04},
   371   { (subindex*)TestSlave_Index2000,sizeof(TestSlave_Index2000)/sizeof(TestSlave_Index2000[0]), 0x2000},
   485   { (subindex*)TestSlave_Index2000,sizeof(TestSlave_Index2000)/sizeof(TestSlave_Index2000[0]), 0x2000},
   372   { (subindex*)TestSlave_Index2001,sizeof(TestSlave_Index2001)/sizeof(TestSlave_Index2001[0]), 0x2001},
   486   { (subindex*)TestSlave_Index2001,sizeof(TestSlave_Index2001)/sizeof(TestSlave_Index2001[0]), 0x2001},
   373   { (subindex*)TestSlave_Index2002,sizeof(TestSlave_Index2002)/sizeof(TestSlave_Index2002[0]), 0x2002},
   487   { (subindex*)TestSlave_Index2002,sizeof(TestSlave_Index2002)/sizeof(TestSlave_Index2002[0]), 0x2002},
   374   { (subindex*)TestSlave_Index2003,sizeof(TestSlave_Index2003)/sizeof(TestSlave_Index2003[0]), 0x2003},
   488   { (subindex*)TestSlave_Index2003,sizeof(TestSlave_Index2003)/sizeof(TestSlave_Index2003[0]), 0x2003},
   375   { (subindex*)TestSlave_Index2004,sizeof(TestSlave_Index2004)/sizeof(TestSlave_Index2004[0]), 0x2004},
   489   { (subindex*)TestSlave_Index2004,sizeof(TestSlave_Index2004)/sizeof(TestSlave_Index2004[0]), 0x2004},
   378   { (subindex*)TestSlave_Index2007,sizeof(TestSlave_Index2007)/sizeof(TestSlave_Index2007[0]), 0x2007},
   492   { (subindex*)TestSlave_Index2007,sizeof(TestSlave_Index2007)/sizeof(TestSlave_Index2007[0]), 0x2007},
   379   { (subindex*)TestSlave_Index2008,sizeof(TestSlave_Index2008)/sizeof(TestSlave_Index2008[0]), 0x2008},
   493   { (subindex*)TestSlave_Index2008,sizeof(TestSlave_Index2008)/sizeof(TestSlave_Index2008[0]), 0x2008},
   380   { (subindex*)TestSlave_Index2009,sizeof(TestSlave_Index2009)/sizeof(TestSlave_Index2009[0]), 0x2009},
   494   { (subindex*)TestSlave_Index2009,sizeof(TestSlave_Index2009)/sizeof(TestSlave_Index2009[0]), 0x2009},
   381   { (subindex*)TestSlave_Index200A,sizeof(TestSlave_Index200A)/sizeof(TestSlave_Index200A[0]), 0x200A},
   495   { (subindex*)TestSlave_Index200A,sizeof(TestSlave_Index200A)/sizeof(TestSlave_Index200A[0]), 0x200A},
   382   { (subindex*)TestSlave_Index200B,sizeof(TestSlave_Index200B)/sizeof(TestSlave_Index200B[0]), 0x200B},
   496   { (subindex*)TestSlave_Index200B,sizeof(TestSlave_Index200B)/sizeof(TestSlave_Index200B[0]), 0x200B},
       
   497   { (subindex*)TestSlave_Index200C,sizeof(TestSlave_Index200C)/sizeof(TestSlave_Index200C[0]), 0x200C},
   383 };
   498 };
   384 
   499 
   385 const indextable * TestSlave_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCallback_t **callbacks)
   500 const indextable * TestSlave_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCallback_t **callbacks)
   386 {
   501 {
   387 	int i;
   502 	int i;
   394 		case 0x1010: i = 4;*callbacks = TestSlave_Index1010_callbacks; break;
   509 		case 0x1010: i = 4;*callbacks = TestSlave_Index1010_callbacks; break;
   395 		case 0x1011: i = 5;*callbacks = TestSlave_Index1011_callbacks; break;
   510 		case 0x1011: i = 5;*callbacks = TestSlave_Index1011_callbacks; break;
   396 		case 0x1017: i = 6;*callbacks = TestSlave_Index1017_callbacks; break;
   511 		case 0x1017: i = 6;*callbacks = TestSlave_Index1017_callbacks; break;
   397 		case 0x1018: i = 7;break;
   512 		case 0x1018: i = 7;break;
   398 		case 0x1200: i = 8;break;
   513 		case 0x1200: i = 8;break;
   399 		case 0x1800: i = 9;break;
   514 		case 0x1800: i = 9;*callbacks = TestSlave_Index1800_callbacks; break;
   400 		case 0x1801: i = 10;break;
   515 		case 0x1801: i = 10;*callbacks = TestSlave_Index1801_callbacks; break;
   401 		case 0x1802: i = 11;break;
   516 		case 0x1802: i = 11;*callbacks = TestSlave_Index1802_callbacks; break;
   402 		case 0x1A00: i = 12;break;
   517 		case 0x1803: i = 12;*callbacks = TestSlave_Index1803_callbacks; break;
   403 		case 0x1A01: i = 13;break;
   518 		case 0x1804: i = 13;*callbacks = TestSlave_Index1804_callbacks; break;
   404 		case 0x1A02: i = 14;break;
   519 		case 0x1A00: i = 14;break;
   405 		case 0x2000: i = 15;break;
   520 		case 0x1A01: i = 15;break;
   406 		case 0x2001: i = 16;break;
   521 		case 0x1A02: i = 16;break;
   407 		case 0x2002: i = 17;break;
   522 		case 0x1A03: i = 17;break;
   408 		case 0x2003: i = 18;break;
   523 		case 0x1A04: i = 18;break;
   409 		case 0x2004: i = 19;break;
   524 		case 0x2000: i = 19;break;
   410 		case 0x2005: i = 20;break;
   525 		case 0x2001: i = 20;break;
   411 		case 0x2006: i = 21;break;
   526 		case 0x2002: i = 21;break;
   412 		case 0x2007: i = 22;break;
   527 		case 0x2003: i = 22;break;
   413 		case 0x2008: i = 23;break;
   528 		case 0x2004: i = 23;break;
   414 		case 0x2009: i = 24;break;
   529 		case 0x2005: i = 24;break;
   415 		case 0x200A: i = 25;break;
   530 		case 0x2006: i = 25;break;
   416 		case 0x200B: i = 26;break;
   531 		case 0x2007: i = 26;break;
       
   532 		case 0x2008: i = 27;break;
       
   533 		case 0x2009: i = 28;break;
       
   534 		case 0x200A: i = 29;break;
       
   535 		case 0x200B: i = 30;break;
       
   536 		case 0x200C: i = 31;break;
   417 		default:
   537 		default:
   418 			*errorCode = OD_NO_SUCH_OBJECT;
   538 			*errorCode = OD_NO_SUCH_OBJECT;
   419 			return NULL;
   539 			return NULL;
   420 	}
   540 	}
   421 	*errorCode = OD_SUCCESSFUL;
   541 	*errorCode = OD_SUCCESSFUL;
   425 /* 
   545 /* 
   426  * To count at which received SYNC a PDO must be sent.
   546  * To count at which received SYNC a PDO must be sent.
   427  * Even if no pdoTransmit are defined, at least one entry is computed
   547  * Even if no pdoTransmit are defined, at least one entry is computed
   428  * for compilations issues.
   548  * for compilations issues.
   429  */
   549  */
   430 s_PDO_status TestSlave_PDO_status[3] = {s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer};
   550 s_PDO_status TestSlave_PDO_status[5] = {s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer,s_PDO_staus_Initializer};
   431 
   551 
   432 quick_index TestSlave_firstIndex = {
   552 quick_index TestSlave_firstIndex = {
   433   8, /* SDO_SVR */
   553   8, /* SDO_SVR */
   434   0, /* SDO_CLT */
   554   0, /* SDO_CLT */
   435   0, /* PDO_RCV */
   555   0, /* PDO_RCV */
   436   0, /* PDO_RCV_MAP */
   556   0, /* PDO_RCV_MAP */
   437   9, /* PDO_TRS */
   557   9, /* PDO_TRS */
   438   12 /* PDO_TRS_MAP */
   558   14 /* PDO_TRS_MAP */
   439 };
   559 };
   440 
   560 
   441 quick_index TestSlave_lastIndex = {
   561 quick_index TestSlave_lastIndex = {
   442   8, /* SDO_SVR */
   562   8, /* SDO_SVR */
   443   0, /* SDO_CLT */
   563   0, /* SDO_CLT */
   444   0, /* PDO_RCV */
   564   0, /* PDO_RCV */
   445   0, /* PDO_RCV_MAP */
   565   0, /* PDO_RCV_MAP */
   446   11, /* PDO_TRS */
   566   13, /* PDO_TRS */
   447   14 /* PDO_TRS_MAP */
   567   18 /* PDO_TRS_MAP */
   448 };
   568 };
   449 
   569 
   450 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); 
   570 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); 
   451 
   571 
   452 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave);
   572 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave);