64 subindex TestSlave_Index1001[] = |
64 subindex TestSlave_Index1001[] = |
65 { |
65 { |
66 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_obj1001 } |
66 { RO, uint8, sizeof (UNS8), (void*)&TestSlave_obj1001 } |
67 }; |
67 }; |
68 |
68 |
|
69 /* index 0x1003 : Pre-defined Error Field. */ |
|
70 UNS8 TestSlave_highestSubIndex_obj1003 = 8; /* number of subindex - 1*/ |
|
71 UNS32 TestSlave_obj1003[] = |
|
72 { |
|
73 0x0, /* 0 */ |
|
74 0x0, /* 0 */ |
|
75 0x0, /* 0 */ |
|
76 0x0, /* 0 */ |
|
77 0x0, /* 0 */ |
|
78 0x0, /* 0 */ |
|
79 0x0, /* 0 */ |
|
80 0x0 /* 0 */ |
|
81 }; |
|
82 ODCallback_t TestSlave_Index1003_callbacks[] = |
|
83 { |
|
84 NULL, |
|
85 NULL, |
|
86 NULL, |
|
87 NULL, |
|
88 NULL, |
|
89 NULL, |
|
90 NULL, |
|
91 NULL, |
|
92 NULL, |
|
93 }; |
|
94 subindex TestSlave_Index1003[] = |
|
95 { |
|
96 { RW, uint8, sizeof (UNS8), (void*)&TestSlave_highestSubIndex_obj1003 }, |
|
97 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[0] }, |
|
98 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[1] }, |
|
99 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[2] }, |
|
100 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[3] }, |
|
101 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[4] }, |
|
102 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[5] }, |
|
103 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[6] }, |
|
104 { RO, uint32, sizeof (UNS32), (void*)&TestSlave_obj1003[7] } |
|
105 }; |
|
106 |
69 /* index 0x1005 : SYNC COB ID. */ |
107 /* index 0x1005 : SYNC COB ID. */ |
70 UNS32 TestSlave_obj1005 = 0x80; /* 128 */ |
108 UNS32 TestSlave_obj1005 = 0x80; /* 128 */ |
71 ODCallback_t TestSlave_Index1005_callbacks[] = |
109 ODCallback_t TestSlave_Index1005_callbacks[] = |
72 { |
110 { |
73 NULL, |
111 NULL, |
463 |
501 |
464 const indextable TestSlave_objdict[] = |
502 const indextable TestSlave_objdict[] = |
465 { |
503 { |
466 { (subindex*)TestSlave_Index1000,sizeof(TestSlave_Index1000)/sizeof(TestSlave_Index1000[0]), 0x1000}, |
504 { (subindex*)TestSlave_Index1000,sizeof(TestSlave_Index1000)/sizeof(TestSlave_Index1000[0]), 0x1000}, |
467 { (subindex*)TestSlave_Index1001,sizeof(TestSlave_Index1001)/sizeof(TestSlave_Index1001[0]), 0x1001}, |
505 { (subindex*)TestSlave_Index1001,sizeof(TestSlave_Index1001)/sizeof(TestSlave_Index1001[0]), 0x1001}, |
|
506 { (subindex*)TestSlave_Index1003,sizeof(TestSlave_Index1003)/sizeof(TestSlave_Index1003[0]), 0x1003}, |
468 { (subindex*)TestSlave_Index1005,sizeof(TestSlave_Index1005)/sizeof(TestSlave_Index1005[0]), 0x1005}, |
507 { (subindex*)TestSlave_Index1005,sizeof(TestSlave_Index1005)/sizeof(TestSlave_Index1005[0]), 0x1005}, |
469 { (subindex*)TestSlave_Index1006,sizeof(TestSlave_Index1006)/sizeof(TestSlave_Index1006[0]), 0x1006}, |
508 { (subindex*)TestSlave_Index1006,sizeof(TestSlave_Index1006)/sizeof(TestSlave_Index1006[0]), 0x1006}, |
470 { (subindex*)TestSlave_Index1010,sizeof(TestSlave_Index1010)/sizeof(TestSlave_Index1010[0]), 0x1010}, |
509 { (subindex*)TestSlave_Index1010,sizeof(TestSlave_Index1010)/sizeof(TestSlave_Index1010[0]), 0x1010}, |
471 { (subindex*)TestSlave_Index1011,sizeof(TestSlave_Index1011)/sizeof(TestSlave_Index1011[0]), 0x1011}, |
510 { (subindex*)TestSlave_Index1011,sizeof(TestSlave_Index1011)/sizeof(TestSlave_Index1011[0]), 0x1011}, |
472 { (subindex*)TestSlave_Index1017,sizeof(TestSlave_Index1017)/sizeof(TestSlave_Index1017[0]), 0x1017}, |
511 { (subindex*)TestSlave_Index1017,sizeof(TestSlave_Index1017)/sizeof(TestSlave_Index1017[0]), 0x1017}, |
502 int i; |
541 int i; |
503 *callbacks = NULL; |
542 *callbacks = NULL; |
504 switch(wIndex){ |
543 switch(wIndex){ |
505 case 0x1000: i = 0;break; |
544 case 0x1000: i = 0;break; |
506 case 0x1001: i = 1;break; |
545 case 0x1001: i = 1;break; |
507 case 0x1005: i = 2;*callbacks = TestSlave_Index1005_callbacks; break; |
546 case 0x1003: i = 2;*callbacks = TestSlave_Index1003_callbacks; break; |
508 case 0x1006: i = 3;*callbacks = TestSlave_Index1006_callbacks; break; |
547 case 0x1005: i = 3;*callbacks = TestSlave_Index1005_callbacks; break; |
509 case 0x1010: i = 4;*callbacks = TestSlave_Index1010_callbacks; break; |
548 case 0x1006: i = 4;*callbacks = TestSlave_Index1006_callbacks; break; |
510 case 0x1011: i = 5;*callbacks = TestSlave_Index1011_callbacks; break; |
549 case 0x1010: i = 5;*callbacks = TestSlave_Index1010_callbacks; break; |
511 case 0x1017: i = 6;*callbacks = TestSlave_Index1017_callbacks; break; |
550 case 0x1011: i = 6;*callbacks = TestSlave_Index1011_callbacks; break; |
512 case 0x1018: i = 7;break; |
551 case 0x1017: i = 7;*callbacks = TestSlave_Index1017_callbacks; break; |
513 case 0x1200: i = 8;break; |
552 case 0x1018: i = 8;break; |
514 case 0x1800: i = 9;*callbacks = TestSlave_Index1800_callbacks; break; |
553 case 0x1200: i = 9;break; |
515 case 0x1801: i = 10;*callbacks = TestSlave_Index1801_callbacks; break; |
554 case 0x1800: i = 10;*callbacks = TestSlave_Index1800_callbacks; break; |
516 case 0x1802: i = 11;*callbacks = TestSlave_Index1802_callbacks; break; |
555 case 0x1801: i = 11;*callbacks = TestSlave_Index1801_callbacks; break; |
517 case 0x1803: i = 12;*callbacks = TestSlave_Index1803_callbacks; break; |
556 case 0x1802: i = 12;*callbacks = TestSlave_Index1802_callbacks; break; |
518 case 0x1804: i = 13;*callbacks = TestSlave_Index1804_callbacks; break; |
557 case 0x1803: i = 13;*callbacks = TestSlave_Index1803_callbacks; break; |
519 case 0x1A00: i = 14;break; |
558 case 0x1804: i = 14;*callbacks = TestSlave_Index1804_callbacks; break; |
520 case 0x1A01: i = 15;break; |
559 case 0x1A00: i = 15;break; |
521 case 0x1A02: i = 16;break; |
560 case 0x1A01: i = 16;break; |
522 case 0x1A03: i = 17;break; |
561 case 0x1A02: i = 17;break; |
523 case 0x1A04: i = 18;break; |
562 case 0x1A03: i = 18;break; |
524 case 0x2000: i = 19;break; |
563 case 0x1A04: i = 19;break; |
525 case 0x2001: i = 20;break; |
564 case 0x2000: i = 20;break; |
526 case 0x2002: i = 21;break; |
565 case 0x2001: i = 21;break; |
527 case 0x2003: i = 22;break; |
566 case 0x2002: i = 22;break; |
528 case 0x2004: i = 23;break; |
567 case 0x2003: i = 23;break; |
529 case 0x2005: i = 24;break; |
568 case 0x2004: i = 24;break; |
530 case 0x2006: i = 25;break; |
569 case 0x2005: i = 25;break; |
531 case 0x2007: i = 26;break; |
570 case 0x2006: i = 26;break; |
532 case 0x2008: i = 27;break; |
571 case 0x2007: i = 27;break; |
533 case 0x2009: i = 28;break; |
572 case 0x2008: i = 28;break; |
534 case 0x200A: i = 29;break; |
573 case 0x2009: i = 29;break; |
535 case 0x200B: i = 30;break; |
574 case 0x200A: i = 30;break; |
536 case 0x200C: i = 31;break; |
575 case 0x200B: i = 31;break; |
|
576 case 0x200C: i = 32;break; |
537 default: |
577 default: |
538 *errorCode = OD_NO_SUCH_OBJECT; |
578 *errorCode = OD_NO_SUCH_OBJECT; |
539 return NULL; |
579 return NULL; |
540 } |
580 } |
541 *errorCode = OD_SUCCESSFUL; |
581 *errorCode = OD_SUCCESSFUL; |
548 * for compilations issues. |
588 * for compilations issues. |
549 */ |
589 */ |
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}; |
590 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}; |
551 |
591 |
552 quick_index TestSlave_firstIndex = { |
592 quick_index TestSlave_firstIndex = { |
553 8, /* SDO_SVR */ |
593 9, /* SDO_SVR */ |
554 0, /* SDO_CLT */ |
594 0, /* SDO_CLT */ |
555 0, /* PDO_RCV */ |
595 0, /* PDO_RCV */ |
556 0, /* PDO_RCV_MAP */ |
596 0, /* PDO_RCV_MAP */ |
557 9, /* PDO_TRS */ |
597 10, /* PDO_TRS */ |
558 14 /* PDO_TRS_MAP */ |
598 15 /* PDO_TRS_MAP */ |
559 }; |
599 }; |
560 |
600 |
561 quick_index TestSlave_lastIndex = { |
601 quick_index TestSlave_lastIndex = { |
562 8, /* SDO_SVR */ |
602 9, /* SDO_SVR */ |
563 0, /* SDO_CLT */ |
603 0, /* SDO_CLT */ |
564 0, /* PDO_RCV */ |
604 0, /* PDO_RCV */ |
565 0, /* PDO_RCV_MAP */ |
605 0, /* PDO_RCV_MAP */ |
566 13, /* PDO_TRS */ |
606 14, /* PDO_TRS */ |
567 18 /* PDO_TRS_MAP */ |
607 19 /* PDO_TRS_MAP */ |
568 }; |
608 }; |
569 |
609 |
570 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); |
610 UNS16 TestSlave_ObjdictSize = sizeof(TestSlave_objdict)/sizeof(TestSlave_objdict[0]); |
571 |
611 |
572 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave); |
612 CO_Data TestSlave_Data = CANOPEN_NODE_DATA_INITIALIZER(TestSlave); |