This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

NFC input resistance to fixed value

Hello DevZone,

Currently I'm working to get the NFC examples up and running.

I'm using the PCA10040 in combination with SDK15.0.0 and SD 132

A colleague of mine mentioned me that the input resistance in the nRF microcontroller for NFC is variable. He has shown me a whitepaper from Nordic about antenna tuning and I saw a couple of lines to add to a batch file to set the input resistance to a fixed value.

nrfjprog -f NRF52 --memwr 0x40005668 --val 15

nrfjprog -f NRF52 --memwr 0x40005650 --val 4

nrfjprog -f NRF52 --memwr 0x40005000 --val 1

I can trace back the memory write at address 0x40005000 but the other two addresses are out of scope in the datasheet or even the nrf52.h.

Further in the whitepaper it notes that though power cycling or whiting a 0 to both 0x40005668 and 0x40005650 you reset the fixed value back to automatic.

Ive tried adding this memory write in my code by using *(volatile uint32_t *)0x40005668 = 15, *(volatile uint32_t *)0x40005650 = 4.

But this led to NFC not being operational until I set these to 0.

I'd imagine that these registers are for internal Nordic use only and why there is no information to be found on what these registers do.

Is there a way to set the input resistance to a fixed value all the time for instance 1k or is that not possible at all?

Kind regards

Parents Reply
  • If you set the following registers: 

    0x40005604 = 0x00015014  (This disables the automatic input voltage adjustment)

    0x40005634 = 2

    0x40005638 = 2

    You should get an Rin of around 1 kohm. If you want to measure this exactly, you can set NFC2 to ground and  NFC1 to 2.8 V and measure the DC current. Increase the resistance by writing 1  to the two last registers, and decrease by writing 3. 

Children
No Data
Related