Hallo Zusammen, ich möchte eigentlich nur zu Testzwecken die Device ID und die Rev ID des Controllers auslesen. In google habe ich für den C18 Compiler ein Beispiel gefunden. Das lässt sich auch compilieren. Allerdings bekomme ich bei zwei PIC-Typen immer die gleichen Werte. Device ID: 0x000 Device Rev: 0x00 Laut den Datenblättern für den PIC18F46K80 und den PIC18F97J60 kann das nicht sein.
1 | unsigned char dev1, dev2, rev; |
2 | unsigned short devid; |
3 | |
4 | memcpypgm2ram((void *)&dev1, (rom void *)0x3FFFFE, 1); |
5 | memcpypgm2ram((void *)&dev2, (rom void *)0x3FFFFF, 1); |
6 | rev = dev1 & 0x01F; |
7 | devid = ((unsigned short)dev2 << 3) | (dev1 >> 5); |
8 | printf("Device ID: 0x%03X Device Rev: 0x%02X\r\n", devid, rev); |
Hat jemand von Euch diese Daten schon eimal ausgelesen? Danke und Gruß Ingo