Software:
Windows Vista 32-bit
Code Composer Essentials Professional v3 with SP2 (slac135d.zip, 69095 KB)
Target:
Pre-production MSP430F5438
Problems:
1. Pointers in large-data model model.
Create a new managed make C/ASM project in Code Composer, selecting the XMS430F5438. Silicon version set to mspx. Use large-data memory model selected. In TI build settings using rts430xl.lib.
The following code does not work:
unsigned char jbuf[20];
unsigned char *jptr = jbuf;
int main(void)
{
*jptr = 0x55;
jptr++;
*jptr = 0x66;
}
If 'jptr' is added to the expression window it shows a value of 0, however the pointer value is actually correct in memory when viewed from the Memory window. The code will write 0x55 to the correct location, but then fails to write 0x66 to the next memory address.
When the large-data memory option is disabled and rts430x.lib used, the code runs correctly and the expression window shows the correct pointer value.
2. Single stepping with interrupts enabled.
I have a project that mas interrupts enabled and when I attempt to single step I end up at the first instruction of an active interrupt vector (an interrupt on a GPIO). The FET User's Guide said to try to use the Clock Control settings to delay interrupt requests, but it does not seem to work. If I explicitly disable global interrupts from the Register window I can single step, but this is not a workable solution.
Jim