/* RT-Thread config file */
#ifndef __RTTHREAD_CFG_H__
#define __RTTHREAD_CFG_H__
//#include "RTE_Components.h"
// <<< Use Configuration Wizard in Context Menu >>>
// Basic Configuration
// Maximal level of thread priority <8-256>
//	Default: 32
#define RT_THREAD_PRIORITY_MAX 32
// OS tick per second
//  Default: 1000   (1ms)
#define RT_TICK_PER_SECOND 1000
// Alignment size for CPU architecture data access
//	Default: 4
#define RT_ALIGN_SIZE 4
// the max length of object name<2-16>
//	Default: 8
#define RT_NAME_MAX 16
// Using RT-Thread components initialization
//  Using RT-Thread components initialization
//#define RT_USING_COMPONENTS_INIT
// 
// Using user main
//  Using user main
#define RT_USING_USER_MAIN
// 
// the size of main thread<1-4086>
//	Default: 512
#define RT_MAIN_THREAD_STACK_SIZE 512
// using tiny size of memory
//  using tiny size of memory
//#define RT_USING_TINY_SIZE
// 
// 
// Debug Configuration
// enable kernel debug configuration
//  Default: enable kernel debug configuration
//#define RT_DEBUG
// 
// enable components initialization debug configuration<0-1>
//  Default: 0
//#define RT_DEBUG_INIT
// thread stack over flow detect
//   Diable Thread stack over flow detect
//#define RT_USING_OVERFLOW_CHECK
// 
// 
// Hook Configuration
// using hook
//  using hook
//#define RT_USING_HOOK
// 
// using idle hook
//  using idle hook
#define RT_USING_IDLE_HOOK
// 
// 
// Software timers Configuration
//  Enables user timers
#define RT_USING_TIMER_SOFT
// The priority level of timer thread <0-31>
//  Default: 4
#define RT_TIMER_THREAD_PRIO 4
// The stack size of timer thread <0-8192>
//  Default: 512
#define RT_TIMER_THREAD_STACK_SIZE 1024
// The soft-timer tick per second <0-1000>
//  Default: 100
#define RT_TIMER_TICK_PER_SECOND 100
// 
// IPC(Inter-process communication) Configuration
// Using Semaphore
//  Using Semaphore
#define RT_USING_SEMAPHORE
// 
// Using Mutex
//  Using Mutex
#define RT_USING_MUTEX
// 
// Using Event
//  Using Event
#define RT_USING_EVENT
// 
// Using MailBox
//  Using MailBox
#define RT_USING_MAILBOX
// 
// Using Message Queue
//  Using Message Queue
#define RT_USING_MESSAGEQUEUE
// 
// 
// Memory Management Configuration
// Using Memory Pool Management
//  Using Memory Pool Management
//#define RT_USING_MEMPOOL
// 
// Dynamic Heap Management
//  Dynamic Heap Management
#define RT_USING_HEAP
// 
// using small memory
//  using small memory
#define RT_USING_SMALL_MEM
// 
// 
// Console Configuration
// Using console
//  Using console
//#define RT_USING_CONSOLE
// 
// the buffer size of console <1-1024>
//  the buffer size of console
//  Default: 128  (128Byte)
//#define RT_CONSOLEBUF_SIZE 128
// The device name for console
//  The device name for console
//  Default: uart2
//#define RT_CONSOLE_DEVICE_NAME "uart2"
// 
#if defined(RTE_USING_DEVICE)
#define RT_USING_DEVICE
#define RT_USING_SERIAL
#define BSP_USING_UART2
#endif
#if defined(RTE_USING_FINSH)
// Finsh Configuration
// Using FinSh Shell
//  Using FinSh Shell
//#define RT_USING_FINSH
// 
// Using Msh Shell
//  Using Msh Shell
//#define FINSH_USING_MSH
// 
// Only using Msh Shell
//  Only using Msh Shell
//#define FINSH_USING_MSH_ONLY
// 
// the priority of finsh thread <1-7>
//  the priority of finsh thread
//  Default: 6
#define __FINSH_THREAD_PRIORITY     1
#define FINSH_THREAD_PRIORITY       (RT_THREAD_PRIORITY_MAX / 8 * __FINSH_THREAD_PRIORITY + 1)
// the stack of finsh thread <1-4096>
//  the stack of finsh thread
//  Default: 4096  (4096Byte)
#define FINSH_THREAD_STACK_SIZE 4096
// the history lines of finsh thread <1-32>
//  the history lines of finsh thread
//  Default: 5
#define FINSH_HISTORY_LINES	        5
// Using symbol table in finsh shell
//  Using symbol table in finsh shell
//#define FINSH_USING_SYMTAB
// 
// 
#endif //RTE_USING_FINSH
// <<< end of configuration section >>>
#define IDLE_THREAD_STACK_SIZE 1024
#define RT_USING_CPU_FFS
#endif