回覆
Do you set the project address to 0x10000 in compiler?
If you don't need ethernet function, please use keil to develope it.
You could get free license in here:
https://www.nuvoton.com/tool-and-software/ide-and-compiler/keil-mdk-nuvoton-edition/
Thanks.
chhuang16
Hi chhuang16
thanks for your response,
Yes,I use ICP tool multiple project option to load second project in address(0x10000).
But my second step is using ethernet to do FW update.
Thanks.
Rogerliu
Please Check "target.mbed_app_start" and "target.mbed_app_size" in second APROM code.
For detail, you could refer to this mbed MCUboot demo:
AGlass0fMilk/mbed-mcuboot-demo: Demo of mcuboot with Mbed
Keil is a good choose.
Thanks.
chhuang16
Hi chhuang16
So I need to set in
"M487\mbed-os\targets\TARGET_NUVOTON\TARGET_M480\device\TOOLCHAIN_GCC_ARM\M487.ld"
for the second program?
Thanks.
Rogerliu
Hi Roger,
Did you set the orign into 0x10000 for the second program?
For example: gcc_arm.ld
... FLASH (rx) : ORIGIN = 0x00010000, LENGTH = ...... ...
Danny
danchouzhou
Hi danchouzhou
So I need to set in
"M487\mbed-os\targets\TARGET_NUVOTON\TARGET_M480\device\TOOLCHAIN_GCC_ARM\M487.ld"
for the second program?
Thanks.
Rogerliu
Hi Roger,
Try it! I believe will work.
Could you provid the link of the source code (GitHub etc.) please? Thanks!
Danny
danchouzhou
Hi Danny
Thanks for your suggestion ,Problem solved.
I set up MED_APP_START and MED_APP_SIZE in M480_mem.h .
Roger
Rogerliu
Hi Roger,
Great!
The main problem is that the linker does not know you have the offset 0x10000 for the second program. So the fuction call would still start from 0x00000. Ex.
Also I found it in GitHub.Here is the link.
M487.ld
M480_mem.h
Danny
danchouzhou
北一高中生兼差下海 沙拉158.E.46.18隨 外貌超漂亮很愛笑好互動 有試車價TG搜nini9595瀨5280366官網 5280344.com
fc2025