I am using nrf52840
The mark is: N52840 QIAAC0,
SDK: nRF5_SDK_15.0.0_a53641a,
SD: nRF5_SDK_15.0.0_a53641a,
I used the BLE ANCS routine and encountered this problem when I added the SPIM3 to driver LCD.
Problem Description: I used SPIM3's easyDMA driver LCD and turned on the hw_ss and dcx pins.
I want to turn on and initialize SPIM3 before using the screen, and turn off SPIM3 when not in use to save power.
I have implemented it, but after many tests and comparisons, SPIM3 still consumes about 900uA of current after disable.
Then, I found the ID: 198 in the official website errata "nRF52840_Rev_1_Errata_v1.0.pdf", replaced by the recently updated SDK "nRF5_SDK_15.3.0_59ac345"
nRF5_SDK_15.3.0_59ac345\modules\nrfx\drivers\src\nrfx_spim.c, after which a system reboot occurs.
As a comparison I removed *(volatile uint32_t *)0x4002F004 = 1; the system is normal.
During the experiment, it was also found that if you remove the idle_state_handle() in the main function; the system is also normal.
I guess that after the operation *(volatile uint32_t *)0x4002F004 = 1; whether it needs to wait for some event to complete, then the system can go to sleep.
I hope to provide some ideas or suggestions.