This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Problems with I2C when not(!) debugging (RM48)

Other Parts Discussed in Thread: RM48L952, HALCOGEN

Hello everybody,

I have a problem using the I2C-periphal on the RM48L952. I used HALCoGen to configure everything (I2C, HET, SPI, SCI, GIO etc.) and when I debug my board it works like expected. 

When I unplug my debug-probe everything (HET, SPI, SCI, GIO etc.)  expect I2C is still working. 

this is the (minimal) code I'm using:

...

void main(void)
{
/* USER CODE BEGIN (3) */
int button=0;
gioInit(); hetInit(); sciInit(); spiInit(); i2cInit(); _enable_IRQ(); while(1) { ... if(gioGetBit(hetPORT1,11)) //Button pressed? { i2cSetSlaveAdd(i2cREG1, 0x48); i2cSetDirection(i2cREG1, I2C_RECEIVER); i2cSetCount(i2cREG1, 1); i2cSetMode(i2cREG1, I2C_MASTER); i2cSetStop(i2cREG1); /* Transmit Start Condition */ i2cSetStart(i2cREG1); button=i2cReceiveByte(i2cREG1); /* Wait until Bus Busy is cleared */ while(i2cIsBusBusy(i2cREG1) == true); /* Wait until Stop is detected */ while(i2cIsStopDetected(i2cREG1) == 0); /* Clear the Stop condition */ i2cClearSCD(i2cREG1); } ... } }

When I debug my project, I can (as expected) monitor the communication with a logic analyzer. In "non-debug-mode" there is nothing happening at the i2c pins at all.

What am I doing wrong?

best regards,

Andreas