1 /* 2 * Copyright (c) 2006-2021, RT-Thread Development Team 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 * 6 * Change Logs: 7 * Date Author Notes 8 * 2018-11-5 SummerGift first version 9 */ 10 11 #ifndef __BOARD_H__ 12 #define __BOARD_H__ 13 14 #include <stm32f0xx.h> 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 #define STM32_FLASH_START_ADRESS ((uint32_t)0x08000000) 21 #define STM32_FLASH_SIZE (256 * 1024) 22 #define STM32_FLASH_END_ADDRESS ((uint32_t)(STM32_FLASH_START_ADRESS + STM32_FLASH_SIZE)) 23 24 /* Internal SRAM memory size[Kbytes] <16-256>, Default: 64*/ 25 #define STM32_SRAM_SIZE 32 26 #define STM32_SRAM_END (0x20000000 + STM32_SRAM_SIZE * 1024) 27 28 #if defined(__ARMCC_VERSION) 29 extern int Image$$RW_IRAM1$$ZI$$Limit; 30 #define HEAP_BEGIN ((void *)&Image$$RW_IRAM1$$ZI$$Limit) 31 #elif __ICCARM__ 32 #pragma section="CSTACK" 33 #define HEAP_BEGIN (__segment_end("CSTACK")) 34 #else 35 extern int __bss_end; 36 #define HEAP_BEGIN ((void *)&__bss_end) 37 #endif 38 39 #define HEAP_END STM32_SRAM_END 40 41 void SystemClock_Config(void); 42 43 #ifdef __cplusplus 44 } 45 #endif 46 47 #endif /* __BOARD_H__ */ 48