CN / EN
CN / EN

提问

设计支持

您的项目私密技术问题如需获得一对一支持,请点击下方联系我们。

GR5513BENDU 如何实现 两轮车的靠近解锁方案例程 GR551x

156***358

2025-06-25 11:16

使用贵方在csdn发布的教学文章中的代码,发现适配GR5513BENDU时,RAM区域的不同执行域发生了重叠。具体来说,RAM_ZIARM_LIB_HEAPARM_LIB_STACK这几个执行域的地址范围发生了重叠。

https://blog.csdn.net/2301_79279246/article/details/139591457?spm=1001.2014.3001.5502

想麻烦您指导一下如何调整。

报错信息如下:

.\Objects\ble_app_multi_slave.axf: Error: L6221E: Execution region RAM_ZI with Execution range [0x00808620,0x0081f03c) overlaps with Execution region ARM_LIB_STACK with Execution range [0x0081c000,0x00820000).

.\Objects\ble_app_multi_slave.axf: Error: L6221E: Execution region ARM_LIB_HEAP with Execution range [0x0081f040,0x00820040) overlaps with Execution region ARM_LIB_STACK with Execution range [0x0081c000,0x00820000).

Finished: 0 information, 0 warning and 2 error messages.

".\Objects\ble_app_multi_slave.axf" - 2 Error(s), 3 Warning(s).

当前的RAM配置如下

#! armcc -E -I .\..\Src\user\ -I .\..\Src\config\ --cpu Cortex-M4


#include "flash_scatter_config.h"

#define ALIGN_DWORD 0x0008

#define ALIGN_WORD 0x0004

#define ALIGN_16KB 0x4000

#define ALIGN_32KB 0x8000


; *************************************************************

; *** Scatter-Loading Description File generated by uVision ***

; *************************************************************

;

; If an application uses a different memory layout then it must

; use a customized scatter file.

;**************************************************************


LR_FLASH APP_CODE_RUN_ADDR FLASH_SIZE {

; Flash layout

FLASH_CODE APP_CODE_RUN_ADDR APP_MAX_CODE_SIZE { ; load address = execution address

*.o (RESET, +First)

*(InRoot$$Sections)

.ANY (+RO)

}


RAM_TINY_RW TINY_RAM_SPACE_START TINY_RAM_SPACE_SIZE {

.ANY (TINY_RAM_SPACE)

}


; RAM for fpb resource

FPB_TABLE FPB_SECTION_START FPB_SECTION_SIZE {

.ANY (FPB)

}


; RAM for Application code

RAM_RW (RAM_START_ADDR + ROM_RTN_RAM_SIZE) APP_RAM_SIZE {

.ANY(+RW)

}


#if (CFG_LCP_SUPPORT)

; retention RAM for LCP Module

RAM_LCP AlignExpr(+0, ALIGN_WORD) CRITICAL_CODE_MAX_SIZE {

lld_lcp.o(+RO)

ble_lcp_sdk.o(+RO)

sch_*.o(+RO)

app_dual_tim.o(+RO)

gr55xx_hal_dual_tim.o(+RO)

app_io.o(+RO)

gr55xx_hal_gpio_1.o(+RO)

gr55xx_hal_aon_gpio_patch.o(+RO)

app_gpiote.o(+RO)

}

#endif


#if defined(XIP_MODE)

; retention RAM for exflash driver code

RAM_CODE AlignExpr(+0, ALIGN_WORD) CRITICAL_CODE_MAX_SIZE {

.ANY(RAM_CODE)

}


RAM_RESERVE AlignExpr(+0, 32) UNINIT RAM_RESERVE_SECTION_SIZE {

.ANY(RAM_RESERVE)

}

#endif


RAM_ZI +0 APP_RAM_SIZE {

.ANY(+ZI)

}


#if defined(ROM_RUN_IN_FLASH)

ROM_IN_FLASH_RAM 0x836000 EMPTY 0x5000{}

#endif


; Ram heap

ARM_LIB_HEAP AlignExpr(+0, ALIGN_DWORD) EMPTY SYSTEM_HEAP_SIZE {}


; define call-stack space

ARM_LIB_STACK AlignExpr(STACK_END_ADDR, ALIGN_DWORD) EMPTY -SYSTEM_STACK_SIZE {}

}



0收藏

0赞成

zhongchengzhi

汇顶员工
2025-06-26 14:37

您好:

1、靠近解锁方案是基于GR5515开发的,GR5515是256KB SRAM, GR5513是128KB SRAM,所以会出现SRAM不足的情况;

2、您可以尝试把custom_config.h文件的CFG_MAX_CONNECTIONS改为2,试试SRAM是否满足. 若是还是不够,建议用GR5515芯片做开发;

0条评论

0赞成

0收藏

您的评论

登录后可回答问题,请 注册

我们时刻倾听您的声音
联系销售

扫描关注公众号

打开微信,使用“扫一扫”即可关注