There are already a few threads about this problem but none of them helped.
I want to use GPIO9 + 10 as .. well .. GPIO.
Here's what I did:
- added
CFLAGS += -DCONFIG_NFCT_PINS_AS_GPIOS
in Makefile - added a section in linker script:
UICR_NFCPINS(r) : ORIGIN = 0x1000120C, LENGTH = 0x04
SECTIONS { /* Write the bootloader address in UICR. / .uicrNfcPinsAddress : { KEEP((.uicrNfcPinsAddress)) } > UICR_NFCPINS }
- set the constant in main.c: const uint32_t UICR_ADDR_0x20C attribute ((section(".uicrNfcPinsAddress"))) attribute((used)) = 0xFFFFFFFE;
And after all, still it didn't help, I always had the "A UICR write operation..." message and the GPIOs didn't work.
Finally I did nrfjprog --memwr 0x1000120c --val 0xFFFFFFFE --family nrf52 --verify
That helped but is not best practice, I guess - and still the message did not disappear (but the GPIOs work at least)
Any help please?