rtconfig.h 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277
  1. /* RT-Thread config file */
  2. #ifndef __RTTHREAD_CFG_H__
  3. #define __RTTHREAD_CFG_H__
  4. // <RDTConfigurator URL="http://www.rt-thread.com/eclipse">
  5. // <integer name="RT_NAME_MAX" description="Maximal size of kernel object name length" default="6" />
  6. #define RT_NAME_MAX 8
  7. // <integer name="RT_ALIGN_SIZE" description="Alignment size for CPU architecture data access" default="4" />
  8. #define RT_ALIGN_SIZE 4
  9. // <integer name="RT_THREAD_PRIORITY_MAX" description="Maximal level of thread priority" default="32">
  10. // <item description="8">8</item>
  11. // <item description="32">32</item>
  12. // <item description="256">256</item>
  13. // </integer>
  14. #define RT_THREAD_PRIORITY_MAX 32
  15. // <integer name="RT_TICK_PER_SECOND" description="OS tick per second" default="100" />
  16. #define RT_TICK_PER_SECOND 1000
  17. // <integer name="IDLE_THREAD_STACK_SIZE" description="The stack size of idle thread" default="512" />
  18. #define IDLE_THREAD_STACK_SIZE 512
  19. // <bool name="RT_USING_MODULE" description="Using Application Module" default="true" />
  20. // #define RT_USING_MODULE
  21. // <section name="RT_DEBUG" description="Kernel Debug Configuration" default="true" >
  22. #define RT_DEBUG
  23. // <bool name="RT_DEBUG_INIT" description="debug init enable" default=0 />
  24. #define RT_DEBUG_INIT 0
  25. // <bool name="RT_THREAD_DEBUG" description="Thread debug enable" default="false" />
  26. // #define RT_THREAD_DEBUG
  27. // <bool name="RT_USING_OVERFLOW_CHECK" description="Thread stack over flow detect" default="true" />
  28. #define RT_USING_OVERFLOW_CHECK
  29. // </section>
  30. // <bool name="RT_USING_HOOK" description="Using hook functions" default="true" />
  31. #define RT_USING_HOOK
  32. // <section name="RT_USING_TIMER_SOFT" description="Using software timer which will start a thread to handle soft-timer" default="true" >
  33. #define RT_USING_TIMER_SOFT
  34. // <integer name="RT_TIMER_THREAD_PRIO" description="The priority level of timer thread" default="4" />
  35. #define RT_TIMER_THREAD_PRIO 4
  36. // <integer name="RT_TIMER_THREAD_STACK_SIZE" description="The stack size of timer thread" default="512" />
  37. #define RT_TIMER_THREAD_STACK_SIZE 512
  38. // </section>
  39. // <section name="IPC" description="Inter-Thread communication" default="always" >
  40. // <bool name="RT_USING_SEMAPHORE" description="Using semaphore in the system" default="true" />
  41. #define RT_USING_SEMAPHORE
  42. // <bool name="RT_USING_MUTEX" description="Using mutex in the system" default="true" />
  43. #define RT_USING_MUTEX
  44. // <bool name="RT_USING_EVENT" description="Using event group in the system" default="true" />
  45. #define RT_USING_EVENT
  46. // <bool name="RT_USING_MAILBOX" description="Using mailbox in the system" default="true" />
  47. #define RT_USING_MAILBOX
  48. // <bool name="RT_USING_MESSAGEQUEUE" description="Using message queue in the system" default="true" />
  49. #define RT_USING_MESSAGEQUEUE
  50. // </section>
  51. // <section name="MM" description="Memory Management" default="always" >
  52. // <bool name="RT_USING_MEMPOOL" description="Using Memory Pool Management in the system" default="true" />
  53. #define RT_USING_MEMPOOL
  54. // <bool name="RT_USING_MEMHEAP" description="Using Memory Heap Object in the system" default="true" />
  55. #define RT_USING_MEMHEAP
  56. // <bool name="RT_USING_HEAP" description="Using Dynamic Heap Management in the system" default="true" />
  57. #define RT_USING_HEAP
  58. // <bool name="RT_USING_SMALL_MEM" description="Optimizing for small memory" default="false" />
  59. #define RT_USING_SMALL_MEM
  60. // <bool name="RT_USING_SLAB" description="Using SLAB memory management for large memory" default="false" />
  61. // #define RT_USING_SLAB
  62. // </section>
  63. // <section name="RT_USING_DEVICE" description="Using Device Driver Framework" default="true" >
  64. #define RT_USING_DEVICE
  65. // <bool name=RT_USING_DEVICE_IPC description="Using IPC in Device Driver Framework" default="true" />
  66. #define RT_USING_DEVICE_IPC
  67. // <bool name="RT_USING_SERIAL" description="Using Serial Device Driver Framework" default="true" />
  68. #define RT_USING_SERIAL
  69. // <integer name="RT_UART_RX_BUFFER_SIZE" description="The buffer size for UART reception" default="64" />
  70. #define RT_UART_RX_BUFFER_SIZE 2048
  71. // <bool name="RT_USING_MTD_NAND" description="Using MTD NAND Framework" default="true" />
  72. // #define RT_USING_MTD_NAND
  73. // <bool name="RT_MTD_NAND_DEBUG" description="Enable MTD NAND Framework Debug" default="true" />
  74. // #define RT_MTD_NAND_DEBUG
  75. // <bool name="RT_USING_NFTL" description="Using NFTL layer" default="true" />
  76. // #define RT_USING_NFTL
  77. // <bool name="RT_USING_SPI" description="Using SPI Device Driver Framework" default="true" />
  78. #define RT_USING_SPI
  79. // <bool name="RT_USING_I2C" description="Using I2C Device Driver Framework" default="true" />
  80. #define RT_USING_I2C
  81. //#define RT_USING_I2C_BITOPS
  82. // <bool name="RT_USING_RTC" description="Using RTC Device Driver Framework" default="true" />
  83. #define RT_USING_RTC
  84. // <integer name="RT_MMCSD_THREAD_PREORITY" description="The prority of mmcsd thread" default="15" />
  85. #define RT_MMCSD_THREAD_PREORITY 15
  86. // <section name="RT_USING_CONSOLE" description="Using console" default="true" >
  87. #define RT_USING_CONSOLE
  88. // <integer name="RT_CONSOLEBUF_SIZE" description="The buffer size for console output" default="128" />
  89. #define RT_CONSOLEBUF_SIZE 128
  90. // <string name="RT_CONSOLE_DEVICE_NAME" description="The device name for console" default="uart" />
  91. #define RT_CONSOLE_DEVICE_NAME "uart0"
  92. // </section>
  93. // <bool name="RT_USING_COMPONENTS_INIT" description="Using RT-Thread components initialization" default="true" />
  94. #define RT_USING_COMPONENTS_INIT
  95. // <section name="RT_USING_FINSH" description="Using finsh as shell, which is a C-Express shell" default="true" >
  96. #define RT_USING_FINSH
  97. // <bool name="FINSH_USING_SYMTAB" description="Using symbol table in finsh shell" default="true" />
  98. #define FINSH_USING_SYMTAB
  99. // <bool name="FINSH_USING_DESCRIPTION" description="Keeping description in symbol table" default="true" />
  100. #define FINSH_USING_DESCRIPTION
  101. // <integer name="FINSH_THREAD_STACK_SIZE" description="The stack size for finsh thread" default="4096" />
  102. #define FINSH_THREAD_STACK_SIZE 4096
  103. // <bool name="FINSH_USING_MSH" description="Using module shell in finsh" default="true" />
  104. #define FINSH_USING_MSH
  105. // <bool name="FINSH_USING_MSH_DEFAULT" description="Using module shell as default shell" default="true" />
  106. #define FINSH_USING_MSH_DEFAULT
  107. // <bool name="FINSH_USING_MSH_ONLY" description="Only using module shell" default="false" />
  108. // #define FINSH_USING_MSH_ONLY
  109. // </section>
  110. // <section name="LIBC" description="C Runtime library setting" default="always" >
  111. // <bool name="RT_USING_LIBC" description="Using libc library" default="true" />
  112. #define RT_USING_LIBC
  113. // <bool name="RT_USING_PTHREADS" description="Using POSIX threads library" default="true" />
  114. #define RT_USING_PTHREADS
  115. //#define RT_USING_CPLUSPLUS
  116. // </section>
  117. // <section name="RT_USING_DFS" description="Device file system" default="true" >
  118. #define RT_USING_DFS
  119. // <bool name="DFS_USING_WORKDIR" description="Using working directory" default="true" />
  120. #define DFS_USING_WORKDIR
  121. // <integer name="DFS_FILESYSTEM_TYPES_MAX" description="The maximal number of the supported file system type" default="4" />
  122. #define DFS_FILESYSTEM_TYPES_MAX 4
  123. // <integer name="DFS_FILESYSTEMS_MAX" description="The maximal number of mounted file system" default="4" />
  124. #define DFS_FILESYSTEMS_MAX 4
  125. // <integer name="DFS_FD_MAX" description="The maximal number of opened files" default="4" />
  126. #define DFS_FD_MAX 32
  127. // <bool name="RT_USING_DFS_ELMFAT" description="Using ELM FatFs" default="true" />
  128. #define RT_USING_DFS_ELMFAT
  129. // <integer name="RT_DFS_ELM_DRIVES" description="The maximal number of drives of FatFs" default="4" />
  130. #define RT_DFS_ELM_DRIVES 4
  131. // <bool name="RT_DFS_ELM_REENTRANT" description="Support reentrant" default="true" />
  132. #define RT_DFS_ELM_REENTRANT
  133. // <integer name="RT_DFS_ELM_USE_LFN" description="Support long file name" default="0">
  134. // <item description="LFN with static LFN working buffer">1</item>
  135. // <item description="LFN with dynamic LFN working buffer on the stack">2</item>
  136. // <item description="LFN with dynamic LFN working buffer on the heap">3</item>
  137. // </integer>
  138. #define RT_DFS_ELM_USE_LFN 3
  139. // <integer name="RT_DFS_ELM_CODE_PAGE" description="OEM code page" default="936">
  140. #define RT_DFS_ELM_CODE_PAGE 437
  141. // <bool name="RT_DFS_ELM_CODE_PAGE_FILE" description="Using OEM code page file" default="false" />
  142. #define RT_DFS_ELM_CODE_PAGE_FILE
  143. // <integer name="RT_DFS_ELM_MAX_LFN" description="Maximal size of file name length" default="256" />
  144. #define RT_DFS_ELM_MAX_LFN 128
  145. // <integer name="RT_DFS_ELM_MAX_SECTOR_SIZE" description="Maximal size of sector" default="512" />
  146. #define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
  147. // <bool name="RT_DFS_ELM_USE_ERASE" description="Enable erase feature for flash" default="true" />
  148. // #define RT_DFS_ELM_USE_ERASE
  149. // <bool name="RT_USING_DFS_YAFFS2" description="Using YAFFS2" default="false" />
  150. // #define RT_USING_DFS_YAFFS2
  151. // <bool name="RT_USING_DFS_UFFS" description="Using UFFS" default="false" />
  152. // #define RT_USING_DFS_UFFS
  153. // <bool name="RT_USING_DFS_DEVFS" description="Using devfs for device objects" default="true" />
  154. #define RT_USING_DFS_DEVFS
  155. // <bool name="RT_USING_DFS_ROMFS" description="Using ROMFS" default="false" />
  156. //#define RT_USING_DFS_ROMFS
  157. // <bool name="RT_USING_DFS_NFS" description="Using NFS" default="false" />
  158. // #define RT_USING_DFS_NFS
  159. // <string name="RT_NFS_HOST_EXPORT" description="The exported NFS host path" default="192.168.1.10:/" />
  160. #define RT_NFS_HOST_EXPORT "192.168.1.20:/"
  161. // </section>
  162. // <section name="RT_USING_LWIP" description="lwip, a lightweight TCP/IP protocol stack" default="true" >
  163. #define RT_USING_LWIP
  164. // <bool name="RT_USING_LWIP141" description="Using lwIP 1.4.1 version" default="true" />
  165. #define RT_USING_LWIP141
  166. // <bool name="RT_LWIP_ICMP" description="Enable ICMP protocol" default="true" />
  167. #define RT_LWIP_ICMP
  168. // <bool name="RT_LWIP_IGMP" description="Enable IGMP protocol" default="false" />
  169. // #define RT_LWIP_IGMP
  170. // <bool name="RT_LWIP_UDP" description="Enable UDP protocol" default="true" />
  171. #define RT_LWIP_UDP
  172. // <bool name="RT_LWIP_TCP" description="Enable TCP protocol" default="true" />
  173. #define RT_LWIP_TCP
  174. // <bool name="RT_LWIP_DNS" description="Enable DNS protocol" default="true" />
  175. #define RT_LWIP_DNS
  176. // <integer name="RT_LWIP_PBUF_NUM" description="Maximal number of buffers in the pbuf pool" default="4" />
  177. #define RT_LWIP_PBUF_NUM 8
  178. // <integer name="RT_LWIP_TCP_PCB_NUM" description="Maximal number of simultaneously active TCP connections" default="5" />
  179. #define RT_LWIP_TCP_PCB_NUM 8
  180. // <integer name="RT_LWIP_TCP_SND_BUF" description="TCP sender buffer size" default="8192" />
  181. #define RT_LWIP_TCP_SND_BUF 8192
  182. // <integer name="RT_LWIP_TCP_WND" description="TCP receive window" default="8192" />
  183. #define RT_LWIP_TCP_WND 4096
  184. // <bool name="RT_LWIP_SNMP" description="Enable SNMP protocol" default="false" />
  185. // #define RT_LWIP_SNMP
  186. // <bool name="RT_LWIP_DHCP" description="Enable DHCP client to get IP address" default="false" />
  187. //#define RT_LWIP_DHCP
  188. // <integer name="RT_LWIP_TCPTHREAD_PRIORITY" description="the thread priority of TCP thread" default="128" />
  189. #define RT_LWIP_TCPTHREAD_PRIORITY 12
  190. // <integer name="RT_LWIP_TCPTHREAD_MBOX_SIZE" description="the mail box size of TCP thread to wait for" default="32" />
  191. #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8
  192. // <integer name="RT_LWIP_TCPTHREAD_STACKSIZE" description="the thread stack size of TCP thread" default="4096" />
  193. #define RT_LWIP_TCPTHREAD_STACKSIZE 4096
  194. // <integer name="RT_LWIP_ETHTHREAD_PRIORITY" description="the thread priority of ethnetif thread" default="144" />
  195. #define RT_LWIP_ETHTHREAD_PRIORITY 14
  196. // <integer name="RT_LWIP_ETHTHREAD_MBOX_SIZE" description="the mail box size of ethnetif thread to wait for" default="8" />
  197. #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8
  198. // <integer name="RT_LWIP_ETHTHREAD_STACKSIZE" description="the stack size of ethnetif thread" default="512" />
  199. #define RT_LWIP_ETHTHREAD_STACKSIZE 512
  200. // <ipaddr name="RT_LWIP_IPADDR" description="IP address of device" default="192.168.1.30" />
  201. #define RT_LWIP_IPADDR0 192
  202. #define RT_LWIP_IPADDR1 168
  203. #define RT_LWIP_IPADDR2 1
  204. #define RT_LWIP_IPADDR3 30
  205. // <ipaddr name="RT_LWIP_GWADDR" description="Gateway address of device" default="192.168.1.1" />
  206. #define RT_LWIP_GWADDR0 192
  207. #define RT_LWIP_GWADDR1 168
  208. #define RT_LWIP_GWADDR2 1
  209. #define RT_LWIP_GWADDR3 1
  210. // <ipaddr name="RT_LWIP_MSKADDR" description="Mask address of device" default="255.255.255.0" />
  211. #define RT_LWIP_MSKADDR0 255
  212. #define RT_LWIP_MSKADDR1 255
  213. #define RT_LWIP_MSKADDR2 255
  214. #define RT_LWIP_MSKADDR3 0
  215. // </section>
  216. // <section name="RT_USING_RTGUI" description="RT-Thread/GUI" default="true" >
  217. //#define RT_USING_RTGUI
  218. //#define RTGUI_USING_TTF
  219. #define UTF8_TO_UNICODE
  220. // <integer name="RTGUI_NAME_MAX" description="the name size of RT-Thread/GUI widget/objects" default="12" />
  221. #define RTGUI_NAME_MAX 12
  222. // <integer name="RTGUI_SVR_THREAD_STACK_SIZE" description="The stack size of RTGUI server task." default="2048" />
  223. #define RTGUI_SVR_THREAD_STACK_SIZE 16384
  224. // <bool name="RTGUI_USING_SMALL_SIZE" description="use small size in RT-Thread/GUI" default="true" />
  225. // #define RTGUI_USING_SMALL_SIZE
  226. // <bool name="RTGUI_USING_FONT16" description="support 16 weight font" default="true" />
  227. #define RTGUI_USING_FONT16
  228. // <bool name="RTGUI_USING_FONT12" description="support 12 weight font" default="true" />
  229. // #define RTGUI_USING_FONT12
  230. // <bool name="RTGUI_USING_FONTHZ" description="support Chinese font" default="true" />
  231. #define RTGUI_USING_FONTHZ
  232. // <integer name="RTGUI_DEFAULT_FONT_SIZE" description="default font size in RT-Thread/GUI" default="16" />
  233. #define RTGUI_DEFAULT_FONT_SIZE 16
  234. // <bool name="RTGUI_USING_DFS_FILERW" description="use RT-Thread/DFS as file interface" default="true" />
  235. #define RTGUI_USING_DFS_FILERW
  236. // <bool name="RTGUI_USING_HZ_BMP" description="use Chinese font bitmap engine" default="true" />
  237. // #define RTGUI_USING_HZ_BMP
  238. // <bool name="RTGUI_USING_HZ_FILE" description="use font file as Chinese font" default="false" />
  239. #define RTGUI_USING_HZ_FILE
  240. // <bool name="RTGUI_USING_MOUSE_CURSOR" description="use mouse cursor" default="false" />
  241. // #define RTGUI_USING_MOUSE_CURSOR
  242. // <bool name="RTGUI_IMAGE_XPM" description="support XPM image format" default="true" />
  243. // #define RTGUI_IMAGE_XPM
  244. // <bool name="RTGUI_IMAGE_BMP" description="support BMP image format" default="true" />
  245. // #define RTGUI_IMAGE_BMP
  246. // <bool name="RTGUI_IMAGE_JPEG" description="support JPEG image format with libjpg" default="false" />
  247. // #define RTGUI_IMAGE_JPEG
  248. // <bool name="RTGUI_IMAGE_TJPGD" description="support JPEG image format with TJPGD" default="true" />
  249. // #define RTGUI_IMAGE_TJPGD
  250. // <bool name="RTGUI_IMAGE_PNG" description="support PNG image format with libpng" default="false" />
  251. // #define RTGUI_IMAGE_PNG
  252. // <bool name="RTGUI_IMAGE_LODEPNG" description="support PNG image format with LodePNG" default="true" />
  253. #define RTGUI_IMAGE_LODEPNG
  254. // <bool name="RTGUI_USING_NOTEBOOK_IMAGE" description="support notebook image" default="true" />
  255. // #define RTGUI_USING_NOTEBOOK_IMAGE
  256. // <bool name="RTGUI_USING_HW_CURSOR" description="Using hardware cursor in RTGUI" default="true" />
  257. //#define RTGUI_USING_HW_CURSOR
  258. // <bool name="RTGUI_USING_CALI" description="Using calibration application in rtGUI" default="true" />
  259. // #define RTGUI_USING_CALI
  260. #define RTGUI_IMAGE_CONTAINER
  261. // </section>
  262. // </RDTConfigurator>
  263. #endif