diff options
| author | yangjie11 <[email protected]> | 2020-11-25 14:36:54 +0800 |
|---|---|---|
| committer | yangjie11 <[email protected]> | 2020-11-25 14:36:54 +0800 |
| commit | 6e46b3fec02cd5212402e036bac77622008094dc (patch) | |
| tree | cd992dad68f2da070123d80770877dd1499693b6 | |
| parent | d79802b942e77389e1f885d9fe27a62434c652f9 (diff) | |
| parent | 58e9e022a7aa657a8e666025cd2a587a27e911e3 (diff) | |
Merge branch 'master' of https://github.com/RT-Thread/rt-thread into malloc
101 files changed, 2568 insertions, 2923 deletions
diff --git a/bsp/CME_M7/applications/startup.c b/bsp/CME_M7/applications/startup.c index edff582d1f..44f439690b 100644 --- a/bsp/CME_M7/applications/startup.c +++ b/bsp/CME_M7/applications/startup.c @@ -47,12 +47,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/avr32uc3b0/startup.c b/bsp/avr32uc3b0/startup.c index 6f1a3d3ada..0411b5d1ce 100644 --- a/bsp/avr32uc3b0/startup.c +++ b/bsp/avr32uc3b0/startup.c @@ -30,8 +30,6 @@ int main(void) #endif rt_hw_board_init(); - rt_system_tick_init(); - rt_system_object_init(); rt_system_timer_init(); #ifdef RT_USING_HEAP diff --git a/bsp/bf533/startup.c b/bsp/bf533/startup.c index 8f1b83912a..7d90dd2493 100644 --- a/bsp/bf533/startup.c +++ b/bsp/bf533/startup.c @@ -35,12 +35,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/efm32/startup.c b/bsp/efm32/startup.c index f997c6aadd..9a70f1278a 100644 --- a/bsp/efm32/startup.c +++ b/bsp/efm32/startup.c @@ -102,12 +102,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/fh8620/platform/fh8620/iot_cam/startup.c b/bsp/fh8620/platform/fh8620/iot_cam/startup.c index 52c4775da5..6f5cd6defa 100644 --- a/bsp/fh8620/platform/fh8620/iot_cam/startup.c +++ b/bsp/fh8620/platform/fh8620/iot_cam/startup.c @@ -93,12 +93,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* initialize tick */ - rt_system_tick_init(); - - /* initialize kernel object */ - rt_system_object_init(); - /* initialize timer system */ rt_system_timer_init(); diff --git a/bsp/frdm-k64f/applications/startup.c b/bsp/frdm-k64f/applications/startup.c index 3627cb993b..d16aefddb2 100644 --- a/bsp/frdm-k64f/applications/startup.c +++ b/bsp/frdm-k64f/applications/startup.c @@ -65,12 +65,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/gkipc/armv6/rtos_lib.c b/bsp/gkipc/armv6/rtos_lib.c index 7d7aec5c51..c4b4285fbe 100644 --- a/bsp/gkipc/armv6/rtos_lib.c +++ b/bsp/gkipc/armv6/rtos_lib.c @@ -1095,14 +1095,9 @@ U32 RTOS_InitKernel(U32 Heap_size) /* show version */ //rt_show_version(); - /* initialize tick */ - //rt_system_tick_init(); RTOS_HwTickInit(); //rt_kprintf("set tick\n"); - /* initialize kernel object */ - rt_system_object_init(); - /* initialize timer system */ rt_system_timer_init(); diff --git a/bsp/k210/.config b/bsp/k210/.config index 705dc78652..4d6db95162 100644 --- a/bsp/k210/.config +++ b/bsp/k210/.config @@ -70,6 +70,8 @@ CONFIG_RT_VER_NUM=0x40003 CONFIG_ARCH_CPU_64BIT=y # CONFIG_RT_USING_CPU_FFS is not set CONFIG_ARCH_RISCV=y +CONFIG_ARCH_RISCV_FPU=y +CONFIG_ARCH_RISCV_FPU_S=y CONFIG_ARCH_RISCV64=y # CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set @@ -150,8 +152,10 @@ CONFIG_RT_SERIAL_RB_BUFSZ=64 # CONFIG_RT_USING_HWTIMER is not set # CONFIG_RT_USING_CPUTIME is not set # CONFIG_RT_USING_I2C is not set +# CONFIG_RT_USING_PHY is not set CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set +# CONFIG_RT_USING_DAC is not set # CONFIG_RT_USING_PWM is not set # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set @@ -192,6 +196,7 @@ CONFIG_RT_USING_LIBC=y CONFIG_RT_USING_POSIX=y # CONFIG_RT_USING_POSIX_MMAP is not set # CONFIG_RT_USING_POSIX_TERMIOS is not set +# CONFIG_RT_USING_POSIX_GETLINE is not set # CONFIG_RT_USING_POSIX_AIO is not set # CONFIG_RT_USING_MODULE is not set @@ -262,7 +267,9 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # # IoT - internet of things # +# CONFIG_PKG_USING_LORAWAN_DRIVER is not set # CONFIG_PKG_USING_PAHOMQTT is not set +# CONFIG_PKG_USING_UMQTT is not set # CONFIG_PKG_USING_WEBCLIENT is not set # CONFIG_PKG_USING_WEBNET is not set # CONFIG_PKG_USING_MONGOOSE is not set @@ -308,7 +315,7 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_GAGENT_CLOUD is not set # CONFIG_PKG_USING_ALI_IOTKIT is not set # CONFIG_PKG_USING_AZURE is not set -# CONFIG_PKG_USING_TENCENT_IOTHUB is not set +# CONFIG_PKG_USING_TENCENT_IOT_EXPLORER is not set # CONFIG_PKG_USING_JIOT-C-SDK is not set # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set # CONFIG_PKG_USING_JOYLINK is not set @@ -330,6 +337,9 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_CAPNP is not set # CONFIG_PKG_USING_RT_CJSON_TOOLS is not set # CONFIG_PKG_USING_AGILE_TELNET is not set +# CONFIG_PKG_USING_NMEALIB is not set +# CONFIG_PKG_USING_AGILE_JSMN is not set +# CONFIG_PKG_USING_PDULIB is not set # # security packages @@ -338,6 +348,7 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_libsodium is not set # CONFIG_PKG_USING_TINYCRYPT is not set # CONFIG_PKG_USING_TFM is not set +# CONFIG_PKG_USING_YD_CRYPTO is not set # # language packages @@ -372,7 +383,9 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_CHINESE_FONT_LIBRARY is not set # CONFIG_PKG_USING_LUNAR_CALENDAR is not set # CONFIG_PKG_USING_BS8116A is not set +# CONFIG_PKG_USING_GPS_RMC is not set # CONFIG_PKG_USING_URLENCODE is not set +# CONFIG_PKG_USING_UMCN is not set # # system packages @@ -396,6 +409,10 @@ CONFIG_ULOG_BACKEND_USING_CONSOLE=y # CONFIG_PKG_USING_SYSWATCH is not set # CONFIG_PKG_USING_SYS_LOAD_MONITOR is not set # CONFIG_PKG_USING_PLCCORE is not set +# CONFIG_PKG_USING_RAMDISK is not set +# CONFIG_PKG_USING_MININI is not set +# CONFIG_PKG_USING_QBOOT is not set +# CONFIG_PKG_USING_UCOSIII_WRAPPER is not set # # peripheral libraries and drivers @@ -441,6 +458,7 @@ CONFIG_PKG_KENDRYTE_SDK_VERNUM=0x0055 # CONFIG_PKG_USING_RPLIDAR is not set # CONFIG_PKG_USING_AS608 is not set # CONFIG_PKG_USING_RC522 is not set +# CONFIG_PKG_USING_WS2812B is not set # CONFIG_PKG_USING_EMBARC_BSP is not set # CONFIG_PKG_USING_EXTERN_RTC_DRIVERS is not set # CONFIG_PKG_USING_MULTI_RTIMER is not set @@ -450,6 +468,12 @@ CONFIG_PKG_KENDRYTE_SDK_VERNUM=0x0055 # CONFIG_PKG_USING_PMS_SERIES is not set # CONFIG_PKG_USING_NUCLEI_SDK is not set # CONFIG_PKG_USING_CAN_YMODEM is not set +# CONFIG_PKG_USING_LORA_RADIO_DRIVER is not set +# CONFIG_PKG_USING_QLED is not set +# CONFIG_PKG_USING_PAJ7620 is not set +# CONFIG_PKG_USING_AGILE_CONSOLE is not set +# CONFIG_PKG_USING_LD3320 is not set +# CONFIG_PKG_USING_WK2124 is not set # # miscellaneous packages @@ -486,6 +510,9 @@ CONFIG_PKG_KENDRYTE_SDK_VERNUM=0x0055 # CONFIG_PKG_USING_VT100 is not set # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_UKAL is not set +# CONFIG_PKG_USING_CRCLIB is not set +# CONFIG_PKG_USING_THREES is not set +# CONFIG_PKG_USING_2048 is not set CONFIG_BOARD_K210_EVB=y CONFIG_BSP_USING_UART_HS=y diff --git a/bsp/k210/Kconfig b/bsp/k210/Kconfig index 5aa1e03dab..61ba3631c0 100644 --- a/bsp/k210/Kconfig +++ b/bsp/k210/Kconfig @@ -21,6 +21,7 @@ source "$PKGS_DIR/Kconfig" config BOARD_K210_EVB bool select ARCH_RISCV64 + select ARCH_RISCV_FPU_S select PKG_USING_KENDRYTE_SDK select RT_USING_COMPONENTS_INIT select RT_USING_USER_MAIN diff --git a/bsp/k210/rtconfig.h b/bsp/k210/rtconfig.h index 5f87d58a1d..4ac2b8937c 100644 --- a/bsp/k210/rtconfig.h +++ b/bsp/k210/rtconfig.h @@ -48,6 +48,8 @@ #define RT_VER_NUM 0x40003 #define ARCH_CPU_64BIT #define ARCH_RISCV +#define ARCH_RISCV_FPU +#define ARCH_RISCV_FPU_S #define ARCH_RISCV64 /* RT-Thread Components */ diff --git a/bsp/k210/rtconfig.py b/bsp/k210/rtconfig.py index b9258cd374..0f336d545e 100755 --- a/bsp/k210/rtconfig.py +++ b/bsp/k210/rtconfig.py @@ -38,7 +38,7 @@ if PLATFORM == 'gcc': OBJDUMP = PREFIX + 'objdump' OBJCPY = PREFIX + 'objcopy' - DEVICE = ' -mcmodel=medany -march=rv64imafdc -mabi=lp64d' + DEVICE = ' -mcmodel=medany -march=rv64imafc -mabi=lp64f -fsingle-precision-constant' CFLAGS = DEVICE + ' -fno-common -ffunction-sections -fdata-sections -fstrict-volatile-bitfields' AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp' LFLAGS = DEVICE + ' -nostartfiles -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,_start -T link.lds' diff --git a/bsp/lm3s8962/applications/startup.c b/bsp/lm3s8962/applications/startup.c index d598ee8fc7..e78cfa7eca 100644 --- a/bsp/lm3s8962/applications/startup.c +++ b/bsp/lm3s8962/applications/startup.c @@ -77,12 +77,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/lm3s9b9x/applications/startup.c b/bsp/lm3s9b9x/applications/startup.c index 2e8ad05d7b..4d374824e7 100644 --- a/bsp/lm3s9b9x/applications/startup.c +++ b/bsp/lm3s9b9x/applications/startup.c @@ -77,12 +77,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/lm4f232/applications/startup.c b/bsp/lm4f232/applications/startup.c index e1f3b6efd1..8d9eb54611 100644 --- a/bsp/lm4f232/applications/startup.c +++ b/bsp/lm4f232/applications/startup.c @@ -77,12 +77,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/lpc2148/applications/startup.c b/bsp/lpc2148/applications/startup.c index 5b699a8613..cc16a5c12b 100644 --- a/bsp/lpc2148/applications/startup.c +++ b/bsp/lpc2148/applications/startup.c @@ -52,12 +52,6 @@ void rtthread_startup(void) /* init board */ rt_hw_board_init(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - rt_show_version(); /* init timer system */ diff --git a/bsp/lpc2478/applications/startup.c b/bsp/lpc2478/applications/startup.c index 270312f7ae..0b961e4f94 100644 --- a/bsp/lpc2478/applications/startup.c +++ b/bsp/lpc2478/applications/startup.c @@ -38,12 +38,6 @@ void rtthread_startup(void) /* init board */ rt_hw_board_init(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - rt_show_version(); /* init timer system */ diff --git a/bsp/lpc5410x/applications/startup.c b/bsp/lpc5410x/applications/startup.c index 6589dc6b46..6f4ab94e82 100644 --- a/bsp/lpc5410x/applications/startup.c +++ b/bsp/lpc5410x/applications/startup.c @@ -27,12 +27,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* initialize tick */ - rt_system_tick_init(); - - /* initialize kernel object */ - rt_system_object_init(); - /* initialize timer system */ rt_system_timer_init(); diff --git a/bsp/lpc824/applications/startup.c b/bsp/lpc824/applications/startup.c index 5e95382ba0..e165242f86 100644 --- a/bsp/lpc824/applications/startup.c +++ b/bsp/lpc824/applications/startup.c @@ -52,12 +52,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/m16c62p/applications/startup.c b/bsp/m16c62p/applications/startup.c index 95b9484c1f..1802ecadee 100644 --- a/bsp/m16c62p/applications/startup.c +++ b/bsp/m16c62p/applications/startup.c @@ -48,13 +48,7 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - + /* init timer system */ rt_system_timer_init(); diff --git a/bsp/mb9bf500r/startup.c b/bsp/mb9bf500r/startup.c index dc65496ba6..bc96eb5dca 100644 --- a/bsp/mb9bf500r/startup.c +++ b/bsp/mb9bf500r/startup.c @@ -44,12 +44,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/microblaze/startup.c b/bsp/microblaze/startup.c index b9dc03e588..c900973bb7 100755 --- a/bsp/microblaze/startup.c +++ b/bsp/microblaze/startup.c @@ -55,12 +55,6 @@ void rtthread_startup(void) rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/mini4020/applications/startup.c b/bsp/mini4020/applications/startup.c index 575bd6f306..ae84f8b461 100644 --- a/bsp/mini4020/applications/startup.c +++ b/bsp/mini4020/applications/startup.c @@ -49,12 +49,6 @@ void rtthread_startup() /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/nios_ii/startup.c b/bsp/nios_ii/startup.c index 8f2512630d..e2bbaaa996 100644 --- a/bsp/nios_ii/startup.c +++ b/bsp/nios_ii/startup.c @@ -45,12 +45,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/nrf51822/applications/startup.c b/bsp/nrf51822/applications/startup.c index 660105ee48..1e7729fc83 100644 --- a/bsp/nrf51822/applications/startup.c +++ b/bsp/nrf51822/applications/startup.c @@ -48,12 +48,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/nrf52832/applications/startup.c b/bsp/nrf52832/applications/startup.c index a48524814c..78a5ef7f65 100644 --- a/bsp/nrf52832/applications/startup.c +++ b/bsp/nrf52832/applications/startup.c @@ -48,12 +48,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/nrf5x/libraries/templates/nrf52x/applications/startup.c b/bsp/nrf5x/libraries/templates/nrf52x/applications/startup.c index a48524814c..78a5ef7f65 100644 --- a/bsp/nrf5x/libraries/templates/nrf52x/applications/startup.c +++ b/bsp/nrf5x/libraries/templates/nrf52x/applications/startup.c @@ -48,12 +48,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/pic32ethernet/startup.c b/bsp/pic32ethernet/startup.c index b841da98f3..e139dfefca 100644 --- a/bsp/pic32ethernet/startup.c +++ b/bsp/pic32ethernet/startup.c @@ -35,12 +35,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/rm48x50/application/startup.c b/bsp/rm48x50/application/startup.c index 31c2f92fa9..40b69e2c95 100644 --- a/bsp/rm48x50/application/startup.c +++ b/bsp/rm48x50/application/startup.c @@ -81,12 +81,6 @@ void rtthread_startup(void) /* init board */ rt_hw_board_init(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - rt_show_version(); /* init timer system */ diff --git a/bsp/sam7x/applications/startup.c b/bsp/sam7x/applications/startup.c index ddf194b1d1..d167d9ebcb 100644 --- a/bsp/sam7x/applications/startup.c +++ b/bsp/sam7x/applications/startup.c @@ -82,12 +82,6 @@ void rtthread_startup(void) rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/samd21/applications/startup.c b/bsp/samd21/applications/startup.c index aaa75d3f1c..ecbe617d2e 100644 --- a/bsp/samd21/applications/startup.c +++ b/bsp/samd21/applications/startup.c @@ -68,12 +68,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/sep6200/application/startup.c b/bsp/sep6200/application/startup.c index fc12985ce1..e714675699 100644 --- a/bsp/sep6200/application/startup.c +++ b/bsp/sep6200/application/startup.c @@ -63,12 +63,6 @@ void rtthread_startup() /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/simulator/applications/startup.c b/bsp/simulator/applications/startup.c index cc2144d64f..900d774844 100644 --- a/bsp/simulator/applications/startup.c +++ b/bsp/simulator/applications/startup.c @@ -47,12 +47,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c b/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c index 290c89e159..5e6d4f6934 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c @@ -7,7 +7,8 @@ * Date Author Notes * 2018-06-22 tyx first * 2018-12-12 balanceTWK first version - * 2019-06-11 WillianChan Add SD card hot plug detection + * 2019-06-11 WillianChan Add SD card hot plug detection + * 2020-11-09 whj4674672 fix sdio non-aligned access problem */ #include "board.h" @@ -366,7 +367,7 @@ static void rthw_sdio_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *r if (req->cmd != RT_NULL) { - memset(&pkg, 0, sizeof(pkg)); + rt_memset(&pkg, 0, sizeof(pkg)); data = req->cmd->data; pkg.cmd = req->cmd; @@ -382,7 +383,7 @@ static void rthw_sdio_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *r pkg.buff = cache_buf; if (data->flags & DATA_DIR_WRITE) { - memcpy(cache_buf, data->buf, size); + rt_memcpy(cache_buf, data->buf, size); } } } @@ -391,13 +392,13 @@ static void rthw_sdio_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *r if ((data != RT_NULL) && (data->flags & DATA_DIR_READ) && ((rt_uint32_t)data->buf & (SDIO_ALIGN_LEN - 1))) { - memcpy(data->buf, cache_buf, data->blksize * data->blks); + rt_memcpy(data->buf, cache_buf, data->blksize * data->blks); } } if (req->stop != RT_NULL) { - memset(&pkg, 0, sizeof(pkg)); + rt_memset(&pkg, 0, sizeof(pkg)); pkg.cmd = req->stop; rthw_sdio_send_command(sdio, &pkg); } diff --git a/bsp/stm32/stm32f401-st-nucleo/README.md b/bsp/stm32/stm32f401-st-nucleo/README.md index d65c08ac11..5029651c1a 100644 --- a/bsp/stm32/stm32f401-st-nucleo/README.md +++ b/bsp/stm32/stm32f401-st-nucleo/README.md @@ -1,4 +1,4 @@ -# STM32F401 Nucleo-64 BSP (Board Support Package) Execution Instruction +# STM32F401 Nucleo-64 BSP Introduction [中文页](README_zh.md) | @@ -33,9 +33,11 @@ The mainly-used **on-board resources** are shown as follows: - Common-used interface: USB, Arduino Uno, and ST morpho - Debug interface: ST-LINK/V2-1 -For more details about this board, please refer to the ST official documentation: [STM32 Nucleo-64 development board with STM32F401RE MCU](https://www.st.com/zh/evaluation-tools/nucleo-f401re.html) +#### For more details about this board, please refer to the [ST official documentation](https://www.st.com/zh/evaluation-tools/nucleo-f401re.html) -## Peripheral Condition + + +### Peripheral Condition Each peripheral supporting condition for this BSP is as follows: @@ -45,11 +47,11 @@ Each peripheral supporting condition for this BSP is as follows: | UART | Support | UART2 | | SPI | Support | SPI1 | -## Execution Instruction -### Quickly Get Started -This BSP provides MDK5 and IAR projects for developers. Also support GCC development environment Here's an example of the MDK5 development environment, to introduce how to run the system. +## Quickly Get Started + +This BSP provides MDK5 and IAR projects for developers. Also support GCC development environment. Here's an example of the MDK5 development environment, to introduce how to run the system. #### Hardware Connection @@ -57,7 +59,7 @@ Use a Type-A to Mini-B cable to connect the development board to the PC and turn #### Compile And Download -Double-click the project.uvprojx file, to open the MDK5 project, compile and download the program to the board. +Double-click the `project.uvprojx` file, to open the MDK5 project, compile and download the program to the board. > By default, the project uses ST_LINK simulator to download the program, when the ST_LINK connects the board, clicking the download button can download the program to the board. @@ -93,8 +95,6 @@ This BSP only enables GPIO and serial port 2 by default. If need more advanced f According to the pin number specification, in the new stm32 bsp framework, the GPIO driver is managed in a sequential numbering manner. -## Notes - The pin serial number corresponds to the pin name as shown in the following table: | STM32 Pin Name | Pin Sequence Number | @@ -104,3 +104,8 @@ The pin serial number corresponds to the pin name as shown in the following tabl | PC0 - PC15 | 32 - 47 | | PD0 - ... | 48 - ... | + + +## Maintained By + +[shaoguoji](https://github.com/shaoguoji) [email protected] diff --git a/bsp/stm32/stm32f412-st-nucleo/README.md b/bsp/stm32/stm32f412-st-nucleo/README.md index 2502e29e29..fb463d6803 100644 --- a/bsp/stm32/stm32f412-st-nucleo/README.md +++ b/bsp/stm32/stm32f412-st-nucleo/README.md @@ -1,107 +1,88 @@ -# NUCLEO-F412ZG 开发板 BSP 说明 +# STM32F412-Nucleo BSP Introduction -## 简介 +[中文](README_zh.md) -本文档为 RT-Thread 开发团队为 NUCLEO-F412ZG 开发板提供的 BSP (板级支持包) 说明。 +## MCU: STM32F412ZG @100MHz, 1024KB FLASH, 256KB RAM -主要内容如下: +STM32F412xE/G devices are based on the high-performance Arm® Cortex® -M4 32-bit RISC core operating at a frequency of up to 100 MHz. Their Cortex®-M4 core features a Floating point unit (FPU) single precision which supports all Arm single-precision data-processing instructions and data types. It also implements a full set of DSP instructions and a memory protection unit (MPU) which enhances application security. -- 开发板资源介绍 -- BSP 快速上手 -- 进阶使用方法 +STM32F412xE/G devices belong to the STM32 Dynamic Efficiency™ product line (with products combining power efficiency, performance and integration) while adding a new innovative feature called Batch Acquisition Mode (BAM) allowing even more power consumption saving during data batching. +STM32F412xE/G devices incorporate high-speed embedded memories (up to 1 Mbyte of Flash memory, 256 Kbytes of SRAM), and an extensive range of enhanced I/Os and peripherals connected to two APB buses, three AHB buses and a 32-bit multi-AHB bus matrix. +All devices offer one 12-bit ADC, a low-power RTC, twelve general-purpose 16-bit timers, two PWM timers for motor control and two general-purpose 32-bit timers. +They also feature standard and advanced communication interfaces: +In addition, STM32F412xE/G devices embed advanced peripherals: +STM32F412xE/G devices are offered in 7 packages ranging from 48 to 144 pins. The set of available peripherals depends on the selected package. +The STM32F412xE/G operates in the -40 to +125 °C temperature range from a 1.7 (PDR OFF) to 3.6 V power supply. A comprehensive set of power-saving modes allows the design of low-power applications. +These features make the STM32F412xE/G microcontrollers suitable for a wide range of applications. -通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 +#### KEY FEATURES -## 开发板介绍 +- Dynamic Efficiency Line with BAM (Batch Acquisition Mode) +- Core: Arm® 32-bit Cortex®-M4 CPU with FPU, Adaptive real-time accelerator (ART Accelerator™) allowing 0-wait state execution from Flash memory, frequency up to 100 MHz, memory protection unit, 125 DMIPS/1.25 DMIPS/MHz (Dhrystone 2.1), and DSP instructions +- Memories + - Up to 1 Mbyte of Flash memory + - 256 Kbyte of SRAM + - Flexible external static memory controller with up to 16-bit data bus: SRAM, PSRAM, NOR Flash memory + - Dual mode Quad-SPI interface +- LCD parallel interface, 8080/6800 modes +- Clock, reset and supply management + - 1.7 V to 3.6 V application supply and I/Os + - POR, PDR, PVD and BOR + - 4-to-26 MHz crystal oscillator + - Internal 16 MHz factory-trimmed RC + - 32 kHz oscillator for RTC with calibration + - Internal 32 kHz RC with calibration +- Power consumption + - Run: 112 μA/MHz (peripheral off) + - Stop (Flash in Stop mode, fast wakeup time): 50 μA Typ @ 25 °C; 75 μA max @25 °C + - Stop (Flash in Deep power down mode, slow wakeup time): down to 18 μA @ 25 °C; 40 μA max @25 °C + - Standby: 2.4 μA @25 °C / 1.7 V without RTC; 12 μA @85 °C @1.7 V + - VBAT supply for RTC: 1 μA @25 °C +- 1×12-bit, 2.4 MSPS ADC: up to 16 channels +- 2xdigital filters for sigma delta modulator, 4xPDM interfaces, stereo microphone support +- General-purpose DMA: 16-stream DMA -探索者 NUCLEO-F412ZG 是意法半导体推出的一款基于 ARM Cortex-M4 内核的开发板,最高主频为 100Mhz,该开发板具有丰富的板载资源,可以充分发挥 STM32F411ZG 的芯片性能。 +- Up to 17 timers: up to twelve 16-bit timers, two 32-bit timers up to 100 MHz each with up to four IC/OC/PWM or pulse counter and quadrature (incremental) encoder input, two watchdog timers (independent and window), one SysTick timer +- Debug mode + - Serial wire debug (SWD) & JTAG + - Cortex®-M4 Embedded Trace Macrocell™ +- Up to 114 I/O ports with interrupt capability + - Up to 109 fast I/Os up to 100 MHz + - Up to 114 five V-tolerant I/Os +- Up to 17 communication interfaces + - Up to 4xI2C interfaces (SMBus/PMBus) + - Up to 4 USARTs (2x12.5 Mbit/s, 2x6.25 Mbit/s), ISO 7816 interface, LIN, IrDA, modem control) + - Up to 5 SPI/I2Ss (up to 50 Mbit/s, SPI or I2S audio protocol), out of which 2 muxed full-duplex I2S interfaces + - SDIO interface (SD/MMC/eMMC) + - Advanced connectivity: USB 2.0 full-speed device/host/OTG controller with PHY + - 2xCAN (2.0B Active) +- True random number generator +- CRC calculation unit +- 96-bit unique ID +- RTC: subsecond accuracy, hardware calendar +- All packages are ECOPACK®2 -开发板外观如下图所示: - -该开发板常用 **板载资源** 如下: +## Read more -- MCU:STM32F412ZG,主频 100MHz,1024KB FLASH ,256KB RAM。 -- 常用外设 - - LED:3 个,USB communication (LD1), user LED (LD2), power LED (LD3) 。 - - 按键,2 个,USER and RESET 。 -- 常用接口:USB 支持 3 种不同接口:虚拟 COM 端口、大容量存储和调试端口。 -- 调试接口,板载 ST-LINK/V2-1 调试器。 +| Documents | Description | +| :----------------------------------------------------------: | :----------------------------------------------------------: | +| [STM32_Nucleo-144_BSP_Introduction](../docs/STM32_Nucleo-144_BSP_Introduction.md) | How to run RT-Thread on STM32 Nucleo-144 boards (**Must-Read**) | +| [STM32F412ZG ST Official Website](https://www.st.com/en/microcontrollers-microprocessors/stm32f412zg.html#documentation) | STM32F412ZG datasheet and other resources | -开发板更多详细信息请参考意法半导体 [NUCLEO-F412ZG 开发板介绍](https://www.st.com/en/evaluation-tools/nucleo-f412zg.html)。 -## 外设支持 -本 BSP 目前对外设的支持情况如下: +## Maintained By -| **片上外设** | **支持情况** | **备注** | -| :------------ | :----------: | :-----------------------------------: | -| GPIO | 支持 | PA0, PA1... PH1 ---> PIN: 0, 1...63 | -| UART | 支持 | UART2,UART3 | -| Onchip Flash | 支持 | | -| USB Device | 支持 | | +[flybreak](https://github.com/guozhanxin) [email protected] -## 使用说明 -使用说明分为如下两个章节: -- 快速上手 +## Translated By - 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 +Meco Man @ RT-Thread Community -- 进阶使用 - - 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 - - -### 快速上手 - -本 BSP 为开发者提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 - -#### 硬件连接 - -使用 Type-A to Micro-B 线连接开发板和 PC 供电,红色 LED LD3 (PWR) 和 LD1 (COM) 会点亮。 - -#### 编译下载 - -双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 - -> 工程默认配置使用 ST-LINK 下载程序,点击下载按钮即可下载程序到开发板。 - -#### 运行结果 - -下载程序成功之后,系统会自动运行,观察开发板上 LED 的运行效果,红色 LD3 和 LD1 常亮、蓝色 LD2 会周期性闪烁。 - -USB 虚拟 COM 端口默认连接串口 3,在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: - -```bash - \ | / -- RT - Thread Operating System - / | \ 4.0.2 build Oct 20 2019 - 2006 - 2019 Copyright by rt-thread team -msh > -``` -### 进阶使用 - -此 BSP 默认只开启了 GPIO 和 串口 3 的功能,更多高级功能需要利用 ENV 工具对 BSP 进行配置,步骤如下: - -1. 在 BSP 下打开 env 工具。 - -2. 输入 `menuconfig` 命令配置工程,配置好之后保存退出。 - -3. 输入 `pkgs --update` 命令更新软件包。 - -4. 输入 `scons --target=mdk5/iar` 命令重新生成工程。 - -本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32 系列 BSP 外设驱动使用教程. md)。 - -## 注意事项 - -暂无 - -## 联系人信息 - -维护人: - -- [flybreak](https://github.com/guozhanxin) ,邮箱:<[email protected]>
\ No newline at end of file +> +> https://github.com/mysterywolf diff --git a/bsp/stm32/stm32f412-st-nucleo/README_zh.md b/bsp/stm32/stm32f412-st-nucleo/README_zh.md new file mode 100644 index 0000000000..2502e29e29 --- /dev/null +++ b/bsp/stm32/stm32f412-st-nucleo/README_zh.md @@ -0,0 +1,107 @@ +# NUCLEO-F412ZG 开发板 BSP 说明 + +## 简介 + +本文档为 RT-Thread 开发团队为 NUCLEO-F412ZG 开发板提供的 BSP (板级支持包) 说明。 + +主要内容如下: + +- 开发板资源介绍 +- BSP 快速上手 +- 进阶使用方法 + +通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 + +## 开发板介绍 + +探索者 NUCLEO-F412ZG 是意法半导体推出的一款基于 ARM Cortex-M4 内核的开发板,最高主频为 100Mhz,该开发板具有丰富的板载资源,可以充分发挥 STM32F411ZG 的芯片性能。 + +开发板外观如下图所示: + + + +该开发板常用 **板载资源** 如下: + +- MCU:STM32F412ZG,主频 100MHz,1024KB FLASH ,256KB RAM。 +- 常用外设 + - LED:3 个,USB communication (LD1), user LED (LD2), power LED (LD3) 。 + - 按键,2 个,USER and RESET 。 +- 常用接口:USB 支持 3 种不同接口:虚拟 COM 端口、大容量存储和调试端口。 +- 调试接口,板载 ST-LINK/V2-1 调试器。 + +开发板更多详细信息请参考意法半导体 [NUCLEO-F412ZG 开发板介绍](https://www.st.com/en/evaluation-tools/nucleo-f412zg.html)。 + +## 外设支持 + +本 BSP 目前对外设的支持情况如下: + +| **片上外设** | **支持情况** | **备注** | +| :------------ | :----------: | :-----------------------------------: | +| GPIO | 支持 | PA0, PA1... PH1 ---> PIN: 0, 1...63 | +| UART | 支持 | UART2,UART3 | +| Onchip Flash | 支持 | | +| USB Device | 支持 | | + +## 使用说明 + +使用说明分为如下两个章节: + +- 快速上手 + + 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 + +- 进阶使用 + + 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 + + +### 快速上手 + +本 BSP 为开发者提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 + +#### 硬件连接 + +使用 Type-A to Micro-B 线连接开发板和 PC 供电,红色 LED LD3 (PWR) 和 LD1 (COM) 会点亮。 + +#### 编译下载 + +双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 + +> 工程默认配置使用 ST-LINK 下载程序,点击下载按钮即可下载程序到开发板。 + +#### 运行结果 + +下载程序成功之后,系统会自动运行,观察开发板上 LED 的运行效果,红色 LD3 和 LD1 常亮、蓝色 LD2 会周期性闪烁。 + +USB 虚拟 COM 端口默认连接串口 3,在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: + +```bash + \ | / +- RT - Thread Operating System + / | \ 4.0.2 build Oct 20 2019 + 2006 - 2019 Copyright by rt-thread team +msh > +``` +### 进阶使用 + +此 BSP 默认只开启了 GPIO 和 串口 3 的功能,更多高级功能需要利用 ENV 工具对 BSP 进行配置,步骤如下: + +1. 在 BSP 下打开 env 工具。 + +2. 输入 `menuconfig` 命令配置工程,配置好之后保存退出。 + +3. 输入 `pkgs --update` 命令更新软件包。 + +4. 输入 `scons --target=mdk5/iar` 命令重新生成工程。 + +本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32 系列 BSP 外设驱动使用教程. md)。 + +## 注意事项 + +暂无 + +## 联系人信息 + +维护人: + +- [flybreak](https://github.com/guozhanxin) ,邮箱:<[email protected]>
\ No newline at end of file diff --git a/bsp/stm32/stm32f413-st-nucleo/README.md b/bsp/stm32/stm32f413-st-nucleo/README.md index e795064dba..332dec7307 100644 --- a/bsp/stm32/stm32f413-st-nucleo/README.md +++ b/bsp/stm32/stm32f413-st-nucleo/README.md @@ -1,122 +1,88 @@ -# NUCLEO-F413ZH 开发板 BSP 说明 +# STM32F413-Nucleo BSP Introduction -## 简介 +[中文](README_zh.md) -本文档为 RT-Thread 开发团队为 NUCLEO-F413ZH 开发板的 BSP (板级支持包) 说明。 +## MCU: STM32F413ZH @100MHz, 1.5 MB FLASH, 320KB RAM -主要内容如下: +The STM32F413xG/H devices are based on the high-performance Arm® Cortex®-M4 32-bit RISC core operating at a frequency of up to 100 MHz. Their Cortex®-M4 core features a Floating point unit (FPU) single precision which supports all Arm single-precision data-processing instructions and data types. It also implements a full set of DSP instructions and a memory protection unit (MPU) which enhances application security. -- 开发板资源介绍 -- BSP 快速上手 -- 进阶使用方法 +The STM32F413xG/H devices belong to the STM32F4 access product lines (with products combining power efficiency, performance and integration) while adding a new innovative feature called Batch Acquisition Mode (BAM) allowing to save even more power consumption during data batching. +The STM32F413xG/H devices incorporate high-speed embedded memories (up to 1.5 Mbytes of Flash memory, 320 Kbytes of SRAM), and an extensive range of enhanced I/Os and peripherals connected to two APB buses, three AHB buses and a 32-bit multi-AHB bus matrix. +All devices offer a 12-bit ADC, two 12-bit DACs, a low-power RTC, twelve general-purpose 16-bit timers including two PWM timer for motor control, two general-purpose 32-bit timers and a low power timer. +They also feature standard and advanced communication interfaces. -通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 +#### KEY FEATURES -## 开发板介绍 +- Dynamic Efficiency Line with eBAM (enhanced Batch Acquisition Mode) + - 1.7 V to 3.6 V power supply + - -40 °C to 85/105/125 °C temperature range +- Core: Arm® 32-bit Cortex®-M4 CPU with FPU, Adaptive real-time accelerator (ART Accelerator™) allowing 0-wait state execution from Flash memory, frequency up to 100 MHz, memory protection unit, 125 DMIPS/ 1.25 DMIPS/MHz (Dhrystone 2.1), and DSP instructions +- Memories + - Up to 1.5 Mbytes of Flash memory + - 320 Kbytes of SRAM + - Flexible external static memory controller with up to 16-bit data bus: SRAM, PSRAM, NOR Flash memory + - Dual mode Quad-SPI interface +- LCD parallel interface, 8080/6800 modes +- Clock, reset and supply management + - 1.7 to 3.6 V application supply and I/Os + - POR, PDR, PVD and BOR + - 4-to-26 MHz crystal oscillator + - Internal 16 MHz factory-trimmed RC + - 32 kHz oscillator for RTC with calibration + - Internal 32 kHz RC with calibration +- Power consumption + - Run: 112 μA/MHz (peripheral off) + - Stop (Flash in Stop mode, fast wakeup time): 42 μA Typ.; 80 μA max @25 °C + - Stop (Flash in Deep power down mode, slow wakeup time): 15 μA Typ.; 46 μA max @25 °C + - Standby without RTC: 1.1 μA Typ.; 14.7 μA max at @85 °C + - VBAT supply for RTC: 1 μA @25 °C +- 2x12-bit D/A converters +- 1×12-bit, 2.4 MSPS ADC: up to 16 channels +- 6x digital filters for sigma delta modulator, 12x PDM interfaces, with stereo microphone and sound source localization support +- General-purpose DMA: 16-stream DMA -探索者 NUCLEO-F413ZH 是意法半导体推出的一款基于 ARM Cortex-M4 内核的开发板,最高主频为 100Mhz,该开发板具有丰富的板载资源,可以充分发挥 NUCLEO-F413ZH 的芯片性能。 +- Up to 18 timers: up to twelve 16-bit timers, two 32-bit timers up to 100 MHz each with up to four IC/OC/PWM or pulse counter and quadrature (incremental) encoder input, two watchdog timers (independent and window), one SysTick timer, and a low-power timer +- Debug mode + - Serial wire debug (SWD) & JTAG + - Cortex®-M4 Embedded Trace Macrocell™ +- Up to 114 I/O ports with interrupt capability + - Up to 109 fast I/Os up to 100 MHz + - Up to 114 five V-tolerant I/Os +- Up to 24 communication interfaces + - Up to 4x I2C interfaces (SMBus/PMBus) + - Up to 10 UARTS: 4 USARTs / 6 UARTs (2 x 12.5 Mbit/s, 2 x 6.25 Mbit/s), ISO 7816 interface, LIN, IrDA, modem control) + - Up to 5 SPI/I2Ss (up to 50 Mbit/s, SPI or I2S audio protocol), out of which 2 muxed full-duplex I2S interfaces + - SDIO interface (SD/MMC/eMMC) + - Advanced connectivity: USB 2.0 full-speed device/host/OTG controller with PHY + - 3x CAN (2.0B Active) + - 1xSAI +- True random number generator +- CRC calculation unit +- 96-bit unique ID +- RTC: subsecond accuracy, hardware calendar +- All packages are ECOPACK®2 -开发板外观如下图所示: - -该开发板常用 **板载资源** 如下: +## Read more -- MCU:STM32F413ZH,主频 100MHz,1536KB FLASH ,320KB RAM -- 常用外设 - - LED:8个,user LED (JP5跳帽需连接)(黄色,PB0,LD1;蓝色,PB7,LD2;红色,PB14,LD3), USB communication (LD4), over current (LD5), power LED (黄色,LD6), USB FAULT (LD7), VBUS (LD8)。 - - 按键:2个,B1(USER,PC13),B2(RESET) -- 常用接口:USB 支持 3 种不同接口:虚拟 COM 端口、大容量存储和调试端口等。 -- 调试接口,板载 ST-LINK/V2-1 调试器。 +| Documents | Description | +| :----------------------------------------------------------: | :----------------------------------------------------------: | +| [STM32_Nucleo-144_BSP_Introduction](../docs/STM32_Nucleo-144_BSP_Introduction.md) | How to run RT-Thread on STM32 Nucleo-144 boards (**Must-Read**) | +| [STM32F413ZH ST Official Website](https://www.st.com/zh/microcontrollers-microprocessors/stm32f413zh.html#documentation) | STM32F413ZH datasheet and other resources | -开发板更多详细信息请参考意法半导体 [NUCLEO-F413ZH 开发板介绍](https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-f413zh.html)。 -## 外设支持 -本 BSP 目前对外设的支持情况如下: +## Maintained By -| **板载外设** | **支持情况** | **备注** | -| :------------ | :----------: | :-----------------------------------: | -|STLINK TO USART| 支持 | UART3 | +[flybreak](https://github.com/guozhanxin) [email protected] -| **片上外设** | **支持情况** | **备注** | -| :------------ | :----------: | :-----------------------------------: | -| GPIO | 支持 | | -| UART | 支持 | UART2/3 | -| SPI | 支持 | SPI2 | -| I2C | 支持 | I2C1(软件模拟) | -| TIMER | 支持 | TIM11/13/14 | -| PWM | 支持 | PWM2_CH4 | -| ADC | 支持 | ADC1_IN5 | -| RTC | 支持 | 支持外部晶振和内部低速时钟 | -| WDT | 支持 | 独立看门狗 | -| Onchip Flash | 支持 | 片上Flash | -| USB OTG_FS | 支持 | OTGFS as USB device | -| Onchip Flash | 支持 | 片上Flash | -| USB Device | 支持 | OTGFS as USB device | -| RNG | 支持 | Random Number Generator | -| UDID | 支持 | Unique Device Identifier | -## 使用说明 -使用说明分为如下两个章节: +## Translated By -- 快速上手 +Meco Man @ RT-Thread Community - 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 - -- 进阶使用 - - 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 - - -### 快速上手 - -本 BSP 为开发者提供 MDK4、MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 - -#### 硬件连接 - -使用 Type-A to Micro-B 线连接开发板和 PC 供电,黄色 LED LD6 (PWR) 和 LD4 (COM) 会点亮。 - -#### 编译下载 - -双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 - -> 工程默认配置使用 板载ST-LINK 仿真器下载程序,在通过 Micro USB线 连接开发板的基础上,点击下载按钮即可下载程序到开发板 - -#### 运行结果 - -下载程序成功之后,系统会自动运行,在JP5跳帽连接时,观察开发板上LD1的运行效果,黄色LED会周期性闪烁。 - -连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: - -```bash - \ | / -- RT - Thread Operating System - / | \ 4.0.3 build Apr 28 2020 - 2006 - 2020 Copyright by rt-thread team -msh > -``` -### 进阶使用 - -此 BSP 默认只开启了 GPIO 和 UART3 的功能,更多高级功能需要利用 ENV 工具对 BSP 进行配置,步骤如下: - -1. 在 bsp 下打开 env 工具。 - -2. 输入`menuconfig`命令配置工程,配置好之后保存退出。 - -3. 输入`pkgs --update`命令更新软件包。 - -4. 输入`scons --target=mdk4/mdk5/iar` 命令重新生成工程。 - -本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32系列BSP外设驱动使用教程.md)。 - -## 注意事项 - -暂无 - -## 联系人信息 - -维护人: - -- [flybreak](https://github.com/XYX12306) ,邮箱:<[email protected]>
\ No newline at end of file +> +> https://github.com/mysterywolf
\ No newline at end of file diff --git a/bsp/stm32/stm32f413-st-nucleo/README_zh.md b/bsp/stm32/stm32f413-st-nucleo/README_zh.md new file mode 100644 index 0000000000..e795064dba --- /dev/null +++ b/bsp/stm32/stm32f413-st-nucleo/README_zh.md @@ -0,0 +1,122 @@ +# NUCLEO-F413ZH 开发板 BSP 说明 + +## 简介 + +本文档为 RT-Thread 开发团队为 NUCLEO-F413ZH 开发板的 BSP (板级支持包) 说明。 + +主要内容如下: + +- 开发板资源介绍 +- BSP 快速上手 +- 进阶使用方法 + +通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 + +## 开发板介绍 + +探索者 NUCLEO-F413ZH 是意法半导体推出的一款基于 ARM Cortex-M4 内核的开发板,最高主频为 100Mhz,该开发板具有丰富的板载资源,可以充分发挥 NUCLEO-F413ZH 的芯片性能。 + +开发板外观如下图所示: + + + +该开发板常用 **板载资源** 如下: + +- MCU:STM32F413ZH,主频 100MHz,1536KB FLASH ,320KB RAM +- 常用外设 + - LED:8个,user LED (JP5跳帽需连接)(黄色,PB0,LD1;蓝色,PB7,LD2;红色,PB14,LD3), USB communication (LD4), over current (LD5), power LED (黄色,LD6), USB FAULT (LD7), VBUS (LD8)。 + - 按键:2个,B1(USER,PC13),B2(RESET) +- 常用接口:USB 支持 3 种不同接口:虚拟 COM 端口、大容量存储和调试端口等。 +- 调试接口,板载 ST-LINK/V2-1 调试器。 + +开发板更多详细信息请参考意法半导体 [NUCLEO-F413ZH 开发板介绍](https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-f413zh.html)。 + +## 外设支持 + +本 BSP 目前对外设的支持情况如下: + +| **板载外设** | **支持情况** | **备注** | +| :------------ | :----------: | :-----------------------------------: | +|STLINK TO USART| 支持 | UART3 | + +| **片上外设** | **支持情况** | **备注** | +| :------------ | :----------: | :-----------------------------------: | +| GPIO | 支持 | | +| UART | 支持 | UART2/3 | +| SPI | 支持 | SPI2 | +| I2C | 支持 | I2C1(软件模拟) | +| TIMER | 支持 | TIM11/13/14 | +| PWM | 支持 | PWM2_CH4 | +| ADC | 支持 | ADC1_IN5 | +| RTC | 支持 | 支持外部晶振和内部低速时钟 | +| WDT | 支持 | 独立看门狗 | +| Onchip Flash | 支持 | 片上Flash | +| USB OTG_FS | 支持 | OTGFS as USB device | +| Onchip Flash | 支持 | 片上Flash | +| USB Device | 支持 | OTGFS as USB device | +| RNG | 支持 | Random Number Generator | +| UDID | 支持 | Unique Device Identifier | + +## 使用说明 + +使用说明分为如下两个章节: + +- 快速上手 + + 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 + +- 进阶使用 + + 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 + + +### 快速上手 + +本 BSP 为开发者提供 MDK4、MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 + +#### 硬件连接 + +使用 Type-A to Micro-B 线连接开发板和 PC 供电,黄色 LED LD6 (PWR) 和 LD4 (COM) 会点亮。 + +#### 编译下载 + +双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 + +> 工程默认配置使用 板载ST-LINK 仿真器下载程序,在通过 Micro USB线 连接开发板的基础上,点击下载按钮即可下载程序到开发板 + +#### 运行结果 + +下载程序成功之后,系统会自动运行,在JP5跳帽连接时,观察开发板上LD1的运行效果,黄色LED会周期性闪烁。 + +连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: + +```bash + \ | / +- RT - Thread Operating System + / | \ 4.0.3 build Apr 28 2020 + 2006 - 2020 Copyright by rt-thread team +msh > +``` +### 进阶使用 + +此 BSP 默认只开启了 GPIO 和 UART3 的功能,更多高级功能需要利用 ENV 工具对 BSP 进行配置,步骤如下: + +1. 在 bsp 下打开 env 工具。 + +2. 输入`menuconfig`命令配置工程,配置好之后保存退出。 + +3. 输入`pkgs --update`命令更新软件包。 + +4. 输入`scons --target=mdk4/mdk5/iar` 命令重新生成工程。 + +本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32系列BSP外设驱动使用教程.md)。 + +## 注意事项 + +暂无 + +## 联系人信息 + +维护人: + +- [flybreak](https://github.com/XYX12306) ,邮箱:<[email protected]>
\ No newline at end of file diff --git a/bsp/stm32/stm32f413-st-nucleo/project.uvgui.19827 b/bsp/stm32/stm32f413-st-nucleo/project.uvgui.19827 deleted file mode 100644 index 14130db322..0000000000 --- a/bsp/stm32/stm32f413-st-nucleo/project.uvgui.19827 +++ /dev/null @@ -1,1319 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no" ?> -<ProjectGui xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_gui.xsd"> - - <SchemaVersion>-3.1</SchemaVersion> - - <Header>### uVision Project, (C) Keil Software</Header> - - <ViewPool/> - - <SECTreeCtrl> - <View> - <WinId>38003</WinId> - <ViewName>Registers</ViewName> - <TableColWidths>115 92</TableColWidths> - </View> - <View> - <WinId>346</WinId> - <ViewName>Code Coverage</ViewName> - <TableColWidths>725 160</TableColWidths> - </View> - <View> - <WinId>204</WinId> - <ViewName>Performance Analyzer</ViewName> - <TableColWidths>885</TableColWidths> - </View> - </SECTreeCtrl> - - <TreeListPane> - <View> - <WinId>1506</WinId> - <ViewName>Symbols</ViewName> - <UserString></UserString> - <TableColWidths>133 133 133</TableColWidths> - </View> - <View> - <WinId>1936</WinId> - <ViewName>Watch 1</ViewName> - <UserString></UserString> - <TableColWidths>133 133 133</TableColWidths> - </View> - <View> - <WinId>1937</WinId> - <ViewName>Watch 2</ViewName> - <UserString></UserString> - <TableColWidths>133 133 133</TableColWidths> - </View> - <View> - <WinId>1935</WinId> - <ViewName>Call Stack + Locals</ViewName> - <UserString></UserString> - <TableColWidths>133 133 133</TableColWidths> - </View> - <View> - <WinId>2506</WinId> - <ViewName>Trace Data</ViewName> - <UserString></UserString> - <TableColWidths>75 135 130 95 70 230 200</TableColWidths> - </View> - </TreeListPane> - - <WindowSettings> - <LogicAnalizer> - <ShowLACursor>1</ShowLACursor> - <ShowSignalInfo>1</ShowSignalInfo> - <ShowCycles>0</ShowCycles> - </LogicAnalizer> - </WindowSettings> - - <WinLayoutEx> - <sActiveDebugView></sActiveDebugView> - <WindowPosition> - <length>44</length> - <flags>2</flags> - <showCmd>3</showCmd> - <MinPosition> - <xPos>-1</xPos> - <yPos>-1</yPos> - </MinPosition> - <MaxPosition> - <xPos>-1</xPos> - <yPos>-1</yPos> - </MaxPosition> - <NormalPosition> - <Top>154</Top> - <Left>368</Left> - <Right>1520</Right> - <Bottom>747</Bottom> - </NormalPosition> - </WindowPosition> - <MDIClientArea> - <RegID>0</RegID> - <MDITabState> - <Len>268</Len> - <Data>01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000001000000000000000100000048483A5C52542D5468726561645C72742D7468726561645C6273705C73746D33325C73746D3332663431332D73742D6E75636C656F5C6170706C69636174696F6E735C6D61696E2E6300000000066D61696E2E6300000000FFDC7800FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000DD000000660000000006000025030000</Data> - </MDITabState> - </MDIClientArea> - <ViewEx> - <ViewType>0</ViewType> - <ViewName>Build</ViewName> - <Window> - <RegID>-1</RegID> - <PaneID>-1</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>DD0000004F000000F0050000EC000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1005</RegID> - <PaneID>1005</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000066000000D6000000F5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F000000E100000093020000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>109</RegID> - <PaneID>109</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000066000000D6000000F5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F000000E100000093020000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1465</RegID> - <PaneID>1465</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0000000061020000F0050000FE020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1466</RegID> - <PaneID>1466</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1467</RegID> - <PaneID>1467</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1468</RegID> - <PaneID>1468</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0000000061020000F0050000EA020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1506</RegID> - <PaneID>1506</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>16384</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000FA000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1913</RegID> - <PaneID>1913</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>DD000000630000005C040000EC000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1935</RegID> - <PaneID>1935</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>32768</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1936</RegID> - <PaneID>1936</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1937</RegID> - <PaneID>1937</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1938</RegID> - <PaneID>1938</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1939</RegID> - <PaneID>1939</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1940</RegID> - <PaneID>1940</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1941</RegID> - <PaneID>1941</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>1942</RegID> - <PaneID>1942</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000064020000ED050000D1020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>195</RegID> - <PaneID>195</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000066000000D6000000F5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F000000E100000093020000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>196</RegID> - <PaneID>196</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000066000000D6000000F5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F000000E100000093020000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>197</RegID> - <PaneID>197</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>32768</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0000000075020000F0050000FE020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>198</RegID> - <PaneID>198</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>32768</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>000000004D020000F0050000FE020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>199</RegID> - <PaneID>199</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000078020000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>203</RegID> - <PaneID>203</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>8192</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>DD00000063000000F0050000EC000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>204</RegID> - <PaneID>204</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>E00000006600000059040000D3000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>221</RegID> - <PaneID>221</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>00000000000000000000000000000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>0A0000000A0000006E0000006E000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>2506</RegID> - <PaneID>2506</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>600400004F000000F00500005D020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>2507</RegID> - <PaneID>2507</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>600400004F000000F00500005D020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>343</RegID> - <PaneID>343</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>E00000006600000059040000D3000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>346</RegID> - <PaneID>346</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>E00000006600000059040000D3000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35824</RegID> - <PaneID>35824</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>E00000006600000059040000D3000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35885</RegID> - <PaneID>35885</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35886</RegID> - <PaneID>35886</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35887</RegID> - <PaneID>35887</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35888</RegID> - <PaneID>35888</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35889</RegID> - <PaneID>35889</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35890</RegID> - <PaneID>35890</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35891</RegID> - <PaneID>35891</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35892</RegID> - <PaneID>35892</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35893</RegID> - <PaneID>35893</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35894</RegID> - <PaneID>35894</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35895</RegID> - <PaneID>35895</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35896</RegID> - <PaneID>35896</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35897</RegID> - <PaneID>35897</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35898</RegID> - <PaneID>35898</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35899</RegID> - <PaneID>35899</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35900</RegID> - <PaneID>35900</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35901</RegID> - <PaneID>35901</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35902</RegID> - <PaneID>35902</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35903</RegID> - <PaneID>35903</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35904</RegID> - <PaneID>35904</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6304000066000000ED050000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>35905</RegID> - <PaneID>35905</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>6004000063000000F0050000FE020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000098010000AF010000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>38003</RegID> - <PaneID>38003</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0300000066000000D6000000E5020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F000000E100000093020000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>38007</RegID> - <PaneID>38007</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0000000075020000F0050000FE020000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>080000001F00000000030000BC000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>59392</RegID> - <PaneID>59392</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>8192</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>0000000000000000B70300001C000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>0A0000000A0000006E0000006E000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>59393</RegID> - <PaneID>0</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>4096</RecentFrameAlignment> - <RecentRowIndex>0</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>000000000E0300000006000021030000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>0A0000000A0000006E0000006E000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>59399</RegID> - <PaneID>59399</PaneID> - <IsVisible>1</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>8192</RecentFrameAlignment> - <RecentRowIndex>1</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>000000001C0000009201000038000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>0A0000000A0000006E0000006E000000</Data> - </RectRecentFloat> - </Window> - <Window> - <RegID>59400</RegID> - <PaneID>59400</PaneID> - <IsVisible>0</IsVisible> - <IsFloating>0</IsFloating> - <IsTabbed>0</IsTabbed> - <IsActivated>0</IsActivated> - <MRUWidth>32767</MRUWidth> - <PinState>0</PinState> - <RecentFrameAlignment>8192</RecentFrameAlignment> - <RecentRowIndex>2</RecentRowIndex> - <RectRecentDocked> - <Len>16</Len> - <Data>00000000380000006F02000054000000</Data> - </RectRecentDocked> - <RectRecentFloat> - <Len>16</Len> - <Data>0A0000000A0000006E0000006E000000</Data> - </RectRecentFloat> - </Window> - <DockMan> - <Len>2649</Len> - <Data>000000000D000000000000000020000000000000FFFFFFFFFFFFFFFFDD000000EC000000F0050000F0000000000000000100001004000000010000000000000000000000FFFFFFFF06000000CB00000057010000CC000000F08B00005A01000079070000FFFF02000B004354616262656450616E650020000000000000080000001F00000000030000BC000000DD0000004F000000F0050000EC0000000000000040280046060000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF5C0400004F00000060040000FE02000000000000020000100400000001000000000000000000000000000000000000000000000001000000FFFFFFFF16000000E20500002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000001800040000000000000080000001F00000098010000AF010000600400004F000000F0050000FE0200000000000040410046160000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000001000000000000000000000001000000FFFFFFFF00000000C400000090010000C80000000000000001000000040000000000000000000000000000000000000001000000CA090000CB09000002000000000000000000000002000000FFFFFFFF6004000057010000F00500005B01000000000000010000000400000000000000000000000000000000000000000000000000000003000000FFFFFFFFE2050000CA090000CB09000001000000CB09000001000000CA09000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFD90000004F000000DD0000000E030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C40000007394000001800010000001000000080000001F000000E100000093020000000000004F000000D90000000E0300000000000040140056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF0000000049020000F00500004D02000000000000010000100400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0C0000008F07000093070000940700009507000096070000900700009107000092070000B9050000BA050000BB050000BC05000001800040000000000000080000001F00000098010000AF010000000000004D020000F0050000FE02000000000000404100460C0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF1452756E2054696D6520456E7669726F6E6D656E74000000009207000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000003000000000000000000000003000000FFFFFFFFF80200004D020000FC020000FE02000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000000000000FFFFFFFFFFFFFFFF000000005D020000F005000061020000000000000100001004000000010000000000000000000000FFFFFFFF03000000C5000000C70000007794000001800080000000000000080000001F00000000030000BC0000000000000061020000F0050000FE0200000000000040820046030000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000</Data> - </DockMan> - <ToolBar> - <RegID>59392</RegID> - <Name>File</Name> - <Buttons> - <Len>2251</Len> - <Data>00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000004000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE8030000000000000000000000000000000000000000000000010000000100000096000000020020500000000013424154485F54454D505F50524F42455F45525296000000000000000D000E5052455F5357495443485F4552521648454154494E475F54454D505F50524F42455F4552521148454154494E475F54454D505F4F5645521948454154494E475F54454D505F465245455A494E475F50524F0C424154485F54494D454F55540754534B5F4552520746554E5F45525209454D4245525F45525207454C455F4552520E424154485F54454D505F4F56455208464952455F455252043078453013424154485F54454D505F50524F42455F45525200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018022800000020000001500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E4C010000020001001A0000000F50726F6A6563742057696E646F7773000000000000000000000000010000000100000000000000000000000100000008002880DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002880DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002880E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002880E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000288018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000028800000000000000400FFFFFFFF00000000000000000000000000010000000100000000000000000000000100000000002880D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002880E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65FF7F0000</Data> - </Buttons> - <OriginalItems> - <Len>1423</Len> - <Data>2800FFFF01001100434D4643546F6F6C426172427574746F6E00E1000000000000FFFFFFFF000100000000000000010000000000000001000000018001E1000000000000FFFFFFFF000100000000000000010000000000000001000000018003E1000000000000FFFFFFFF0001000000000000000100000000000000010000000180CD7F000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF000000000000000000010000000000000001000000018023E1000000000000FFFFFFFF000100000000000000010000000000000001000000018022E1000000000000FFFFFFFF000100000000000000010000000000000001000000018025E1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001802BE1000000000000FFFFFFFF00010000000000000001000000000000000100000001802CE1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001807A8A000000000000FFFFFFFF00010000000000000001000000000000000100000001807B8A000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180D3B0000000000000FFFFFFFF000100000000000000010000000000000001000000018015B1000000000000FFFFFFFF0001000000000000000100000000000000010000000180F4B0000000000000FFFFFFFF000100000000000000010000000000000001000000018036B1000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180FF88000000000000FFFFFFFF0001000000000000000100000000000000010000000180FE88000000000000FFFFFFFF00010000000000000001000000000000000100000001800B81000000000000FFFFFFFF00010000000000000001000000000000000100000001800C81000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180F088000000000000FFFFFFFF0001000000000000000100000000000000010000000180EE7F000000000000FFFFFFFF000100000000000000010000000000000001000000018024E1000000000000FFFFFFFF00010000000000000001000000000000000100000001800A81000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001802280000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180C488000000000000FFFFFFFF0001000000000000000100000000000000010000000180C988000000000000FFFFFFFF0001000000000000000100000000000000010000000180C788000000000000FFFFFFFF0001000000000000000100000000000000010000000180C888000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180DD88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180FB7F000000000000FFFFFFFF000100000000000000010000000000000001000000</Data> - </OriginalItems> - <OrigResetItems> - <Len>1423</Len> - <Data>2800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000000004000000000000000000000000000000000100000001000000018022E100000000000005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000000000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000000000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000000000C0000000000000000000000000000000001000000010000000180F4B00000000000000D000000000000000000000000000000000100000001000000018036B10000000000000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF880000000000000F0000000000000000000000000000000001000000010000000180FE880000000000001000000000000000000000000000000000010000000100000001800B810000000000001100000000000000000000000000000000010000000100000001800C810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F088000000000000130000000000000000000000000000000001000000010000000180EE7F00000000000014000000000000000000000000000000000100000001000000018024E10000000000001500000000000000000000000000000000010000000100000001800A810000000000001600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018022800000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000180000000000000000000000000000000001000000010000000180C988000000000000190000000000000000000000000000000001000000010000000180C7880000000000001A0000000000000000000000000000000001000000010000000180C8880000000000001B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180DD880000000000001C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001D000000000000000000000000000000000100000001000000</Data> - </OrigResetItems> - </ToolBar> - <ToolBar> - <RegID>59399</RegID> - <Name>Build</Name> - <Buttons> - <Len>575</Len> - <Data>00200000010000000D00FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000000001D000000000000000000000000000000000100000001000000018030800000000000001E00000000000000000000000000000000010000000100000001809E8A0000000004001F0000000000000000000000000000000001000000010000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA00000000000000000000000000000000000000000000000001000000010000009600000003002050000000000972742D746872656164960000000000000001000972742D746872656164000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A0000000004002400000000000000000000000000000000010000000100000000000000054275696C64FF7F0000</Data> - </Buttons> - <OriginalItems> - <Len>478</Len> - <Data>0D00FFFF01001100434D4643546F6F6C426172427574746F6ECF7F000000000000FFFFFFFF0001000000000000000100000000000000010000000180D07F000000000000FFFFFFFF00010000000000000001000000000000000100000001803080000000000000FFFFFFFF00010000000000000001000000000000000100000001809E8A000000000000FFFFFFFF0001000000000000000100000000000000010000000180D17F000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001804C8A000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001806680000000000000FFFFFFFF0001000000000000000100000000000000010000000180EB88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180C07F000000000000FFFFFFFF0001000000000000000100000000000000010000000180B08A000000000000FFFFFFFF000100000000000000010000000000000001000000</Data> - </OriginalItems> - <OrigResetItems> - <Len>478</Len> - <Data>0D00FFFF01001100434D4643546F6F6C426172427574746F6ECF7F000000000000000000000000000000000000000000000001000000010000000180D07F00000000000001000000000000000000000000000000000100000001000000018030800000000000000200000000000000000000000000000000010000000100000001809E8A000000000000030000000000000000000000000000000001000000010000000180D17F0000000000000400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000000500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001806680000000000000060000000000000000000000000000000001000000010000000180EB880000000000000700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000080000000000000000000000000000000001000000010000000180B08A00000000000009000000000000000000000000000000000100000001000000</Data> - </OrigResetItems> - </ToolBar> - <ToolBar> - <RegID>59400</RegID> - <Name>Debug</Name> - <Buttons> - <Len>2220</Len> - <Data>00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000002001380D88B000000000000310000000757617463682031000000000000000000000000010000000100000000000000000000000100000000001380D98B0000000000003100000007576174636820320000000000000000000000000100000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000084D656D6F72792031000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000084D656D6F72792032000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000084D656D6F72792033000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000084D656D6F727920340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000755415254202331000000000000000000000000010000000100000000000000000000000100000000001380940700000000000033000000075541525420233200000000000000000000000001000000010000000000000000000000010000000000138095070000000000003300000007554152542023330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000000E49544D2F525441205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000003400000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380658A000000000000340000000E4C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E00000014506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000D436F646520436F76657261676500000000000000000000000001000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000000000000100000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000138001890000000000003600000007546F6F6C626F7800000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000000000000100000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000000000000100000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F720100000000000000000000000100000001000000000000000000000001000000000000000000054465627567FF7F0000</Data> - </Buttons> - <OriginalItems> - <Len>898</Len> - <Data>1900FFFF01001100434D4643546F6F6C426172427574746F6ECC88000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001801780000000000000FFFFFFFF00010000000000000001000000000000000100000001801D80000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001801A80000000000000FFFFFFFF00010000000000000001000000000000000100000001801B80000000000000FFFFFFFF0001000000000000000100000000000000010000000180E57F000000000000FFFFFFFF00010000000000000001000000000000000100000001801C80000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001800089000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF0000000000000000000100000000000000010000000180E48B000000000000FFFFFFFF0001000000000000000100000000000000010000000180F07F000000000000FFFFFFFF0001000000000000000100000000000000010000000180E888000000000000FFFFFFFF00010000000000000001000000000000000100000001803B01000000000000FFFFFFFF0001000000000000000100000000000000010000000180BB8A000000000000FFFFFFFF0001000000000000000100000000000000010000000180D88B000000000000FFFFFFFF0001000000000000000100000000000000010000000180D28B000000000000FFFFFFFF00010000000000000001000000000000000100000001809307000000000000FFFFFFFF0001000000000000000100000000000000010000000180658A000000000000FFFFFFFF0001000000000000000100000000000000010000000180C18A000000000000FFFFFFFF0001000000000000000100000000000000010000000180EE8B000000000000FFFFFFFF00010000000000000001000000000000000100000001800000000000000000FFFFFFFF00000000000000000001000000000000000100000001800189000000000000FFFFFFFF000100000000000000010000000000000001000000</Data> - </OriginalItems> - <OrigResetItems> - <Len>898</Len> - <Data>1900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000000000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000000100000000000000000000000000000000010000000100000001801D800000000000000200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000000300000000000000000000000000000000010000000100000001801B80000000000000040000000000000000000000000000000001000000010000000180E57F0000000000000500000000000000000000000000000000010000000100000001801C800000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000000700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B000000000000080000000000000000000000000000000001000000010000000180F07F000000000000090000000000000000000000000000000001000000010000000180E8880000000000000A00000000000000000000000000000000010000000100000001803B010000000000000B0000000000000000000000000000000001000000010000000180BB8A0000000000000C0000000000000000000000000000000001000000010000000180D88B0000000000000D0000000000000000000000000000000001000000010000000180D28B0000000000000E000000000000000000000000000000000100000001000000018093070000000000000F0000000000000000000000000000000001000000010000000180658A000000000000100000000000000000000000000000000001000000010000000180C18A000000000000110000000000000000000000000000000001000000010000000180EE8B0000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180018900000000000013000000000000000000000000000000000100000001000000</Data> - </OrigResetItems> - </ToolBar> - <ControlBarsSummary> - <Bars>0</Bars> - <ScreenCX>1536</ScreenCX> - <ScreenCY>864</ScreenCY> - </ControlBarsSummary> - </ViewEx> - </WinLayoutEx> - - <AlienFiles/> - - <MDIGroups> - <Orientation>1</Orientation> - <ActiveMDIGroup>0</ActiveMDIGroup> - <MDIGroup> - <Size>100</Size> - <ActiveTab>0</ActiveTab> - <Doc> - <Name>applications\main.c</Name> - <ColumnNumber>0</ColumnNumber> - <TopLine>1</TopLine> - <CurrentLine>1</CurrentLine> - <Folding>1</Folding> - <ContractedFolders></ContractedFolders> - </Doc> - </MDIGroup> - </MDIGroups> - -</ProjectGui> diff --git a/bsp/stm32/stm32f429-st-disco/.config b/bsp/stm32/stm32f429-st-disco/.config index d2e8ecd259..5dfe532571 100644 --- a/bsp/stm32/stm32f429-st-disco/.config +++ b/bsp/stm32/stm32f429-st-disco/.config @@ -135,6 +135,7 @@ CONFIG_RT_USING_I2C=y # CONFIG_RT_I2C_DEBUG is not set CONFIG_RT_USING_I2C_BITOPS=y # CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_PHY is not set CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set @@ -145,6 +146,11 @@ CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_RTC is not set # CONFIG_RT_USING_SDIO is not set CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_QSPI is not set +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -164,11 +170,11 @@ CONFIG_RT_USING_SPI=y # POSIX layer and C standard library # CONFIG_RT_USING_LIBC=y -CONFIG_RT_USING_PTHREADS=y -CONFIG_PTHREAD_NUM_MAX=8 +# CONFIG_RT_USING_PTHREADS is not set CONFIG_RT_USING_POSIX=y # CONFIG_RT_USING_POSIX_MMAP is not set # CONFIG_RT_USING_POSIX_TERMIOS is not set +# CONFIG_RT_USING_POSIX_GETLINE is not set # CONFIG_RT_USING_POSIX_AIO is not set # CONFIG_RT_USING_MODULE is not set @@ -287,6 +293,9 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_RT_CJSON_TOOLS is not set # CONFIG_PKG_USING_AGILE_TELNET is not set # CONFIG_PKG_USING_NMEALIB is not set +# CONFIG_PKG_USING_AGILE_JSMN is not set +# CONFIG_PKG_USING_PDULIB is not set +# CONFIG_PKG_USING_BTSTACK is not set # # security packages @@ -312,6 +321,7 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_STEMWIN is not set # CONFIG_PKG_USING_WAVPLAYER is not set # CONFIG_PKG_USING_TJPGD is not set +# CONFIG_PKG_USING_HELIX is not set # # tools packages @@ -332,6 +342,7 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_BS8116A is not set # CONFIG_PKG_USING_GPS_RMC is not set # CONFIG_PKG_USING_URLENCODE is not set +# CONFIG_PKG_USING_UMCN is not set # # system packages @@ -359,6 +370,8 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_RAMDISK is not set # CONFIG_PKG_USING_MININI is not set # CONFIG_PKG_USING_QBOOT is not set +# CONFIG_PKG_USING_UCOSIII_WRAPPER is not set +# CONFIG_PKG_USING_PPOOL is not set # # peripheral libraries and drivers @@ -409,6 +422,10 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_QLED is not set # CONFIG_PKG_USING_PAJ7620 is not set # CONFIG_PKG_USING_AGILE_CONSOLE is not set +# CONFIG_PKG_USING_LD3320 is not set +# CONFIG_PKG_USING_WK2124 is not set +# CONFIG_PKG_USING_LY68L6400 is not set +# CONFIG_PKG_USING_DM9051 is not set # # miscellaneous packages @@ -446,39 +463,10 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_CRCLIB is not set - -# -# Privated Packages of RealThread -# -# CONFIG_PKG_USING_CODEC is not set -# CONFIG_PKG_USING_PLAYER is not set -# CONFIG_PKG_USING_MPLAYER is not set -# CONFIG_PKG_USING_PERSIMMON_SRC is not set -# CONFIG_PKG_USING_JS_PERSIMMON is not set -# CONFIG_PKG_USING_JERRYSCRIPT_WIN32 is not set - -# -# Network Utilities -# -# CONFIG_PKG_USING_WICED is not set -# CONFIG_PKG_USING_CLOUDSDK is not set -# CONFIG_PKG_USING_POWER_MANAGER is not set -# CONFIG_PKG_USING_RT_OTA is not set -# CONFIG_PKG_USING_RDBD_SRC is not set -# CONFIG_PKG_USING_RTINSIGHT is not set -# CONFIG_PKG_USING_SMARTCONFIG is not set -# CONFIG_PKG_USING_RTX is not set -# CONFIG_RT_USING_TESTCASE is not set -# CONFIG_PKG_USING_NGHTTP2 is not set -# CONFIG_PKG_USING_AVS is not set -# CONFIG_PKG_USING_ALI_LINKKIT is not set -# CONFIG_PKG_USING_STS is not set -# CONFIG_PKG_USING_DLMS is not set -# CONFIG_PKG_USING_AUDIO_FRAMEWORK is not set -# CONFIG_PKG_USING_ZBAR is not set -# CONFIG_PKG_USING_MCF is not set -# CONFIG_PKG_USING_URPC is not set -# CONFIG_PKG_USING_BSAL is not set +# CONFIG_PKG_USING_THREES is not set +# CONFIG_PKG_USING_2048 is not set +# CONFIG_PKG_USING_LWGPS is not set +# CONFIG_PKG_USING_TENSORFLOWLITEMICRO is not set CONFIG_SOC_FAMILY_STM32=y CONFIG_SOC_SERIES_STM32F4=y diff --git a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf index 9da4173925..ecb5fbac1f 100644 --- a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf +++ b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf @@ -5,7 +5,7 @@ define symbol __ICFEDIT_intvec_start__ = 0x08000000;
/*-Memory Regions-*/
define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
-define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
+define symbol __ICFEDIT_region_ROM_end__ = 0x081FFFFF;
define symbol __ICFEDIT_region_RAM_start__ = 0x20000000;
define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF;
/*-Sizes-*/
diff --git a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds index 040fdd37b0..54de8e1a68 100644 --- a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds +++ b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds @@ -1,5 +1,5 @@ /* - * linker script for STM32F4xx with GNU ld + * linker script for STM32F429xx with GNU ld * bernard.xiong 2009-10-14 */ @@ -7,7 +7,7 @@ MEMORY { ROM (rx) : ORIGIN = 0x08000000, LENGTH = 2048k /* 2048KB flash */ - RAM (rw) : ORIGIN = 0x20000000, LENGTH = 320k /* 320K sram */ + RAM (rw) : ORIGIN = 0x20000000, LENGTH = 192k /* 192K sram */ } ENTRY(Reset_Handler) _system_stack_size = 0x200; diff --git a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct index 0d7c47992d..2407164991 100644 --- a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct +++ b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct @@ -2,13 +2,13 @@ ; *** Scatter-Loading Description File generated by uVision ***
; *************************************************************
-LR_IROM1 0x08000000 0x00100000 { ; load region size_region
- ER_IROM1 0x08000000 0x00100000 { ; load address = execution address
+LR_IROM1 0x08000000 0x00200000 { ; load region size_region
+ ER_IROM1 0x08000000 0x00200000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
}
- RW_IRAM1 0x20000000 0x00020000 { ; RW data
+ RW_IRAM1 0x20000000 0x00030000 { ; RW data
.ANY (+RW +ZI)
}
}
diff --git a/bsp/stm32/stm32f429-st-disco/project.uvoptx b/bsp/stm32/stm32f429-st-disco/project.uvoptx index d3767bff36..ed66375428 100644 --- a/bsp/stm32/stm32f429-st-disco/project.uvoptx +++ b/bsp/stm32/stm32f429-st-disco/project.uvoptx @@ -182,11 +182,1167 @@ </Target> <Group> - <GroupName>Source Group 1</GroupName> + <GroupName>Applications</GroupName> <tvExp>0</tvExp> <tvExpOptDlg>0</tvExpOptDlg> <cbSel>0</cbSel> <RteFlg>0</RteFlg> + <File> + <GroupNumber>1</GroupNumber> + <FileNumber>1</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>applications\main.c</PathWithFileName> + <FilenameWithoutPath>main.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>1</GroupNumber> + <FileNumber>2</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>applications\lcd_init.c</PathWithFileName> + <FilenameWithoutPath>lcd_init.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>cpu</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>2</GroupNumber> + <FileNumber>3</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\libcpu\arm\common\backtrace.c</PathWithFileName> + <FilenameWithoutPath>backtrace.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>2</GroupNumber> + <FileNumber>4</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\libcpu\arm\common\div0.c</PathWithFileName> + <FilenameWithoutPath>div0.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>2</GroupNumber> + <FileNumber>5</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\libcpu\arm\common\showmem.c</PathWithFileName> + <FilenameWithoutPath>showmem.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>2</GroupNumber> + <FileNumber>6</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\libcpu\arm\cortex-m4\cpuport.c</PathWithFileName> + <FilenameWithoutPath>cpuport.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>2</GroupNumber> + <FileNumber>7</FileNumber> + <FileType>2</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\libcpu\arm\cortex-m4\context_rvds.S</PathWithFileName> + <FilenameWithoutPath>context_rvds.S</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>DeviceDrivers</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>8</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\i2c\i2c_core.c</PathWithFileName> + <FilenameWithoutPath>i2c_core.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>9</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\i2c\i2c_dev.c</PathWithFileName> + <FilenameWithoutPath>i2c_dev.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>10</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\i2c\i2c-bit-ops.c</PathWithFileName> + <FilenameWithoutPath>i2c-bit-ops.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>11</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\misc\pin.c</PathWithFileName> + <FilenameWithoutPath>pin.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>12</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\serial\serial.c</PathWithFileName> + <FilenameWithoutPath>serial.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>13</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\spi\spi_core.c</PathWithFileName> + <FilenameWithoutPath>spi_core.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>14</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\spi\spi_dev.c</PathWithFileName> + <FilenameWithoutPath>spi_dev.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>15</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\completion.c</PathWithFileName> + <FilenameWithoutPath>completion.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>16</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\dataqueue.c</PathWithFileName> + <FilenameWithoutPath>dataqueue.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>17</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\pipe.c</PathWithFileName> + <FilenameWithoutPath>pipe.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>18</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\ringblk_buf.c</PathWithFileName> + <FilenameWithoutPath>ringblk_buf.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>19</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\ringbuffer.c</PathWithFileName> + <FilenameWithoutPath>ringbuffer.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>20</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\waitqueue.c</PathWithFileName> + <FilenameWithoutPath>waitqueue.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>3</GroupNumber> + <FileNumber>21</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\drivers\src\workqueue.c</PathWithFileName> + <FilenameWithoutPath>workqueue.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>Drivers</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>22</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>board\board.c</PathWithFileName> + <FilenameWithoutPath>board.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>23</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>board\CubeMX_Config\Src\stm32f4xx_hal_msp.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_msp.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>24</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>board\ports\ili9341.c</PathWithFileName> + <FilenameWithoutPath>ili9341.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>25</FileNumber> + <FileType>2</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm\startup_stm32f429xx.s</PathWithFileName> + <FilenameWithoutPath>startup_stm32f429xx.s</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>26</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\HAL_Drivers\drv_gpio.c</PathWithFileName> + <FilenameWithoutPath>drv_gpio.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>27</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\HAL_Drivers\drv_usart.c</PathWithFileName> + <FilenameWithoutPath>drv_usart.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>28</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\HAL_Drivers\drv_spi.c</PathWithFileName> + <FilenameWithoutPath>drv_spi.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>29</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\HAL_Drivers\drv_sdram.c</PathWithFileName> + <FilenameWithoutPath>drv_sdram.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>30</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\HAL_Drivers\drv_lcd.c</PathWithFileName> + <FilenameWithoutPath>drv_lcd.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>4</GroupNumber> + <FileNumber>31</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\HAL_Drivers\drv_common.c</PathWithFileName> + <FilenameWithoutPath>drv_common.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>Filesystem</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>32</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\src\dfs.c</PathWithFileName> + <FilenameWithoutPath>dfs.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>33</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\src\dfs_file.c</PathWithFileName> + <FilenameWithoutPath>dfs_file.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>34</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\src\dfs_fs.c</PathWithFileName> + <FilenameWithoutPath>dfs_fs.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>35</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\src\dfs_posix.c</PathWithFileName> + <FilenameWithoutPath>dfs_posix.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>36</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\src\poll.c</PathWithFileName> + <FilenameWithoutPath>poll.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>37</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\src\select.c</PathWithFileName> + <FilenameWithoutPath>select.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>5</GroupNumber> + <FileNumber>38</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\dfs\filesystems\devfs\devfs.c</PathWithFileName> + <FilenameWithoutPath>devfs.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>finsh</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>6</GroupNumber> + <FileNumber>39</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\finsh\shell.c</PathWithFileName> + <FilenameWithoutPath>shell.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>6</GroupNumber> + <FileNumber>40</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\finsh\cmd.c</PathWithFileName> + <FilenameWithoutPath>cmd.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>6</GroupNumber> + <FileNumber>41</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\finsh\msh.c</PathWithFileName> + <FilenameWithoutPath>msh.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>6</GroupNumber> + <FileNumber>42</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\finsh\msh_file.c</PathWithFileName> + <FilenameWithoutPath>msh_file.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>Kernel</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>43</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\clock.c</PathWithFileName> + <FilenameWithoutPath>clock.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>44</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\components.c</PathWithFileName> + <FilenameWithoutPath>components.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>45</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\device.c</PathWithFileName> + <FilenameWithoutPath>device.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>46</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\idle.c</PathWithFileName> + <FilenameWithoutPath>idle.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>47</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\ipc.c</PathWithFileName> + <FilenameWithoutPath>ipc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>48</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\irq.c</PathWithFileName> + <FilenameWithoutPath>irq.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>49</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\kservice.c</PathWithFileName> + <FilenameWithoutPath>kservice.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>50</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\memheap.c</PathWithFileName> + <FilenameWithoutPath>memheap.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>51</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\mempool.c</PathWithFileName> + <FilenameWithoutPath>mempool.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>52</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\object.c</PathWithFileName> + <FilenameWithoutPath>object.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>53</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\scheduler.c</PathWithFileName> + <FilenameWithoutPath>scheduler.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>54</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\signal.c</PathWithFileName> + <FilenameWithoutPath>signal.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>55</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\thread.c</PathWithFileName> + <FilenameWithoutPath>thread.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>7</GroupNumber> + <FileNumber>56</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\src\timer.c</PathWithFileName> + <FilenameWithoutPath>timer.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>libc</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>8</GroupNumber> + <FileNumber>57</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\libc\compilers\armlibc\libc.c</PathWithFileName> + <FilenameWithoutPath>libc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>8</GroupNumber> + <FileNumber>58</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\libc\compilers\armlibc\mem_std.c</PathWithFileName> + <FilenameWithoutPath>mem_std.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>8</GroupNumber> + <FileNumber>59</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\libc\compilers\armlibc\stdio.c</PathWithFileName> + <FilenameWithoutPath>stdio.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>8</GroupNumber> + <FileNumber>60</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\libc\compilers\armlibc\stubs.c</PathWithFileName> + <FilenameWithoutPath>stubs.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>8</GroupNumber> + <FileNumber>61</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\libc\compilers\common\time.c</PathWithFileName> + <FilenameWithoutPath>time.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>8</GroupNumber> + <FileNumber>62</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\..\..\components\libc\compilers\common\unistd.c</PathWithFileName> + <FilenameWithoutPath>unistd.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + </Group> + + <Group> + <GroupName>STM32_HAL</GroupName> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <cbSel>0</cbSel> + <RteFlg>0</RteFlg> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>63</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Source\Templates\system_stm32f4xx.c</PathWithFileName> + <FilenameWithoutPath>system_stm32f4xx.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>64</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>65</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cec.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_cec.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>66</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cortex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_cortex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>67</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_crc.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_crc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>68</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_cryp.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>69</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp_ex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_cryp_ex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>70</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_dma.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>71</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma_ex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_dma_ex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>72</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_pwr.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>73</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr_ex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_pwr_ex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>74</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_rcc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>75</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc_ex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_rcc_ex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>76</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rng.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_rng.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>77</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_gpio.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_gpio.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>78</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_uart.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_uart.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>79</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_usart.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_usart.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>80</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_i2c.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>81</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c_ex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_i2c_ex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>82</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_spi.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_spi.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>83</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_qspi.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_qspi.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>84</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fmc.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_ll_fmc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>85</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fsmc.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_ll_fsmc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>86</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sdram.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_sdram.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>87</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_ltdc.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>88</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc_ex.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_ltdc_ex.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>89</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma2d.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_dma2d.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>90</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_dma2d.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_ll_dma2d.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> + <File> + <GroupNumber>9</GroupNumber> + <FileNumber>91</FileNumber> + <FileType>1</FileType> + <tvExp>0</tvExp> + <tvExpOptDlg>0</tvExpOptDlg> + <bDave2>0</bDave2> + <PathWithFileName>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dsi.c</PathWithFileName> + <FilenameWithoutPath>stm32f4xx_hal_dsi.c</FilenameWithoutPath> + <RteFlg>0</RteFlg> + <bShared>0</bShared> + </File> </Group> </ProjectOpt> diff --git a/bsp/stm32/stm32f429-st-disco/project.uvproj b/bsp/stm32/stm32f429-st-disco/project.uvproj index 8c5357c3c4..975e8ee431 100644 --- a/bsp/stm32/stm32f429-st-disco/project.uvproj +++ b/bsp/stm32/stm32f429-st-disco/project.uvproj @@ -357,9 +357,9 @@ <useXO>0</useXO> <VariousControls> <MiscControls /> - <Define>USE_HAL_DRIVER, RT_USING_ARM_LIBC, STM32F429xx</Define> + <Define>USE_HAL_DRIVER, RT_USING_ARM_LIBC, __RTTHREAD__, STM32F429xx</Define> <Undefine /> - <IncludePath>.;..\..\include;applications;.;drivers;Libraries\STM32F4xx_HAL_Driver\Inc;Libraries\CMSIS\Device\ST\STM32F4xx\Include;Libraries\CMSIS\Include;..\..\libcpu\arm\common;..\..\libcpu\arm\cortex-m4;..\..\components\dfs\include;..\..\components\dfs\filesystems\devfs;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\finsh;..\..\components\libc\compilers\armlibc;..\..\components\libc\compilers\common</IncludePath> + <IncludePath>applications;..\..\..\libcpu\arm\common;..\..\..\libcpu\arm\cortex-m4;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\spi;..\..\..\components\drivers\include;..\..\..\components\drivers\include;board;board\CubeMX_Config\Inc;board\ports;..\libraries\HAL_Drivers;..\libraries\HAL_Drivers\config;..\..\..\components\dfs\include;..\..\..\components\dfs\filesystems\devfs;..\..\..\components\finsh;.;..\..\..\include;..\..\..\components\libc\compilers\armlibc;..\..\..\components\libc\compilers\common;..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Inc;..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include;..\libraries\STM32F4xx_HAL\CMSIS\Include</IncludePath> </VariousControls> </Cads> <Aads> @@ -400,988 +400,678 @@ </TargetOption> <Groups> <Group> - <GroupName>Kernel</GroupName> - <Files> - <File> - <FileName>clock.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\clock.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>components.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\components.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>cpu.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\cpu.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>device.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\device.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>idle.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\idle.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>ipc.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\ipc.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>irq.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\irq.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>kservice.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\kservice.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>mem.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\mem.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>memheap.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\memheap.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>mempool.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\mempool.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>object.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\object.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>scheduler.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\scheduler.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>signal.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\signal.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>thread.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\thread.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>timer.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\src\timer.c</FilePath> - </File> - </Files> - </Group> - <Group> <GroupName>Applications</GroupName> <Files> <File> - <FileName>application.c</FileName> + <FileName>main.c</FileName> <FileType>1</FileType> - <FilePath>applications\application.c</FilePath> + <FilePath>applications\main.c</FilePath> </File> </Files> <Files> <File> - <FileName>startup.c</FileName> + <FileName>lcd_init.c</FileName> <FileType>1</FileType> - <FilePath>applications\startup.c</FilePath> + <FilePath>applications\lcd_init.c</FilePath> </File> </Files> </Group> <Group> - <GroupName>Drivers</GroupName> - <Files> - <File> - <FileName>board.c</FileName> - <FileType>1</FileType> - <FilePath>drivers\board.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_it.c</FileName> - <FileType>1</FileType> - <FilePath>drivers\stm32f4xx_it.c</FilePath> - </File> - </Files> + <GroupName>cpu</GroupName> <Files> <File> - <FileName>usart.c</FileName> + <FileName>backtrace.c</FileName> <FileType>1</FileType> - <FilePath>drivers\usart.c</FilePath> + <FilePath>..\..\..\libcpu\arm\common\backtrace.c</FilePath> </File> </Files> <Files> <File> - <FileName>drv_sdram.c</FileName> + <FileName>div0.c</FileName> <FileType>1</FileType> - <FilePath>drivers\drv_sdram.c</FilePath> + <FilePath>..\..\..\libcpu\arm\common\div0.c</FilePath> </File> </Files> <Files> <File> - <FileName>drv_i2c.c</FileName> + <FileName>showmem.c</FileName> <FileType>1</FileType> - <FilePath>drivers\drv_i2c.c</FilePath> + <FilePath>..\..\..\libcpu\arm\common\showmem.c</FilePath> </File> </Files> <Files> <File> - <FileName>drv_lcd.c</FileName> + <FileName>cpuport.c</FileName> <FileType>1</FileType> - <FilePath>drivers\drv_lcd.c</FilePath> + <FilePath>..\..\..\libcpu\arm\cortex-m4\cpuport.c</FilePath> </File> </Files> <Files> <File> - <FileName>drv_touch.c</FileName> - <FileType>1</FileType> - <FilePath>drivers\drv_touch.c</FilePath> + <FileName>context_rvds.S</FileName> + <FileType>2</FileType> + <FilePath>..\..\..\libcpu\arm\cortex-m4\context_rvds.S</FilePath> </File> </Files> </Group> <Group> - <GroupName>STM32_HAL</GroupName> - <Files> - <File> - <FileName>system_stm32f4xx.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\system_stm32f4xx.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_adc.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_adc.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_adc_ex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_adc_ex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_can.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_can.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_cec.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cec.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_cortex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cortex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_crc.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_crc.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_cryp.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_cryp_ex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp_ex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dac.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dac.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dac_ex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dac_ex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dcmi.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dcmi.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dcmi_ex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dcmi_ex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dfsdm.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dfsdm.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dma.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dma2d.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma2d.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dma_ex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma_ex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_dsi.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dsi.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_eth.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_eth.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_flash.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_flash.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_flash_ex.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_flash_ex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>stm32f4xx_hal_flash_ramfunc.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_flash_ramfunc.c</FilePath> - </File> - </Files> + <GroupName>DeviceDrivers</GroupName> <Files> <File> - <FileName>stm32f4xx_hal_fmpi2c.c</FileName> + <FileName>i2c_core.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_fmpi2c.c</FilePath> + <FilePath>..\..\..\components\drivers\i2c\i2c_core.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_fmpi2c_ex.c</FileName> + <FileName>i2c_dev.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_fmpi2c_ex.c</FilePath> + <FilePath>..\..\..\components\drivers\i2c\i2c_dev.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_gpio.c</FileName> + <FileName>i2c-bit-ops.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_gpio.c</FilePath> + <FilePath>..\..\..\components\drivers\i2c\i2c-bit-ops.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_hash.c</FileName> + <FileName>pin.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_hash.c</FilePath> + <FilePath>..\..\..\components\drivers\misc\pin.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_hash_ex.c</FileName> + <FileName>serial.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_hash_ex.c</FilePath> + <FilePath>..\..\..\components\drivers\serial\serial.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_hcd.c</FileName> + <FileName>spi_core.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_hcd.c</FilePath> + <FilePath>..\..\..\components\drivers\spi\spi_core.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_i2c.c</FileName> + <FileName>spi_dev.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c.c</FilePath> + <FilePath>..\..\..\components\drivers\spi\spi_dev.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_i2c_ex.c</FileName> + <FileName>completion.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c_ex.c</FilePath> + <FilePath>..\..\..\components\drivers\src\completion.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_i2s.c</FileName> + <FileName>dataqueue.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2s.c</FilePath> + <FilePath>..\..\..\components\drivers\src\dataqueue.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_i2s_ex.c</FileName> + <FileName>pipe.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2s_ex.c</FilePath> + <FilePath>..\..\..\components\drivers\src\pipe.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_irda.c</FileName> + <FileName>ringblk_buf.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_irda.c</FilePath> + <FilePath>..\..\..\components\drivers\src\ringblk_buf.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_iwdg.c</FileName> + <FileName>ringbuffer.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_iwdg.c</FilePath> + <FilePath>..\..\..\components\drivers\src\ringbuffer.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_lptim.c</FileName> + <FileName>waitqueue.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_lptim.c</FilePath> + <FilePath>..\..\..\components\drivers\src\waitqueue.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_ltdc.c</FileName> + <FileName>workqueue.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc.c</FilePath> + <FilePath>..\..\..\components\drivers\src\workqueue.c</FilePath> </File> </Files> + <GroupOption> + <GroupArmAds> + <Cads> + <VariousControls> + <MiscControls /> + <Define> </Define> + <Undefine> </Undefine> + <IncludePath> </IncludePath> + </VariousControls> + </Cads> + </GroupArmAds> + </GroupOption> + </Group> + <Group> + <GroupName>Drivers</GroupName> <Files> <File> - <FileName>stm32f4xx_hal_ltdc_ex.c</FileName> + <FileName>board.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc_ex.c</FilePath> + <FilePath>board\board.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_nand.c</FileName> + <FileName>stm32f4xx_hal_msp.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_nand.c</FilePath> + <FilePath>board\CubeMX_Config\Src\stm32f4xx_hal_msp.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_nor.c</FileName> + <FileName>ili9341.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_nor.c</FilePath> + <FilePath>board\ports\ili9341.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_pccard.c</FileName> - <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pccard.c</FilePath> + <FileName>startup_stm32f429xx.s</FileName> + <FileType>2</FileType> + <FilePath>..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm\startup_stm32f429xx.s</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_pcd.c</FileName> + <FileName>drv_gpio.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pcd.c</FilePath> + <FilePath>..\libraries\HAL_Drivers\drv_gpio.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_pcd_ex.c</FileName> + <FileName>drv_usart.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pcd_ex.c</FilePath> + <FilePath>..\libraries\HAL_Drivers\drv_usart.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_pwr.c</FileName> + <FileName>drv_spi.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr.c</FilePath> + <FilePath>..\libraries\HAL_Drivers\drv_spi.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_pwr_ex.c</FileName> + <FileName>drv_sdram.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr_ex.c</FilePath> + <FilePath>..\libraries\HAL_Drivers\drv_sdram.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_qspi.c</FileName> + <FileName>drv_lcd.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_qspi.c</FilePath> + <FilePath>..\libraries\HAL_Drivers\drv_lcd.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_rcc.c</FileName> + <FileName>drv_common.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc.c</FilePath> + <FilePath>..\libraries\HAL_Drivers\drv_common.c</FilePath> </File> </Files> + </Group> + <Group> + <GroupName>Filesystem</GroupName> <Files> <File> - <FileName>stm32f4xx_hal_rcc_ex.c</FileName> + <FileName>dfs.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc_ex.c</FilePath> + <FilePath>..\..\..\components\dfs\src\dfs.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_rng.c</FileName> + <FileName>dfs_file.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rng.c</FilePath> + <FilePath>..\..\..\components\dfs\src\dfs_file.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_rtc.c</FileName> + <FileName>dfs_fs.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rtc.c</FilePath> + <FilePath>..\..\..\components\dfs\src\dfs_fs.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_rtc_ex.c</FileName> + <FileName>dfs_posix.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rtc_ex.c</FilePath> + <FilePath>..\..\..\components\dfs\src\dfs_posix.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_sai.c</FileName> + <FileName>poll.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sai.c</FilePath> + <FilePath>..\..\..\components\dfs\src\poll.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_sai_ex.c</FileName> + <FileName>select.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sai_ex.c</FilePath> + <FilePath>..\..\..\components\dfs\src\select.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_sd.c</FileName> + <FileName>devfs.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sd.c</FilePath> + <FilePath>..\..\..\components\dfs\filesystems\devfs\devfs.c</FilePath> </File> </Files> + </Group> + <Group> + <GroupName>finsh</GroupName> <Files> <File> - <FileName>stm32f4xx_hal_sdram.c</FileName> + <FileName>shell.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sdram.c</FilePath> + <FilePath>..\..\..\components\finsh\shell.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_smartcard.c</FileName> + <FileName>cmd.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_smartcard.c</FilePath> + <FilePath>..\..\..\components\finsh\cmd.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_spdifrx.c</FileName> + <FileName>msh.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_spdifrx.c</FilePath> + <FilePath>..\..\..\components\finsh\msh.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_spi.c</FileName> + <FileName>msh_file.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_spi.c</FilePath> + <FilePath>..\..\..\components\finsh\msh_file.c</FilePath> </File> </Files> + </Group> + <Group> + <GroupName>Kernel</GroupName> <Files> <File> - <FileName>stm32f4xx_hal_sram.c</FileName> + <FileName>clock.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sram.c</FilePath> + <FilePath>..\..\..\src\clock.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_tim.c</FileName> + <FileName>components.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_tim.c</FilePath> + <FilePath>..\..\..\src\components.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_tim_ex.c</FileName> + <FileName>device.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_tim_ex.c</FilePath> + <FilePath>..\..\..\src\device.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_uart.c</FileName> + <FileName>idle.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_uart.c</FilePath> + <FilePath>..\..\..\src\idle.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_usart.c</FileName> + <FileName>ipc.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_usart.c</FilePath> + <FilePath>..\..\..\src\ipc.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_hal_wwdg.c</FileName> + <FileName>irq.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_wwdg.c</FilePath> + <FilePath>..\..\..\src\irq.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_ll_fmc.c</FileName> + <FileName>kservice.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fmc.c</FilePath> + <FilePath>..\..\..\src\kservice.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_ll_fsmc.c</FileName> + <FileName>memheap.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fsmc.c</FilePath> + <FilePath>..\..\..\src\memheap.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_ll_sdmmc.c</FileName> + <FileName>mempool.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_sdmmc.c</FilePath> + <FilePath>..\..\..\src\mempool.c</FilePath> </File> </Files> <Files> <File> - <FileName>stm32f4xx_ll_usb.c</FileName> + <FileName>object.c</FileName> <FileType>1</FileType> - <FilePath>Libraries\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_usb.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>startup_stm32f429xx.s</FileName> - <FileType>2</FileType> - <FilePath>Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm\startup_stm32f429xx.s</FilePath> + <FilePath>..\..\..\src\object.c</FilePath> </File> </Files> - </Group> - <Group> - <GroupName>cpu</GroupName> <Files> <File> - <FileName>backtrace.c</FileName> + <FileName>scheduler.c</FileName> <FileType>1</FileType> - <FilePath>..\..\libcpu\arm\common\backtrace.c</FilePath> + <FilePath>..\..\..\src\scheduler.c</FilePath> </File> </Files> <Files> <File> - <FileName>div0.c</FileName> + <FileName>signal.c</FileName> <FileType>1</FileType> - <FilePath>..\..\libcpu\arm\common\div0.c</FilePath> + <FilePath>..\..\..\src\signal.c</FilePath> </File> </Files> <Files> <File> - <FileName>showmem.c</FileName> + <FileName>thread.c</FileName> <FileType>1</FileType> - <FilePath>..\..\libcpu\arm\common\showmem.c</FilePath> + <FilePath>..\..\..\src\thread.c</FilePath> </File> </Files> <Files> <File> - <FileName>cpuport.c</FileName> + <FileName>timer.c</FileName> <FileType>1</FileType> - <FilePath>..\..\libcpu\arm\cortex-m4\cpuport.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>context_rvds.S</FileName> - <FileType>2</FileType> - <FilePath>..\..\libcpu\arm\cortex-m4\context_rvds.S</FilePath> + <FilePath>..\..\..\src\timer.c</FilePath> </File> </Files> </Group> <Group> - <GroupName>Filesystem</GroupName> - <Files> - <File> - <FileName>dfs.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\components\dfs\src\dfs.c</FilePath> - </File> - </Files> + <GroupName>libc</GroupName> <Files> <File> - <FileName>dfs_file.c</FileName> + <FileName>libc.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\dfs\src\dfs_file.c</FilePath> + <FilePath>..\..\..\components\libc\compilers\armlibc\libc.c</FilePath> </File> </Files> <Files> <File> - <FileName>dfs_fs.c</FileName> + <FileName>mem_std.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\dfs\src\dfs_fs.c</FilePath> + <FilePath>..\..\..\components\libc\compilers\armlibc\mem_std.c</FilePath> </File> </Files> <Files> <File> - <FileName>dfs_posix.c</FileName> + <FileName>stdio.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\dfs\src\dfs_posix.c</FilePath> + <FilePath>..\..\..\components\libc\compilers\armlibc\stdio.c</FilePath> </File> </Files> <Files> <File> - <FileName>poll.c</FileName> + <FileName>stubs.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\dfs\src\poll.c</FilePath> + <FilePath>..\..\..\components\libc\compilers\armlibc\stubs.c</FilePath> </File> </Files> <Files> <File> - <FileName>select.c</FileName> + <FileName>time.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\dfs\src\select.c</FilePath> + <FilePath>..\..\..\components\libc\compilers\common\time.c</FilePath> </File> </Files> <Files> <File> - <FileName>devfs.c</FileName> + <FileName>unistd.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\dfs\filesystems\devfs\devfs.c</FilePath> + <FilePath>..\..\..\components\libc\compilers\common\unistd.c</FilePath> </File> </Files> </Group> <Group> - <GroupName>DeviceDrivers</GroupName> - <Files> - <File> - <FileName>i2c_core.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\components\drivers\i2c\i2c_core.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>i2c_dev.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\components\drivers\i2c\i2c_dev.c</FilePath> - </File> - </Files> + <GroupName>STM32_HAL</GroupName> <Files> <File> - <FileName>i2c-bit-ops.c</FileName> + <FileName>system_stm32f4xx.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\i2c\i2c-bit-ops.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Source\Templates\system_stm32f4xx.c</FilePath> </File> </Files> <Files> <File> - <FileName>pin.c</FileName> + <FileName>stm32f4xx_hal.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\misc\pin.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal.c</FilePath> </File> </Files> <Files> <File> - <FileName>serial.c</FileName> + <FileName>stm32f4xx_hal_cec.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\serial\serial.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cec.c</FilePath> </File> </Files> <Files> <File> - <FileName>completion.c</FileName> + <FileName>stm32f4xx_hal_cortex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\completion.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cortex.c</FilePath> </File> </Files> <Files> <File> - <FileName>dataqueue.c</FileName> + <FileName>stm32f4xx_hal_crc.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\dataqueue.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_crc.c</FilePath> </File> </Files> <Files> <File> - <FileName>pipe.c</FileName> + <FileName>stm32f4xx_hal_cryp.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\pipe.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp.c</FilePath> </File> </Files> <Files> <File> - <FileName>ringblk_buf.c</FileName> + <FileName>stm32f4xx_hal_cryp_ex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\ringblk_buf.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp_ex.c</FilePath> </File> </Files> <Files> <File> - <FileName>ringbuffer.c</FileName> + <FileName>stm32f4xx_hal_dma.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\ringbuffer.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma.c</FilePath> </File> </Files> <Files> <File> - <FileName>waitqueue.c</FileName> + <FileName>stm32f4xx_hal_dma_ex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\waitqueue.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma_ex.c</FilePath> </File> </Files> <Files> <File> - <FileName>workqueue.c</FileName> + <FileName>stm32f4xx_hal_pwr.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\drivers\src\workqueue.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr.c</FilePath> </File> </Files> - </Group> - <Group> - <GroupName>finsh</GroupName> <Files> <File> - <FileName>shell.c</FileName> + <FileName>stm32f4xx_hal_pwr_ex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\shell.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr_ex.c</FilePath> </File> </Files> <Files> <File> - <FileName>cmd.c</FileName> + <FileName>stm32f4xx_hal_rcc.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\cmd.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc.c</FilePath> </File> </Files> <Files> <File> - <FileName>msh.c</FileName> + <FileName>stm32f4xx_hal_rcc_ex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\msh.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc_ex.c</FilePath> </File> </Files> <Files> <File> - <FileName>msh_file.c</FileName> + <FileName>stm32f4xx_hal_rng.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\msh_file.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rng.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_compiler.c</FileName> + <FileName>stm32f4xx_hal_gpio.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_compiler.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_gpio.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_error.c</FileName> + <FileName>stm32f4xx_hal_uart.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_error.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_uart.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_heap.c</FileName> + <FileName>stm32f4xx_hal_usart.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_heap.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_usart.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_init.c</FileName> + <FileName>stm32f4xx_hal_i2c.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_init.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_node.c</FileName> + <FileName>stm32f4xx_hal_i2c_ex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_node.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c_ex.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_ops.c</FileName> + <FileName>stm32f4xx_hal_spi.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_ops.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_spi.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_parser.c</FileName> + <FileName>stm32f4xx_hal_qspi.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_parser.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_qspi.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_var.c</FileName> + <FileName>stm32f4xx_ll_fmc.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_var.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fmc.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_vm.c</FileName> + <FileName>stm32f4xx_ll_fsmc.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_vm.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fsmc.c</FilePath> </File> </Files> <Files> <File> - <FileName>finsh_token.c</FileName> + <FileName>stm32f4xx_hal_sdram.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\finsh\finsh_token.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sdram.c</FilePath> </File> </Files> - </Group> - <Group> - <GroupName>libc</GroupName> <Files> <File> - <FileName>libc.c</FileName> + <FileName>stm32f4xx_hal_ltdc.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\libc\compilers\armlibc\libc.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc.c</FilePath> </File> </Files> <Files> <File> - <FileName>mem_std.c</FileName> + <FileName>stm32f4xx_hal_ltdc_ex.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\libc\compilers\armlibc\mem_std.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc_ex.c</FilePath> </File> </Files> <Files> <File> - <FileName>stdio.c</FileName> + <FileName>stm32f4xx_hal_dma2d.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\libc\compilers\armlibc\stdio.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma2d.c</FilePath> </File> </Files> <Files> <File> - <FileName>stubs.c</FileName> + <FileName>stm32f4xx_ll_dma2d.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\libc\compilers\armlibc\stubs.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_dma2d.c</FilePath> </File> </Files> <Files> <File> - <FileName>time.c</FileName> + <FileName>stm32f4xx_hal_dsi.c</FileName> <FileType>1</FileType> - <FilePath>..\..\components\libc\compilers\common\time.c</FilePath> + <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dsi.c</FilePath> </File> </Files> </Group> diff --git a/bsp/stm32/stm32f429-st-disco/project.uvprojx b/bsp/stm32/stm32f429-st-disco/project.uvprojx index b6adb12dd1..2bfc2d6515 100644 --- a/bsp/stm32/stm32f429-st-disco/project.uvprojx +++ b/bsp/stm32/stm32f429-st-disco/project.uvprojx @@ -1,13 +1,16 @@ <?xml version="1.0" encoding="UTF-8" standalone="no" ?> <Project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_projx.xsd"> + <SchemaVersion>2.1</SchemaVersion> + <Header>### uVision Project, (C) Keil Software</Header> + <Targets> <Target> <TargetName>rt_thread_stm32f429</TargetName> <ToolsetNumber>0x4</ToolsetNumber> <ToolsetName>ARM-ADS</ToolsetName> - <pCCUsed>5060300::V5.06 update 3 (build 300)::ARMCC</pCCUsed> + <pCCUsed>5060750::V5.06 update 6 (build 750)::ARMCC</pCCUsed> <uAC6>0</uAC6> <TargetOption> <TargetCommonOption> @@ -16,28 +19,28 @@ <PackID>Keil.STM32F4xx_DFP.2.13.0</PackID> <PackURL>http://www.keil.com/pack</PackURL> <Cpu>IRAM(0x20000000,0x30000) IRAM2(0x10000000,0x10000) IROM(0x08000000,0x200000) CPUTYPE("Cortex-M4") FPU2 CLOCK(12000000) ELITTLE</Cpu> - <FlashUtilSpec /> - <StartupFile /> + <FlashUtilSpec></FlashUtilSpec> + <StartupFile></StartupFile> <FlashDriverDll>UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0STM32F4xx_2048 -FS08000000 -FL0200000 -FP0($$Device:STM32F429ZITx$CMSIS\Flash\STM32F4xx_2048.FLM))</FlashDriverDll> <DeviceId>0</DeviceId> <RegisterFile>$$Device:STM32F429ZITx$Drivers\CMSIS\Device\ST\STM32F4xx\Include\stm32f4xx.h</RegisterFile> - <MemoryEnv /> - <Cmp /> - <Asm /> - <Linker /> - <OHString /> - <InfinionOptionDll /> - <SLE66CMisc /> - <SLE66AMisc /> - <SLE66LinkerMisc /> + <MemoryEnv></MemoryEnv> + <Cmp></Cmp> + <Asm></Asm> + <Linker></Linker> + <OHString></OHString> + <InfinionOptionDll></InfinionOptionDll> + <SLE66CMisc></SLE66CMisc> + <SLE66AMisc></SLE66AMisc> + <SLE66LinkerMisc></SLE66LinkerMisc> <SFDFile>$$Device:STM32F429ZITx$CMSIS\SVD\STM32F429x.svd</SFDFile> <bCustSvd>0</bCustSvd> <UseEnv>0</UseEnv> - <BinPath /> - <IncludePath /> - <LibPath /> - <RegisterFilePath /> - <DBRegisterFilePath /> + <BinPath></BinPath> + <IncludePath></IncludePath> + <LibPath></LibPath> + <RegisterFilePath></RegisterFilePath> + <DBRegisterFilePath></DBRegisterFilePath> <TargetStatus> <Error>0</Error> <ExitCodeStop>0</ExitCodeStop> @@ -59,8 +62,8 @@ <BeforeCompile> <RunUserProg1>0</RunUserProg1> <RunUserProg2>0</RunUserProg2> - <UserProg1Name /> - <UserProg2Name /> + <UserProg1Name></UserProg1Name> + <UserProg2Name></UserProg2Name> <UserProg1Dos16Mode>0</UserProg1Dos16Mode> <UserProg2Dos16Mode>0</UserProg2Dos16Mode> <nStopU1X>0</nStopU1X> @@ -69,8 +72,8 @@ <BeforeMake> <RunUserProg1>0</RunUserProg1> <RunUserProg2>0</RunUserProg2> - <UserProg1Name /> - <UserProg2Name /> + <UserProg1Name></UserProg1Name> + <UserProg2Name></UserProg2Name> <UserProg1Dos16Mode>0</UserProg1Dos16Mode> <UserProg2Dos16Mode>0</UserProg2Dos16Mode> <nStopB1X>0</nStopB1X> @@ -79,15 +82,15 @@ <AfterMake> <RunUserProg1>0</RunUserProg1> <RunUserProg2>0</RunUserProg2> - <UserProg1Name /> - <UserProg2Name /> + <UserProg1Name></UserProg1Name> + <UserProg2Name></UserProg2Name> <UserProg1Dos16Mode>0</UserProg1Dos16Mode> <UserProg2Dos16Mode>0</UserProg2Dos16Mode> <nStopA1X>0</nStopA1X> <nStopA2X>0</nStopA2X> </AfterMake> <SelectedForBatchBuild>0</SelectedForBatchBuild> - <SVCSIdString /> + <SVCSIdString></SVCSIdString> </TargetCommonOption> <CommonProperty> <UseCPPCompiler>0</UseCPPCompiler> @@ -101,8 +104,8 @@ <AssembleAssemblyFile>0</AssembleAssemblyFile> <PublicsOnly>0</PublicsOnly> <StopOnExitCode>3</StopOnExitCode> - <CustomArgument /> - <IncludeLibraryModules /> + <CustomArgument></CustomArgument> + <IncludeLibraryModules></IncludeLibraryModules> <ComprImg>1</ComprImg> </CommonProperty> <DllOption> @@ -135,11 +138,11 @@ </Flash1> <bUseTDR>1</bUseTDR> <Flash2>BIN\UL2CM3.DLL</Flash2> - <Flash3 /> - <Flash4 /> - <pFcarmOut /> - <pFcarmGrp /> - <pFcArmRoot /> + <Flash3></Flash3> + <Flash4></Flash4> + <pFcarmOut></pFcarmOut> + <pFcarmGrp></pFcarmGrp> + <pFcArmRoot></pFcArmRoot> <FcArmLst>0</FcArmLst> </Utilities> <TargetArmAds> @@ -172,7 +175,7 @@ <RvctClst>0</RvctClst> <GenPPlst>0</GenPPlst> <AdsCpuType>"Cortex-M4"</AdsCpuType> - <RvctDeviceName /> + <RvctDeviceName></RvctDeviceName> <mOS>0</mOS> <uocRom>0</uocRom> <uocRam>0</uocRam> @@ -305,7 +308,7 @@ <Size>0x10000</Size> </OCR_RVCT10> </OnChipMemories> - <RvctStartVector /> + <RvctStartVector></RvctStartVector> </ArmAdsMisc> <Cads> <interw>1</interw> @@ -332,10 +335,10 @@ <v6WtE>0</v6WtE> <v6Rtti>0</v6Rtti> <VariousControls> - <MiscControls /> - <Define>USE_HAL_DRIVER, RT_USING_ARM_LIBC, STM32F429xx</Define> - <Undefine /> - <IncludePath>applications;..\..\..\libcpu\arm\common;..\..\..\libcpu\arm\cortex-m4;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\spi;..\..\..\components\drivers\include;..\..\..\components\drivers\include;board;board\CubeMX_Config\Inc;board\ports;..\libraries\HAL_Drivers;..\libraries\HAL_Drivers\config;..\..\..\components\dfs\include;..\..\..\components\dfs\filesystems\devfs;..\..\..\components\finsh;.;..\..\..\include;..\..\..\components\libc\compilers\armlibc;..\..\..\components\libc\compilers\common;..\..\..\components\libc\signal;..\..\..\components\libc\pthreads;..\..\..\components\libc\time;..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Inc;..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include;..\libraries\STM32F4xx_HAL\CMSIS\Include</IncludePath> + <MiscControls></MiscControls> + <Define>USE_HAL_DRIVER, RT_USING_ARM_LIBC, __RTTHREAD__, STM32F429xx</Define> + <Undefine></Undefine> + <IncludePath>applications;..\..\..\libcpu\arm\common;..\..\..\libcpu\arm\cortex-m4;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\spi;..\..\..\components\drivers\include;..\..\..\components\drivers\include;board;board\CubeMX_Config\Inc;board\ports;..\libraries\HAL_Drivers;..\libraries\HAL_Drivers\config;..\..\..\components\dfs\include;..\..\..\components\dfs\filesystems\devfs;..\..\..\components\finsh;.;..\..\..\include;..\..\..\components\libc\compilers\armlibc;..\..\..\components\libc\compilers\common;..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Inc;..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include;..\libraries\STM32F4xx_HAL\CMSIS\Include</IncludePath> </VariousControls> </Cads> <Aads> @@ -350,10 +353,10 @@ <useXO>0</useXO> <uClangAs>0</uClangAs> <VariousControls> - <MiscControls /> - <Define /> - <Undefine /> - <IncludePath /> + <MiscControls></MiscControls> + <Define></Define> + <Undefine></Undefine> + <IncludePath></IncludePath> </VariousControls> </Aads> <LDads> @@ -365,13 +368,13 @@ <useFile>0</useFile> <TextAddressRange>0x08000000</TextAddressRange> <DataAddressRange>0x20000000</DataAddressRange> - <pXoBase /> + <pXoBase></pXoBase> <ScatterFile>.\board\linker_scripts\link.sct</ScatterFile> - <IncludeLibs /> - <IncludeLibsPath /> - <Misc /> - <LinkerInputFile /> - <DisabledWarnings /> + <IncludeLibs></IncludeLibs> + <IncludeLibsPath></IncludeLibsPath> + <Misc></Misc> + <LinkerInputFile></LinkerInputFile> + <DisabledWarnings></DisabledWarnings> </LDads> </TargetArmAds> </TargetOption> @@ -384,8 +387,6 @@ <FileType>1</FileType> <FilePath>applications\main.c</FilePath> </File> - </Files> - <Files> <File> <FileName>lcd_init.c</FileName> <FileType>1</FileType> @@ -401,29 +402,21 @@ <FileType>1</FileType> <FilePath>..\..\..\libcpu\arm\common\backtrace.c</FilePath> </File> - </Files> - <Files> <File> <FileName>div0.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\libcpu\arm\common\div0.c</FilePath> </File> - </Files> - <Files> <File> <FileName>showmem.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\libcpu\arm\common\showmem.c</FilePath> </File> - </Files> - <Files> <File> <FileName>cpuport.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\libcpu\arm\cortex-m4\cpuport.c</FilePath> </File> - </Files> - <Files> <File> <FileName>context_rvds.S</FileName> <FileType>2</FileType> @@ -433,116 +426,147 @@ </Group> <Group> <GroupName>DeviceDrivers</GroupName> + <GroupOption> + <CommonProperty> + <UseCPPCompiler>0</UseCPPCompiler> + <RVCTCodeConst>0</RVCTCodeConst> + <RVCTZI>0</RVCTZI> + <RVCTOtherData>0</RVCTOtherData> + <ModuleSelection>0</ModuleSelection> + <IncludeInBuild>1</IncludeInBuild> + <AlwaysBuild>0</AlwaysBuild> + <GenerateAssemblyFile>0</GenerateAssemblyFile> + <AssembleAssemblyFile>0</AssembleAssemblyFile> + <PublicsOnly>0</PublicsOnly> + <StopOnExitCode>3</StopOnExitCode> + <CustomArgument></CustomArgument> + <IncludeLibraryModules></IncludeLibraryModules> + <ComprImg>0</ComprImg> + </CommonProperty> + <GroupArmAds> + <Cads> + <interw>2</interw> + <Optim>0</Optim> + <oTime>2</oTime> + <SplitLS>2</SplitLS> + <OneElfS>2</OneElfS> + <Strict>2</Strict> + <EnumInt>2</EnumInt> + <PlainCh>2</PlainCh> + <Ropi>2</Ropi> + <Rwpi>2</Rwpi> + <wLevel>0</wLevel> + <uThumb>2</uThumb> + <uSurpInc>2</uSurpInc> + <uC99>2</uC99> + <uGnu>2</uGnu> + <useXO>2</useXO> + <v6Lang>0</v6Lang> + <v6LangP>0</v6LangP> + <vShortEn>2</vShortEn> + <vShortWch>2</vShortWch> + <v6Lto>2</v6Lto> + <v6WtE>2</v6WtE> + <v6Rtti>2</v6Rtti> + <VariousControls> + <MiscControls></MiscControls> + <Define> </Define> + <Undefine> </Undefine> + <IncludePath></IncludePath> + </VariousControls> + </Cads> + <Aads> + <interw>2</interw> + <Ropi>2</Ropi> + <Rwpi>2</Rwpi> + <thumb>2</thumb> + <SplitLS>2</SplitLS> + <SwStkChk>2</SwStkChk> + <NoWarn>2</NoWarn> + <uSurpInc>2</uSurpInc> + <useXO>2</useXO> + <uClangAs>2</uClangAs> + <VariousControls> + <MiscControls></MiscControls> + <Define></Define> + <Undefine></Undefine> + <IncludePath></IncludePath> + </VariousControls> + </Aads> + </GroupArmAds> + </GroupOption> <Files> <File> <FileName>i2c_core.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\i2c\i2c_core.c</FilePath> </File> - </Files> - <Files> <File> <FileName>i2c_dev.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\i2c\i2c_dev.c</FilePath> </File> - </Files> - <Files> <File> <FileName>i2c-bit-ops.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\i2c\i2c-bit-ops.c</FilePath> </File> - </Files> - <Files> <File> <FileName>pin.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\misc\pin.c</FilePath> </File> - </Files> - <Files> <File> <FileName>serial.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\serial\serial.c</FilePath> </File> - </Files> - <Files> <File> <FileName>spi_core.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\spi\spi_core.c</FilePath> </File> - </Files> - <Files> <File> <FileName>spi_dev.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\spi\spi_dev.c</FilePath> </File> - </Files> - <Files> <File> <FileName>completion.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\completion.c</FilePath> </File> - </Files> - <Files> <File> <FileName>dataqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\dataqueue.c</FilePath> </File> - </Files> - <Files> <File> <FileName>pipe.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\pipe.c</FilePath> </File> - </Files> - <Files> <File> <FileName>ringblk_buf.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\ringblk_buf.c</FilePath> </File> - </Files> - <Files> <File> <FileName>ringbuffer.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\ringbuffer.c</FilePath> </File> - </Files> - <Files> <File> <FileName>waitqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\waitqueue.c</FilePath> </File> - </Files> - <Files> <File> <FileName>workqueue.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\drivers\src\workqueue.c</FilePath> </File> </Files> - <GroupOption> - <GroupArmAds> - <Cads> - <VariousControls> - <MiscControls /> - <Define> </Define> - <Undefine> </Undefine> - <IncludePath> </IncludePath> - </VariousControls> - </Cads> - </GroupArmAds> - </GroupOption> </Group> <Group> <GroupName>Drivers</GroupName> @@ -552,64 +576,46 @@ <FileType>1</FileType> <FilePath>board\board.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_msp.c</FileName> <FileType>1</FileType> <FilePath>board\CubeMX_Config\Src\stm32f4xx_hal_msp.c</FilePath> </File> - </Files> - <Files> <File> <FileName>ili9341.c</FileName> <FileType>1</FileType> <FilePath>board\ports\ili9341.c</FilePath> </File> - </Files> - <Files> <File> <FileName>startup_stm32f429xx.s</FileName> <FileType>2</FileType> <FilePath>..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Source\Templates\arm\startup_stm32f429xx.s</FilePath> </File> - </Files> - <Files> <File> <FileName>drv_gpio.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\HAL_Drivers\drv_gpio.c</FilePath> </File> - </Files> - <Files> <File> <FileName>drv_usart.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\HAL_Drivers\drv_usart.c</FilePath> </File> - </Files> - <Files> <File> <FileName>drv_spi.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\HAL_Drivers\drv_spi.c</FilePath> </File> - </Files> - <Files> <File> <FileName>drv_sdram.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\HAL_Drivers\drv_sdram.c</FilePath> </File> - </Files> - <Files> <File> <FileName>drv_lcd.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\HAL_Drivers\drv_lcd.c</FilePath> </File> - </Files> - <Files> <File> <FileName>drv_common.c</FileName> <FileType>1</FileType> @@ -625,43 +631,31 @@ <FileType>1</FileType> <FilePath>..\..\..\components\dfs\src\dfs.c</FilePath> </File> - </Files> - <Files> <File> <FileName>dfs_file.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\dfs\src\dfs_file.c</FilePath> </File> - </Files> - <Files> <File> <FileName>dfs_fs.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\dfs\src\dfs_fs.c</FilePath> </File> - </Files> - <Files> <File> <FileName>dfs_posix.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\dfs\src\dfs_posix.c</FilePath> </File> - </Files> - <Files> <File> <FileName>poll.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\dfs\src\poll.c</FilePath> </File> - </Files> - <Files> <File> <FileName>select.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\dfs\src\select.c</FilePath> </File> - </Files> - <Files> <File> <FileName>devfs.c</FileName> <FileType>1</FileType> @@ -677,22 +671,16 @@ <FileType>1</FileType> <FilePath>..\..\..\components\finsh\shell.c</FilePath> </File> - </Files> - <Files> <File> <FileName>cmd.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\finsh\cmd.c</FilePath> </File> - </Files> - <Files> <File> <FileName>msh.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\finsh\msh.c</FilePath> </File> - </Files> - <Files> <File> <FileName>msh_file.c</FileName> <FileType>1</FileType> @@ -708,92 +696,66 @@ <FileType>1</FileType> <FilePath>..\..\..\src\clock.c</FilePath> </File> - </Files> - <Files> <File> <FileName>components.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\components.c</FilePath> </File> - </Files> - <Files> <File> <FileName>device.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\device.c</FilePath> </File> - </Files> - <Files> <File> <FileName>idle.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\idle.c</FilePath> </File> - </Files> - <Files> <File> <FileName>ipc.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\ipc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>irq.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\irq.c</FilePath> </File> - </Files> - <Files> <File> <FileName>kservice.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\kservice.c</FilePath> </File> - </Files> - <Files> <File> <FileName>memheap.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\memheap.c</FilePath> </File> - </Files> - <Files> <File> <FileName>mempool.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\mempool.c</FilePath> </File> - </Files> - <Files> <File> <FileName>object.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\object.c</FilePath> </File> - </Files> - <Files> <File> <FileName>scheduler.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\scheduler.c</FilePath> </File> - </Files> - <Files> <File> <FileName>signal.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\signal.c</FilePath> </File> - </Files> - <Files> <File> <FileName>thread.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\src\thread.c</FilePath> </File> - </Files> - <Files> <File> <FileName>timer.c</FileName> <FileType>1</FileType> @@ -809,143 +771,32 @@ <FileType>1</FileType> <FilePath>..\..\..\components\libc\compilers\armlibc\libc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>mem_std.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\libc\compilers\armlibc\mem_std.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stdio.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\libc\compilers\armlibc\stdio.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stubs.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\libc\compilers\armlibc\stubs.c</FilePath> </File> - </Files> - <Files> <File> <FileName>time.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\libc\compilers\common\time.c</FilePath> </File> - </Files> - <Files> <File> <FileName>unistd.c</FileName> <FileType>1</FileType> <FilePath>..\..\..\components\libc\compilers\common\unistd.c</FilePath> </File> </Files> - <Files> - <File> - <FileName>posix_signal.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\signal\posix_signal.c</FilePath> - </File> - </Files> - </Group> - <Group> - <GroupName>pthreads</GroupName> - <Files> - <File> - <FileName>mqueue.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\mqueue.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_attr.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_attr.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_barrier.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_barrier.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_cond.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_cond.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_mutex.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_mutex.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_rwlock.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_rwlock.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_spin.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_spin.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>pthread_tls.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\pthread_tls.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>sched.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\sched.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>semaphore.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\pthreads\semaphore.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>clock_time.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\time\clock_time.c</FilePath> - </File> - </Files> - <Files> - <File> - <FileName>posix_sleep.c</FileName> - <FileType>1</FileType> - <FilePath>..\..\..\components\libc\time\posix_sleep.c</FilePath> - </File> - </Files> </Group> <Group> <GroupName>STM32_HAL</GroupName> @@ -955,197 +806,141 @@ <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Source\Templates\system_stm32f4xx.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_cec.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cec.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_cortex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cortex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_crc.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_crc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_cryp.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_cryp_ex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_cryp_ex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_dma.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_dma_ex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma_ex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_pwr.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_pwr_ex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_pwr_ex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_rcc.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_rcc_ex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rcc_ex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_rng.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_rng.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_gpio.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_gpio.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_uart.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_uart.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_usart.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_usart.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_i2c.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_i2c_ex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c_ex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_spi.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_spi.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_qspi.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_qspi.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_ll_fmc.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fmc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_ll_fsmc.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_fsmc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_sdram.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sdram.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_ltdc.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_ltdc_ex.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_ltdc_ex.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_dma2d.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_dma2d.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_ll_dma2d.c</FileName> <FileType>1</FileType> <FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_dma2d.c</FilePath> </File> - </Files> - <Files> <File> <FileName>stm32f4xx_hal_dsi.c</FileName> <FileType>1</FileType> @@ -1156,9 +951,11 @@ </Groups> </Target> </Targets> + <RTE> - <apis /> - <components /> - <files /> + <apis/> + <components/> + <files/> </RTE> + </Project> diff --git a/bsp/stm32/stm32f429-st-disco/rtconfig.h b/bsp/stm32/stm32f429-st-disco/rtconfig.h index 9f5b2c77c4..b82b91ec7a 100644 --- a/bsp/stm32/stm32f429-st-disco/rtconfig.h +++ b/bsp/stm32/stm32f429-st-disco/rtconfig.h @@ -93,14 +93,13 @@ #define RT_USING_I2C_BITOPS #define RT_USING_PIN #define RT_USING_SPI + /* Using USB */ /* POSIX layer and C standard library */ #define RT_USING_LIBC -#define RT_USING_PTHREADS -#define PTHREAD_NUM_MAX 8 #define RT_USING_POSIX /* Network */ @@ -162,12 +161,6 @@ /* samples: kernel and components samples */ - -/* Privated Packages of RealThread */ - - -/* Network Utilities */ - #define SOC_FAMILY_STM32 #define SOC_SERIES_STM32F4 diff --git a/bsp/stm32/stm32f429-st-disco/stm32_rom.ld b/bsp/stm32/stm32f429-st-disco/stm32_rom.ld index aa9c9b2af2..e895d97da2 100644 --- a/bsp/stm32/stm32f429-st-disco/stm32_rom.ld +++ b/bsp/stm32/stm32f429-st-disco/stm32_rom.ld @@ -1,13 +1,13 @@ /* - * linker script for STM32F10x with GNU ld + * linker script for STM32F429xx with GNU ld * bernard.xiong 2009-10-14 */ /* Program Entry, set to mark it as "used" and avoid gc */ MEMORY { - CODE (rx) : ORIGIN = 0x08000000, LENGTH = 1024k /* 1024KB flash */ - DATA (rw) : ORIGIN = 0x20000000, LENGTH = 128k /* 128K sram */ + CODE (rx) : ORIGIN = 0x08000000, LENGTH = 2048k /* 1024KB flash */ + DATA (rw) : ORIGIN = 0x20000000, LENGTH = 192k /* 128K sram */ } ENTRY(Reset_Handler) _system_stack_size = 0x200; diff --git a/bsp/stm32/stm32f429-st-disco/stm32_rom.sct b/bsp/stm32/stm32f429-st-disco/stm32_rom.sct index 0d7c47992d..2407164991 100644 --- a/bsp/stm32/stm32f429-st-disco/stm32_rom.sct +++ b/bsp/stm32/stm32f429-st-disco/stm32_rom.sct @@ -2,13 +2,13 @@ ; *** Scatter-Loading Description File generated by uVision ***
; *************************************************************
-LR_IROM1 0x08000000 0x00100000 { ; load region size_region
- ER_IROM1 0x08000000 0x00100000 { ; load address = execution address
+LR_IROM1 0x08000000 0x00200000 { ; load region size_region
+ ER_IROM1 0x08000000 0x00200000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
}
- RW_IRAM1 0x20000000 0x00020000 { ; RW data
+ RW_IRAM1 0x20000000 0x00030000 { ; RW data
.ANY (+RW +ZI)
}
}
diff --git a/bsp/stm32/stm32f429-st-disco/stm32f429_flash.icf b/bsp/stm32/stm32f429-st-disco/stm32f429_flash.icf index 47c5280d08..4e43be768e 100644 --- a/bsp/stm32/stm32f429-st-disco/stm32f429_flash.icf +++ b/bsp/stm32/stm32f429-st-disco/stm32f429_flash.icf @@ -2,10 +2,10 @@ /*-Editor annotation file-*/ /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */ /*-Specials-*/ -define symbol __ICFEDIT_intvec_start__ = 0x08000000;
+define symbol __ICFEDIT_intvec_start__ = 0x08000000; /*-Memory Regions-*/ -define symbol __ICFEDIT_region_ROM_start__ = 0x08000000;
-define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF;
+define symbol __ICFEDIT_region_ROM_start__ = 0x08000000; +define symbol __ICFEDIT_region_ROM_end__ = 0x081FFFFF; define symbol __ICFEDIT_region_RAM_start__ = 0x20000000; define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF; /*-Sizes-*/ diff --git a/bsp/stm32/stm32f446-st-nucleo/README.md b/bsp/stm32/stm32f446-st-nucleo/README.md index e91f1ef45a..bb260c2b31 100644 --- a/bsp/stm32/stm32f446-st-nucleo/README.md +++ b/bsp/stm32/stm32f446-st-nucleo/README.md @@ -1,106 +1,84 @@ -# NUCLEO-F446ZE 开发板 BSP 说明 +# STM32F446-Nucleo BSP Introduction -## 简介 +[中文](README_zh.md) -本文档为 NUCLEO-F446ZE 开发板的 BSP (板级支持包) 说明。 +## MCU: STM32F446ZE @180MHz, 512KB FLASH, 128KB RAM -主要内容如下: +The STM32F446xC/E devices are based on the high-performance Arm® Cortex®-M4 32-bit RISC core operating at a frequency of up to 180 MHz. The Cortex-M4 core features a floating point unit (FPU) single precision supporting all Arm® single-precision data-processing instructions and data types. It also implements a full set of DSP instructions and a memory protection unit (MPU) that enhances application security. -- 开发板资源介绍 -- BSP 快速上手 -- 进阶使用方法 +The STM32F446xC/E devices incorporate high-speed embedded memories (Flash memory up to 512 Kbytes, up to 128 Kbytes of SRAM), up to 4 Kbytes of backup SRAM, and an extensive range of enhanced I/Os and peripherals connected to two APB buses, two AHB buses and a 32-bit multi-AHB bus matrix. +All devices offer three 12-bit ADCs, two DACs, a low-power RTC, twelve general-purpose 16-bit timers including two PWM timers for motor control, two general-purpose 32-bit timers. +They also feature standard and advanced communication interfaces. -通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 +#### KEY FEATURES -## 开发板介绍 +- Core: Arm® 32-bit Cortex®-M4 CPU with FPU, Adaptive real-time accelerator (ART Accelerator) allowing 0-wait state execution from Flash memory, frequency up to 180 MHz, MPU, 225 DMIPS/1.25 DMIPS/MHz (Dhrystone 2.1), and DSP instructions +- Memories + - 512 Kbytes of Flash memory + - 128 Kbytes of SRAM + - Flexible external memory controller with up to 16-bit data bus: SRAM, PSRAM, SDRAM/LPSDR SDRAM, NOR/NAND Flash memories + - Dual mode QuadSPI interface +- LCD parallel interface, 8080/6800 modes +- Clock, reset and supply management + - 1.7 V to 3.6 V application supply and I/Os + - POR, PDR, PVD and BOR + - 4 to 26 MHz crystal oscillator + - Internal 16 MHz factory-trimmed RC (1% accuracy) + - 32 kHz oscillator for RTC with calibration + - Internal 32 kHz RC with calibration +- Low power + - Sleep, Stop and Standby modes + - VBAT supply for RTC, 20×32 bit backup registers plus optional 4 KB backup SRAM +- 3× 12-bit, 2.4 MSPS ADC: up to 24 channels and 7.2 MSPS in triple interleaved mode +- 2× 12-bit D/A converters +- General-purpose DMA: 16-stream DMA controller with FIFOs and burst support +- Up to 17 timers: 2x watchdog, 1x SysTick timer and up to twelve 16-bit and two 32-bit timers up to 180 MHz, each with up to four IC/OC/PWM or pulse counter -NUCLEO-F446ZE 是 ST 公司推出的一款针对 STM32F4 系列设计的 Cortex-M4 Nucleo-144 开发板,支持 mbed,兼容 Arduino、还带有ST Zio和 ST Morpho 扩展接口,可连接微控制器的所有周边外设。 +- Debug mode + - SWD and JTAG interfaces + - Cortex®-M4 Trace Macrocell™ +- Up to 114 I/O ports with interrupt capability + - Up to 111 fast I/Os up to 90 MHz + - Up to 112 5 V-tolerant I/Os +- Up to 20 communication interfaces + - SPDIF-Rx + - Up to 4× I2C interfaces (SMBus/PMBus) + - Up to four USARTs and two UARTs (11.25 Mbit/s, ISO7816 interface, LIN, IrDA, modem control) + - Up to four SPIs (45 Mbits/s), three with muxed I2S for audio class accuracy via internal audio PLL or external clock + - 2x SAI (serial audio interface) + - 2× CAN (2.0B Active) + - SDIO interface + - Consumer electronics control (CEC) I/F +- Advanced connectivity + - USB 2.0 full-speed device/host/OTG controller with on-chip PHY + - USB 2.0 high-speed/full-speed device/host/OTG controller with dedicated DMA, on-chip full-speed PHY and ULPI + - Dedicated USB power rail enabling on-chip PHYs operation throughout the entire MCU power supply range +- 8- to 14-bit parallel camera interface up to 54 Mbytes/s +- CRC calculation unit +- RTC: subsecond accuracy, hardware calendar +- 96-bit unique ID -开发板外观如下图所示: - -该开发板常用 **板载资源** 如下: +## Read more -- MCU:STM32f446ZE,主频 180MHz,512KB FLASH ,128KB RAM -- 常用外设 - - LED:3个,LED1 (绿色,PB0),LED2(蓝色,PB7),LED3(红色,PB14) -- 常用接口:USB 转串口 -- 调试接口,标准 ST-LINK/SWD +| Documents | Description | +| :----------------------------------------------------------: | :----------------------------------------------------------: | +| [STM32_Nucleo-144_BSP_Introduction](../docs/STM32_Nucleo-144_BSP_Introduction.md) | How to run RT-Thread on STM32 Nucleo-144 boards (**Must-Read**) | +| [STM32F446ZE ST Official Website](https://www.st.com/content/st_com/en/products/microcontrollers-microprocessors/stm32-32-bit-arm-cortex-mcus/stm32-high-performance-mcus/stm32f4-series/stm32f446/stm32f446ze.html#documentation) | STM32F446ZE datasheet and other resources | -开发板更多详细信息请参考【NUCLEO-F446ZE】 [开发板介绍](https://www.st.com/zh/evaluation-tools/nucleo-f446ze.html)。 -## 外设支持 -本 BSP 目前对外设的支持情况如下: +## Maintained By -| **板载外设** | **支持情况** | **备注** | -| :----------------- | :----------: | :------------------------------------- | -| USB 转串口 | 支持 | | -| **片上外设** | **支持情况** | **备注** | -| GPIO | 支持 | | -| UART | 支持 | UART1 | -## 使用说明 -使用说明分为如下两个章节: -- 快速上手 +## Translated By - 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 +Meco Man @ RT-Thread Community -- 进阶使用 - - 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 - - -### 快速上手 - -本 BSP 为开发者提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 - -#### 硬件连接 - -使用数据线连接开发板到 PC,通过数据线对开发板供电,下载,调试。 - -#### 编译下载 - -双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 - -> 工程默认配置使用 ST-LINK 仿真器下载程序,在通过 ST-LINK 连接开发板的基础上,点击下载按钮即可下载程序到开发板 - -#### 运行结果 - -下载程序成功之后,系统会自动运行,蓝色的 LED2 以 500MS 周期闪烁。 - -连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: - -```bash - \ | / -- RT - Thread Operating System - / | \ 4.0.0 build Jan 7 2019 - 2006 - 2018 Copyright by rt-thread team -msh > -``` -### 进阶使用 - -此 BSP 默认只开启了 GPIO 和 串口1 的功能,如果需使用 SD 卡、Flash 等更多高级功能,需要利用 ENV 工具对BSP 进行配置,步骤如下: - -1. 在 bsp 下打开 env 工具。 - -2. 输入`menuconfig`命令配置工程,配置好之后保存退出。 - -3. 输入`pkgs --update`命令更新软件包。 - -4. 输入`scons --target=mdk4/mdk5/iar` 命令重新生成工程。 - -本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32系列BSP外设驱动使用教程.md)。 - -## 注意事项 - -- 默认终端输出设备是 UART1 - -## 联系人信息 - -维护人: - -- 邮箱:<[email protected]>
\ No newline at end of file +> +> https://github.com/mysterywolf
\ No newline at end of file diff --git a/bsp/stm32/stm32f446-st-nucleo/README_zh.md b/bsp/stm32/stm32f446-st-nucleo/README_zh.md new file mode 100644 index 0000000000..e91f1ef45a --- /dev/null +++ b/bsp/stm32/stm32f446-st-nucleo/README_zh.md @@ -0,0 +1,106 @@ +# NUCLEO-F446ZE 开发板 BSP 说明 + +## 简介 + +本文档为 NUCLEO-F446ZE 开发板的 BSP (板级支持包) 说明。 + +主要内容如下: + +- 开发板资源介绍 +- BSP 快速上手 +- 进阶使用方法 + +通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 + +## 开发板介绍 + +NUCLEO-F446ZE 是 ST 公司推出的一款针对 STM32F4 系列设计的 Cortex-M4 Nucleo-144 开发板,支持 mbed,兼容 Arduino、还带有ST Zio和 ST Morpho 扩展接口,可连接微控制器的所有周边外设。 + +开发板外观如下图所示: + + + +该开发板常用 **板载资源** 如下: + +- MCU:STM32f446ZE,主频 180MHz,512KB FLASH ,128KB RAM +- 常用外设 + - LED:3个,LED1 (绿色,PB0),LED2(蓝色,PB7),LED3(红色,PB14) +- 常用接口:USB 转串口 +- 调试接口,标准 ST-LINK/SWD + +开发板更多详细信息请参考【NUCLEO-F446ZE】 [开发板介绍](https://www.st.com/zh/evaluation-tools/nucleo-f446ze.html)。 + +## 外设支持 + +本 BSP 目前对外设的支持情况如下: + +| **板载外设** | **支持情况** | **备注** | +| :----------------- | :----------: | :------------------------------------- | +| USB 转串口 | 支持 | | +| **片上外设** | **支持情况** | **备注** | +| GPIO | 支持 | | +| UART | 支持 | UART1 | + +## 使用说明 + +使用说明分为如下两个章节: + +- 快速上手 + + 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 + +- 进阶使用 + + 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 + + +### 快速上手 + +本 BSP 为开发者提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 + +#### 硬件连接 + +使用数据线连接开发板到 PC,通过数据线对开发板供电,下载,调试。 + +#### 编译下载 + +双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 + +> 工程默认配置使用 ST-LINK 仿真器下载程序,在通过 ST-LINK 连接开发板的基础上,点击下载按钮即可下载程序到开发板 + +#### 运行结果 + +下载程序成功之后,系统会自动运行,蓝色的 LED2 以 500MS 周期闪烁。 + +连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: + +```bash + \ | / +- RT - Thread Operating System + / | \ 4.0.0 build Jan 7 2019 + 2006 - 2018 Copyright by rt-thread team +msh > +``` +### 进阶使用 + +此 BSP 默认只开启了 GPIO 和 串口1 的功能,如果需使用 SD 卡、Flash 等更多高级功能,需要利用 ENV 工具对BSP 进行配置,步骤如下: + +1. 在 bsp 下打开 env 工具。 + +2. 输入`menuconfig`命令配置工程,配置好之后保存退出。 + +3. 输入`pkgs --update`命令更新软件包。 + +4. 输入`scons --target=mdk4/mdk5/iar` 命令重新生成工程。 + +本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32系列BSP外设驱动使用教程.md)。 + +## 注意事项 + +- 默认终端输出设备是 UART1 + +## 联系人信息 + +维护人: + +- 邮箱:<[email protected]>
\ No newline at end of file diff --git a/bsp/stm32/stm32f767-st-nucleo/README.md b/bsp/stm32/stm32f767-st-nucleo/README.md index 45ccf66f70..3cb5f47d34 100644 --- a/bsp/stm32/stm32f767-st-nucleo/README.md +++ b/bsp/stm32/stm32f767-st-nucleo/README.md @@ -1,110 +1,95 @@ -# STM32F767 NUCLEO-F767ZI开发板 BSP 说明 -## 简介 +# STM32F767-Nucleo BSP Introduction -本文档为 NUCLEO-F767ZI 开发板的 BSP (板级支持包) 说明。 +[中文](README_zh.md) -主要内容如下: +## MCU: STM32F767ZI @216MHz, 2MB FLASH, 512KB RAM -- 开发板资源介绍 -- BSP 快速上手 -- 进阶使用方法 +The STM32F765xx, STM32F767xx, STM32F768Ax and STM32F769xx devices are based on the high-performance Arm® Cortex®-M7 32-bit RISC core operating at up to 216 MHz frequency. The Cortex®-M7 core features a floating point unit (FPU) which supports Arm® double-precision and single-precision data-processing instructions and data types. It also implements a full set of DSP instructions and a memory protection unit (MPU) which enhances the application security. -通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 +The STM32F765xx, STM32F767xx, STM32F768Ax and STM32F769xx devices incorporate high-speed embedded memories with a Flash memory up to 2 Mbytes, 512 Kbytes of SRAM (including 128 Kbytes of Data TCM RAM for critical real-time data), 16 Kbytes of instruction TCM RAM (for critical real-time routines), 4 Kbytes of backup SRAM available in the lowest power modes, and an extensive range of enhanced I/Os and peripherals connected to two APB buses, two AHB buses, a 32-bit multi-AHB bus matrix and a multi layer AXI interconnect supporting internal and external memories access. +All the devices offer three 12-bit ADCs, two DACs, a low-power RTC, twelve general-purpose 16-bit timers including two PWM timers for motor control, two general-purpose 32-bit timers, a true random number generator (RNG). They also feature standard and advanced communication interfaces. +Advanced peripherals include two SDMMC interfaces, a flexible memory control (FMC) interface, a Quad-SPI Flash memory interface, a camera interface for CMOS sensors. +The STM32F765xx, STM32F767xx, STM32F768Ax and STM32F769xx devices operate in the –40 to +105 °C temperature range from a 1.7 to 3.6 V power supply. Dedicated supply inputs for USB (OTG_FS and OTG_HS) and SDMMC2 (clock, command and 4-bit data) are available on all the packages except LQFP100 for a greater power supply choice. +The supply voltage can drop to 1.7 V with the use of an external power supply supervisor. A comprehensive set of power-saving mode allows the design of low-power applications. +The STM32F765xx, STM32F767xx, STM32F768Ax and STM32F769xx devices offer devices in 11 packages ranging from 100 pins to 216 pins. The set of included peripherals changes with the device chosen. +These features make the STM32F765xx, STM32F767xx, STM32F768Ax and STM32F769xx microcontrollers suitable for a wide range of applications. -## 开发板介绍 +#### KEY FEATURES -NUCLEO-F767ZI 是st推出的一款基于 ARM Cortex-M7 内核的开发板,最高主频为 216Mhz,该开发板具有丰富的板载资源,可以充分发挥 STM32F767 的芯片性能。 +- Core: Arm® 32-bit Cortex®-M7 CPU with DPFPU, ART Accelerator™ and L1-cache: 16 Kbytes I/D cache, allowing 0-wait state execution from embedded Flash and external memories, up to 216 MHz, MPU, 462 DMIPS/2.14 DMIPS/MHz (Dhrystone 2.1), and DSP instructions. +- Memories + - Up to 2 Mbytes of Flash memory organized into two banks allowing read-while-write + - SRAM: 512 Kbytes (including 128 Kbytes of data TCM RAM for critical real-time data) + 16 Kbytes of instruction TCM RAM (for critical real-time routines) + 4 Kbytes of backup SRAM + - Flexible external memory controller with up to 32-bit data bus: SRAM, PSRAM, SDRAM/LPSDR SDRAM, NOR/NAND memories +- Dual mode Quad-SPI +- Graphics + - Chrom-ART Accelerator™ (DMA2D), graphical hardware accelerator enabling enhanced graphical user interface + - Hardware JPEG codec + - LCD-TFT controller supporting up to XGA resolution + - MIPI® DSI host controller supporting up to 720p 30 Hz resolution +- Clock, reset and supply management + - 1.7 V to 3.6 V application supply and I/Os + - POR, PDR, PVD and BOR + - Dedicated USB power + - 4-to-26 MHz crystal oscillator + - Internal 16 MHz factory-trimmed RC (1% accuracy) + - 32 kHz oscillator for RTC with calibration + - Internal 32 kHz RC with calibration +- Low-power + - Sleep, Stop and Standby modes + - VBAT supply for RTC, 32×32 bit backup registers + 4 Kbytes backup SRAM +- 3×12-bit, 2.4 MSPS ADC: up to 24 channels +- Digital filters for sigma delta modulator (DFSDM), 8 channels / 4 filters +- 2×12-bit D/A converters +- General-purpose DMA: 16-stream DMA controller with FIFOs and burst support -开发板外观如下图所示: +- Up to 18 timers: up to thirteen 16-bit (1x low- power 16-bit timer available in Stop mode) and two 32-bit timers, each with up to 4 IC/OC/PWM or pulse counter and quadrature (incremental) encoder input. All 15 timers running up to 216 MHz. 2x watchdogs, SysTick timer +- Debug mode + - SWD & JTAG interfaces + - Cortex®-M7 Trace Macrocell™ +- Up to 168 I/O ports with interrupt capability + - Up to 164 fast I/Os up to 108 MHz + - Up to 166 5 V-tolerant I/Os +- Up to 28 communication interfaces + - Up to 4 I2C interfaces (SMBus/PMBus) + - Up to 4 USARTs/4 UARTs (12.5 Mbit/s, ISO7816 interface, LIN, IrDA, modem control) + - Up to 6 SPIs (up to 54 Mbit/s), 3 with muxed simplex I2S for audio + - 2 x SAIs (serial audio interface) + - 3 x CANs (2.0B Active) and 2 x SDMMCs + - SPDIFRX interface + - HDMI-CEC + - MDIO slave interface +- Advanced connectivity + - USB 2.0 full-speed device/host/OTG controller with on-chip PHY + - USB 2.0 high-speed/full-speed device/host/OTG controller with dedicated DMA, on-chip full-speed PHY and ULPI + - 10/100 Ethernet MAC with dedicated DMA: supports IEEE 1588v2 hardware, MII/RMII +- 8- to 14-bit camera interface up to 54 Mbyte/s +- True random number generator +- CRC calculation unit +- RTC: subsecond accuracy, hardware calendar +- 96-bit unique ID - -该开发板常用 **板载资源** 如下: -- MCU:STM32f767,主频 216MHz,2MB FLASH ,512KB RAM ,16K CACHE +## Read more -- 常用外设 - - LED :3个,LED1 (绿色,PB0),LED2(蓝色,PB7),LED3(红色,PB14) - - 按键:2个,B1(用户按键,PC13),B2(复位引脚) -- 常用接口:USB 转串口3、以太网接口 -- 调试接口:ST-LINK +| Documents | Description | +| :----------------------------------------------------------: | :----------------------------------------------------------: | +| [STM32_Nucleo-144_BSP_Introduction](../docs/STM32_Nucleo-144_BSP_Introduction.md) | How to run RT-Thread on STM32 Nucleo-144 boards (**Must-Read**) | +| [STM32F767ZI ST Official Website](https://www.st.com/en/microcontrollers-microprocessors/stm32f767zi.html#documentation) | STM32F767ZI datasheet and other resources | -开发板更多详细信息请参考ST [NUCLEO-F767ZI开发板介绍](https://www.st.com/en/evaluation-tools/nucleo-f767zi.html)。 -## 外设支持 -本 BSP 目前对外设的支持情况如下: +## Maintained By -| **板载外设** | **支持情况** | **备注** | -| :-----------------| :----------: | :-------------------------------------| -| USB 转串口3 | 支持 | | -| 以太网 | 支持 | PHY 选项 LAN8720A(兼容 LAN8742A) | -| **片上外设** | **支持情况** | **备注** | -| GPIO | 支持 | PA0, PA1... PK15 ---> PIN: 0, 1...144 | -| UART | 支持 | UART3 | -| **扩展模块** | **支持情况** | **备注** | -| 暂无 | 暂不支持 | 暂不支持 | +[e31207077](https://github.com/e31207077) <[email protected]> -## 使用说明 -使用说明分为如下两个章节: -- 快速上手 +## Translated By - 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 +Meco Man @ RT-Thread Community -- 进阶使用 - - 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 - - -### 快速上手 - -本 BSP 为开发者提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 - -#### 硬件连接 - -使用数据线连接开发板到 PC,打开电源开关。 - -#### 编译下载 - -双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 - -> 工程默认配置使用 ST-LINK 仿真器下载程序,在通过 ST-LINK 连接开发板的基础上,点击下载按钮即可下载程序到开发板 - -#### 运行结果 - -下载程序成功之后,系统会自动运行,LED 闪烁。 - -连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: - -```bash - \ | / -- RT - Thread Operating System - / | \ 4.0.0 build Jan 9 2019 - 2006 - 2018 Copyright by rt-thread team -msh > -``` -### 进阶使用 - -此 BSP 默认只开启了 GPIO 和 串口3 的功能,如果需使用 Ethernet 等更多高级功能,需要利用 ENV 工具对BSP 进行配置,步骤如下: - -1. 在 bsp 下打开 env 工具。 - -2. 输入`menuconfig`命令配置工程,配置好之后保存退出。 - -3. 输入`pkgs --update`命令更新软件包。 - -4. 输入`scons --target=mdk4/mdk5/iar` 命令重新生成工程。 - -本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32系列BSP外设驱动使用教程.md)。 - -## 注意事项 - -暂无 - -## 联系人信息 - -维护人: - -- [e31207077](https://github.com/e31207077), 邮箱:<[email protected]> +> +> https://github.com/mysterywolf diff --git a/bsp/stm32/stm32f767-st-nucleo/README_zh.md b/bsp/stm32/stm32f767-st-nucleo/README_zh.md new file mode 100644 index 0000000000..45ccf66f70 --- /dev/null +++ b/bsp/stm32/stm32f767-st-nucleo/README_zh.md @@ -0,0 +1,110 @@ +# STM32F767 NUCLEO-F767ZI开发板 BSP 说明 +## 简介 + +本文档为 NUCLEO-F767ZI 开发板的 BSP (板级支持包) 说明。 + +主要内容如下: + +- 开发板资源介绍 +- BSP 快速上手 +- 进阶使用方法 + +通过阅读快速上手章节开发者可以快速地上手该 BSP,将 RT-Thread 运行在开发板上。在进阶使用指南章节,将会介绍更多高级功能,帮助开发者利用 RT-Thread 驱动更多板载资源。 + +## 开发板介绍 + +NUCLEO-F767ZI 是st推出的一款基于 ARM Cortex-M7 内核的开发板,最高主频为 216Mhz,该开发板具有丰富的板载资源,可以充分发挥 STM32F767 的芯片性能。 + +开发板外观如下图所示: + + + +该开发板常用 **板载资源** 如下: + +- MCU:STM32f767,主频 216MHz,2MB FLASH ,512KB RAM ,16K CACHE + +- 常用外设 + - LED :3个,LED1 (绿色,PB0),LED2(蓝色,PB7),LED3(红色,PB14) + - 按键:2个,B1(用户按键,PC13),B2(复位引脚) +- 常用接口:USB 转串口3、以太网接口 +- 调试接口:ST-LINK + +开发板更多详细信息请参考ST [NUCLEO-F767ZI开发板介绍](https://www.st.com/en/evaluation-tools/nucleo-f767zi.html)。 + +## 外设支持 + +本 BSP 目前对外设的支持情况如下: + +| **板载外设** | **支持情况** | **备注** | +| :-----------------| :----------: | :-------------------------------------| +| USB 转串口3 | 支持 | | +| 以太网 | 支持 | PHY 选项 LAN8720A(兼容 LAN8742A) | +| **片上外设** | **支持情况** | **备注** | +| GPIO | 支持 | PA0, PA1... PK15 ---> PIN: 0, 1...144 | +| UART | 支持 | UART3 | +| **扩展模块** | **支持情况** | **备注** | +| 暂无 | 暂不支持 | 暂不支持 | + +## 使用说明 + +使用说明分为如下两个章节: + +- 快速上手 + + 本章节是为刚接触 RT-Thread 的新手准备的使用说明,遵循简单的步骤即可将 RT-Thread 操作系统运行在该开发板上,看到实验效果 。 + +- 进阶使用 + + 本章节是为需要在 RT-Thread 操作系统上使用更多开发板资源的开发者准备的。通过使用 ENV 工具对 BSP 进行配置,可以开启更多板载资源,实现更多高级功能。 + + +### 快速上手 + +本 BSP 为开发者提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境。下面以 MDK5 开发环境为例,介绍如何将系统运行起来。 + +#### 硬件连接 + +使用数据线连接开发板到 PC,打开电源开关。 + +#### 编译下载 + +双击 project.uvprojx 文件,打开 MDK5 工程,编译并下载程序到开发板。 + +> 工程默认配置使用 ST-LINK 仿真器下载程序,在通过 ST-LINK 连接开发板的基础上,点击下载按钮即可下载程序到开发板 + +#### 运行结果 + +下载程序成功之后,系统会自动运行,LED 闪烁。 + +连接开发板对应串口到 PC , 在终端工具里打开相应的串口(115200-8-1-N),复位设备后,可以看到 RT-Thread 的输出信息: + +```bash + \ | / +- RT - Thread Operating System + / | \ 4.0.0 build Jan 9 2019 + 2006 - 2018 Copyright by rt-thread team +msh > +``` +### 进阶使用 + +此 BSP 默认只开启了 GPIO 和 串口3 的功能,如果需使用 Ethernet 等更多高级功能,需要利用 ENV 工具对BSP 进行配置,步骤如下: + +1. 在 bsp 下打开 env 工具。 + +2. 输入`menuconfig`命令配置工程,配置好之后保存退出。 + +3. 输入`pkgs --update`命令更新软件包。 + +4. 输入`scons --target=mdk4/mdk5/iar` 命令重新生成工程。 + +本章节更多详细的介绍请参考 [STM32 系列 BSP 外设驱动使用教程](../docs/STM32系列BSP外设驱动使用教程.md)。 + +## 注意事项 + +暂无 + +## 联系人信息 + +维护人: + +- [e31207077](https://github.com/e31207077), 邮箱:<[email protected]> diff --git a/bsp/stm32f20x/applications/startup.c b/bsp/stm32f20x/applications/startup.c index 77f915cbbd..92be9bd2ce 100644 --- a/bsp/stm32f20x/applications/startup.c +++ b/bsp/stm32f20x/applications/startup.c @@ -61,12 +61,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/taihu/applications/startup.c b/bsp/taihu/applications/startup.c index f52a185495..9f7d9415b5 100644 --- a/bsp/taihu/applications/startup.c +++ b/bsp/taihu/applications/startup.c @@ -40,9 +40,6 @@ void rtthread_startup(void) rt_hw_board_init(); rt_show_version(); - /* init tick */ - rt_system_tick_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/tms320f28379d/applications/startup.c b/bsp/tms320f28379d/applications/startup.c index 301e63a00a..da5c31e237 100644 --- a/bsp/tms320f28379d/applications/startup.c +++ b/bsp/tms320f28379d/applications/startup.c @@ -50,12 +50,6 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/upd70f3454/applications/startup.c b/bsp/upd70f3454/applications/startup.c index d25ca73f28..409b3cc615 100644 --- a/bsp/upd70f3454/applications/startup.c +++ b/bsp/upd70f3454/applications/startup.c @@ -49,13 +49,7 @@ void rtthread_startup(void) /* show version */ rt_show_version(); - - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - + /* init timer system */ rt_system_timer_init(); diff --git a/bsp/wh44b0/startup.c b/bsp/wh44b0/startup.c index 4ea7a4f03d..5e62200a19 100644 --- a/bsp/wh44b0/startup.c +++ b/bsp/wh44b0/startup.c @@ -58,12 +58,6 @@ void rtthread_startup(void) rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/bsp/x86/applications/startup.c b/bsp/x86/applications/startup.c index 72a4eb0a96..475273267f 100644 --- a/bsp/x86/applications/startup.c +++ b/bsp/x86/applications/startup.c @@ -69,12 +69,6 @@ void rtthread_startup(void) rt_show_version(); - /* init tick */ - rt_system_tick_init(); - - /* init kernel object */ - rt_system_object_init(); - /* init timer system */ rt_system_timer_init(); diff --git a/components/drivers/pm/pm.c b/components/drivers/pm/pm.c index dd7cc2ae63..f9190ae9ef 100644 --- a/components/drivers/pm/pm.c +++ b/components/drivers/pm/pm.c @@ -8,6 +8,7 @@ * 2012-06-02 Bernard the first version * 2018-08-02 Tanek split run and sleep modes, support custom mode * 2019-04-28 Zero-Free improve PM mode and device ops interface + * 2020-11-23 zhangsz update pm mode select */ #include <rthw.h> @@ -214,8 +215,6 @@ static void _pm_change_sleep_mode(struct rt_pm *pm, rt_uint8_t mode) */ void rt_system_power_manager(void) { - rt_uint8_t mode; - if (_pm_init_flag == 0) return; @@ -223,8 +222,7 @@ void rt_system_power_manager(void) _pm_frequency_scaling(&_pm); /* Low Power Mode Processing */ - mode = _pm_select_sleep_mode(&_pm); - _pm_change_sleep_mode(&_pm, mode); + _pm_change_sleep_mode(&_pm, _pm.sleep_mode); } /** @@ -248,6 +246,7 @@ void rt_pm_request(rt_uint8_t mode) pm = &_pm; if (pm->modes[mode] < 255) pm->modes[mode] ++; + _pm_select_sleep_mode(pm); rt_hw_interrupt_enable(level); } @@ -273,6 +272,7 @@ void rt_pm_release(rt_uint8_t mode) pm = &_pm; if (pm->modes[mode] > 0) pm->modes[mode] --; + _pm_select_sleep_mode(pm); rt_hw_interrupt_enable(level); } @@ -516,6 +516,10 @@ void rt_system_pm_init(const struct rt_pm_ops *ops, pm->device_pm = RT_NULL; pm->device_pm_number = 0; +#if IDLE_THREAD_STACK_SIZE <= 256 + #error "[pm.c ERR] IDLE Stack Size Too Small!" +#endif + _pm_init_flag = 1; } diff --git a/components/libc/pthreads/semaphore.c b/components/libc/pthreads/semaphore.c index 2bef10022e..2ed93e99b6 100644 --- a/components/libc/pthreads/semaphore.c +++ b/components/libc/pthreads/semaphore.c @@ -64,7 +64,7 @@ static sem_t *posix_sem_find(const char* name) for (iter = posix_sem_list; iter != RT_NULL; iter = iter->next) { - object = (rt_object_t)&(iter->sem); + object = (rt_object_t)iter->sem; if (strncmp(object->name, name, RT_NAME_MAX) == 0) { diff --git a/documentation/doxygen/systeminit.h b/documentation/doxygen/systeminit.h index d62aca59bb..c45eda4079 100644 --- a/documentation/doxygen/systeminit.h +++ b/documentation/doxygen/systeminit.h @@ -21,12 +21,6 @@ * - show version * rt_show_version(); * - * - initialize system tick - * rt_system_tick_init(); - * - * - initialize kernel object [deprecated] - * rt_system_object_init(); - * * - initialize timer system * rt_system_timer_init(); * diff --git a/include/rtthread.h b/include/rtthread.h index a76601a3bf..27cfea19e0 100644 --- a/include/rtthread.h +++ b/include/rtthread.h @@ -38,7 +38,6 @@ extern "C" { /* * kernel object interface */ -void rt_system_object_init(void); struct rt_object_information * rt_object_get_information(enum rt_object_class_type type); int rt_object_get_length(enum rt_object_class_type type); @@ -74,7 +73,6 @@ void rt_object_put_sethook(void (*hook)(struct rt_object *object)); /* * clock & timer interface */ -void rt_system_tick_init(void); rt_tick_t rt_tick_get(void); void rt_tick_set(rt_tick_t tick); void rt_tick_increase(void); diff --git a/libcpu/Kconfig b/libcpu/Kconfig index ae2767dec9..974c421138 100644 --- a/libcpu/Kconfig +++ b/libcpu/Kconfig @@ -106,6 +106,14 @@ config ARCH_RISCV config ARCH_RISCV_FPU bool +config ARCH_RISCV_FPU_S + select ARCH_RISCV_FPU + bool + +config ARCH_RISCV_FPU_D + select ARCH_RISCV_FPU + bool + config ARCH_RISCV32 select ARCH_RISCV bool diff --git a/libcpu/aarch64/common/cpu.c b/libcpu/aarch64/common/cpu.c index 962a53a071..84d3df2e8a 100644 --- a/libcpu/aarch64/common/cpu.c +++ b/libcpu/aarch64/common/cpu.c @@ -76,7 +76,7 @@ void rt_hw_spin_unlock(rt_hw_spinlock_t *lock) /*@{*/ /** shutdown CPU */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arc/em/cpuport.c b/libcpu/arc/em/cpuport.c index 34f538881f..1a2593644a 100644 --- a/libcpu/arc/em/cpuport.c +++ b/libcpu/arc/em/cpuport.c @@ -32,7 +32,7 @@ struct init_stack_frame { /** * shutdown CPU */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { } diff --git a/libcpu/arm/AT91SAM7S/cpu.c b/libcpu/arm/AT91SAM7S/cpu.c index 8d28063eb1..b24ab5644b 100644 --- a/libcpu/arm/AT91SAM7S/cpu.c +++ b/libcpu/arm/AT91SAM7S/cpu.c @@ -20,7 +20,7 @@ * this function will reset CPU * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { } @@ -28,7 +28,7 @@ void rt_hw_cpu_reset() * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/AT91SAM7X/cpu.c b/libcpu/arm/AT91SAM7X/cpu.c index 484c19d10a..046f7e8ced 100644 --- a/libcpu/arm/AT91SAM7X/cpu.c +++ b/libcpu/arm/AT91SAM7X/cpu.c @@ -20,7 +20,7 @@ * this function will reset CPU * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { } @@ -28,7 +28,7 @@ void rt_hw_cpu_reset() * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/am335x/cpu.c b/libcpu/arm/am335x/cpu.c index cae865fe50..469276466b 100644 --- a/libcpu/arm/am335x/cpu.c +++ b/libcpu/arm/am335x/cpu.c @@ -149,7 +149,7 @@ rt_base_t rt_hw_cpu_dcache_status() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/arm926/cpuport.c b/libcpu/arm/arm926/cpuport.c index 035e97d543..dc93f42ed6 100644 --- a/libcpu/arm/arm926/cpuport.c +++ b/libcpu/arm/arm926/cpuport.c @@ -146,7 +146,7 @@ rt_base_t rt_hw_cpu_dcache_status() * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { rt_kprintf("Restarting system...\n"); @@ -161,7 +161,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/armv6/cpuport.c b/libcpu/arm/armv6/cpuport.c index c8e9201722..f886e7e164 100644 --- a/libcpu/arm/armv6/cpuport.c +++ b/libcpu/arm/armv6/cpuport.c @@ -147,7 +147,7 @@ rt_base_t rt_hw_cpu_dcache_status() * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { rt_kprintf("Restarting system...\n"); @@ -162,7 +162,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/cortex-a/cpu.c b/libcpu/arm/cortex-a/cpu.c index 7c6bf58a4b..6775b781bc 100644 --- a/libcpu/arm/cortex-a/cpu.c +++ b/libcpu/arm/cortex-a/cpu.c @@ -74,7 +74,7 @@ void rt_hw_spin_unlock(rt_hw_spinlock_t *lock) /*@{*/ /** shutdown CPU */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/cortex-m3/cpuport.c b/libcpu/arm/cortex-m3/cpuport.c index d58782e2c5..b6c4c9743c 100644 --- a/libcpu/arm/cortex-m3/cpuport.c +++ b/libcpu/arm/cortex-m3/cpuport.c @@ -344,7 +344,7 @@ void rt_hw_hard_fault_exception(struct exception_info * exception_info) /** * shutdown CPU */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/cortex-m33/cpuport.c b/libcpu/arm/cortex-m33/cpuport.c index a589ba3462..42b5798507 100644 --- a/libcpu/arm/cortex-m33/cpuport.c +++ b/libcpu/arm/cortex-m33/cpuport.c @@ -431,7 +431,7 @@ void rt_hw_hard_fault_exception(struct exception_info *exception_info) /** * shutdown CPU */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/cortex-m4/cpuport.c b/libcpu/arm/cortex-m4/cpuport.c index dc8a9aab59..2e47832259 100644 --- a/libcpu/arm/cortex-m4/cpuport.c +++ b/libcpu/arm/cortex-m4/cpuport.c @@ -428,7 +428,7 @@ void rt_hw_hard_fault_exception(struct exception_info *exception_info) /** * shutdown CPU */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/cortex-m7/cpuport.c b/libcpu/arm/cortex-m7/cpuport.c index e701a52307..aeb9f14ac5 100644 --- a/libcpu/arm/cortex-m7/cpuport.c +++ b/libcpu/arm/cortex-m7/cpuport.c @@ -428,7 +428,7 @@ void rt_hw_hard_fault_exception(struct exception_info *exception_info) /** * shutdown CPU */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/cortex-r4/cpu.c b/libcpu/arm/cortex-r4/cpu.c index d2e8130e7c..23c16e383c 100644 --- a/libcpu/arm/cortex-r4/cpu.c +++ b/libcpu/arm/cortex-r4/cpu.c @@ -20,7 +20,7 @@ * this function will reset CPU * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { } @@ -28,7 +28,7 @@ void rt_hw_cpu_reset() * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/dm36x/cpuport.c b/libcpu/arm/dm36x/cpuport.c index f6e8a20056..99edb96260 100644 --- a/libcpu/arm/dm36x/cpuport.c +++ b/libcpu/arm/dm36x/cpuport.c @@ -145,7 +145,7 @@ rt_base_t rt_hw_cpu_dcache_status() * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { rt_kprintf("Restarting system...\n"); @@ -160,7 +160,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/lpc214x/cpuport.c b/libcpu/arm/lpc214x/cpuport.c index 2543a5e0a9..54e7e9b0c8 100644 --- a/libcpu/arm/lpc214x/cpuport.c +++ b/libcpu/arm/lpc214x/cpuport.c @@ -163,7 +163,7 @@ rt_isr_handler_t rt_hw_interrupt_install(int vector, rt_isr_handler_t handler, * this function will reset CPU * */ -void rt_hw_cpu_reset(void) +RT_WEAK void rt_hw_cpu_reset(void) { } @@ -171,7 +171,7 @@ void rt_hw_cpu_reset(void) * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/lpc24xx/cpu.c b/libcpu/arm/lpc24xx/cpu.c index f3a61e16a3..0453722d1d 100644 --- a/libcpu/arm/lpc24xx/cpu.c +++ b/libcpu/arm/lpc24xx/cpu.c @@ -20,7 +20,7 @@ * this function will reset CPU * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { } @@ -28,7 +28,7 @@ void rt_hw_cpu_reset() * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/realview-a8-vmm/cpu.c b/libcpu/arm/realview-a8-vmm/cpu.c index 2d78715011..dbdb4ac515 100644 --- a/libcpu/arm/realview-a8-vmm/cpu.c +++ b/libcpu/arm/realview-a8-vmm/cpu.c @@ -18,7 +18,7 @@ /*@{*/ /** shutdown CPU */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/s3c24x0/cpu.c b/libcpu/arm/s3c24x0/cpu.c index 4d3bf3c1ab..2adf526a5c 100644 --- a/libcpu/arm/s3c24x0/cpu.c +++ b/libcpu/arm/s3c24x0/cpu.c @@ -148,7 +148,7 @@ rt_base_t rt_hw_cpu_dcache_status() * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { /* Disable all interrupt except the WDT */ INTMSK = (~((rt_uint32_t)1 << INTWDT)); @@ -171,7 +171,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/s3c44b0/cpu.c b/libcpu/arm/s3c44b0/cpu.c index 03ebefba18..9d60b09688 100644 --- a/libcpu/arm/s3c44b0/cpu.c +++ b/libcpu/arm/s3c44b0/cpu.c @@ -100,7 +100,7 @@ rt_base_t rt_hw_cpu_dcache_status() * this function will reset CPU * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { } @@ -108,7 +108,7 @@ void rt_hw_cpu_reset() * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/sep4020/cpu.c b/libcpu/arm/sep4020/cpu.c index ee4eab626b..92ba2cf86a 100644 --- a/libcpu/arm/sep4020/cpu.c +++ b/libcpu/arm/sep4020/cpu.c @@ -152,7 +152,7 @@ rt_base_t rt_hw_cpu_dcache_status() * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { /* enable watchdog */ @@ -173,7 +173,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t UNUSED level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/arm/zynq7000/cpu.c b/libcpu/arm/zynq7000/cpu.c index 5f3a3e7b02..f6b7f5d852 100644 --- a/libcpu/arm/zynq7000/cpu.c +++ b/libcpu/arm/zynq7000/cpu.c @@ -16,7 +16,7 @@ * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { while (1); /* loop forever and wait for reset to happen */ @@ -27,7 +27,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/avr32/uc3/cpu.c b/libcpu/avr32/uc3/cpu.c index b77e78dc5b..fdd8a4d56c 100644 --- a/libcpu/avr32/uc3/cpu.c +++ b/libcpu/avr32/uc3/cpu.c @@ -23,7 +23,7 @@ * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { /*NOTREACHED*/ } diff --git a/libcpu/mips/gs232/cpuport.c b/libcpu/mips/gs232/cpuport.c index 1b13719449..e3c078241f 100644 --- a/libcpu/mips/gs232/cpuport.c +++ b/libcpu/mips/gs232/cpuport.c @@ -23,7 +23,7 @@ * this function will reset CPU * */ -void rt_hw_cpu_reset(void) +RT_WEAK void rt_hw_cpu_reset(void) { /* open the watch-dog */ WDT_EN = 0x01; /* watch dog enable */ @@ -38,7 +38,7 @@ void rt_hw_cpu_reset(void) * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/risc-v/common/context_gcc.S b/libcpu/risc-v/common/context_gcc.S index 5c9f05c4e8..9f356f4191 100644 --- a/libcpu/risc-v/common/context_gcc.S +++ b/libcpu/risc-v/common/context_gcc.S @@ -7,6 +7,7 @@ * Date Author Notes * 2018/10/28 Bernard The unify RISC-V porting implementation * 2018/12/27 Jesven Add SMP support + * 2020/11/20 BalanceTWK Add FPU support */ #include "cpuport.h" @@ -72,6 +73,43 @@ rt_hw_context_switch: * mstatus.mie -> sp(2) * x(i) -> sp(i-4) */ +#ifdef ARCH_RISCV_FPU + addi sp, sp, -32 * FREGBYTES + + FSTORE f0, 0 * FREGBYTES(sp) + FSTORE f1, 1 * FREGBYTES(sp) + FSTORE f2, 2 * FREGBYTES(sp) + FSTORE f3, 3 * FREGBYTES(sp) + FSTORE f4, 4 * FREGBYTES(sp) + FSTORE f5, 5 * FREGBYTES(sp) + FSTORE f6, 6 * FREGBYTES(sp) + FSTORE f7, 7 * FREGBYTES(sp) + FSTORE f8, 8 * FREGBYTES(sp) + FSTORE f9, 9 * FREGBYTES(sp) + FSTORE f10, 10 * FREGBYTES(sp) + FSTORE f11, 11 * FREGBYTES(sp) + FSTORE f12, 12 * FREGBYTES(sp) + FSTORE f13, 13 * FREGBYTES(sp) + FSTORE f14, 14 * FREGBYTES(sp) + FSTORE f15, 15 * FREGBYTES(sp) + FSTORE f16, 16 * FREGBYTES(sp) + FSTORE f17, 17 * FREGBYTES(sp) + FSTORE f18, 18 * FREGBYTES(sp) + FSTORE f19, 19 * FREGBYTES(sp) + FSTORE f20, 20 * FREGBYTES(sp) + FSTORE f21, 21 * FREGBYTES(sp) + FSTORE f22, 22 * FREGBYTES(sp) + FSTORE f23, 23 * FREGBYTES(sp) + FSTORE f24, 24 * FREGBYTES(sp) + FSTORE f25, 25 * FREGBYTES(sp) + FSTORE f26, 26 * FREGBYTES(sp) + FSTORE f27, 27 * FREGBYTES(sp) + FSTORE f28, 28 * FREGBYTES(sp) + FSTORE f29, 29 * FREGBYTES(sp) + FSTORE f30, 30 * FREGBYTES(sp) + FSTORE f31, 31 * FREGBYTES(sp) + +#endif addi sp, sp, -32 * REGBYTES STORE sp, (a0) @@ -174,7 +212,7 @@ rt_hw_context_switch_exit: LOAD x1, 1 * REGBYTES(sp) - li t0, 0x00001800 + li t0, 0x00007800 csrw mstatus, t0 LOAD a0, 2 * REGBYTES(sp) csrs mstatus, a0 @@ -209,4 +247,42 @@ rt_hw_context_switch_exit: LOAD x31, 31 * REGBYTES(sp) addi sp, sp, 32 * REGBYTES + +#ifdef ARCH_RISCV_FPU + FLOAD f0, 0 * FREGBYTES(sp) + FLOAD f1, 1 * FREGBYTES(sp) + FLOAD f2, 2 * FREGBYTES(sp) + FLOAD f3, 3 * FREGBYTES(sp) + FLOAD f4, 4 * FREGBYTES(sp) + FLOAD f5, 5 * FREGBYTES(sp) + FLOAD f6, 6 * FREGBYTES(sp) + FLOAD f7, 7 * FREGBYTES(sp) + FLOAD f8, 8 * FREGBYTES(sp) + FLOAD f9, 9 * FREGBYTES(sp) + FLOAD f10, 10 * FREGBYTES(sp) + FLOAD f11, 11 * FREGBYTES(sp) + FLOAD f12, 12 * FREGBYTES(sp) + FLOAD f13, 13 * FREGBYTES(sp) + FLOAD f14, 14 * FREGBYTES(sp) + FLOAD f15, 15 * FREGBYTES(sp) + FLOAD f16, 16 * FREGBYTES(sp) + FLOAD f17, 17 * FREGBYTES(sp) + FLOAD f18, 18 * FREGBYTES(sp) + FLOAD f19, 19 * FREGBYTES(sp) + FLOAD f20, 20 * FREGBYTES(sp) + FLOAD f21, 21 * FREGBYTES(sp) + FLOAD f22, 22 * FREGBYTES(sp) + FLOAD f23, 23 * FREGBYTES(sp) + FLOAD f24, 24 * FREGBYTES(sp) + FLOAD f25, 25 * FREGBYTES(sp) + FLOAD f26, 26 * FREGBYTES(sp) + FLOAD f27, 27 * FREGBYTES(sp) + FLOAD f28, 28 * FREGBYTES(sp) + FLOAD f29, 29 * FREGBYTES(sp) + FLOAD f30, 30 * FREGBYTES(sp) + FLOAD f31, 31 * FREGBYTES(sp) + + addi sp, sp, 32 * FREGBYTES +#endif + mret diff --git a/libcpu/risc-v/common/cpuport.c b/libcpu/risc-v/common/cpuport.c index a44dc40f79..6cb8aaf3e7 100644 --- a/libcpu/risc-v/common/cpuport.c +++ b/libcpu/risc-v/common/cpuport.c @@ -6,6 +6,7 @@ * Change Logs: * Date Author Notes * 2018/10/28 Bernard The unify RISC-V porting code. + * 2020/11/20 BalanceTWK Add FPU support */ #include <rthw.h> @@ -53,6 +54,40 @@ struct rt_hw_stack_frame rt_ubase_t t4; /* x29 - t4 - temporary register 4 */ rt_ubase_t t5; /* x30 - t5 - temporary register 5 */ rt_ubase_t t6; /* x31 - t6 - temporary register 6 */ +#ifdef ARCH_RISCV_FPU + rv_floatreg_t f0; /* f0 */ + rv_floatreg_t f1; /* f1 */ + rv_floatreg_t f2; /* f2 */ + rv_floatreg_t f3; /* f3 */ + rv_floatreg_t f4; /* f4 */ + rv_floatreg_t f5; /* f5 */ + rv_floatreg_t f6; /* f6 */ + rv_floatreg_t f7; /* f7 */ + rv_floatreg_t f8; /* f8 */ + rv_floatreg_t f9; /* f9 */ + rv_floatreg_t f10; /* f10 */ + rv_floatreg_t f11; /* f11 */ + rv_floatreg_t f12; /* f12 */ + rv_floatreg_t f13; /* f13 */ + rv_floatreg_t f14; /* f14 */ + rv_floatreg_t f15; /* f15 */ + rv_floatreg_t f16; /* f16 */ + rv_floatreg_t f17; /* f17 */ + rv_floatreg_t f18; /* f18 */ + rv_floatreg_t f19; /* f19 */ + rv_floatreg_t f20; /* f20 */ + rv_floatreg_t f21; /* f21 */ + rv_floatreg_t f22; /* f22 */ + rv_floatreg_t f23; /* f23 */ + rv_floatreg_t f24; /* f24 */ + rv_floatreg_t f25; /* f25 */ + rv_floatreg_t f26; /* f26 */ + rv_floatreg_t f27; /* f27 */ + rv_floatreg_t f28; /* f28 */ + rv_floatreg_t f29; /* f29 */ + rv_floatreg_t f30; /* f30 */ + rv_floatreg_t f31; /* f31 */ +#endif }; /** @@ -116,7 +151,7 @@ void rt_hw_context_switch_interrupt(rt_ubase_t from, rt_ubase_t to) #endif /* end of RT_USING_SMP */ /** shutdown CPU */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/risc-v/common/cpuport.h b/libcpu/risc-v/common/cpuport.h index 95268732cb..d6cec2f0cf 100644 --- a/libcpu/risc-v/common/cpuport.h +++ b/libcpu/risc-v/common/cpuport.h @@ -6,6 +6,7 @@ * Change Logs: * Date Author Notes * 2018-10-03 Bernard The first version + * 2020/11/20 BalanceTWK Add FPU support */ #ifndef CPUPORT_H__ @@ -24,4 +25,19 @@ #define REGBYTES 4 #endif +#ifdef ARCH_RISCV_FPU +#ifdef ARCH_RISCV_FPU_D +#define FSTORE fsd +#define FLOAD fld +#define FREGBYTES 8 +#define rv_floatreg_t rt_int64_t +#endif +#ifdef ARCH_RISCV_FPU_S +#define FSTORE fsw +#define FLOAD flw +#define FREGBYTES 4 +#define rv_floatreg_t rt_int32_t +#endif +#endif + #endif diff --git a/libcpu/risc-v/k210/interrupt_gcc.S b/libcpu/risc-v/k210/interrupt_gcc.S index 0393ea51f8..dc4a720dea 100644 --- a/libcpu/risc-v/k210/interrupt_gcc.S +++ b/libcpu/risc-v/k210/interrupt_gcc.S @@ -15,6 +15,43 @@ .align 2 .global trap_entry trap_entry: +#ifdef ARCH_RISCV_FPU + addi sp, sp, -32 * FREGBYTES + + FSTORE f0, 0 * FREGBYTES(sp) + FSTORE f1, 1 * FREGBYTES(sp) + FSTORE f2, 2 * FREGBYTES(sp) + FSTORE f3, 3 * FREGBYTES(sp) + FSTORE f4, 4 * FREGBYTES(sp) + FSTORE f5, 5 * FREGBYTES(sp) + FSTORE f6, 6 * FREGBYTES(sp) + FSTORE f7, 7 * FREGBYTES(sp) + FSTORE f8, 8 * FREGBYTES(sp) + FSTORE f9, 9 * FREGBYTES(sp) + FSTORE f10, 10 * FREGBYTES(sp) + FSTORE f11, 11 * FREGBYTES(sp) + FSTORE f12, 12 * FREGBYTES(sp) + FSTORE f13, 13 * FREGBYTES(sp) + FSTORE f14, 14 * FREGBYTES(sp) + FSTORE f15, 15 * FREGBYTES(sp) + FSTORE f16, 16 * FREGBYTES(sp) + FSTORE f17, 17 * FREGBYTES(sp) + FSTORE f18, 18 * FREGBYTES(sp) + FSTORE f19, 19 * FREGBYTES(sp) + FSTORE f20, 20 * FREGBYTES(sp) + FSTORE f21, 21 * FREGBYTES(sp) + FSTORE f22, 22 * FREGBYTES(sp) + FSTORE f23, 23 * FREGBYTES(sp) + FSTORE f24, 24 * FREGBYTES(sp) + FSTORE f25, 25 * FREGBYTES(sp) + FSTORE f26, 26 * FREGBYTES(sp) + FSTORE f27, 27 * FREGBYTES(sp) + FSTORE f28, 28 * FREGBYTES(sp) + FSTORE f29, 29 * FREGBYTES(sp) + FSTORE f30, 30 * FREGBYTES(sp) + FSTORE f31, 31 * FREGBYTES(sp) + +#endif /* save thread context to thread stack */ addi sp, sp, -32 * REGBYTES diff --git a/libcpu/risc-v/k210/startup_gcc.S b/libcpu/risc-v/k210/startup_gcc.S index f5c0d8fa94..cc7126e8ab 100644 --- a/libcpu/risc-v/k210/startup_gcc.S +++ b/libcpu/risc-v/k210/startup_gcc.S @@ -67,38 +67,38 @@ _start: csrs mstatus, t0 fssr x0 - fmv.d.x f0, x0 - fmv.d.x f1, x0 - fmv.d.x f2, x0 - fmv.d.x f3, x0 - fmv.d.x f4, x0 - fmv.d.x f5, x0 - fmv.d.x f6, x0 - fmv.d.x f7, x0 - fmv.d.x f8, x0 - fmv.d.x f9, x0 - fmv.d.x f10,x0 - fmv.d.x f11,x0 - fmv.d.x f12,x0 - fmv.d.x f13,x0 - fmv.d.x f14,x0 - fmv.d.x f15,x0 - fmv.d.x f16,x0 - fmv.d.x f17,x0 - fmv.d.x f18,x0 - fmv.d.x f19,x0 - fmv.d.x f20,x0 - fmv.d.x f21,x0 - fmv.d.x f22,x0 - fmv.d.x f23,x0 - fmv.d.x f24,x0 - fmv.d.x f25,x0 - fmv.d.x f26,x0 - fmv.d.x f27,x0 - fmv.d.x f28,x0 - fmv.d.x f29,x0 - fmv.d.x f30,x0 - fmv.d.x f31,x0 + fmv.w.x f0, x0 + fmv.w.x f1, x0 + fmv.w.x f2, x0 + fmv.w.x f3, x0 + fmv.w.x f4, x0 + fmv.w.x f5, x0 + fmv.w.x f6, x0 + fmv.w.x f7, x0 + fmv.w.x f8, x0 + fmv.w.x f9, x0 + fmv.w.x f10,x0 + fmv.w.x f11,x0 + fmv.w.x f12,x0 + fmv.w.x f13,x0 + fmv.w.x f14,x0 + fmv.w.x f15,x0 + fmv.w.x f16,x0 + fmv.w.x f17,x0 + fmv.w.x f18,x0 + fmv.w.x f19,x0 + fmv.w.x f20,x0 + fmv.w.x f21,x0 + fmv.w.x f22,x0 + fmv.w.x f23,x0 + fmv.w.x f24,x0 + fmv.w.x f25,x0 + fmv.w.x f26,x0 + fmv.w.x f27,x0 + fmv.w.x f28,x0 + fmv.w.x f29,x0 + fmv.w.x f30,x0 + fmv.w.x f31,x0 .option push .option norelax diff --git a/libcpu/risc-v/nuclei/cpuport.c b/libcpu/risc-v/nuclei/cpuport.c index e456438f70..717e9bb1c7 100644 --- a/libcpu/risc-v/nuclei/cpuport.c +++ b/libcpu/risc-v/nuclei/cpuport.c @@ -152,7 +152,7 @@ void rt_hw_context_switch(rt_ubase_t from, rt_ubase_t to) * @brief shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/risc-v/t-head/e906/cpuport.c b/libcpu/risc-v/t-head/e906/cpuport.c index 5597aa237a..998bfdc340 100644 --- a/libcpu/risc-v/t-head/e906/cpuport.c +++ b/libcpu/risc-v/t-head/e906/cpuport.c @@ -157,7 +157,7 @@ void rt_hw_interrupt_enable(rt_base_t level) } /** shutdown CPU */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/rx/cpuport.c b/libcpu/rx/cpuport.c index 681c0e8e6e..a01f598e99 100644 --- a/libcpu/rx/cpuport.c +++ b/libcpu/rx/cpuport.c @@ -182,7 +182,7 @@ void rt_hw_context_switch_interrupt(rt_uint32_t from, rt_uint32_t to) * * @author LXZ (2014/11/8) */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/ti-dsp/c28x/cpuport.c b/libcpu/ti-dsp/c28x/cpuport.c index 3f88606c65..0c7dce2a4e 100644 --- a/libcpu/ti-dsp/c28x/cpuport.c +++ b/libcpu/ti-dsp/c28x/cpuport.c @@ -121,7 +121,7 @@ int __rt_ffs(int value) /** * shutdown CPU */ -void rt_hw_cpu_shutdown(void) +RT_WEAK void rt_hw_cpu_shutdown(void) { rt_kprintf("shutdown...\n"); diff --git a/libcpu/unicore32/sep6200/cpu.c b/libcpu/unicore32/sep6200/cpu.c index ebea8750e1..9452b4e59d 100644 --- a/libcpu/unicore32/sep6200/cpu.c +++ b/libcpu/unicore32/sep6200/cpu.c @@ -259,7 +259,7 @@ static void sep6200_poweroff(void) * reset cpu by dog's time-out * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { rt_kprintf("Soft reset, Restarting system...\n"); @@ -274,7 +274,7 @@ void rt_hw_cpu_reset() * shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_uint32_t level; rt_kprintf("shutdown...\n"); diff --git a/libcpu/xilinx/microblaze/cpu.c b/libcpu/xilinx/microblaze/cpu.c index 50a0e34dcd..d37dcda350 100755 --- a/libcpu/xilinx/microblaze/cpu.c +++ b/libcpu/xilinx/microblaze/cpu.c @@ -18,7 +18,7 @@ * this function will reset CPU * */ -void rt_hw_cpu_reset() +RT_WEAK void rt_hw_cpu_reset() { } @@ -26,7 +26,7 @@ void rt_hw_cpu_reset() * this function will shutdown CPU * */ -void rt_hw_cpu_shutdown() +RT_WEAK void rt_hw_cpu_shutdown() { rt_kprintf("shutdown...\n"); diff --git a/src/clock.c b/src/clock.c index a91cd829b6..9fd276cf6f 100644 --- a/src/clock.c +++ b/src/clock.c @@ -25,17 +25,6 @@ static rt_tick_t rt_tick = 0; #endif /** - * This function will initialize system tick and set it to zero. - * @ingroup SystemInit - * - * @deprecated since 1.1.0, this function does not need to be invoked - * in the system initialization. - */ -void rt_system_tick_init(void) -{ -} - -/** * @addtogroup Clock */ diff --git a/src/object.c b/src/object.c index 6866d805ca..56263618b3 100644 --- a/src/object.c +++ b/src/object.c @@ -192,18 +192,6 @@ void rt_object_put_sethook(void (*hook)(struct rt_object *object)) #endif /** - * @ingroup SystemInit - * - * This function will initialize system object management. - * - * @deprecated since 0.3.0, this function does not need to be invoked - * in the system initialization. - */ -void rt_system_object_init(void) -{ -} - -/** * @addtogroup KernelObject */ @@ -485,7 +473,7 @@ void rt_object_delete(rt_object_t object) RT_OBJECT_HOOK_CALL(rt_object_detach_hook, (object)); /* reset object type */ - object->type = 0; + object->type = RT_Object_Class_Null; /* lock interrupt */ temp = rt_hw_interrupt_disable(); |
