rtconfig.h 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288
  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 (1024*10)
  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_FLASH_DEV_NAME "w25q32"
  81. #define RT_USING_MTD_NOR
  82. //Device Drivers
  83. #define RT_USING_DEVICE_IPC
  84. #define RT_UNAMED_PIPE_NUMBER 64
  85. #define RT_USING_SYSTEM_WORKQUEUE
  86. #define RT_SYSTEM_WORKQUEUE_STACKSIZE 2048
  87. #define RT_SYSTEM_WORKQUEUE_PRIORITY 23
  88. #define RT_USING_SERIAL
  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 SDIO_MAX_FREQ 40*1000000
  94. #define RT_MMCSD_STACK_SIZE (1024*2)
  95. #define RT_MMCSD_THREAD_PREORITY 22
  96. #define RT_MMCSD_MAX_PARTITION 16
  97. #define RT_USING_SPI
  98. #define RT_USING_SPI_BITOPS
  99. #define RT_USING_SFUD
  100. #define RT_SFUD_USING_SFDP
  101. #define RT_SFUD_USING_FLASH_INFO_TABLE
  102. #define RT_SFUD_SPI_MAX_HZ (40*1000000)
  103. #define RT_USING_I2C
  104. #define RT_USING_I2C_BITOPS
  105. #define RT_USING_PIN
  106. #define RT_USING_RTC
  107. #define RT_USING_KTIME
  108. //Timezone and Daylight Saving Time
  109. #define RT_LIBC_USING_TIME
  110. #define RT_LIBC_USING_LIGHT_TZ_DST
  111. #define RT_LIBC_TZ_DEFAULT_HOUR 8
  112. #define RT_LIBC_TZ_DEFAULT_MIN 0
  113. #define RT_LIBC_TZ_DEFAULT_SEC 0
  114. //network setting
  115. #define RT_USING_SAL
  116. #define SAL_INTERNET_CHECK
  117. #define SAL_USING_LWIP
  118. #define SAL_USING_POSIX
  119. #define RT_USING_NETDEV
  120. #define NETDEV_USING_IFCONFIG
  121. #define NETDEV_USING_PING
  122. #define NETDEV_USING_NETSTAT
  123. #define NETDEV_USING_AUTO_DEFAULT
  124. #define NETDEV_USING_IPV6
  125. #define NETDEV_IPV4 1
  126. #define NETDEV_IPV6 1
  127. #define NETDEV_IPV6_SCOPES
  128. //lwip setting
  129. #define RT_USING_LWIP
  130. #define RT_USING_LWIP_IPV6
  131. #define RT_USING_LWIP212
  132. #define RT_USING_LWIP_VER_NUM 0x20102
  133. #define RT_LWIP_MEM_ALIGNMENT 4
  134. //lwip debug setting
  135. //#define RT_LWIP_DEBUG
  136. //#define RT_LWIP_PBUF_DEBUG
  137. //#define RT_LWIP_TCPIP_DEBUG
  138. #define RT_LWIP_TCP
  139. #define RT_LWIP_UDP
  140. #define RT_LWIP_IGMP
  141. #define RT_LWIP_ICMP
  142. #define RT_LWIP_DNS
  143. //#define RT_LWIP_DHCP
  144. #define RT_LWIP_SNMP
  145. #define RT_LWIP_STATS
  146. #define IP_SOF_BROADCAST 1
  147. #define IP_SOF_BROADCAST_RECV 1
  148. #define RT_LWIP_IPADDR "192.168.2.132"
  149. #define RT_LWIP_GWADDR "192.168.2.1"
  150. #define RT_LWIP_MSKADDR "255.255.2.0"
  151. #define RT_LWIP_UDP
  152. #define RT_LWIP_TCP
  153. #define RT_LWIP_RAW
  154. #define RT_MEMP_NUM_NETCONN 8
  155. //#define MEM_USE_POOLS 1
  156. //#define PBUF_POOL_SIZE 4
  157. //#define RT_LWIP_PBUF_NUM 64
  158. //#define RT_LWIP_PBUF_POOL_BUFSIZE 512
  159. #define RT_LWIP_RAW_PCB_NUM 4
  160. #define RT_LWIP_UDP_PCB_NUM 4
  161. #define RT_LWIP_TCP_PCB_NUM 4
  162. #define RT_LWIP_TCP_SEG_NUM 40
  163. #define RT_LWIP_TCP_SND_BUF 8196
  164. #define RT_LWIP_TCP_WND 8196
  165. #define RT_LWIP_TCPTHREAD_PRIORITY 10
  166. #define RT_LWIP_TCPTHREAD_MBOX_SIZE 8
  167. #define RT_LWIP_TCPTHREAD_STACKSIZE 8192
  168. #define RT_LWIP_ETHTHREAD_PRIORITY 12
  169. #define RT_LWIP_ETHTHREAD_STACKSIZE 8192
  170. #define RT_LWIP_ETHTHREAD_MBOX_SIZE 8
  171. #define RT_LWIP_REASSEMBLY_FRAG
  172. #define LWIP_NETIF_STATUS_CALLBACK 1
  173. #define LWIP_NETIF_LINK_CALLBACK 1
  174. #define RT_LWIP_NETIF_NAMESIZE 6
  175. #define SO_REUSE 1
  176. #define LWIP_SO_RCVTIMEO 1
  177. #define LWIP_SO_SNDTIMEO 1
  178. #define LWIP_SO_RCVBUF 1
  179. #define LWIP_SO_LINGER 0
  180. #define LWIP_NETIF_LOOPBACK 0
  181. #define RT_LWIP_USING_PING
  182. //fs setting
  183. #define RT_USING_DFS
  184. #define RT_USING_DFS_DEVFS
  185. #define RT_USING_DFS_V2
  186. #define DFS_USING_POSIX
  187. #define DFS_USING_WORKDIR
  188. #define DFS_FD_MAX 32
  189. #define RT_USING_DFS_ELMFAT
  190. #define RT_DFS_ELM_CODE_PAGE 437
  191. #define RT_DFS_ELM_WORD_ACCESS
  192. #define RT_DFS_ELM_USE_LFN_3
  193. #define RT_DFS_ELM_USE_LFN 3
  194. #define RT_DFS_ELM_LFN_UNICODE_0
  195. #define RT_DFS_ELM_LFN_UNICODE 0
  196. #define RT_DFS_ELM_MAX_LFN 255
  197. #define RT_DFS_ELM_DRIVES 8
  198. #define RT_DFS_ELM_MAX_SECTOR_SIZE 4096
  199. #define RT_DFS_ELM_REENTRANT
  200. #define RT_DFS_ELM_MUTEX_TIMEOUT 3000
  201. #define RT_USING_DFS_DEVFS
  202. #define RT_USING_DFS_ROMFS
  203. #if 1
  204. #define RT_USING_PTHREADS
  205. #define RT_USING_POSIX_DELAY
  206. #define RT_USING_POSIX_CLOCK
  207. #define RT_USING_POSIX_TIMER
  208. #endif
  209. #define PKG_USING_SQLITE
  210. #define PKG_SQLITE_SQL_MAX_LEN 1024
  211. #define PKG_SQLITE_DB_NAME_MAX_LEN 64
  212. #define PKG_SQLITE_DAO_EXAMPLE
  213. #define PKG_USING_SQLITE_V3193
  214. #define PKG_USING_MBEDTLS
  215. #define MBEDTLS_AES_ROM_TABLES
  216. #define MBEDTLS_ECP_WINDOW_SIZE 2
  217. #define MBEDTLS_SSL_MAX_CONTENT_LEN 3584
  218. #define PKG_USING_MBEDTLS_V2281
  219. #define PKG_USING_LITTLEFS
  220. #define PKG_USING_LITTLEFS_V250
  221. #define LFS_READ_SIZE 256
  222. #define LFS_PROG_SIZE 256
  223. #define LFS_BLOCK_SIZE 4096
  224. #define LFS_CACHE_SIZE 256
  225. #define LFS_BLOCK_CYCLES 1
  226. #define LFS_THREADSAFE
  227. #define LFS_LOOKAHEAD_MAX 128
  228. #define NTP_USING_AUTO_SYNC
  229. #define NETUTILS_NTP_HOSTNAME "cn.ntp.org.cn"
  230. //#define NETUTILS_NTP_HOSTNAME2 ""
  231. //#define NETUTILS_NTP_HOSTNAME3 ""
  232. #define RT_DEBUG
  233. #define RT_DEBUG_DEVICE
  234. #endif