rtconfig.h 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256
  1. #ifndef RT_CONFIG_H__
  2. #define RT_CONFIG_H__
  3. #include "cfg.h"
  4. /* RT-Thread Configuration */
  5. #define SOC_STM32F407ZG
  6. #define SOC_FAMILY_STM32
  7. #define SOC_SERIES_STM32F4
  8. #define DBG_ENABLE
  9. //#define DBG_LEVEL DBG_LOG
  10. // RT-Thread Kernel
  11. #define RT_NAME_MAX 8
  12. #define RT_CPUS_NR 1
  13. #define RT_ALIGN_SIZE 8
  14. #define RT_THREAD_PRIORITY_32
  15. #define RT_THREAD_PRIORITY_MAX 32
  16. #define RT_TICK_PER_SECOND 1000
  17. #define RT_USING_OVERFLOW_CHECK
  18. #define RT_USING_HOOK
  19. #define RT_HOOK_USING_FUNC_PTR
  20. #define RT_USING_IDLE_HOOK
  21. #define RT_IDLE_HOOK_LIST_SIZE 4
  22. #define IDLE_THREAD_STACK_SIZE 1024
  23. // kservice optimization
  24. #define RT_USING_DEBUG
  25. #define RT_DEBUGING_COLOR
  26. #define RT_DEBUGING_CONTEXT
  27. //Inter-Thread communication
  28. #define RT_USING_SEMAPHORE
  29. #define RT_USING_MUTEX
  30. #define RT_USING_EVENT
  31. #define RT_USING_MAILBOX
  32. #define RT_USING_MESSAGEQUEUE
  33. //Memory Management
  34. #define RT_USING_MEMPOOL
  35. #define RT_USING_SMALL_MEM
  36. #define RT_USING_HEAP
  37. #define RT_USING_MEMHEAP
  38. #define RT_USING_MEMHEAP_AS_HEAP
  39. #define RT_USING_MEMHEAP_AUTO_BINDING
  40. #define RT_USING_DEVICE
  41. #define RT_USING_CONSOLE
  42. #define RT_CONSOLEBUF_SIZE 128
  43. #ifdef BOARD_EVB_ATK
  44. #define RT_CONSOLE_DEVICE_NAME "uart1"
  45. #else
  46. #define RT_CONSOLE_DEVICE_NAME "uart6"
  47. #endif
  48. #define RT_VER_NUM 0x50100
  49. #define RT_BACKTRACE_LEVEL_MAX_NR 32
  50. #define RT_USING_HW_ATOMIC
  51. #define RT_USING_CPU_FFS
  52. #define ARCH_ARM
  53. #define ARCH_ARM_CORTEX_M
  54. #define ARCH_ARM_CORTEX_M4
  55. #define RT_KSERVICE_USING_TINY_SIZE
  56. //RT-Thread Components
  57. #define RT_USING_COMPONENTS_INIT
  58. #define RT_USING_USER_MAIN
  59. #define RT_MAIN_THREAD_STACK_SIZE 2048
  60. #define RT_MAIN_THREAD_PRIORITY 10
  61. #define RT_USING_MSH
  62. #define RT_USING_FINSH
  63. #define FINSH_USING_MSH
  64. #define FINSH_THREAD_NAME "tshell"
  65. #define FINSH_THREAD_PRIORITY 20
  66. #define FINSH_THREAD_STACK_SIZE 4096
  67. #define FINSH_USING_HISTORY
  68. #define FINSH_HISTORY_LINES 5
  69. #define FINSH_USING_SYMTAB
  70. #define FINSH_CMD_SIZE 80
  71. #define MSH_USING_BUILT_IN_COMMANDS
  72. #define FINSH_USING_DESCRIPTION
  73. #define FINSH_ARG_MAX 10
  74. #define FINSH_USING_OPTION_COMPLETION
  75. #define RT_USING_FAL
  76. #define FAL_DEBUG_CONFIG
  77. #define FAL_DEBUG 1
  78. #define FAL_PART_HAS_TABLE_CFG
  79. #define FAL_USING_SFUD_PORT
  80. #define FAL_USING_NOR_FLASH_DEV_NAME "nor"
  81. //Device Drivers
  82. #define RT_USING_DEVICE_IPC
  83. #define RT_UNAMED_PIPE_NUMBER 64
  84. #define RT_USING_SYSTEM_WORKQUEUE
  85. #define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
  86. #define RT_SYSTEM_WORKQUEUE_PRIORITY 23
  87. #define RT_USING_SERIAL
  88. //#define RT_USING_SERIAL_V1
  89. #define RT_USING_SERIAL_V2
  90. #define RT_SERIAL_USING_DMA
  91. #define RT_SERIAL_RB_BUFSZ 64
  92. #define RT_USING_SDIO
  93. #define RT_USING_I2C
  94. #define RT_USING_SPI
  95. #define RT_USING_SFUD
  96. #define RT_USING_I2C_BITOPS
  97. #define RT_USING_PIN
  98. #define RT_MMCSD_STACK_SIZE 2048
  99. //Timezone and Daylight Saving Time
  100. #define RT_LIBC_USING_LIGHT_TZ_DST
  101. #define RT_LIBC_TZ_DEFAULT_HOUR 8
  102. #define RT_LIBC_TZ_DEFAULT_MIN 0
  103. #define RT_LIBC_TZ_DEFAULT_SEC 0
  104. //network setting
  105. #define RT_USING_SAL
  106. #define SAL_INTERNET_CHECK
  107. #define SAL_USING_LWIP
  108. #define SAL_USING_POSIX
  109. #define RT_USING_NETDEV
  110. #define NETDEV_USING_IFCONFIG
  111. #define NETDEV_USING_PING
  112. #define NETDEV_USING_NETSTAT
  113. #define NETDEV_USING_AUTO_DEFAULT
  114. #define NETDEV_USING_IPV6
  115. #define NETDEV_IPV4 1
  116. #define NETDEV_IPV6 1
  117. #define NETDEV_IPV6_SCOPES
  118. //lwip setting
  119. #define RT_USING_LWIP
  120. #define RT_USING_LWIP_IPV6
  121. #define RT_USING_LWIP212
  122. #define RT_USING_LWIP_VER_NUM 0x20102
  123. #define RT_LWIP_MEM_ALIGNMENT 4
  124. #define RT_LWIP_TCP
  125. #define RT_LWIP_UDP
  126. #define RT_LWIP_IGMP
  127. #define RT_LWIP_ICMP
  128. #define RT_LWIP_DNS
  129. #define RT_LWIP_DHCP
  130. #define RT_LWIP_SNMP
  131. #define RT_LWIP_STATS
  132. #define IP_SOF_BROADCAST 1
  133. #define IP_SOF_BROADCAST_RECV 1
  134. #define RT_LWIP_IPADDR "192.168.1.132"
  135. #define RT_LWIP_GWADDR "192.168.1.1"
  136. #define RT_LWIP_MSKADDR "255.255.255.0"
  137. #define RT_LWIP_UDP
  138. #define RT_LWIP_TCP
  139. #define RT_LWIP_RAW
  140. #define RT_MEMP_NUM_NETCONN 8
  141. #define RT_LWIP_PBUF_NUM 16
  142. #define RT_LWIP_RAW_PCB_NUM 4
  143. #define RT_LWIP_UDP_PCB_NUM 4
  144. #define RT_LWIP_TCP_PCB_NUM 4
  145. #define RT_LWIP_TCP_SEG_NUM 40
  146. #define RT_LWIP_TCP_SND_BUF 8196
  147. #define RT_LWIP_TCP_WND 8196
  148. #define RT_LWIP_TCPTHREAD_PRIORITY 10
  149. #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8
  150. #define RT_LWIP_TCPTHREAD_STACKSIZE 8192
  151. #define RT_LWIP_ETHTHREAD_PRIORITY 12
  152. #define RT_LWIP_ETHTHREAD_STACKSIZE 8192
  153. #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8
  154. #define RT_LWIP_REASSEMBLY_FRAG
  155. #define LWIP_NETIF_STATUS_CALLBACK 1
  156. #define LWIP_NETIF_LINK_CALLBACK 1
  157. #define RT_LWIP_NETIF_NAMESIZE 6
  158. #define SO_REUSE 1
  159. #define LWIP_SO_RCVTIMEO 1
  160. #define LWIP_SO_SNDTIMEO 1
  161. #define LWIP_SO_RCVBUF 1
  162. #define LWIP_SO_LINGER 0
  163. #define LWIP_NETIF_LOOPBACK 0
  164. #define RT_LWIP_USING_PING
  165. //fs setting
  166. #define RT_USING_DFS
  167. #define RT_USING_DFS_DEVFS
  168. #define RT_USING_DFS_V2
  169. #define DFS_USING_POSIX
  170. #define DFS_USING_WORKDIR
  171. #define DFS_FD_MAX 32
  172. #define RT_USING_DFS_ELMFAT
  173. #define RT_DFS_ELM_CODE_PAGE 437
  174. #define RT_DFS_ELM_WORD_ACCESS
  175. #define RT_DFS_ELM_USE_LFN_3
  176. #define RT_DFS_ELM_USE_LFN 3
  177. #define RT_DFS_ELM_LFN_UNICODE_0
  178. #define RT_DFS_ELM_LFN_UNICODE 0
  179. #define RT_DFS_ELM_MAX_LFN 255
  180. #define RT_DFS_ELM_DRIVES 8
  181. #define RT_DFS_ELM_MAX_SECTOR_SIZE 512
  182. #define RT_DFS_ELM_REENTRANT
  183. #define RT_DFS_ELM_MUTEX_TIMEOUT 3000
  184. #define RT_USING_DFS_DEVFS
  185. //#define RT_USING_DFS_ROMFS
  186. #define RT_USING_RTC
  187. #define RT_USING_KTIME
  188. #if 1
  189. #define RT_USING_PTHREADS
  190. #define RT_USING_POSIX_DELAY
  191. #define RT_USING_POSIX_CLOCK
  192. #define RT_USING_POSIX_TIMER
  193. #endif
  194. #define PKG_USING_MONGOOSE
  195. #define PKG_MONGOOSE_ENABLE_HTTP_WEBSOCKET
  196. #define PKG_MONGOOSE_ENABLE_FILESYSTEM
  197. #define PKG_MONGOOSE_ENABLE_HTTP_STREAMING_MULTIPART
  198. #define PKG_MONGOOSE_ENABLE_MQTT
  199. #define PKG_USING_MONGOOSE_V607
  200. #define PKG_USING_SQLITE
  201. #define PKG_SQLITE_SQL_MAX_LEN 1024
  202. #define PKG_SQLITE_DB_NAME_MAX_LEN 64
  203. #define PKG_SQLITE_DAO_EXAMPLE
  204. #define PKG_USING_SQLITE_V3193
  205. #define PKG_USING_MBEDTLS
  206. #define MBEDTLS_AES_ROM_TABLES
  207. #define MBEDTLS_ECP_WINDOW_SIZE 2
  208. #define MBEDTLS_SSL_MAX_CONTENT_LEN 3584
  209. #define PKG_USING_MBEDTLS_V2281
  210. #endif