Whilst working on custom code, from examples, to interface an f28027 to a drv8353rs, I came across this problem with CCS10.4:
I'm reading 8 registers from the 8353 chip over the SPI interface. These are read into an array as follows:
void spi_read(void){
uint16_t i;
uint16_t sdata; // send data
for (i = 0; i<8; i++){
sdata = (i<<11)|0x8000;
SPI_write(mySpi,sdata);
//
// Wait until data is received
//
while(SPI_getRxFifoStatus(mySpi) == SPI_FifoStatus_Empty)
{
}
reg_data[i] = SPI_read(mySpi); // mask don't care bits
}
return;
I then added reg_data to the "watch expressions" list, but the expressions window does not contain the correct values for the array. The memory where the array is storred DOES have the correct Values:

How can this be fixed?
Mike.
(Also why do some variables come up in the expressions window and others in the variables window when they are both added to the watch list in the same way?)