1 |
#ifndef __guids_h__ |
1 |
#ifndef __guids_h__ |
2 |
#define __guids_h__ |
2 |
#define __guids_h__ |
3 |
|
3 |
|
4 |
#ifdef BOARD |
4 |
#ifdef BOARD |
5 |
// We're included for the target board. Define various structures |
5 |
// We're included for the target board. Define various structures |
6 |
struct GUID { |
6 |
struct GUID { |
7 |
uint32_t Part1; |
7 |
uint32_t Part1; |
8 |
uint16_t Part2; |
8 |
uint16_t Part2; |
9 |
uint16_t Part3; |
9 |
uint16_t Part3; |
10 |
uint8_t Part4[8]; |
10 |
uint8_t Part4[8]; |
11 |
}; |
11 |
}; |
12 |
#endif |
12 |
#endif |
13 |
|
13 |
|
14 |
// These are the only valid values for UniqueID items |
14 |
// These are the only valid values for UniqueID items |
15 |
const uint8_t num0 = 0x00; |
15 |
const uint8_t num0 = 0x00; |
16 |
const uint8_t num1 = 0x01; |
16 |
const uint8_t num1 = 0x01; |
17 |
const uint8_t num2 = 0x03; |
17 |
const uint8_t num2 = 0x03; |
18 |
const uint8_t num3 = 0x07; |
18 |
const uint8_t num3 = 0x07; |
19 |
const uint8_t num4 = 0x0f; |
19 |
const uint8_t num4 = 0x0f; |
20 |
const uint8_t num5 = 0x1f; |
20 |
const uint8_t num5 = 0x1f; |
21 |
const uint8_t num6 = 0x3f; |
21 |
const uint8_t num6 = 0x3f; |
22 |
const uint8_t num7 = 0x7f; |
22 |
const uint8_t num7 = 0x7f; |
23 |
const uint8_t num8 = 0xff; // this value is never used in any valid uniqueID, however it IS used in the unassigned ID |
23 |
const uint8_t num8 = 0xff; // this value is never used in any valid uniqueID, however it IS used in the unassigned ID |
24 |
|
24 |
|
25 |
// Unique IDs |
25 |
// Unique IDs |
26 |
#define UniqueIDUnassigned { \ |
26 |
#define UniqueIDUnassigned { \ |
27 |
num0,num1,num2,num3, \ |
27 |
num0,num1,num2,num3, \ |
28 |
num4,num5,num6,num7, \ |
28 |
num4,num5,num6,num7, \ |
29 |
num8,num7,num6,num5, \ |
29 |
num8,num7,num6,num5, \ |
30 |
num4,num3,num2,num1, \ |
30 |
num4,num3,num2,num1, \ |
31 |
num0,num1,num2,num3, \ |
31 |
num0,num1,num2,num3, \ |
32 |
num4,num5,num6,num7, \ |
32 |
num4,num5,num6,num7, \ |
33 |
num8,num7,num6,num5, \ |
33 |
num8,num7,num6,num5, \ |
34 |
num4,num3,num2,num1, \ |
34 |
num4,num3,num2,num1, \ |
35 |
num0,num1,num2,num3, \ |
35 |
num0,num1,num2,num3, \ |
36 |
num4,num5,num6,num7, \ |
36 |
num4,num5,num6,num7, \ |
37 |
num8,num7,num6,num5, \ |
37 |
num8,num7,num6,num5, \ |
38 |
num4,num3,num2,num1 \ |
38 |
num4,num3,num2,num1 \ |
39 |
} |
39 |
} |
40 |
|
40 |
|
41 |
// Device Class GUIDs |
41 |
// Device Class GUIDs |
42 |
// {00000000-0000-0000-0000-000000000000} |
42 |
// {00000000-0000-0000-0000-000000000000} |
43 |
#define DevClassReserved { 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } } |
43 |
#define DevClassReserved { 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } } |
44 |
// {D8745C7D-71A5-4977-A989-2E1EF853CCB8} |
44 |
// {D8745C7D-71A5-4977-A989-2E1EF853CCB8} |
45 |
#define DevClassUnassigned { 0xd8745c7d, 0x71a5, 0x4977, { 0xa9, 0x89, 0x2e, 0x1e, 0xf8, 0x53, 0xcc, 0xb8 } } |
45 |
#define DevClassUnassigned { 0xd8745c7d, 0x71a5, 0x4977, { 0xa9, 0x89, 0x2e, 0x1e, 0xf8, 0x53, 0xcc, 0xb8 } } |
46 |
// {15D37F46-A4F2-416d-8157-FAB7D1A66BE8} |
46 |
// {15D37F46-A4F2-416d-8157-FAB7D1A66BE8} |
47 |
#define DevClassServoController { 0x15d37f46, 0xa4f2, 0x416d, { 0x81, 0x57, 0xfa, 0xb7, 0xd1, 0xa6, 0x6b, 0xe8 } } |
47 |
#define DevClassServoController { 0x15d37f46, 0xa4f2, 0x416d, { 0x81, 0x57, 0xfa, 0xb7, 0xd1, 0xa6, 0x6b, 0xe8 } } |
48 |
// {D3C8787E-DCE8-445b-B1C7-86C2BF85D144} |
48 |
// {D3C8787E-DCE8-445b-B1C7-86C2BF85D144} |
49 |
#define DevClassHBridge { 0xd3c8787e, 0xdce8, 0x445b, { 0xb1, 0xc7, 0x86, 0xc2, 0xbf, 0x85, 0xd1, 0x44 } } |
49 |
#define DevClassHBridge { 0xd3c8787e, 0xdce8, 0x445b, { 0xb1, 0xc7, 0x86, 0xc2, 0xbf, 0x85, 0xd1, 0x44 } } |
50 |
|
50 |
|
51 |
// Device GUIDs |
51 |
// Device GUIDs |
52 |
// {00000000-0000-0000-0000-000000000000} |
52 |
// {00000000-0000-0000-0000-000000000000} |
53 |
#define DevReserved { 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } } |
53 |
#define DevReserved { 0x00000000, 0x0000, 0x0000, { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } } |
54 |
// {E59F78CE-6328-4316-B1DE-F0AA5E45F34F} |
54 |
// {E59F78CE-6328-4316-B1DE-F0AA5E45F34F} |
55 |
#define DevUnassigned { 0xe59f78ce, 0x6328, 0x4316, { 0xb1, 0xde, 0xf0, 0xaa, 0x5e, 0x45, 0xf3, 0x4f } } |
55 |
#define DevUnassigned { 0xe59f78ce, 0x6328, 0x4316, { 0xb1, 0xde, 0xf0, 0xaa, 0x5e, 0x45, 0xf3, 0x4f } } |
56 |
// {E3470D73-9110-4d61-915E-916FF8A89BA6} |
56 |
// {E3470D73-9110-4d61-915E-916FF8A89BA6} |
57 |
#define DevUmServo32 { 0xe3470d73, 0x9110, 0x4d61, { 0x91, 0x5e, 0x91, 0x6f, 0xf8, 0xa8, 0x9b, 0xa6 } } |
57 |
#define DevUmServo32 { 0xe3470d73, 0x9110, 0x4d61, { 0x91, 0x5e, 0x91, 0x6f, 0xf8, 0xa8, 0x9b, 0xa6 } } |
58 |
// {CF232A58-497F-4bba-9E13-D9AB7938B418} |
58 |
// {CF232A58-497F-4bba-9E13-D9AB7938B418} |
59 |
#define DevUmHBridge { 0xcf232a58, 0x497f, 0x4bba, { 0x9e, 0x13, 0xd9, 0xab, 0x79, 0x38, 0xb4, 0x18 } } |
59 |
#define DevUmHBridge { 0xcf232a58, 0x497f, 0x4bba, { 0x9e, 0x13, 0xd9, 0xab, 0x79, 0x38, 0xb4, 0x18 } } |
60 |
// {518FC22C-B5A1-40b3-8D7C-C75EC729F25C} |
60 |
// {518FC22C-B5A1-40b3-8D7C-C75EC729F25C} |
61 |
#define DevUmServoBrain { 0x518fc22c, 0xb5a1, 0x40b3, { 0x8d, 0x7c, 0xc7, 0x5e, 0xc7, 0x29, 0xf2, 0x5c } } |
61 |
#define DevUmServoBrain { 0x518fc22c, 0xb5a1, 0x40b3, { 0x8d, 0x7c, 0xc7, 0x5e, 0xc7, 0x29, 0xf2, 0x5c } } |
62 |
|
62 |
|
63 |
#endif // __guids_h__ |
63 |
#endif // __guids_h__ |