To program code into APROM, please follow steps below to do preliminary troubleshooting first:
Check code size
Code size (Code + RO data)
Displayed on Build Output after compilation
Check if the APROM in the chip is sufficient. In the Keil main window, click Project→Options for Target→Device→App Flash
Check if the memory block to be programmed is valid.
In the Linker page, make sure that R/O and R/W Base settings are valid for the microcontroller, as shown below.
In the Flash Select section, if LDROM is selected, the file larger than LDROM size cannot be programmed. In the Keil main window, click Project→Options for Target→Utilities→Settings to open the following form.
For Nu-Link-Me V3.1 or later, please switch the Mass Storage function off. When switched on, the Mass Storage functions as USB and can directly program code by pulling in the .bin file. However, in Mass Storage mode, Keil cannot be used to do programming.
If the NUC505 is used, set Boot Select (SW1) to ICE-SPI Mode.
Boot Select (SW1)