Other Parts Discussed in Thread: TI-CGT
Tool/software: TI C/C++ Compiler
Hello.
I'm using compiler C2000 CGT v17.9.0.STS with CCSv7.
I have two variables (SpibRegs at address 0xC046 and GpioDataRegs at address 0xC080 => These are really variables and not the peripheral registers.) The following code doesn't work:
GpioDataRegs.GPCCLEAR.bit.GPIO66 = 1;
SpibRegs.SPITXBUF = (0x06 << 8)+0x06;
In the attached screenshot (disassembly) you can see that the DP register is loaded with 0x302 (yellow marker. points to 0xC080 if I'm correct) for accessing GpioDataRegs and then doesn't change when accessing SpibRegs. So the values for SpibRegs are also written to GpioDataRegs.
Do I miss something, or is this a compiler problem?
BR
Christian