|
@@ -6,6 +6,7 @@
|
|
|
* Change Logs:
|
|
|
* Date Author Notes
|
|
|
* 2018-11-5 SummerGift first version
|
|
|
+ * 2019-04-24 yangjie Use the end of ZI as HEAP_BEGIN
|
|
|
*/
|
|
|
|
|
|
#ifndef __BOARD_H__
|
|
@@ -28,7 +29,17 @@ extern "C" {
|
|
|
#define STM32_SRAM1_START (0x20000000)
|
|
|
#define STM32_SRAM1_END (STM32_SRAM1_START + STM32_SRAM1_SIZE * 1024)
|
|
|
|
|
|
-#define HEAP_BEGIN STM32_SRAM1_START
|
|
|
+#ifdef __CC_ARM
|
|
|
+extern int Image$$RW_IRAM1$$ZI$$Limit;
|
|
|
+#define HEAP_BEGIN ((void *)&Image$$RW_IRAM1$$ZI$$Limit)
|
|
|
+#elif __ICCARM__
|
|
|
+#pragma section="CSTACK"
|
|
|
+#define HEAP_BEGIN (__segment_end("CSTACK"))
|
|
|
+#else
|
|
|
+extern int __bss_end;
|
|
|
+#define HEAP_BEGIN ((void *)&__bss_end)
|
|
|
+#endif
|
|
|
+
|
|
|
#define HEAP_END STM32_SRAM1_END
|
|
|
|
|
|
void SystemClock_Config(void);
|