F28335: GPIOB MUX1 gets set to 0XFFFFFFC0 when loading code

Hi Champs,

 A customer has observed that the GPIOB MUX1 register gets correctly to 0x00000000 after reset, but when loading code it is set to 0XFFFFFFC0.

Load any example project for 28335 in CCS.
Watch memory at address 0x6F96 (GpioCtrlRegs.GPBMUX1).
Observe that this memory location is correctly set to 0x0 after reset.
Compile your project and load.
Observe that after load, the memory gets set to 0XFFFFFFC0.

I have tested this, and I have seen that this happens even if you are using a non-example based project (one written from scratch).
I have also observed that this behaviour also occurs when using the on-chip flash programmer.
When running code from Flash, this register remains at 0x00000000 after reset, until modified by code. The change is only when programming the Flash.
This only happens on the new F28335 devices (im not sure about the variants of this device - I dont have any to test); I didn't see it happening on the F2808 or F2812. On devices F2808 and F2812 memory location 0x6F96 remains at 0x00000000 after loading, as do all the GPIO MUX registers.

I used a SD XDS510 PP emulator to load the code onto the F28335 eZdsp

Does anyone have any clues what is causing this?
It appears to me that the emulator is doing this as it loads the code.

I will suggest that the customer takes care to initialize this register for now.

Thanks in advance

1 Reply