36 unsigned short node_id = 0;
37 unsigned char node_mac[8];
38 volatile uint32_t device_id[3];
40 #define DEVICE_ID_REG0 (*((volatile uint32_t *)0x1FF80050))
41 #define DEVICE_ID_REG1 (*((volatile uint32_t *)0x1FF80054))
42 #define DEVICE_ID_REG2 (*((volatile uint32_t *)0x1FF80064))
47 device_id[0] = DEVICE_ID_REG0;
48 device_id[1] = DEVICE_ID_REG1;
49 device_id[2] = DEVICE_ID_REG2;
51 (*(uint32_t *)node_mac) = DEVICE_ID_REG1;
52 (*(((uint32_t *)node_mac) + 1)) = DEVICE_ID_REG2 + DEVICE_ID_REG0;
53 node_id = (
unsigned short)DEVICE_ID_REG2;