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.

TMS320F28035: I2C , NACK function

Part Number: TMS320F28035

Hi All:

I am using TMS320F28035 to implement PMBus protocal.

Is this possible to generate NACK signal when slave(F28035) received wrong command(command define by software)in the transmit mode? 

  • Hi,

    If F28035 I2C is in receive mode (either Master (or) Slave), you should be able to send NACK signal by setting I2CMDR.NACKMOD.

    Regarads,
    Manoj
  • Hi Manoj:

    Thank you for fast response.

    I've tested NACK as below. Can I generate a NACK signal in time?(generate NACK right away after get whole data byte)

    Andrew

  • Andrew,

    No, F28035 I2C slave doesn't have automatic way to recognize wrong command and immediately send NACK signal. F28035 I2C slave needs to process the input command to know whether it is correct (or) wrong command. This needs to be be processed by F28035 code, now when the input command is correct command, CPU configures I2C registers to send ACK signal. If the input command is incorrect, CPU configures I2C registers to send NACK signal.

    Regards,

    Manoj

  • Hi Manoj

    I send NACK signal by software setting.

    I know the protocol (user define) will not recognize automatically by I2C hardware. I set I2CMDR.NACKMOD = 1 at RX interrupt ,when I check the data byte not correct. I found the NACK signal always generate at next acknowledge cycle.

    So, I want to know is it possible to generate NACK following the wrong data byte rather than generate at end of next data byte. 

    thanks.