Hi,
I'm trying to program OPT with my own .hex.
I have compiled this in keil with good options for OTP.
但在SmartSnippets,当n I load my .hex in OTP image, I have the following message in log window :
"Read 0 bytes from file full_emb_sysram.hex. 14524 bytes have been ignored because their record address was greater or equal to 0x80000."
Have you an idea to solve this problem?
The first lines of my .hex are:
:020000042000DA
:1000000000980020A9040020B1040020C9040020A9
:1000100000000000000000000000000000000000E0
:10002000000000000000000000000000E1040020CB
:100030000000000000000000F9040020FB04002084
:10004000DD1C0020053103000D31030015310300D4
:10005000911D00208D310300E71D0020EF1D0020C1
Best regards,
Régis
Hi Regis,
This means that the load address is set to 0x80000 (retention RAM), This is a warning from SmartSnippets. If you want to start from OTP than the load address should be 0x0 and if you want to execute from retention RAM (0x80000), then your execution address needs to be set to 0x80000.
To achieve this you have to use a scatter file for the linker. Information about this can be found in document:<>
Best regards,
Dialog Bluetooth Support Team.
Hi,
I don't understand my problem. I am using the file "scatterfile_common.sct" from the SDK and compilation options for mode EXT_SLEEP and OTP to generate my .hex.
I don't found informations in "UM-B-011" for OTP
Is it the correct way to generate .hex for OTP burning?
How I can change my start adress to 0x00 for OTP?
What is the correct way?
Best regards,
Regis
Hi Regis,
If you use the 'scatterfile_common.sct' then the load and execute area of the application should be ok. If you also defined:
#define DEVELOPMENT_DEBUG 0 //0: code at OTP, 1: code via JTAG
Please see also AN-B-020 DA14580 End- product testing and programming guidelines V1.3.pdf for the OTP programming guidelines.
Best regards,
Dialog Bluetooth Support Team.