SPRUJ53D April 2024 – April 2026 TMS320F28P550SG , TMS320F28P550SJ , TMS320F28P559SG-Q1 , TMS320F28P559SJ-Q1
This USB controller was originally designed to connect to an ARM AHB bus, but has been modified to function with the C28x device bus architecture. The modifications made are largely invisible to the user application, but there are some things to note.
| USB Controller Memory | C28x 8 Bit | |||
|---|---|---|---|---|
| Address | Register Name | Data | Access | Data |
| 0x00 | FADDR | 0x00 | __byte((int *)0x00,0) | 0x0000 |
| 0x01 | POWER | 0x11 | __byte((int *)0x01,0) | 0x0011 |
| 0x02 | TXIS (LSB) | 0x22 | __byte((int *)0x02,0) | 0x0022 |
| 0x03 | TXIS (MSB) | 0x33 | __byte((int *)0x03,0) | 0x0033 |
| 0x04 | RXIS (LSB) | 0x44 | __byte((int *)0x04,0) | 0x0044 |
| 0x05 | RXIS (MSB) | 0x55 | __byte((int *)0x05,0) | 0x0055 |
| 0x06 | TXIE (LSB) | 0x66 | __byte((int *)0x06,0) | 0x0066 |
| 0x07 | TXIE (MSB) | 0x77 | __byte((int *)0x07,0) | 0x0077 |
| 0x08 | RXIE (LSB) | 0x88 | __byte((int *)0x08,0) | 0x0088 |
| 0x09 | RXIE (MSB) | 0x99 | __byte((int *)0x09,0) | 0x0099 |
| 0x0A | USBIS | 0xAA | __byte((int *)0x0A,0) | 0x00AA |
| 0x0B | USBIE | 0xBB | __byte((int *)0x0B,0) | 0x00BB |
| 0x0C | FRAME (LSB) | 0xCC | __byte((int *)0x0C,0) | 0x00CC |
| 0x0D | FRAME (MSB) | 0xDD | __byte((int *)0x0D,0) | 0x00DD |
| 0x0E | EPIDX | 0xEE | __byte((int *)0x0E,0) | 0x00EE |
| 0x0F | TEST | 0xFF | __byte((int *)0x0F,0) | 0x00FF |
| C28x 16 Bit | C28x 32 Bit | |||
| Access | Data | Access | Data | |
| (*((short *)(0x00))) | 0x1100 | (*((long *)(0x00))) | 0x33221100 | |
| (*((short *)(0x01))) | 0x1100 | (*((long *)(0x01))) | 0x33221100 | |
| (*((short *)(0x02))) | 0x3322 | (*((long *)(0x02))) | 0x33221100 | |
| (*((short *)(0x03))) | 0x3322 | (*((long *)(0x03))) | 0x33221100 | |
| (*((short *)(0x04))) | 0x5544 | (*((long *)(0x04))) | 0x77665544 | |
| (*((short *)(0x05))) | 0x5544 | (*((long *)(0x05))) | 0x77665544 | |
| (*((short *)(0x06))) | 0x7766 | (*((long *)(0x06))) | 0x77665544 | |
| (*((short *)(0x07))) | 0x7766 | (*((long *)(0x07))) | 0x77665544 | |
| (*((short *)(0x08))) | 0x9988 | (*((long *)(0x08))) | 0xBBAA9988 | |
| (*((short *)(0x09))) | 0x9988 | (*((long *)(0x09))) | 0xBBAA9988 | |
| (*((short *)(0x0A))) | 0xBBAA | (*((long *)(0x0A))) | 0xBBAA9988 | |
| (*((short *)(0x0B))) | 0xBBAA | (*((long *)(0x0B))) | 0xBBAA9988 | |
| (*((short *)(0x0C))) | 0xDDCC | (*((long *)(0x0C))) | 0xFFEEDDCC | |
| (*((short *)(0x0D))) | 0xDDCC | (*((long *)(0x0D))) | 0xFFEEDDCC | |
| (*((short *)(0x0E))) | 0xFFEE | (*((long *)(0x0E))) | 0xFFEEDDCC | |
| (*((short *)(0x0F))) | 0xFFEE | (*((long *)(0x0F))) | 0xFFEEDDCC | |
| CCS 8 Bit | CCS 16 Bit | CCS 32 Bit | |||||
|---|---|---|---|---|---|---|---|
| Address | Displayed Data | Address | Displayed Data | Address | Displayed Data | ||
| 0x00 | 0x00 | 0x00 | 0x1100 | 0x00 | 0x11001100 | ||
| 0x01 | 0x00 | 0x01 | 0x1100 | 0x02 | 0x33223322 | ||
| 0x02 | 0x22 | 0x02 | 0x3322 | 0x04 | 0x55445544 | ||
| 0x03 | 0x22 | 0x03 | 0x3322 | 0x06 | 0x77667766 | ||
| 0x04 | 0x44 | 0x04 | 0x5544 | 0x08 | 0x99889988 | ||
| 0x05 | 0x44 | 0x05 | 0x5544 | 0x0A | 0xBBAABBAA | ||
| 0x06 | 0x66 | 0x06 | 0x7766 | 0x0C | 0xDDCCDDCC | ||
| 0x07 | 0x66 | 0x07 | 0x7766 | 0x0E | 0xFFEEFFEE | ||
| 0x08 | 0x88 | 0x08 | 0x9988 | ||||
| 0x09 | 0x88 | 0x09 | 0x9988 | ||||
| 0x0A | 0xAA | 0x0A | 0xBBAA | ||||
| 0x0B | 0xAA | 0x0B | 0xBBAA | ||||
| 0x0C | 0xCC | 0x0C | 0xDDCC | ||||
| 0x0D | 0xCC | 0x0D | 0xDDCC | ||||
| 0x0E | 0xEE | 0x0E | 0xFFEE | ||||
| 0x0F | 0xEE | 0x0F | 0xFFEE | ||||