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.

TRF7964A: Software Initialization does not give correct reading of registers

Part Number: TRF7964A
Other Parts Discussed in Thread: TRF7970A

I have just started using the TRF7964 but did some work with the TRF7970ABP.

When I send a software initialization command followed by and Idle command (SPI mode). The registers are not resetting to their correct values. They are changing but to the wrong values.

The only differences I see in hardware is I tied EN2 to a 10K pull down resistor.

Registers that are different

Reg 2 - 0x02 (should be 0x21)

Reg 5 - 0xBB (should be 0xC1)

Reg7 - 0x14 (should be 0x0E)

Reg8 - 0x1F (should be 0x1F)

Reg10- 0x40 (should be 0x10)

I tried changing reg 1, 4 and 5 and then doing a software reset and it comes back to the same values.

Last night one time they appeared as the correct Register values.

I changed the clock speed from 4MHz to 2MHz with no difference.

  • Hello Gerald,

    I think the numbering of the registers in your post are not ok.

    After checking the values it seems that these are in most cases the power up register values and not the values expected from the SW init.

    Can you please check if all supply voltages are ok and do not have any drops.
    Do all power supplies have the recommended caps?
     
    Best regards,
    Helfried

  • All the voltages are good and they all have the recommended caps.

    Are you sure these are the default values for the TRF7964A as register 0x01 (ISO Control) bit 5 should always be 0 so it cannot be 0x21. It can be a 1 in the TRF7970A being NFC or card emulation mode.

  • Hello Gerald,

    yes this is the default value. I agree that this does not make any sense for the TRF7964, but according to the datasheet that is the default after software initialization, a value of 0x21 for the ISO control register.

    Best regards,
    Helfried
  • Hello Gerald,

    For full clarity, you may want to see Section 6.13.1.2 of the D/S, Software Initialization (0x03). The device is based on the TRF7970A which is why the setting is what it is, unfortunately. Just make sure to follow the soft init and idle sequence with the correct settings for your system.