diff --git a/bsp/asm9260t/.config b/bsp/asm9260t/.config new file mode 100644 index 0000000000..dcd4f9638d --- /dev/null +++ b/bsp/asm9260t/.config @@ -0,0 +1,181 @@ +# +# Automatically generated file; DO NOT EDIT. +# RT-Thread Configuration +# + +# +# RT-Thread Kernel +# +CONFIG_RT_NAME_MAX=8 +CONFIG_RT_ALIGN_SIZE=4 +CONFIG_RT_THREAD_PRIORITY_MAX=32 +CONFIG_RT_TICK_PER_SECOND=100 +CONFIG_RT_DEBUG=y +CONFIG_RT_USING_OVERFLOW_CHECK=y +CONFIG_RT_DEBUG_INIT=0 +# CONFIG_RT_DEBUG_THREAD is not set +CONFIG_RT_USING_INTERRUPT_INFO=y +CONFIG_RT_USING_HOOK=y +CONFIG_IDLE_THREAD_STACK_SIZE=256 +CONFIG_RT_USING_TIMER_SOFT=y +CONFIG_RT_TIMER_THREAD_PRIO=4 +CONFIG_RT_TIMER_THREAD_STACK_SIZE=512 + +# +# Inter-Thread communication +# +CONFIG_RT_USING_SEMAPHORE=y +CONFIG_RT_USING_MUTEX=y +CONFIG_RT_USING_EVENT=y +CONFIG_RT_USING_MAILBOX=y +CONFIG_RT_USING_MESSAGEQUEUE=y +# CONFIG_RT_USING_SIGNALS is not set + +# +# Memory Management +# +CONFIG_RT_USING_MEMPOOL=y +CONFIG_RT_USING_MEMHEAP=y +CONFIG_RT_USING_HEAP=y +# CONFIG_RT_USING_SMALL_MEM is not set +CONFIG_RT_USING_SLAB=y + +# +# Kernel Device Object +# +CONFIG_RT_USING_DEVICE=y +CONFIG_RT_USING_CONSOLE=y +CONFIG_RT_CONSOLEBUF_SIZE=128 +CONFIG_RT_CONSOLE_DEVICE_NAME="uart3" +# CONFIG_RT_USING_MODULE is not set + +# +# RT-Thread Components +# +CONFIG_RT_USING_COMPONENTS_INIT=y +CONFIG_RT_USING_USER_MAIN=y + +# +# C++ features +# +# CONFIG_RT_USING_CPLUSPLUS is not set + +# +# Command shell +# +CONFIG_RT_USING_FINSH=y +CONFIG_FINSH_USING_HISTORY=y +CONFIG_FINSH_USING_SYMTAB=y +CONFIG_FINSH_USING_DESCRIPTION=y +CONFIG_FINSH_THREAD_PRIORITY=20 +CONFIG_FINSH_THREAD_STACK_SIZE=4096 +CONFIG_FINSH_CMD_SIZE=80 +# CONFIG_FINSH_USING_AUTH is not set +# CONFIG_FINSH_USING_MSH is not set + +# +# Device virtual file system +# +# CONFIG_RT_USING_DFS is not set + +# +# Device Drivers +# +CONFIG_RT_USING_DEVICE_IPC=y +CONFIG_RT_USING_SERIAL=y +# CONFIG_RT_USING_CAN is not set +# CONFIG_RT_USING_HWTIMER is not set +# CONFIG_RT_USING_I2C is not set +# CONFIG_RT_USING_PIN is not set +# CONFIG_RT_USING_MTD_NOR is not set +# CONFIG_RT_USING_MTD_NAND is not set +# CONFIG_RT_USING_RTC is not set +# CONFIG_RT_USING_SDIO is not set +# CONFIG_RT_USING_SPI is not set +# CONFIG_RT_USING_WDT is not set +# CONFIG_RT_USING_USB_HOST is not set +# CONFIG_RT_USING_USB_DEVICE is not set + +# +# POSIX layer and C standard library +# +CONFIG_RT_USING_LIBC=y +# CONFIG_RT_USING_PTHREADS is not set +# CONFIG_RT_USING_POSIX is not set + +# +# Network stack +# + +# +# light weight TCP/IP stack +# +# CONFIG_RT_USING_LWIP is not set + +# +# Modbus master and slave stack +# +# CONFIG_RT_USING_MODBUS is not set + +# +# RT-Thread UI Engine +# +# CONFIG_RT_USING_GUIENGINE is not set + +# +# RT-Thread online packages +# + +# +# system packages +# +# CONFIG_PKG_USING_PARTITION is not set +# CONFIG_PKG_USING_SQLITE is not set + +# +# IoT - internet of things +# +# CONFIG_PKG_USING_PAHOMQTT is not set +# CONFIG_PKG_USING_WEBCLIENT is not set +# CONFIG_PKG_USING_MONGOOSE is not set +# CONFIG_PKG_USING_WEBTERMINAL is not set +# CONFIG_PKG_USING_CJSON is not set +# CONFIG_PKG_USING_EZXML is not set + +# +# Marvell WiFi +# +# CONFIG_PKG_USING_MARVELLWIFI is not set + +# +# security packages +# +# CONFIG_PKG_USING_MBEDTLS is not set + +# +# language packages +# +# CONFIG_PKG_USING_JERRYSCRIPT is not set + +# +# multimedia packages +# + +# +# tools packages +# +# CONFIG_PKG_USING_CMBACKTRACE is not set +# CONFIG_PKG_USING_EASYLOGGER is not set + +# +# miscellaneous packages +# +# CONFIG_PKG_USING_HELLO is not set + +# +# BSP_SPECIAL CONFIG +# +# CONFIG_RT_USING_UART0 is not set +CONFIG_RT_USING_UART3=y +# CONFIG_RT_USING_UART4 is not set +CONFIG_RT_USING_LED=y diff --git a/bsp/asm9260t/KConfig b/bsp/asm9260t/KConfig new file mode 100644 index 0000000000..fbf9538514 --- /dev/null +++ b/bsp/asm9260t/KConfig @@ -0,0 +1,45 @@ +mainmenu "RT-Thread Configuration" + +config $BSP_DIR + string + option env="BSP_ROOT" + default "." + +config $RTT_DIR + string + option env="RTT_ROOT" + default "../.." + +config $PKGS_DIR + string + option env="PKGS_ROOT" + default "packages" + +source "$RTT_DIR/KConfig" +source "$PKGS_DIR/KConfig" + +menu "BSP_SPECIAL CONFIG" + +config RT_USING_UART0 + bool "Using RT_USING_UART0" + default n + +config RT_USING_UART3 + bool "Using RT_USING_UART3" + default y + +config RT_USING_UART4 + bool "Using RT_USING_UART4" + default n + +config RT_USING_LED + bool "Using RT_USING_LED" + default y + help + led blink demo +endmenu + + + + + \ No newline at end of file diff --git a/bsp/asm9260t/applications/application.c b/bsp/asm9260t/applications/application.c index 7c6484e4f0..18a9fbdf23 100644 --- a/bsp/asm9260t/applications/application.c +++ b/bsp/asm9260t/applications/application.c @@ -26,12 +26,6 @@ #include #include -void rt_init_thread_entry(void* parameter) -{ - /* Initialization RT-Thread Components */ - rt_components_init(); -} - #ifdef RT_USING_LED #include "led.h" @@ -61,14 +55,8 @@ static void start_led_thread(void) } #endif -int rt_application_init() +int main() { - rt_thread_t init_thread; - init_thread = rt_thread_create("init", rt_init_thread_entry, RT_NULL, 2048, - (RT_THREAD_PRIORITY_MAX / 8 * 2), 20); - if(init_thread != RT_NULL) - rt_thread_startup(init_thread); - #ifdef RT_USING_LED start_led_thread(); #endif diff --git a/bsp/asm9260t/applications/startup.c b/bsp/asm9260t/applications/startup.c deleted file mode 100644 index af038a9819..0000000000 --- a/bsp/asm9260t/applications/startup.c +++ /dev/null @@ -1,90 +0,0 @@ -/* - * File : startup.c - * This file is part of RT-Thread RTOS - * COPYRIGHT (C) 2006, RT-Thread Develop Team - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - * - * Change Logs: - * Date Author Notes - * 2011-01-13 weety first version - * 2015-04-21 ArdaFu Using init componment module - * 2015-04-27 ArdaFu Port bsp from at91sam9260 to asm9260t - */ - -#include -#include -#include "board.h" - -extern void rt_application_init(void); - -#if defined(__CC_ARM) -extern int Image$$ER_ZI$$ZI$$Limit; -#define HEAP_BEGIN (&Image$$ER_ZI$$ZI$$Limit) -#elif(defined(__GNUC__)) -extern unsigned char __bss_end__; -#define HEAP_BEGIN (&__bss_end__) -#elif(defined(__ICCARM__)) -#pragma section = ".noinit" -#define HEAP_BEGIN (__section_end(".noinit")) -#endif - -#define HEAP_END (0x22000000) - -/** - * This function will startup RT-Thread RTOS. - */ -static void rtthread_startup(void) -{ - /* initialize board */ - rt_hw_board_init(); - - /* show version */ - rt_show_version(); - -#ifdef RT_USING_HEAP - rt_system_heap_init((void *)HEAP_BEGIN, (void *)HEAP_END); -#endif - - /* initialize scheduler system */ - rt_system_scheduler_init(); - /* initialize system timer*/ - rt_system_timer_init(); - /* initialize application */ - rt_application_init(); - - /* initialize timer thread */ - rt_system_timer_thread_init(); - - /* initialize idle thread */ - rt_thread_idle_init(); - - /* start scheduler */ - rt_system_scheduler_start(); - - /* never reach here */ - return; -} - -int main(void) -{ - /* disable interrupt first */ - rt_hw_interrupt_disable(); - - /* startup RT-Thread RTOS */ - rtthread_startup(); - - return 0; -} diff --git a/bsp/asm9260t/drivers/board.h b/bsp/asm9260t/drivers/board.h index e525509a18..0af63a9480 100644 --- a/bsp/asm9260t/drivers/board.h +++ b/bsp/asm9260t/drivers/board.h @@ -27,6 +27,20 @@ #include -void rt_hw_board_init(void); +#if defined(__CC_ARM) +extern int Image$$ER_ZI$$ZI$$Limit; +#define HEAP_BEGIN (&Image$$ER_ZI$$ZI$$Limit) +#elif(defined(__GNUC__)) +extern unsigned char __bss_end__; +#define HEAP_BEGIN (&__bss_end__) +#elif(defined(__ICCARM__)) +#pragma section = ".noinit" +#define HEAP_BEGIN (__section_end(".noinit")) +#endif + +#define HEAP_END (0x22000000) + + +extern void rt_hw_board_init(void); #endif diff --git a/bsp/asm9260t/link_scripts/sdram.ld b/bsp/asm9260t/link_scripts/sdram.ld index 258881b082..5566a11e74 100644 --- a/bsp/asm9260t/link_scripts/sdram.ld +++ b/bsp/asm9260t/link_scripts/sdram.ld @@ -4,7 +4,8 @@ ENTRY(entry) SECTIONS { . = 0x20000000; - + entry = .; + . = ALIGN(4); .text : { diff --git a/bsp/asm9260t/rtconfig.h b/bsp/asm9260t/rtconfig.h index 13a47dce77..946f2ea78f 100644 --- a/bsp/asm9260t/rtconfig.h +++ b/bsp/asm9260t/rtconfig.h @@ -1,261 +1,157 @@ -/* RT-Thread config file */ -#ifndef __RTTHREAD_CFG_H__ -#define __RTTHREAD_CFG_H__ +#ifndef RT_CONFIG_H__ +#define RT_CONFIG_H__ -/* RT_NAME_MAX*/ -#define RT_NAME_MAX 32 +/* Automatically generated file; DO NOT EDIT. */ +/* RT-Thread Configuration */ -/* RT_ALIGN_SIZE*/ -#define RT_ALIGN_SIZE 4 +/* RT-Thread Kernel */ -/* PRIORITY_MAX */ -#define RT_THREAD_PRIORITY_MAX 255 - -/* Tick per Second */ -#define RT_TICK_PER_SECOND 100 - -/* SECTION: RT_DEBUG */ -/* Thread Debug */ +#define RT_NAME_MAX 8 +#define RT_ALIGN_SIZE 4 +#define RT_THREAD_PRIORITY_MAX 32 +#define RT_TICK_PER_SECOND 100 #define RT_DEBUG -//#define SCHEDULER_DEBUG -/* #define RT_THREAD_DEBUG */ - #define RT_USING_OVERFLOW_CHECK - +#define RT_DEBUG_INIT 0 +/* RT_DEBUG_THREAD is not set */ #define RT_USING_INTERRUPT_INFO - -/* Using Hook */ #define RT_USING_HOOK - -/* Using Software Timer */ +#define IDLE_THREAD_STACK_SIZE 256 #define RT_USING_TIMER_SOFT -#define RT_TIMER_THREAD_PRIO 8 -#define RT_TIMER_THREAD_STACK_SIZE 512 -#define RT_TIMER_TICK_PER_SECOND 10 +#define RT_TIMER_THREAD_PRIO 4 +#define RT_TIMER_THREAD_STACK_SIZE 512 + +/* Inter-Thread communication */ -/* SECTION: IPC */ -/* Using Semaphore */ #define RT_USING_SEMAPHORE - -/* Using Mutex */ #define RT_USING_MUTEX - -/* Using Event */ #define RT_USING_EVENT - -/* Using MailBox */ #define RT_USING_MAILBOX - -/* Using Message Queue */ #define RT_USING_MESSAGEQUEUE +/* RT_USING_SIGNALS is not set */ + +/* Memory Management */ -/* SECTION: Memory Management */ -/* Using Memory Pool Management*/ #define RT_USING_MEMPOOL - -/* Using Dynamic Heap Management */ +#define RT_USING_MEMHEAP #define RT_USING_HEAP - -/* Using Small MM */ -/* #define RT_USING_SMALL_MEM */ - -/* Using SLAB Allocator */ +/* RT_USING_SMALL_MEM is not set */ #define RT_USING_SLAB -/* SECTION: the runtime libc library */ -/* the runtime libc library */ -#define RT_USING_LIBC -//#define RT_USING_PTHREADS +/* Kernel Device Object */ -/* Using Module System */ -//#define RT_USING_MODULE -//#define RT_USING_LIBDL - -/* SECTION: Device System */ -/* Using Device System */ #define RT_USING_DEVICE +#define RT_USING_CONSOLE +#define RT_CONSOLEBUF_SIZE 128 +#define RT_CONSOLE_DEVICE_NAME "uart3" +/* RT_USING_MODULE is not set */ + +/* RT-Thread Components */ + +#define RT_USING_COMPONENTS_INIT +#define RT_USING_USER_MAIN + +/* C++ features */ + +/* RT_USING_CPLUSPLUS is not set */ + +/* Command shell */ + +#define RT_USING_FINSH +#define FINSH_USING_HISTORY +#define FINSH_USING_SYMTAB +#define FINSH_USING_DESCRIPTION +#define FINSH_THREAD_PRIORITY 20 +#define FINSH_THREAD_STACK_SIZE 4096 +#define FINSH_CMD_SIZE 80 +/* FINSH_USING_AUTH is not set */ +/* FINSH_USING_MSH is not set */ + +/* Device virtual file system */ + +/* RT_USING_DFS is not set */ + +/* Device Drivers */ #define RT_USING_DEVICE_IPC #define RT_USING_SERIAL +/* RT_USING_CAN is not set */ +/* RT_USING_HWTIMER is not set */ +/* RT_USING_I2C is not set */ +/* RT_USING_PIN is not set */ +/* RT_USING_MTD_NOR is not set */ +/* RT_USING_MTD_NAND is not set */ +/* RT_USING_RTC is not set */ +/* RT_USING_SDIO is not set */ +/* RT_USING_SPI is not set */ +/* RT_USING_WDT is not set */ +/* RT_USING_USB_HOST is not set */ +/* RT_USING_USB_DEVICE is not set */ -/* SECTION: Console options */ -#define RT_USING_CONSOLE -/* the buffer size of console */ -#define RT_CONSOLEBUF_SIZE 128 -#define RT_CONSOLE_DEVICE_NAME "uart3" +/* POSIX layer and C standard library */ -/* SECTION: finsh, a C-Express shell */ -/* Using FinSH as Shell*/ -#define RT_USING_FINSH -/* Using symbol table */ -#define FINSH_USING_SYMTAB -#define FINSH_USING_DESCRIPTION -#define FINSH_THREAD_STACK_SIZE 4096 +#define RT_USING_LIBC +/* RT_USING_PTHREADS is not set */ +/* RT_USING_POSIX is not set */ -/* SECTION: C++ support */ -/* Using C++ support */ -/* #define RT_USING_CPLUSPLUS */ +/* Network stack */ -/* SECTION: Device filesystem support */ -/* using DFS support */ -//#define RT_USING_DFS -#define RT_USING_DFS_ELMFAT -/* use long file name feature */ -#define RT_DFS_ELM_USE_LFN 2 -#define RT_DFS_ELM_REENTRANT -/* define OEM code page */ -#define RT_DFS_ELM_CODE_PAGE 936 -/* Using OEM code page file */ -// #define RT_DFS_ELM_CODE_PAGE_FILE -/* the max number of file length */ -#define RT_DFS_ELM_MAX_LFN 128 -/* #define RT_USING_DFS_YAFFS2 */ -//#define RT_USING_DFS_DEVFS +/* light weight TCP/IP stack */ -#define RT_USING_DFS_NFS -#define RT_NFS_HOST_EXPORT "192.168.1.5:/" +/* RT_USING_LWIP is not set */ -#define DFS_USING_WORKDIR +/* Modbus master and slave stack */ -/* the max number of mounted filesystem */ -#define DFS_FILESYSTEMS_MAX 4 -/* the max number of opened files */ -#define DFS_FD_MAX 16 -/* the max number of cached sector */ -#define DFS_CACHE_MAX_NUM 4 +/* RT_USING_MODBUS is not set */ -/* Enable freemodbus protocol stack*/ -/* #define RT_USING_MODBUS */ +/* RT-Thread UI Engine */ +/* RT_USING_GUIENGINE is not set */ + +/* RT-Thread online packages */ + +/* system packages */ + +/* PKG_USING_PARTITION is not set */ +/* PKG_USING_SQLITE is not set */ + +/* IoT - internet of things */ + +/* PKG_USING_PAHOMQTT is not set */ +/* PKG_USING_WEBCLIENT is not set */ +/* PKG_USING_MONGOOSE is not set */ +/* PKG_USING_WEBTERMINAL is not set */ +/* PKG_USING_CJSON is not set */ +/* PKG_USING_EZXML is not set */ + +/* Marvell WiFi */ + +/* PKG_USING_MARVELLWIFI is not set */ + +/* security packages */ + +/* PKG_USING_MBEDTLS is not set */ + +/* language packages */ + +/* PKG_USING_JERRYSCRIPT is not set */ + +/* multimedia packages */ + +/* tools packages */ + +/* PKG_USING_CMBACKTRACE is not set */ +/* PKG_USING_EASYLOGGER is not set */ + +/* miscellaneous packages */ + +/* PKG_USING_HELLO is not set */ + +/* BSP_SPECIAL CONFIG */ + +/* RT_USING_UART0 is not set */ +#define RT_USING_UART3 +/* RT_USING_UART4 is not set */ #define RT_USING_LED -//#define RT_USING_SDIO - -#define RT_USING_I2C -#define RT_USING_I2C_BITOPS - -/*#define RT_USING_DBGU*/ - #define RT_USING_UART0 -/* #define RT_USING_UART1 */ - - #define RT_USING_UART3 - #define RT_USING_UART4 - -/* SECTION: lwip, a lightweight TCP/IP protocol stack */ -/* Using lightweight TCP/IP protocol stack */ -//#define RT_USING_LWIP -#define RT_LWIP_DNS - -/* Trace LwIP protocol */ -// #define RT_LWIP_DEBUG - -/* Enable ICMP protocol */ -#define RT_LWIP_ICMP - -/* Enable IGMP protocol */ -#define RT_LWIP_IGMP - -/* Enable UDP protocol */ -#define RT_LWIP_UDP - -/* Enable TCP protocol */ -#define RT_LWIP_TCP - -/* the number of simulatenously active TCP connections*/ -#define RT_LWIP_TCP_PCB_NUM 5 - -/* TCP sender buffer space */ -#define RT_LWIP_TCP_SND_BUF 1024*10 - -/* TCP receive window. */ -#define RT_LWIP_TCP_WND 1024*8 - -/* Enable SNMP protocol */ -/* #define RT_LWIP_SNMP */ - -/* Using DHCP */ -/* #define RT_LWIP_DHCP */ - -/* ip address of target */ -#define RT_LWIP_IPADDR0 192 -#define RT_LWIP_IPADDR1 168 -#define RT_LWIP_IPADDR2 1 -#define RT_LWIP_IPADDR3 30 - -/* gateway address of target */ -#define RT_LWIP_GWADDR0 192 -#define RT_LWIP_GWADDR1 168 -#define RT_LWIP_GWADDR2 1 -#define RT_LWIP_GWADDR3 1 - -/* mask address of target */ -#define RT_LWIP_MSKADDR0 255 -#define RT_LWIP_MSKADDR1 255 -#define RT_LWIP_MSKADDR2 255 -#define RT_LWIP_MSKADDR3 0 - -/* the number of blocks for pbuf */ -#define RT_LWIP_PBUF_NUM 16 - -/* the number of simultaneously queued TCP */ -#define RT_LWIP_TCP_SEG_NUM 40 - -/* thread priority of tcpip thread */ -#define RT_LWIP_TCPTHREAD_PRIORITY 128 - -/* mail box size of tcpip thread to wait for */ -#define RT_LWIP_TCPTHREAD_MBOX_SIZE 32 - -/* thread stack size of tcpip thread */ -#define RT_LWIP_TCPTHREAD_STACKSIZE 4096 - -/* thread priority of ethnetif thread */ -#define RT_LWIP_ETHTHREAD_PRIORITY 144 - -/* mail box size of ethnetif thread to wait for */ -#define RT_LWIP_ETHTHREAD_MBOX_SIZE 32 - -/* thread stack size of ethnetif thread */ -#define RT_LWIP_ETHTHREAD_STACKSIZE 1024 - - -/* SECTION: RTGUI support */ -/* using RTGUI support */ -/* #define RT_USING_RTGUI */ - -/* name length of RTGUI object */ -//#define RTGUI_NAME_MAX 16 -/* support 16 weight font */ -//#define RTGUI_USING_FONT16 -/* support 16 weight font */ -//#define RTGUI_USING_FONT12 -/* support Chinese font */ -//#define RTGUI_USING_FONTHZ -/* use DFS as file interface */ -//#define RTGUI_USING_DFS_FILERW -/* use font file as Chinese font */ -/* #define RTGUI_USING_HZ_FILE */ -/* use Chinese bitmap font */ -//#define RTGUI_USING_HZ_BMP -/* use small size in RTGUI */ -/* #define RTGUI_USING_SMALL_SIZE */ -/* use mouse cursor */ -/* #define RTGUI_USING_MOUSE_CURSOR */ - -/* SECTION: FTK support */ -/* using FTK support */ -/* #define RT_USING_FTK */ - -/* - * Note on FTK: - * - * FTK depends : - * #define RT_USING_NEWLIB - * #define DFS_USING_WORKDIR - * - * And the maximal length must great than 64 - * #define RT_DFS_ELM_MAX_LFN 128 - */ -//#define RT_USING_CPU_FFS -#define RT_USING_COMPONENTS_INIT #endif diff --git a/bsp/stm32f411-nucleo/.config b/bsp/stm32f411-nucleo/.config new file mode 100644 index 0000000000..890c03689d --- /dev/null +++ b/bsp/stm32f411-nucleo/.config @@ -0,0 +1,176 @@ +# +# Automatically generated file; DO NOT EDIT. +# RT-Thread Configuration +# + +# +# RT-Thread Kernel +# +CONFIG_RT_NAME_MAX=8 +CONFIG_RT_ALIGN_SIZE=4 +CONFIG_RT_THREAD_PRIORITY_MAX=32 +CONFIG_RT_TICK_PER_SECOND=100 +CONFIG_RT_DEBUG=y +CONFIG_RT_USING_OVERFLOW_CHECK=y +CONFIG_RT_DEBUG_INIT=0 +# CONFIG_RT_DEBUG_THREAD is not set +CONFIG_RT_USING_HOOK=y +CONFIG_IDLE_THREAD_STACK_SIZE=256 +CONFIG_RT_USING_TIMER_SOFT=y +CONFIG_RT_TIMER_THREAD_PRIO=4 +CONFIG_RT_TIMER_THREAD_STACK_SIZE=512 + +# +# Inter-Thread communication +# +CONFIG_RT_USING_SEMAPHORE=y +CONFIG_RT_USING_MUTEX=y +CONFIG_RT_USING_EVENT=y +CONFIG_RT_USING_MAILBOX=y +CONFIG_RT_USING_MESSAGEQUEUE=y +# CONFIG_RT_USING_SIGNALS is not set + +# +# Memory Management +# +CONFIG_RT_USING_MEMPOOL=y +# CONFIG_RT_USING_MEMHEAP is not set +CONFIG_RT_USING_HEAP=y +CONFIG_RT_USING_SMALL_MEM=y +# CONFIG_RT_USING_SLAB is not set + +# +# Kernel Device Object +# +CONFIG_RT_USING_DEVICE=y +CONFIG_RT_USING_CONSOLE=y +CONFIG_RT_CONSOLEBUF_SIZE=128 +CONFIG_RT_CONSOLE_DEVICE_NAME="uart2" +# CONFIG_RT_USING_MODULE is not set + +# +# RT-Thread Components +# +CONFIG_RT_USING_COMPONENTS_INIT=y +CONFIG_RT_USING_USER_MAIN=y + +# +# C++ features +# +# CONFIG_RT_USING_CPLUSPLUS is not set + +# +# Command shell +# +CONFIG_RT_USING_FINSH=y +CONFIG_FINSH_USING_HISTORY=y +CONFIG_FINSH_USING_SYMTAB=y +CONFIG_FINSH_USING_DESCRIPTION=y +CONFIG_FINSH_THREAD_PRIORITY=20 +CONFIG_FINSH_THREAD_STACK_SIZE=4096 +CONFIG_FINSH_CMD_SIZE=80 +# CONFIG_FINSH_USING_AUTH is not set +# CONFIG_FINSH_USING_MSH is not set + +# +# Device virtual file system +# +# CONFIG_RT_USING_DFS is not set + +# +# Device Drivers +# +CONFIG_RT_USING_DEVICE_IPC=y +CONFIG_RT_USING_SERIAL=y +# CONFIG_RT_USING_CAN is not set +# CONFIG_RT_USING_HWTIMER is not set +# CONFIG_RT_USING_I2C is not set +# CONFIG_RT_USING_PIN is not set +# CONFIG_RT_USING_MTD_NOR is not set +# CONFIG_RT_USING_MTD_NAND is not set +# CONFIG_RT_USING_RTC is not set +# CONFIG_RT_USING_SDIO is not set +# CONFIG_RT_USING_SPI is not set +# CONFIG_RT_USING_WDT is not set +# CONFIG_RT_USING_USB_HOST is not set +# CONFIG_RT_USING_USB_DEVICE is not set + +# +# POSIX layer and C standard library +# +# CONFIG_RT_USING_LIBC is not set +# CONFIG_RT_USING_PTHREADS is not set + +# +# Network stack +# + +# +# light weight TCP/IP stack +# +# CONFIG_RT_USING_LWIP is not set + +# +# Modbus master and slave stack +# +# CONFIG_RT_USING_MODBUS is not set + +# +# RT-Thread UI Engine +# +# CONFIG_RT_USING_GUIENGINE is not set + +# +# RT-Thread online packages +# + +# +# system packages +# +# CONFIG_PKG_USING_PARTITION is not set +# CONFIG_PKG_USING_SQLITE is not set + +# +# IoT - internet of things +# +# CONFIG_PKG_USING_PAHOMQTT is not set +# CONFIG_PKG_USING_WEBCLIENT is not set +# CONFIG_PKG_USING_MONGOOSE is not set +# CONFIG_PKG_USING_WEBTERMINAL is not set +# CONFIG_PKG_USING_CJSON is not set +# CONFIG_PKG_USING_EZXML is not set + +# +# Marvell WiFi +# +# CONFIG_PKG_USING_MARVELLWIFI is not set + +# +# security packages +# +# CONFIG_PKG_USING_MBEDTLS is not set + +# +# language packages +# +# CONFIG_PKG_USING_JERRYSCRIPT is not set + +# +# multimedia packages +# + +# +# tools packages +# +# CONFIG_PKG_USING_CMBACKTRACE is not set +# CONFIG_PKG_USING_EASYLOGGER is not set + +# +# miscellaneous packages +# +# CONFIG_PKG_USING_HELLO is not set + +# +# BSP_SPECIAL CONFIG +# +CONFIG_RT_USING_UART2=y diff --git a/bsp/stm32f411-nucleo/KConfig b/bsp/stm32f411-nucleo/KConfig new file mode 100644 index 0000000000..5c7783d66e --- /dev/null +++ b/bsp/stm32f411-nucleo/KConfig @@ -0,0 +1,32 @@ +mainmenu "RT-Thread Configuration" + +config $BSP_DIR + string + option env="BSP_ROOT" + default "." + +config $RTT_DIR + string + option env="RTT_ROOT" + default "../.." + +config $PKGS_DIR + string + option env="PKGS_ROOT" + default "packages" + +source "$RTT_DIR/KConfig" +source "$PKGS_DIR/KConfig" + +menu "BSP_SPECIAL CONFIG" + +config RT_USING_UART2 + bool "Using RT_USING_UART2" + default y + +endmenu + + + + + \ No newline at end of file diff --git a/bsp/stm32f411-nucleo/applications/main.c b/bsp/stm32f411-nucleo/applications/main.c index a35f23fe68..ae855a5b1e 100644 --- a/bsp/stm32f411-nucleo/applications/main.c +++ b/bsp/stm32f411-nucleo/applications/main.c @@ -1,19 +1,20 @@ -//------------------------------------------------------------------------------ -// Copyright(C) ASRC, 2013-2016. All rights reserved. -//------------------------------------------------------------------------------ -// Project : TBD -// Description: DRMP Application Entry -// Author : Fu Pengfei -//------------------------------------------------------------------------------ -// Change Logs: -// Date Notes -// 2015-07-29 first implementation -//------------------------------------------------------------------------------ -// $Id:: main.c 1119 2015-10-07 09:11:14Z arda $ -//------------------------------------------------------------------------------ +/* + * File : main.c + * This file is part of RT-Thread RTOS + * COPYRIGHT (C) 2009, RT-Thread Development Team + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rt-thread.org/license/LICENSE + * + * Change Logs: + * Date Author Notes + * 2015-07-29 Arda.Fu first implementation + */ #include int main(void) { /* user app entry */ + return 0; } diff --git a/bsp/stm32f411-nucleo/drivers/board.c b/bsp/stm32f411-nucleo/drivers/board.c index 51631c2367..008d6f5a78 100644 --- a/bsp/stm32f411-nucleo/drivers/board.c +++ b/bsp/stm32f411-nucleo/drivers/board.c @@ -1,17 +1,17 @@ -//------------------------------------------------------------------------------ -// Copyright(C) ASRC, 2013-2015. All rights reserved. -//------------------------------------------------------------------------------ -// Project : TBD -// Description: DRMP Board Init -// Author : Fu Pengfei -//------------------------------------------------------------------------------ -// Change Logs: -// Date Notes -// 2015-07-29 first implementation -//------------------------------------------------------------------------------ -// $Id:: board.c 1076 2015-07-29 09:40:39Z arda $ -//------------------------------------------------------------------------------ - +/* + * File : board.c + * This file is part of RT-Thread RTOS + * COPYRIGHT (C) 2009, RT-Thread Development Team + * + * The license and distribution terms for this file may be + * found in the file LICENSE in this distribution or at + * http://www.rt-thread.org/license/LICENSE + * + * Change Logs: + * Date Author Notes + * 2009-09-22 Bernard add board.h to this bsp + */ + #include #include "board.h" @@ -156,7 +156,7 @@ void rt_hw_board_init() #endif #ifdef RT_USING_CONSOLE - rt_console_set_device(CONSOLE_DEVICE); + rt_console_set_device(RT_CONSOLE_DEVICE_NAME); #endif } diff --git a/bsp/stm32f411-nucleo/drivers/board.h b/bsp/stm32f411-nucleo/drivers/board.h index 155c2e7441..2254b68038 100644 --- a/bsp/stm32f411-nucleo/drivers/board.h +++ b/bsp/stm32f411-nucleo/drivers/board.h @@ -24,22 +24,6 @@ #define STM32_SRAM_SIZE 64 #define STM32_SRAM_END (0x20000000 + STM32_SRAM_SIZE * 1024) -// Console on USART: <0=> no console <1=>USART 1 <2=>USART 2 <3=> USART 3 -// Default: 1 -#define STM32_CONSOLE_USART 2 - -#if STM32_CONSOLE_USART == 0 -#define CONSOLE_DEVICE "no" -#elif STM32_CONSOLE_USART == 1 -#define CONSOLE_DEVICE "uart1" -#elif STM32_CONSOLE_USART == 2 -#define CONSOLE_DEVICE "uart2" -#elif STM32_CONSOLE_USART == 3 -#define CONSOLE_DEVICE "uart3" -#endif - -#define FINSH_DEVICE_NAME CONSOLE_DEVICE - #ifdef __CC_ARM extern int Image$$RW_IRAM1$$ZI$$Limit; #define HEAP_BEGIN ((void *)&Image$$RW_IRAM1$$ZI$$Limit) diff --git a/bsp/stm32f411-nucleo/rtconfig.h b/bsp/stm32f411-nucleo/rtconfig.h index 9a9637e912..ba3344ba8e 100644 --- a/bsp/stm32f411-nucleo/rtconfig.h +++ b/bsp/stm32f411-nucleo/rtconfig.h @@ -1,96 +1,152 @@ -/* RT-Thread config file */ -#ifndef __RTTHREAD_CFG_H__ -#define __RTTHREAD_CFG_H__ +#ifndef RT_CONFIG_H__ +#define RT_CONFIG_H__ -/* RT_NAME_MAX*/ -#define RT_NAME_MAX 8 +/* Automatically generated file; DO NOT EDIT. */ +/* RT-Thread Configuration */ -/* RT_ALIGN_SIZE*/ -#define RT_ALIGN_SIZE 4 +/* RT-Thread Kernel */ -/* PRIORITY_MAX */ -#define RT_THREAD_PRIORITY_MAX 32 - -/* Tick per Second */ -#define RT_TICK_PER_SECOND 100 - -/* SECTION: RT_DEBUG */ -/* Thread Debug */ +#define RT_NAME_MAX 8 +#define RT_ALIGN_SIZE 4 +#define RT_THREAD_PRIORITY_MAX 32 +#define RT_TICK_PER_SECOND 100 #define RT_DEBUG #define RT_USING_OVERFLOW_CHECK - -/* Using Hook */ +#define RT_DEBUG_INIT 0 +/* RT_DEBUG_THREAD is not set */ #define RT_USING_HOOK +#define IDLE_THREAD_STACK_SIZE 256 +#define RT_USING_TIMER_SOFT +#define RT_TIMER_THREAD_PRIO 4 +#define RT_TIMER_THREAD_STACK_SIZE 512 -#define IDLE_THREAD_STACK_SIZE 1024 +/* Inter-Thread communication */ -/* Using Software Timer */ -/* #define RT_USING_TIMER_SOFT */ -#define RT_TIMER_THREAD_PRIO 4 -#define RT_TIMER_THREAD_STACK_SIZE 512 - -/* SECTION: IPC */ -/* Using Semaphore*/ #define RT_USING_SEMAPHORE - -/* Using Mutex */ #define RT_USING_MUTEX - -/* Using Event */ #define RT_USING_EVENT - -/* Using MailBox */ #define RT_USING_MAILBOX - -/* Using Message Queue */ #define RT_USING_MESSAGEQUEUE +/* RT_USING_SIGNALS is not set */ + +/* Memory Management */ -/* SECTION: Memory Management */ -/* Using Memory Pool Management*/ #define RT_USING_MEMPOOL - -/* Using Dynamic Heap Management */ +/* RT_USING_MEMHEAP is not set */ #define RT_USING_HEAP - -/* Using Small MM */ #define RT_USING_SMALL_MEM +/* RT_USING_SLAB is not set */ + +/* Kernel Device Object */ -/* SECTION: Device System */ -/* Using Device System */ #define RT_USING_DEVICE -#define RT_USING_DEVICE_IPC -/* Using serial framework */ -#define RT_USING_SERIAL - -//#define RT_USING_UART1 -#define RT_USING_UART2 -//#define RT_USING_UART3 - -/* Using GPIO pin framework */ -//#define RT_USING_PIN - -/* SECTION: Console options */ #define RT_USING_CONSOLE -/* the buffer size of console*/ -#define RT_CONSOLEBUF_SIZE 128 +#define RT_CONSOLEBUF_SIZE 128 +#define RT_CONSOLE_DEVICE_NAME "uart2" +/* RT_USING_MODULE is not set */ -/* SECTION: finsh, a C-Express shell */ -#define RT_USING_FINSH -/* Using symbol table */ -#define FINSH_USING_SYMTAB -#define FINSH_USING_DESCRIPTION +/* RT-Thread Components */ -/* Using msh and finsh */ -//#define FINSH_USING_MSH -/* Using msh only */ -//#define FINSH_USING_MSH_ONLY - -/* RT_GDB_STUB */ -//#define RT_USING_GDB #define RT_USING_COMPONENTS_INIT #define RT_USING_USER_MAIN -//#define RT_USING_EASYFLASH +/* C++ features */ + +/* RT_USING_CPLUSPLUS is not set */ + +/* Command shell */ + +#define RT_USING_FINSH +#define FINSH_USING_HISTORY +#define FINSH_USING_SYMTAB +#define FINSH_USING_DESCRIPTION +#define FINSH_THREAD_PRIORITY 20 +#define FINSH_THREAD_STACK_SIZE 4096 +#define FINSH_CMD_SIZE 80 +/* FINSH_USING_AUTH is not set */ +/* FINSH_USING_MSH is not set */ + +/* Device virtual file system */ + +/* RT_USING_DFS is not set */ + +/* Device Drivers */ + +#define RT_USING_DEVICE_IPC +#define RT_USING_SERIAL +/* RT_USING_CAN is not set */ +/* RT_USING_HWTIMER is not set */ +/* RT_USING_I2C is not set */ +/* RT_USING_PIN is not set */ +/* RT_USING_MTD_NOR is not set */ +/* RT_USING_MTD_NAND is not set */ +/* RT_USING_RTC is not set */ +/* RT_USING_SDIO is not set */ +/* RT_USING_SPI is not set */ +/* RT_USING_WDT is not set */ +/* RT_USING_USB_HOST is not set */ +/* RT_USING_USB_DEVICE is not set */ + +/* POSIX layer and C standard library */ + +/* RT_USING_LIBC is not set */ +/* RT_USING_PTHREADS is not set */ + +/* Network stack */ + +/* light weight TCP/IP stack */ + +/* RT_USING_LWIP is not set */ + +/* Modbus master and slave stack */ + +/* RT_USING_MODBUS is not set */ + +/* RT-Thread UI Engine */ + +/* RT_USING_GUIENGINE is not set */ + +/* RT-Thread online packages */ + +/* system packages */ + +/* PKG_USING_PARTITION is not set */ +/* PKG_USING_SQLITE is not set */ + +/* IoT - internet of things */ + +/* PKG_USING_PAHOMQTT is not set */ +/* PKG_USING_WEBCLIENT is not set */ +/* PKG_USING_MONGOOSE is not set */ +/* PKG_USING_WEBTERMINAL is not set */ +/* PKG_USING_CJSON is not set */ +/* PKG_USING_EZXML is not set */ + +/* Marvell WiFi */ + +/* PKG_USING_MARVELLWIFI is not set */ + +/* security packages */ + +/* PKG_USING_MBEDTLS is not set */ + +/* language packages */ + +/* PKG_USING_JERRYSCRIPT is not set */ + +/* multimedia packages */ + +/* tools packages */ + +/* PKG_USING_CMBACKTRACE is not set */ +/* PKG_USING_EASYLOGGER is not set */ + +/* miscellaneous packages */ + +/* PKG_USING_HELLO is not set */ + +/* BSP_SPECIAL CONFIG */ + +#define RT_USING_UART2 -//#define RT_USING_LIBC #endif diff --git a/src/KConfig b/src/KConfig index 1d50c0865a..7e18cfeb69 100644 --- a/src/KConfig +++ b/src/KConfig @@ -49,6 +49,11 @@ config RT_DEBUG_THREAD help print the switch to/from thread name when each thread context switch +config RT_USING_INTERRUPT_INFO + bool "Enable additional interrupt trace information" + default n + help + Add name and counter information for interrupt trace. endif config RT_USING_HOOK