examples/TestMasterSlave/TestSlave.c
changeset 79 9d8959095936
parent 23 6a5cdca4de01
child 91 ed2612282988
equal deleted inserted replaced
78:ac05410cc1b8 79:9d8959095936
     1 /*
       
     2 This file is part of CanFestival, a library implementing CanOpen Stack. 
       
     3 
       
     4 Copyright (C): Edouard TISSERANT and Francis DUPIN
       
     5 
       
     6 See COPYING file for copyrights details.
       
     7 
       
     8 This library is free software; you can redistribute it and/or
       
     9 modify it under the terms of the GNU Lesser General Public
       
    10 License as published by the Free Software Foundation; either
       
    11 version 2.1 of the License, or (at your option) any later version.
       
    12 
       
    13 This library is distributed in the hope that it will be useful,
       
    14 but WITHOUT ANY WARRANTY; without even the implied warranty of
       
    15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
       
    16 Lesser General Public License for more details.
       
    17 
       
    18 You should have received a copy of the GNU Lesser General Public
       
    19 License along with this library; if not, write to the Free Software
       
    20 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
       
    21 */
       
    22 
     1 
    23 /* File generated by gen_cfile.py. Should not be modified. */
     2 /* File generated by gen_cfile.py. Should not be modified. */
    24 
     3 
    25 #include "TestSlave.h"
     4 #include "TestSlave.h"
    26 
     5 
    27 /**************************************************************************/
     6 /**************************************************************************/
    28 /* Declaration of the mapped variables                                    */
     7 /* Declaration of the mapped variables                                    */
    29 /**************************************************************************/
     8 /**************************************************************************/
    30 UNS8 SlaveMap1 = 0x0;		// Mapped at index 0x2000, subindex 0x00
     9 UNS8 SlaveMap1 = 0x0;		/* Mapped at index 0x2000, subindex 0x00 */
    31 UNS8 SlaveMap2 = 0x0;		// Mapped at index 0x2001, subindex 0x00
    10 UNS8 SlaveMap2 = 0x0;		/* Mapped at index 0x2001, subindex 0x00 */
    32 UNS8 SlaveMap3 = 0x0;		// Mapped at index 0x2002, subindex 0x00
    11 UNS8 SlaveMap3 = 0x0;		/* Mapped at index 0x2002, subindex 0x00 */
    33 UNS8 SlaveMap4 = 0x0;		// Mapped at index 0x2003, subindex 0x00
    12 UNS8 SlaveMap4 = 0x0;		/* Mapped at index 0x2003, subindex 0x00 */
    34 
    13 
    35 /**************************************************************************/
    14 /**************************************************************************/
    36 /* Declaration of the value range types                                   */
    15 /* Declaration of the value range types                                   */
    37 /**************************************************************************/
    16 /**************************************************************************/
    38 
    17 
    47 /* The node id                                                            */
    26 /* The node id                                                            */
    48 /**************************************************************************/
    27 /**************************************************************************/
    49 /* node_id default value.*/
    28 /* node_id default value.*/
    50 UNS8 TestSlave_bDeviceNodeId = 0x00;
    29 UNS8 TestSlave_bDeviceNodeId = 0x00;
    51 
    30 
    52 //*****************************************************************************/
    31 /**************************************************************************/
    53 /* Array of message processing information */
    32 /* Array of message processing information */
    54 
    33 
    55 const UNS8 TestSlave_iam_a_slave = 1;
    34 const UNS8 TestSlave_iam_a_slave = 1;
    56 
    35 
    57 TIMER_HANDLE TestSlave_heartBeatTimers[0];
    36 TIMER_HANDLE TestSlave_heartBeatTimers[1];
    58 
    37 
    59 //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
    38 /*
    60 //
    39 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
    61 //                       OBJECT DICTIONARY
    40 
    62 //                   
    41                                OBJECT DICTIONARY
    63 //$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
    42 
       
    43 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
       
    44 */
    64 
    45 
    65 /* index 0x1000 :   Device Type. */
    46 /* index 0x1000 :   Device Type. */
    66                     UNS32 TestSlave_obj1000 = 0x12D;	// 301
    47                     UNS32 TestSlave_obj1000 = 0x12D;	/* 301 */
    67                     subindex TestSlave_Index1000[] = 
    48                     subindex TestSlave_Index1000[] = 
    68                      {
    49                      {
    69                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1000 }
    50                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1000 }
    70                      };
    51                      };
    71 
    52 
    72 /* index 0x1001 :   Error Register. */
    53 /* index 0x1001 :   Error Register. */
    73                     UNS8 TestSlave_obj1001 = 0x0;	// 0
    54                     UNS8 TestSlave_obj1001 = 0x0;	/* 0 */
    74                     subindex TestSlave_Index1001[] = 
    55                     subindex TestSlave_Index1001[] = 
    75                      {
    56                      {
    76                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_obj1001 }
    57                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_obj1001 }
    77                      };
    58                      };
    78 
    59 
    79 /* index 0x1005 :   SYNC COB ID. */
    60 /* index 0x1005 :   SYNC COB ID. */
    80                     UNS32 TestSlave_obj1005 = 0x80;	// 128
    61                     UNS32 TestSlave_obj1005 = 0x80;	/* 128 */
    81                     ODCallback_t TestSlave_Index1005_callbacks[] = 
    62                     ODCallback_t TestSlave_Index1005_callbacks[] = 
    82                      {
    63                      {
    83                        NULL,
    64                        NULL,
    84                      };
    65                      };
    85                     subindex TestSlave_Index1005[] = 
    66                     subindex TestSlave_Index1005[] = 
    86                      {
    67                      {
    87                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1005 }
    68                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1005 }
    88                      };
    69                      };
    89 
    70 
    90 /* index 0x1006 :   Communication / Cycle Period. */
    71 /* index 0x1006 :   Communication / Cycle Period. */
    91                     UNS32 TestSlave_obj1006 = 0x0;	// 0
    72                     UNS32 TestSlave_obj1006 = 0x0;	/* 0 */
    92                     ODCallback_t TestSlave_Index1006_callbacks[] = 
    73                     ODCallback_t TestSlave_Index1006_callbacks[] = 
    93                      {
    74                      {
    94                        NULL,
    75                        NULL,
    95                      };
    76                      };
    96                     subindex TestSlave_Index1006[] = 
    77                     subindex TestSlave_Index1006[] = 
    97                      {
    78                      {
    98                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1006 }
    79                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1006 }
    99                      };
    80                      };
   100 
    81 
   101 /* index 0x1010 :   Store parameters. */
    82 /* index 0x1010 :   Store parameters. */
   102                     UNS8 TestSlave_highestSubIndex_obj1010 = 4; // number of subindex - 1
    83                     UNS8 TestSlave_highestSubIndex_obj1010 = 4; /* number of subindex - 1*/
   103                     UNS32 TestSlave_obj1010_Save_All_Parameters = 0x0;	// 0
    84                     UNS32 TestSlave_obj1010_Save_All_Parameters = 0x0;	/* 0 */
   104                     UNS32 TestSlave_obj1010_Save_Communication_Parameters = 0x0;	// 0
    85                     UNS32 TestSlave_obj1010_Save_Communication_Parameters = 0x0;	/* 0 */
   105                     UNS32 TestSlave_obj1010_Save_Application_Parameters = 0x0;	// 0
    86                     UNS32 TestSlave_obj1010_Save_Application_Parameters = 0x0;	/* 0 */
   106                     UNS32 TestSlave_obj1010_Save_Manufacturer_Parameters = 0x0;	// 0
    87                     UNS32 TestSlave_obj1010_Save_Manufacturer_Parameters = 0x0;	/* 0 */
   107                     ODCallback_t TestSlave_Index1010_callbacks[] = 
    88                     ODCallback_t TestSlave_Index1010_callbacks[] = 
   108                      {
    89                      {
   109                        NULL,
    90                        NULL,
   110                        NULL,
    91                        NULL,
   111                        NULL,
    92                        NULL,
   120                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Application_Parameters },
   101                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Application_Parameters },
   121                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Manufacturer_Parameters }
   102                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Manufacturer_Parameters }
   122                      };
   103                      };
   123 
   104 
   124 /* index 0x1011 :   Restore Default Parameters. */
   105 /* index 0x1011 :   Restore Default Parameters. */
   125                     UNS8 TestSlave_highestSubIndex_obj1011 = 4; // number of subindex - 1
   106                     UNS8 TestSlave_highestSubIndex_obj1011 = 4; /* number of subindex - 1*/
   126                     UNS32 TestSlave_obj1011_Restore_All_Default_Parameters = 0x0;	// 0
   107                     UNS32 TestSlave_obj1011_Restore_All_Default_Parameters = 0x0;	/* 0 */
   127                     UNS32 TestSlave_obj1011_Restore_Communication_Default_Parameters = 0x0;	// 0
   108                     UNS32 TestSlave_obj1011_Restore_Communication_Default_Parameters = 0x0;	/* 0 */
   128                     UNS32 TestSlave_obj1011_Restore_Application_Default_Parameters = 0x0;	// 0
   109                     UNS32 TestSlave_obj1011_Restore_Application_Default_Parameters = 0x0;	/* 0 */
   129                     UNS32 TestSlave_obj1011_Restore_Manufacturer_Default_Parameters = 0x0;	// 0
   110                     UNS32 TestSlave_obj1011_Restore_Manufacturer_Default_Parameters = 0x0;	/* 0 */
   130                     ODCallback_t TestSlave_Index1011_callbacks[] = 
   111                     ODCallback_t TestSlave_Index1011_callbacks[] = 
   131                      {
   112                      {
   132                        NULL,
   113                        NULL,
   133                        NULL,
   114                        NULL,
   134                        NULL,
   115                        NULL,
   144                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_Manufacturer_Default_Parameters }
   125                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_Manufacturer_Default_Parameters }
   145                      };
   126                      };
   146 
   127 
   147 /* index 0x1016 :   Consumer Heartbeat Time */
   128 /* index 0x1016 :   Consumer Heartbeat Time */
   148                     UNS8 TestSlave_highestSubIndex_obj1016 = 0;
   129                     UNS8 TestSlave_highestSubIndex_obj1016 = 0;
   149                     UNS32 TestSlave_obj1016[0];
   130                     UNS32 TestSlave_obj1016[];
   150                     subindex TestSlave_Index1016[0];
   131                     subindex TestSlave_Index1016[];
   151 
   132 
   152 /* index 0x1017 :   Producer Heartbeat Time. */
   133 /* index 0x1017 :   Producer Heartbeat Time. */
   153                     UNS16 TestSlave_obj1017 = 0x3E8;	// 1000
   134                     UNS16 TestSlave_obj1017 = 0x3E8;	/* 1000 */
   154                     subindex TestSlave_Index1017[] = 
   135                     subindex TestSlave_Index1017[] = 
   155                      {
   136                      {
   156                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1017 }
   137                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1017 }
   157                      };
   138                      };
   158 
   139 
   159 /* index 0x1018 :   Identity. */
   140 /* index 0x1018 :   Identity. */
   160                     UNS8 TestSlave_highestSubIndex_obj1018 = 4; // number of subindex - 1
   141                     UNS8 TestSlave_highestSubIndex_obj1018 = 4; /* number of subindex - 1*/
   161                     UNS32 TestSlave_obj1018_Vendor_ID = 0x0;	// 0
   142                     UNS32 TestSlave_obj1018_Vendor_ID = 0x0;	/* 0 */
   162                     UNS32 TestSlave_obj1018_Product_Code = 0x0;	// 0
   143                     UNS32 TestSlave_obj1018_Product_Code = 0x0;	/* 0 */
   163                     UNS32 TestSlave_obj1018_Revision_Number = 0x0;	// 0
   144                     UNS32 TestSlave_obj1018_Revision_Number = 0x0;	/* 0 */
   164                     UNS32 TestSlave_obj1018_Serial_Number = 0x0;	// 0
   145                     UNS32 TestSlave_obj1018_Serial_Number = 0x0;	/* 0 */
   165                     subindex TestSlave_Index1018[] = 
   146                     subindex TestSlave_Index1018[] = 
   166                      {
   147                      {
   167                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1018 },
   148                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1018 },
   168                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Vendor_ID },
   149                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Vendor_ID },
   169                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Product_Code },
   150                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Product_Code },
   170                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Revision_Number },
   151                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Revision_Number },
   171                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Serial_Number }
   152                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Serial_Number }
   172                      };
   153                      };
   173 
   154 
   174 /* index 0x1200 :   Server SDO Parameter. */
   155 /* index 0x1200 :   Server SDO Parameter. */
   175                     UNS8 TestSlave_highestSubIndex_obj1200 = 2; // number of subindex - 1
   156                     UNS8 TestSlave_highestSubIndex_obj1200 = 2; /* number of subindex - 1*/
   176                     UNS32 TestSlave_obj1200_COB_ID_Client_to_Server_Receive_SDO = 0x601;	// 1537
   157                     UNS32 TestSlave_obj1200_COB_ID_Client_to_Server_Receive_SDO = 0x601;	/* 1537 */
   177                     UNS32 TestSlave_obj1200_COB_ID_Server_to_Client_Transmit_SDO = 0x581;	// 1409
   158                     UNS32 TestSlave_obj1200_COB_ID_Server_to_Client_Transmit_SDO = 0x581;	/* 1409 */
   178                     subindex TestSlave_Index1200[] = 
   159                     subindex TestSlave_Index1200[] = 
   179                      {
   160                      {
   180                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1200 },
   161                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1200 },
   181                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1200_COB_ID_Client_to_Server_Receive_SDO },
   162                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1200_COB_ID_Client_to_Server_Receive_SDO },
   182                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1200_COB_ID_Server_to_Client_Transmit_SDO }
   163                        { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1200_COB_ID_Server_to_Client_Transmit_SDO }
   183                      };
   164                      };
   184 
   165 
   185 /* index 0x1800 :   Transmit PDO 1 Parameter. */
   166 /* index 0x1800 :   Transmit PDO 1 Parameter. */
   186                     UNS8 TestSlave_highestSubIndex_obj1800 = 5; // number of subindex - 1
   167                     UNS8 TestSlave_highestSubIndex_obj1800 = 5; /* number of subindex - 1*/
   187                     UNS32 TestSlave_obj1800_COB_ID_used_by_PDO = 0x182;	// 386
   168                     UNS32 TestSlave_obj1800_COB_ID_used_by_PDO = 0x182;	/* 386 */
   188                     UNS8 TestSlave_obj1800_Transmission_Type = 0x1;	// 1
   169                     UNS8 TestSlave_obj1800_Transmission_Type = 0x1;	/* 1 */
   189                     UNS16 TestSlave_obj1800_Inhibit_Time = 0x0;	// 0
   170                     UNS16 TestSlave_obj1800_Inhibit_Time = 0x0;	/* 0 */
   190                     UNS16 TestSlave_obj1800_Compatibility_Entry = 0x0;	// 0
   171                     UNS16 TestSlave_obj1800_Compatibility_Entry = 0x0;	/* 0 */
   191                     UNS16 TestSlave_obj1800_Event_Timer = 0x0;	// 0
   172                     UNS16 TestSlave_obj1800_Event_Timer = 0x0;	/* 0 */
   192                     subindex TestSlave_Index1800[] = 
   173                     subindex TestSlave_Index1800[] = 
   193                      {
   174                      {
   194                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1800 },
   175                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1800 },
   195                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1800_COB_ID_used_by_PDO },
   176                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1800_COB_ID_used_by_PDO },
   196                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1800_Transmission_Type },
   177                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1800_Transmission_Type },
   198                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Compatibility_Entry },
   179                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Compatibility_Entry },
   199                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Event_Timer }
   180                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Event_Timer }
   200                      };
   181                      };
   201 
   182 
   202 /* index 0x1801 :   Transmit PDO 2 Parameter. */
   183 /* index 0x1801 :   Transmit PDO 2 Parameter. */
   203                     UNS8 TestSlave_highestSubIndex_obj1801 = 5; // number of subindex - 1
   184                     UNS8 TestSlave_highestSubIndex_obj1801 = 5; /* number of subindex - 1*/
   204                     UNS32 TestSlave_obj1801_COB_ID_used_by_PDO = 0x282;	// 642
   185                     UNS32 TestSlave_obj1801_COB_ID_used_by_PDO = 0x282;	/* 642 */
   205                     UNS8 TestSlave_obj1801_Transmission_Type = 0x1;	// 1
   186                     UNS8 TestSlave_obj1801_Transmission_Type = 0x1;	/* 1 */
   206                     UNS16 TestSlave_obj1801_Inhibit_Time = 0x0;	// 0
   187                     UNS16 TestSlave_obj1801_Inhibit_Time = 0x0;	/* 0 */
   207                     UNS16 TestSlave_obj1801_Compatibility_Entry = 0x0;	// 0
   188                     UNS16 TestSlave_obj1801_Compatibility_Entry = 0x0;	/* 0 */
   208                     UNS16 TestSlave_obj1801_Event_Timer = 0x0;	// 0
   189                     UNS16 TestSlave_obj1801_Event_Timer = 0x0;	/* 0 */
   209                     subindex TestSlave_Index1801[] = 
   190                     subindex TestSlave_Index1801[] = 
   210                      {
   191                      {
   211                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1801 },
   192                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1801 },
   212                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1801_COB_ID_used_by_PDO },
   193                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1801_COB_ID_used_by_PDO },
   213                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1801_Transmission_Type },
   194                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1801_Transmission_Type },
   215                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Compatibility_Entry },
   196                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Compatibility_Entry },
   216                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Event_Timer }
   197                        { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Event_Timer }
   217                      };
   198                      };
   218 
   199 
   219 /* index 0x1A00 :   Transmit PDO 1 Mapping. */
   200 /* index 0x1A00 :   Transmit PDO 1 Mapping. */
   220                     UNS8 TestSlave_highestSubIndex_obj1A00 = 2; // number of subindex - 1
   201                     UNS8 TestSlave_highestSubIndex_obj1A00 = 2; /* number of subindex - 1*/
   221                     UNS32 TestSlave_obj1A00[] = 
   202                     UNS32 TestSlave_obj1A00[] = 
   222                     {
   203                     {
   223                       0x20000008,	// 536870920
   204                       0x20000008,	/* 536870920 */
   224                       0x20010008	// 536936456
   205                       0x20010008	/* 536936456 */
   225                     };
   206                     };
   226                     subindex TestSlave_Index1A00[] = 
   207                     subindex TestSlave_Index1A00[] = 
   227                      {
   208                      {
   228                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A00 },
   209                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A00 },
   229                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[0] },
   210                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[0] },
   230                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[1] }
   211                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[1] }
   231                      };
   212                      };
   232 
   213 
   233 /* index 0x1A01 :   Transmit PDO 2 Mapping. */
   214 /* index 0x1A01 :   Transmit PDO 2 Mapping. */
   234                     UNS8 TestSlave_highestSubIndex_obj1A01 = 2; // number of subindex - 1
   215                     UNS8 TestSlave_highestSubIndex_obj1A01 = 2; /* number of subindex - 1*/
   235                     UNS32 TestSlave_obj1A01[] = 
   216                     UNS32 TestSlave_obj1A01[] = 
   236                     {
   217                     {
   237                       0x20020008,	// 537001992
   218                       0x20020008,	/* 537001992 */
   238                       0x20030008	// 537067528
   219                       0x20030008	/* 537067528 */
   239                     };
   220                     };
   240                     subindex TestSlave_Index1A01[] = 
   221                     subindex TestSlave_Index1A01[] = 
   241                      {
   222                      {
   242                        { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A01 },
   223                        { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A01 },
   243                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A01[0] },
   224                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A01[0] },
   244                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A01[1] }
   225                        { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A01[1] }
   245                      };
   226                      };
   246 
   227 
   247 /* index 0x2000 :   Mapped variable SlaveMap1 */
   228 /* index 0x2000 :   Mapped variable SlaveMap1 */
   317 	}
   298 	}
   318 	*errorCode = OD_SUCCESSFUL;
   299 	*errorCode = OD_SUCCESSFUL;
   319 	return &TestSlave_objdict[i];
   300 	return &TestSlave_objdict[i];
   320 }
   301 }
   321 
   302 
   322 // To count at which received SYNC a PDO must be sent.
   303 /* To count at which received SYNC a PDO must be sent.
   323 // Even if no pdoTransmit are defined, at least one entry is computed
   304  * Even if no pdoTransmit are defined, at least one entry is computed
   324 // for compilations issues.
   305  * for compilations issues.
       
   306  */
   325 UNS8 TestSlave_count_sync[2] = {0,};
   307 UNS8 TestSlave_count_sync[2] = {0,};
   326 
   308 
   327 quick_index TestSlave_firstIndex = {
   309 quick_index TestSlave_firstIndex = {
   328   SDO_SVR : 8,
   310   8, /* SDO_SVR */
   329   SDO_CLT : 0,
   311   0, /* SDO_CLT */
   330   PDO_RCV : 0,
   312   0, /* PDO_RCV */
   331   PDO_RCV_MAP : 0,
   313   0, /* PDO_RCV_MAP */
   332   PDO_TRS : 9,
   314   9, /* PDO_TRS */
   333   PDO_TRS_MAP : 11
   315   11 /* PDO_TRS_MAP */
   334 };
   316 };
   335 
   317 
   336 quick_index TestSlave_lastIndex = {
   318 quick_index TestSlave_lastIndex = {
   337   SDO_SVR : 8,
   319   8, /* SDO_SVR */
   338   SDO_CLT : 0,
   320   0, /* SDO_CLT */
   339   PDO_RCV : 0,
   321   0, /* PDO_RCV */
   340   PDO_RCV_MAP : 0,
   322   0, /* PDO_RCV_MAP */
   341   PDO_TRS : 10,
   323   10, /* PDO_TRS */
   342   PDO_TRS_MAP : 12
   324   12 /* PDO_TRS_MAP */
   343 };
   325 };
   344 
   326 
   345 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); 
   327 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); 
   346 
   328 
   347 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave);
   329 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave);