I'm writing code to examine the PDTAG block in the device descriptor table on a CC430F5137. The corresponding content is:
1a30: 08 8a 0c 86 0e 2c 40 92 00 1d 00 23 00 09 00 0f
1a40: 00 03 00 1f 10 41 02 30 02 38 01 3d 00 44 00 40
1a50: 01 48 02 42 03 a0 01 10 04 51 02 52 02 53 0e 5f
1a60: 02 62 04 61 12 68 02 85 04 47 0c 90 14 d1 1c a8
1a70: 10 80 54 bc a8 40 90 91 d0 60 61 bc 46 62 63 50
1a80: 51 01 68 80 00
The first eight bytes comprise the memory entries, and those decode correctly as:
FLASH 2048 bytes at 0x1000
FLASH 512 bytes at 0x1800
RAM 4096 bytes at 0x1c00
FLASH 32768 bytes at 0x8000
What follows says there are 29 peripherals, with packed entry values starting with 0x2300, 0x0900, 0x0f00, 0x1f00, ...
Several issues: first, where can I find a complete list of peripheral IDs? There is a partial table in the 5xx/6xx and CC430 user's guides, but it's not complete. I can't find this in the device data sheet either.
Second, the adrval fields seem completely wrong, since the first four are all at address zero (or, the peripheral entry values differ from everything else and are big-endian, in which case there are four "no modules" at various addresses).
Third, looking ahead, are the one-byte interrupt priority values that end the PDTAG section PID values as well?
Thanks.
Peter