From d34b6f1d85f71482d5a6451bd0eafc16f1e037da Mon Sep 17 00:00:00 2001 From: Shuanglei Tao Date: Wed, 26 Mar 2025 20:53:12 +0800 Subject: [PATCH] update stack/heap config --- GUI/Calendar.c | 6 +----- Keil/EPD-nRF51.uvprojx | 4 ++-- Makefile.nRF51 | 5 +++++ .../components/toolchain/arm/arm_startup_nrf51.s | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) diff --git a/GUI/Calendar.c b/GUI/Calendar.c index b9e1ca1..c7734b3 100644 --- a/GUI/Calendar.c +++ b/GUI/Calendar.c @@ -4,11 +4,7 @@ #include "Calendar.h" #include "nrf_log.h" -#if defined(S112) -#define PAGE_HEIGHT 150 -#else -#define PAGE_HEIGHT 64 -#endif +#define PAGE_HEIGHT ((__HEAP_SIZE / 50) - 4) #define GFX_printf_styled(gfx, fg, bg, font, ...) \ GFX_setTextColor(gfx, fg, bg); \ diff --git a/Keil/EPD-nRF51.uvprojx b/Keil/EPD-nRF51.uvprojx index 7c75362..1ecaf79 100644 --- a/Keil/EPD-nRF51.uvprojx +++ b/Keil/EPD-nRF51.uvprojx @@ -338,7 +338,7 @@ 0 - BLE_STACK_SUPPORT_REQD NRF51822 NRF_SD_BLE_API_VERSION=2 S130 NRF51 SOFTDEVICE_PRESENT SWI_DISABLE0 + BLE_STACK_SUPPORT_REQD NRF51822 NRF_SD_BLE_API_VERSION=2 S130 NRF51 SOFTDEVICE_PRESENT SWI_DISABLE0 __HEAP_SIZE=4096 __STACK_SIZE=2048 ..\config;..\EPD;..\GUI;..\SDK\12.3.0_d7731ad;..\SDK\12.3.0_d7731ad\components\toolchain;..\SDK\12.3.0_d7731ad\components\toolchain\cmsis\include;..\SDK\12.3.0_d7731ad\components\drivers_nrf\clock;..\SDK\12.3.0_d7731ad\components\drivers_nrf\common;..\SDK\12.3.0_d7731ad\components\drivers_nrf\delay;..\SDK\12.3.0_d7731ad\components\drivers_nrf\gpiote;..\SDK\12.3.0_d7731ad\components\drivers_nrf\hal;..\SDK\12.3.0_d7731ad\components\drivers_nrf\spi_master;..\SDK\12.3.0_d7731ad\components\drivers_nrf\twi_master;..\SDK\12.3.0_d7731ad\external\segger_rtt;..\SDK\12.3.0_d7731ad\components\libraries\fds;..\SDK\12.3.0_d7731ad\components\libraries\fstorage;..\SDK\12.3.0_d7731ad\components\libraries\experimental_section_vars;..\SDK\12.3.0_d7731ad\components\libraries\log;..\SDK\12.3.0_d7731ad\components\libraries\log\src;..\SDK\12.3.0_d7731ad\components\libraries\pwr_mgmt;..\SDK\12.3.0_d7731ad\components\libraries\scheduler;..\SDK\12.3.0_d7731ad\components\libraries\trace;..\SDK\12.3.0_d7731ad\components\libraries\timer;..\SDK\12.3.0_d7731ad\components\libraries\util;..\SDK\12.3.0_d7731ad\components\ble\common;..\SDK\12.3.0_d7731ad\components\ble\ble_advertising;..\SDK\12.3.0_d7731ad\components\softdevice\common\softdevice_handler;..\SDK\12.3.0_d7731ad\components\softdevice\s130\headers;..\SDK\12.3.0_d7731ad\components\softdevice\s130\headers\nrf51 @@ -356,7 +356,7 @@ 1 - BLE_STACK_SUPPORT_REQD NRF51822 NRF_SD_BLE_API_VERSION=2 S130 NRF51 SOFTDEVICE_PRESENT SWI_DISABLE0 + BLE_STACK_SUPPORT_REQD NRF51822 NRF_SD_BLE_API_VERSION=2 S130 NRF51 SOFTDEVICE_PRESENT SWI_DISABLE0 __HEAP_SIZE=4096 __STACK_SIZE=2048 ..\config;..\EPD;..\GUI;..\SDK\12.3.0_d7731ad;..\SDK\12.3.0_d7731ad\components\toolchain;..\SDK\12.3.0_d7731ad\components\toolchain\cmsis\include;..\SDK\12.3.0_d7731ad\components\drivers_nrf\clock;..\SDK\12.3.0_d7731ad\components\drivers_nrf\common;..\SDK\12.3.0_d7731ad\components\drivers_nrf\delay;..\SDK\12.3.0_d7731ad\components\drivers_nrf\gpiote;..\SDK\12.3.0_d7731ad\components\drivers_nrf\hal;..\SDK\12.3.0_d7731ad\components\drivers_nrf\spi_master;..\SDK\12.3.0_d7731ad\components\drivers_nrf\twi_master;..\SDK\12.3.0_d7731ad\external\segger_rtt;..\SDK\12.3.0_d7731ad\components\libraries\fds;..\SDK\12.3.0_d7731ad\components\libraries\fstorage;..\SDK\12.3.0_d7731ad\components\libraries\experimental_section_vars;..\SDK\12.3.0_d7731ad\components\libraries\log;..\SDK\12.3.0_d7731ad\components\libraries\log\src;..\SDK\12.3.0_d7731ad\components\libraries\pwr_mgmt;..\SDK\12.3.0_d7731ad\components\libraries\scheduler;..\SDK\12.3.0_d7731ad\components\libraries\trace;..\SDK\12.3.0_d7731ad\components\libraries\timer;..\SDK\12.3.0_d7731ad\components\libraries\util;..\SDK\12.3.0_d7731ad\components\ble\common;..\SDK\12.3.0_d7731ad\components\ble\ble_advertising;..\SDK\12.3.0_d7731ad\components\softdevice\common\softdevice_handler;..\SDK\12.3.0_d7731ad\components\softdevice\s130\headers;..\SDK\12.3.0_d7731ad\components\softdevice\s130\headers\nrf51 diff --git a/Makefile.nRF51 b/Makefile.nRF51 index e970a36..0b21bfa 100644 --- a/Makefile.nRF51 +++ b/Makefile.nRF51 @@ -118,6 +118,11 @@ LDFLAGS += -Wl,--gc-sections # use newlib in nano version LDFLAGS += --specs=nano.specs -lc -lnosys +nrf51822_xxaa: CFLAGS += -D__HEAP_SIZE=4096 +nrf51822_xxaa: CFLAGS += -D__STACK_SIZE=2048 +nrf51822_xxaa: ASMFLAGS += -D__HEAP_SIZE=4096 +nrf51822_xxaa: ASMFLAGS += -D__STACK_SIZE=2048 + .PHONY: $(TARGETS) default all clean help flash flash_softdevice diff --git a/SDK/12.3.0_d7731ad/components/toolchain/arm/arm_startup_nrf51.s b/SDK/12.3.0_d7731ad/components/toolchain/arm/arm_startup_nrf51.s index 4f76255..fde9487 100644 --- a/SDK/12.3.0_d7731ad/components/toolchain/arm/arm_startup_nrf51.s +++ b/SDK/12.3.0_d7731ad/components/toolchain/arm/arm_startup_nrf51.s @@ -46,7 +46,7 @@ Heap_Size EQU __STARTUP_CONFIG_HEAP_SIZE ELIF :DEF: __HEAP_SIZE Heap_Size EQU __HEAP_SIZE ELSE -Heap_Size EQU 3600 +Heap_Size EQU 2048 ENDIF AREA HEAP, NOINIT, READWRITE, ALIGN=3