nico@215: nico@215:
nico@215:00001 nico@215: 00002 /* File generated by gen_cfile.py. Should not be modified. */ nico@215: 00003 nico@215: 00004 #include "TestSlave.h" nico@215: 00005 nico@215: 00006 /**************************************************************************/ nico@215: 00007 /* Declaration of the mapped variables */ nico@215: 00008 /**************************************************************************/ nico@215: 00009 UNS8 SlaveMap1 = 0x0; /* Mapped at index 0x2000, subindex 0x00 */ nico@215: 00010 UNS8 SlaveMap2 = 0x0; /* Mapped at index 0x2001, subindex 0x00 */ nico@215: 00011 UNS8 SlaveMap3 = 0x0; /* Mapped at index 0x2002, subindex 0x00 */ nico@215: 00012 UNS8 SlaveMap4 = 0x0; /* Mapped at index 0x2003, subindex 0x00 */ nico@215: 00013 UNS8 SlaveMap5 = 0x0; /* Mapped at index 0x2004, subindex 0x00 */ nico@215: 00014 UNS8 SlaveMap6 = 0x0; /* Mapped at index 0x2005, subindex 0x00 */ nico@215: 00015 UNS8 SlaveMap7 = 0x0; /* Mapped at index 0x2006, subindex 0x00 */ nico@215: 00016 UNS8 SlaveMap8 = 0x0; /* Mapped at index 0x2007, subindex 0x00 */ nico@215: 00017 UNS8 SlaveMap9 = 0x0; /* Mapped at index 0x2008, subindex 0x00 */ nico@215: 00018 UNS32 SlaveMap10 = 0x0; /* Mapped at index 0x2009, subindex 0x00 */ nico@215: 00019 UNS16 SlaveMap11 = 0x0; /* Mapped at index 0x200A, subindex 0x00 */ nico@215: 00020 nico@215: 00021 /**************************************************************************/ nico@215: 00022 /* Declaration of the value range types */ nico@215: 00023 /**************************************************************************/ nico@215: 00024 nico@215: 00025 UNS32 TestSlave_valueRangeTest (UNS8 typeValue, void * value) nico@215: 00026 { nico@215: 00027 switch (typeValue) { nico@215: 00028 } nico@215: 00029 return 0; nico@215: 00030 } nico@215: 00031 nico@215: 00032 /**************************************************************************/ nico@215: 00033 /* The node id */ nico@215: 00034 /**************************************************************************/ nico@215: 00035 /* node_id default value.*/ nico@215: 00036 UNS8 TestSlave_bDeviceNodeId = 0x00; nico@215: 00037 nico@215: 00038 /**************************************************************************/ nico@215: 00039 /* Array of message processing information */ nico@215: 00040 nico@215: 00041 const UNS8 TestSlave_iam_a_slave = 1; nico@215: 00042 nico@215: 00043 TIMER_HANDLE TestSlave_heartBeatTimers[1]; nico@215: 00044 nico@215: 00045 /* nico@215: 00046 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ nico@215: 00047 nico@215: 00048 OBJECT DICTIONARY nico@215: 00049 nico@215: 00050 $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$ nico@215: 00051 */ nico@215: 00052 nico@215: 00053 /* index 0x1000 : Device Type. */ nico@215: 00054 UNS32 TestSlave_obj1000 = 0x12D; /* 301 */ nico@215: 00055 subindex TestSlave_Index1000[] = nico@215: 00056 { nico@215: 00057 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1000 } nico@215: 00058 }; nico@215: 00059 nico@215: 00060 /* index 0x1001 : Error Register. */ nico@215: 00061 UNS8 TestSlave_obj1001 = 0x0; /* 0 */ nico@215: 00062 subindex TestSlave_Index1001[] = nico@215: 00063 { nico@215: 00064 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_obj1001 } nico@215: 00065 }; nico@215: 00066 nico@215: 00067 /* index 0x1005 : SYNC COB ID. */ nico@215: 00068 UNS32 TestSlave_obj1005 = 0x80; /* 128 */ nico@215: 00069 ODCallback_t TestSlave_Index1005_callbacks[] = nico@215: 00070 { nico@215: 00071 NULL, nico@215: 00072 }; nico@215: 00073 subindex TestSlave_Index1005[] = nico@215: 00074 { nico@215: 00075 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1005 } nico@215: 00076 }; nico@215: 00077 nico@215: 00078 /* index 0x1006 : Communication / Cycle Period. */ nico@215: 00079 UNS32 TestSlave_obj1006 = 0x0; /* 0 */ nico@215: 00080 ODCallback_t TestSlave_Index1006_callbacks[] = nico@215: 00081 { nico@215: 00082 NULL, nico@215: 00083 }; nico@215: 00084 subindex TestSlave_Index1006[] = nico@215: 00085 { nico@215: 00086 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1006 } nico@215: 00087 }; nico@215: 00088 nico@215: 00089 /* index 0x1010 : Store parameters. */ nico@215: 00090 UNS8 TestSlave_highestSubIndex_obj1010 = 4; /* number of subindex - 1*/ nico@215: 00091 UNS32 TestSlave_obj1010_Save_All_Parameters = 0x0; /* 0 */ nico@215: 00092 UNS32 TestSlave_obj1010_Save_Communication_Parameters = 0x0; /* 0 */ nico@215: 00093 UNS32 TestSlave_obj1010_Save_Application_Parameters = 0x0; /* 0 */ nico@215: 00094 UNS32 TestSlave_obj1010_Save_Manufacturer_Parameters = 0x0; /* 0 */ nico@215: 00095 ODCallback_t TestSlave_Index1010_callbacks[] = nico@215: 00096 { nico@215: 00097 NULL, nico@215: 00098 NULL, nico@215: 00099 NULL, nico@215: 00100 NULL, nico@215: 00101 NULL, nico@215: 00102 }; nico@215: 00103 subindex TestSlave_Index1010[] = nico@215: 00104 { nico@215: 00105 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1010 }, nico@215: 00106 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_All_Parameters }, nico@215: 00107 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Communication_Parameters }, nico@215: 00108 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Application_Parameters }, nico@215: 00109 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1010_Save_Manufacturer_Parameters } nico@215: 00110 }; nico@215: 00111 nico@215: 00112 /* index 0x1011 : Restore Default Parameters. */ nico@215: 00113 UNS8 TestSlave_highestSubIndex_obj1011 = 4; /* number of subindex - 1*/ nico@215: 00114 UNS32 TestSlave_obj1011_Restore_All_Default_Parameters = 0x0; /* 0 */ nico@215: 00115 UNS32 TestSlave_obj1011_Restore_Communication_Default_Parameters = 0x0; /* 0 */ nico@215: 00116 UNS32 TestSlave_obj1011_Restore_Application_Default_Parameters = 0x0; /* 0 */ nico@215: 00117 UNS32 TestSlave_obj1011_Restore_Manufacturer_Default_Parameters = 0x0; /* 0 */ nico@215: 00118 ODCallback_t TestSlave_Index1011_callbacks[] = nico@215: 00119 { nico@215: 00120 NULL, nico@215: 00121 NULL, nico@215: 00122 NULL, nico@215: 00123 NULL, nico@215: 00124 NULL, nico@215: 00125 }; nico@215: 00126 subindex TestSlave_Index1011[] = nico@215: 00127 { nico@215: 00128 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1011 }, nico@215: 00129 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_All_Default_Parameters }, nico@215: 00130 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_Communication_Default_Parameters }, nico@215: 00131 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_Application_Default_Parameters }, nico@215: 00132 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1011_Restore_Manufacturer_Default_Parameters } nico@215: 00133 }; nico@215: 00134 nico@215: 00135 /* index 0x1016 : Consumer Heartbeat Time */ nico@215: 00136 UNS8 TestSlave_highestSubIndex_obj1016 = 0; nico@215: 00137 UNS32 TestSlave_obj1016[]={0}; nico@215: 00138 nico@215: 00139 /* index 0x1017 : Producer Heartbeat Time. */ nico@215: 00140 UNS16 TestSlave_obj1017 = 0x0; /* 0 */ nico@215: 00141 ODCallback_t TestSlave_Index1017_callbacks[] = nico@215: 00142 { nico@215: 00143 NULL, nico@215: 00144 }; nico@215: 00145 subindex TestSlave_Index1017[] = nico@215: 00146 { nico@215: 00147 { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1017 } nico@215: 00148 }; nico@215: 00149 nico@215: 00150 /* index 0x1018 : Identity. */ nico@215: 00151 UNS8 TestSlave_highestSubIndex_obj1018 = 4; /* number of subindex - 1*/ nico@215: 00152 UNS32 TestSlave_obj1018_Vendor_ID = 0x0; /* 0 */ nico@215: 00153 UNS32 TestSlave_obj1018_Product_Code = 0x0; /* 0 */ nico@215: 00154 UNS32 TestSlave_obj1018_Revision_Number = 0x0; /* 0 */ nico@215: 00155 UNS32 TestSlave_obj1018_Serial_Number = 0x0; /* 0 */ nico@215: 00156 subindex TestSlave_Index1018[] = nico@215: 00157 { nico@215: 00158 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1018 }, nico@215: 00159 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Vendor_ID }, nico@215: 00160 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Product_Code }, nico@215: 00161 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Revision_Number }, nico@215: 00162 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1018_Serial_Number } nico@215: 00163 }; nico@215: 00164 nico@215: 00165 /* index 0x1200 : Server SDO Parameter. */ nico@215: 00166 UNS8 TestSlave_highestSubIndex_obj1200 = 2; /* number of subindex - 1*/ nico@215: 00167 UNS32 TestSlave_obj1200_COB_ID_Client_to_Server_Receive_SDO = 0x601; /* 1537 */ nico@215: 00168 UNS32 TestSlave_obj1200_COB_ID_Server_to_Client_Transmit_SDO = 0x581; /* 1409 */ nico@215: 00169 subindex TestSlave_Index1200[] = nico@215: 00170 { nico@215: 00171 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1200 }, nico@215: 00172 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1200_COB_ID_Client_to_Server_Receive_SDO }, nico@215: 00173 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1200_COB_ID_Server_to_Client_Transmit_SDO } nico@215: 00174 }; nico@215: 00175 nico@215: 00176 /* index 0x1800 : Transmit PDO 1 Parameter. */ nico@215: 00177 UNS8 TestSlave_highestSubIndex_obj1800 = 5; /* number of subindex - 1*/ nico@215: 00178 UNS32 TestSlave_obj1800_COB_ID_used_by_PDO = 0x182; /* 386 */ nico@215: 00179 UNS8 TestSlave_obj1800_Transmission_Type = 0x0; /* 0 */ nico@215: 00180 UNS16 TestSlave_obj1800_Inhibit_Time = 0x0; /* 0 */ nico@215: 00181 UNS8 TestSlave_obj1800_Compatibility_Entry = 0x0; /* 0 */ nico@215: 00182 UNS16 TestSlave_obj1800_Event_Timer = 0x0; /* 0 */ nico@215: 00183 subindex TestSlave_Index1800[] = nico@215: 00184 { nico@215: 00185 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1800 }, nico@215: 00186 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1800_COB_ID_used_by_PDO }, nico@215: 00187 { RW|TO_BE_SAVE, uint8, sizeof (UNS8), (void*)&TestSlave_obj1800_Transmission_Type }, nico@215: 00188 { RW|TO_BE_SAVE, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Inhibit_Time }, nico@215: 00189 { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1800_Compatibility_Entry }, nico@215: 00190 { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1800_Event_Timer } nico@215: 00191 }; nico@215: 00192 nico@215: 00193 /* index 0x1801 : Transmit PDO 2 Parameter. */ nico@215: 00194 UNS8 TestSlave_highestSubIndex_obj1801 = 5; /* number of subindex - 1*/ nico@215: 00195 UNS32 TestSlave_obj1801_COB_ID_used_by_PDO = 0x0; /* 0 */ nico@215: 00196 UNS8 TestSlave_obj1801_Transmission_Type = 0x0; /* 0 */ nico@215: 00197 UNS16 TestSlave_obj1801_Inhibit_Time = 0x0; /* 0 */ nico@215: 00198 UNS8 TestSlave_obj1801_Compatibility_Entry = 0x0; /* 0 */ nico@215: 00199 UNS16 TestSlave_obj1801_Event_Timer = 0x0; /* 0 */ nico@215: 00200 subindex TestSlave_Index1801[] = nico@215: 00201 { nico@215: 00202 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1801 }, nico@215: 00203 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1801_COB_ID_used_by_PDO }, nico@215: 00204 { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1801_Transmission_Type }, nico@215: 00205 { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Inhibit_Time }, nico@215: 00206 { RW, uint8, sizeof (UNS8), (void*)&TestSlave_obj1801_Compatibility_Entry }, nico@215: 00207 { RW, uint16, sizeof (UNS16), (void*)&TestSlave_obj1801_Event_Timer } nico@215: 00208 }; nico@215: 00209 nico@215: 00210 /* index 0x1A00 : Transmit PDO 1 Mapping. */ nico@215: 00211 UNS8 TestSlave_highestSubIndex_obj1A00 = 10; /* number of subindex - 1*/ nico@215: 00212 UNS32 TestSlave_obj1A00[] = nico@215: 00213 { nico@215: 00214 0x20000001, /* 536870913 */ nico@215: 00215 0x20010001, /* 536936449 */ nico@215: 00216 0x20020001, /* 537001985 */ nico@215: 00217 0x20030001, /* 537067521 */ nico@215: 00218 0x20040001, /* 537133057 */ nico@215: 00219 0x20050001, /* 537198593 */ nico@215: 00220 0x20060001, /* 537264129 */ nico@215: 00221 0x20070001, /* 537329665 */ nico@215: 00222 0x20080008, /* 537395208 */ nico@215: 00223 0x20090020 /* 537460768 */ nico@215: 00224 }; nico@215: 00225 subindex TestSlave_Index1A00[] = nico@215: 00226 { nico@215: 00227 { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A00 }, nico@215: 00228 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[0] }, nico@215: 00229 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[1] }, nico@215: 00230 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[2] }, nico@215: 00231 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[3] }, nico@215: 00232 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[4] }, nico@215: 00233 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[5] }, nico@215: 00234 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[6] }, nico@215: 00235 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[7] }, nico@215: 00236 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[8] }, nico@215: 00237 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A00[9] } nico@215: 00238 }; nico@215: 00239 nico@215: 00240 /* index 0x1A01 : Transmit PDO 2 Mapping. */ nico@215: 00241 UNS8 TestSlave_highestSubIndex_obj1A01 = 1; /* number of subindex - 1*/ nico@215: 00242 UNS32 TestSlave_obj1A01[] = nico@215: 00243 { nico@215: 00244 0x200A0010 /* 537526288 */ nico@215: 00245 }; nico@215: 00246 subindex TestSlave_Index1A01[] = nico@215: 00247 { nico@215: 00248 { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1A01 }, nico@215: 00249 { RW, uint32, sizeof (UNS32), (void*)&TestSlave_obj1A01[0] } nico@215: 00250 }; nico@215: 00251 nico@215: 00252 /* index 0x2000 : Mapped variable SlaveMap1 */ nico@215: 00253 subindex TestSlave_Index2000[] = nico@215: 00254 { nico@215: 00255 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap1 } nico@215: 00256 }; nico@215: 00257 nico@215: 00258 /* index 0x2001 : Mapped variable SlaveMap2 */ nico@215: 00259 subindex TestSlave_Index2001[] = nico@215: 00260 { nico@215: 00261 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap2 } nico@215: 00262 }; nico@215: 00263 nico@215: 00264 /* index 0x2002 : Mapped variable SlaveMap3 */ nico@215: 00265 subindex TestSlave_Index2002[] = nico@215: 00266 { nico@215: 00267 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap3 } nico@215: 00268 }; nico@215: 00269 nico@215: 00270 /* index 0x2003 : Mapped variable SlaveMap4 */ nico@215: 00271 subindex TestSlave_Index2003[] = nico@215: 00272 { nico@215: 00273 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap4 } nico@215: 00274 }; nico@215: 00275 nico@215: 00276 /* index 0x2004 : Mapped variable SlaveMap5 */ nico@215: 00277 subindex TestSlave_Index2004[] = nico@215: 00278 { nico@215: 00279 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap5 } nico@215: 00280 }; nico@215: 00281 nico@215: 00282 /* index 0x2005 : Mapped variable SlaveMap6 */ nico@215: 00283 subindex TestSlave_Index2005[] = nico@215: 00284 { nico@215: 00285 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap6 } nico@215: 00286 }; nico@215: 00287 nico@215: 00288 /* index 0x2006 : Mapped variable SlaveMap7 */ nico@215: 00289 subindex TestSlave_Index2006[] = nico@215: 00290 { nico@215: 00291 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap7 } nico@215: 00292 }; nico@215: 00293 nico@215: 00294 /* index 0x2007 : Mapped variable SlaveMap8 */ nico@215: 00295 subindex TestSlave_Index2007[] = nico@215: 00296 { nico@215: 00297 { RW, boolean, sizeof (UNS8), (void*)&SlaveMap8 } nico@215: 00298 }; nico@215: 00299 nico@215: 00300 /* index 0x2008 : Mapped variable SlaveMap9 */ nico@215: 00301 subindex TestSlave_Index2008[] = nico@215: 00302 { nico@215: 00303 { RW, uint8, sizeof (UNS8), (void*)&SlaveMap9 } nico@215: 00304 }; nico@215: 00305 nico@215: 00306 /* index 0x2009 : Mapped variable SlaveMap10 */ nico@215: 00307 subindex TestSlave_Index2009[] = nico@215: 00308 { nico@215: 00309 { RW, uint32, sizeof (UNS32), (void*)&SlaveMap10 } nico@215: 00310 }; nico@215: 00311 nico@215: 00312 /* index 0x200A : Mapped variable SlaveMap11 */ nico@215: 00313 subindex TestSlave_Index200A[] = nico@215: 00314 { nico@215: 00315 { RW, uint16, sizeof (UNS16), (void*)&SlaveMap11 } nico@215: 00316 }; nico@215: 00317 nico@215: 00318 const indextable TestSlave_objdict[] = nico@215: 00319 { nico@215: 00320 { (subindex*)TestSlave_Index1000,sizeof(TestSlave_Index1000)/sizeof(TestSlave_Index1000[0]), 0x1000}, nico@215: 00321 { (subindex*)TestSlave_Index1001,sizeof(TestSlave_Index1001)/sizeof(TestSlave_Index1001[0]), 0x1001}, nico@215: 00322 { (subindex*)TestSlave_Index1005,sizeof(TestSlave_Index1005)/sizeof(TestSlave_Index1005[0]), 0x1005}, nico@215: 00323 { (subindex*)TestSlave_Index1006,sizeof(TestSlave_Index1006)/sizeof(TestSlave_Index1006[0]), 0x1006}, nico@215: 00324 { (subindex*)TestSlave_Index1010,sizeof(TestSlave_Index1010)/sizeof(TestSlave_Index1010[0]), 0x1010}, nico@215: 00325 { (subindex*)TestSlave_Index1011,sizeof(TestSlave_Index1011)/sizeof(TestSlave_Index1011[0]), 0x1011}, nico@215: 00326 { (subindex*)TestSlave_Index1017,sizeof(TestSlave_Index1017)/sizeof(TestSlave_Index1017[0]), 0x1017}, nico@215: 00327 { (subindex*)TestSlave_Index1018,sizeof(TestSlave_Index1018)/sizeof(TestSlave_Index1018[0]), 0x1018}, nico@215: 00328 { (subindex*)TestSlave_Index1200,sizeof(TestSlave_Index1200)/sizeof(TestSlave_Index1200[0]), 0x1200}, nico@215: 00329 { (subindex*)TestSlave_Index1800,sizeof(TestSlave_Index1800)/sizeof(TestSlave_Index1800[0]), 0x1800}, nico@215: 00330 { (subindex*)TestSlave_Index1801,sizeof(TestSlave_Index1801)/sizeof(TestSlave_Index1801[0]), 0x1801}, nico@215: 00331 { (subindex*)TestSlave_Index1A00,sizeof(TestSlave_Index1A00)/sizeof(TestSlave_Index1A00[0]), 0x1A00}, nico@215: 00332 { (subindex*)TestSlave_Index1A01,sizeof(TestSlave_Index1A01)/sizeof(TestSlave_Index1A01[0]), 0x1A01}, nico@215: 00333 { (subindex*)TestSlave_Index2000,sizeof(TestSlave_Index2000)/sizeof(TestSlave_Index2000[0]), 0x2000}, nico@215: 00334 { (subindex*)TestSlave_Index2001,sizeof(TestSlave_Index2001)/sizeof(TestSlave_Index2001[0]), 0x2001}, nico@215: 00335 { (subindex*)TestSlave_Index2002,sizeof(TestSlave_Index2002)/sizeof(TestSlave_Index2002[0]), 0x2002}, nico@215: 00336 { (subindex*)TestSlave_Index2003,sizeof(TestSlave_Index2003)/sizeof(TestSlave_Index2003[0]), 0x2003}, nico@215: 00337 { (subindex*)TestSlave_Index2004,sizeof(TestSlave_Index2004)/sizeof(TestSlave_Index2004[0]), 0x2004}, nico@215: 00338 { (subindex*)TestSlave_Index2005,sizeof(TestSlave_Index2005)/sizeof(TestSlave_Index2005[0]), 0x2005}, nico@215: 00339 { (subindex*)TestSlave_Index2006,sizeof(TestSlave_Index2006)/sizeof(TestSlave_Index2006[0]), 0x2006}, nico@215: 00340 { (subindex*)TestSlave_Index2007,sizeof(TestSlave_Index2007)/sizeof(TestSlave_Index2007[0]), 0x2007}, nico@215: 00341 { (subindex*)TestSlave_Index2008,sizeof(TestSlave_Index2008)/sizeof(TestSlave_Index2008[0]), 0x2008}, nico@215: 00342 { (subindex*)TestSlave_Index2009,sizeof(TestSlave_Index2009)/sizeof(TestSlave_Index2009[0]), 0x2009}, nico@215: 00343 { (subindex*)TestSlave_Index200A,sizeof(TestSlave_Index200A)/sizeof(TestSlave_Index200A[0]), 0x200A}, nico@215: 00344 }; nico@215: 00345 nico@215: 00346 const indextable * TestSlave_scanIndexOD (UNS16 wIndex, UNS32 * errorCode, ODCallback_t **callbacks) nico@215: 00347 { nico@215: 00348 int i; nico@215: 00349 *callbacks = NULL; nico@215: 00350 switch(wIndex){ nico@215: 00351 case 0x1000: i = 0;break; nico@215: 00352 case 0x1001: i = 1;break; nico@215: 00353 case 0x1005: i = 2;*callbacks = TestSlave_Index1005_callbacks; break; nico@215: 00354 case 0x1006: i = 3;*callbacks = TestSlave_Index1006_callbacks; break; nico@215: 00355 case 0x1010: i = 4;*callbacks = TestSlave_Index1010_callbacks; break; nico@215: 00356 case 0x1011: i = 5;*callbacks = TestSlave_Index1011_callbacks; break; nico@215: 00357 case 0x1017: i = 6;*callbacks = TestSlave_Index1017_callbacks; break; nico@215: 00358 case 0x1018: i = 7;break; nico@215: 00359 case 0x1200: i = 8;break; nico@215: 00360 case 0x1800: i = 9;break; nico@215: 00361 case 0x1801: i = 10;break; nico@215: 00362 case 0x1A00: i = 11;break; nico@215: 00363 case 0x1A01: i = 12;break; nico@215: 00364 case 0x2000: i = 13;break; nico@215: 00365 case 0x2001: i = 14;break; nico@215: 00366 case 0x2002: i = 15;break; nico@215: 00367 case 0x2003: i = 16;break; nico@215: 00368 case 0x2004: i = 17;break; nico@215: 00369 case 0x2005: i = 18;break; nico@215: 00370 case 0x2006: i = 19;break; nico@215: 00371 case 0x2007: i = 20;break; nico@215: 00372 case 0x2008: i = 21;break; nico@215: 00373 case 0x2009: i = 22;break; nico@215: 00374 case 0x200A: i = 23;break; nico@215: 00375 default: nico@215: 00376 *errorCode = OD_NO_SUCH_OBJECT; nico@215: 00377 return NULL; nico@215: 00378 } nico@215: 00379 *errorCode = OD_SUCCESSFUL; nico@215: 00380 return &TestSlave_objdict[i]; nico@215: 00381 } nico@215: 00382 nico@215: 00383 /* To count at which received SYNC a PDO must be sent. nico@215: 00384 * Even if no pdoTransmit are defined, at least one entry is computed nico@215: 00385 * for compilations issues. nico@215: 00386 */ nico@215: 00387 UNS8 TestSlave_count_sync[2] = {0,}; nico@215: 00388 nico@215: 00389 quick_index TestSlave_firstIndex = { nico@215: 00390 8, /* SDO_SVR */ nico@215: 00391 0, /* SDO_CLT */ nico@215: 00392 0, /* PDO_RCV */ nico@215: 00393 0, /* PDO_RCV_MAP */ nico@215: 00394 9, /* PDO_TRS */ nico@215: 00395 11 /* PDO_TRS_MAP */ nico@215: 00396 }; nico@215: 00397 nico@215: 00398 quick_index TestSlave_lastIndex = { nico@215: 00399 8, /* SDO_SVR */ nico@215: 00400 0, /* SDO_CLT */ nico@215: 00401 0, /* PDO_RCV */ nico@215: 00402 0, /* PDO_RCV_MAP */ nico@215: 00403 10, /* PDO_TRS */ nico@215: 00404 12 /* PDO_TRS_MAP */ nico@215: 00405 }; nico@215: 00406 nico@215: 00407 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); nico@215: 00408 nico@215: 00409 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave); nico@215: 00410 nico@215: