I didn't find any documentation on how to program nRF52 (specifically, nRF52832, nRF52810) using Keil uLink instead of SeggerJLink.
(specifically, I am using a ULINKplus)
This came close, but is nRF51 - and doesn't (quite) do it for nRF52.
The following procedure seems to work - any comments/corrections?
- Open a suitable uVision example project for the required SoftDevice, and Select the SoftDevice download target - as described here.
- In the uVision Project Properties, on the 'Debug' tab, select the uLink as the debugger to use
- In the debugger settings, on the 'Debug' tab, ensure:
- 'SWJ' is not checked
- 'Port' is set to 'SW'
- on the 'Flash Download' tab:
- Add the 'nRF52xxx UICR' algorithm
- Add the 'nRF52xxx SoftDevice Erase' algorithm
- In 'RAM for Algorithm', set 'Size' to 0x2000
- select 'Erase Full Chip'
- 'OK' out of the dialogues
I think the counter-intuitive one here is having to select 'nRF52xxx SoftDevice Erase' as the algorithm - because I don't want to erase it - I want to program it!
Also, why does all this have to be set up manually?