1 #ifndef RT_CONFIG_H__ 2 #define RT_CONFIG_H__ 3 4 /* RT-Thread Kernel */ 5 6 /* klibc options */ 7 8 /* rt_vsnprintf options */ 9 10 /* end of rt_vsnprintf options */ 11 12 /* rt_vsscanf options */ 13 14 /* end of rt_vsscanf options */ 15 16 /* rt_memset options */ 17 18 /* end of rt_memset options */ 19 20 /* rt_memcpy options */ 21 22 /* end of rt_memcpy options */ 23 24 /* rt_memmove options */ 25 26 /* end of rt_memmove options */ 27 28 /* rt_memcmp options */ 29 30 /* end of rt_memcmp options */ 31 32 /* rt_strstr options */ 33 34 /* end of rt_strstr options */ 35 36 /* rt_strcasecmp options */ 37 38 /* end of rt_strcasecmp options */ 39 40 /* rt_strncpy options */ 41 42 /* end of rt_strncpy options */ 43 44 /* rt_strcpy options */ 45 46 /* end of rt_strcpy options */ 47 48 /* rt_strncmp options */ 49 50 /* end of rt_strncmp options */ 51 52 /* rt_strcmp options */ 53 54 /* end of rt_strcmp options */ 55 56 /* rt_strlen options */ 57 58 /* end of rt_strlen options */ 59 60 /* rt_strnlen options */ 61 62 /* end of rt_strnlen options */ 63 /* end of klibc options */ 64 #define RT_NAME_MAX 8 65 #define RT_CPUS_NR 1 66 #define RT_ALIGN_SIZE 8 67 #define RT_THREAD_PRIORITY_32 68 #define RT_THREAD_PRIORITY_MAX 32 69 #define RT_TICK_PER_SECOND 1000 70 #define RT_USING_OVERFLOW_CHECK 71 #define RT_USING_HOOK 72 #define RT_HOOK_USING_FUNC_PTR 73 #define RT_USING_IDLE_HOOK 74 #define RT_IDLE_HOOK_LIST_SIZE 4 75 #define IDLE_THREAD_STACK_SIZE 256 76 #define RT_USING_TIMER_SOFT 77 #define RT_TIMER_THREAD_PRIO 4 78 #define RT_TIMER_THREAD_STACK_SIZE 512 79 80 /* kservice options */ 81 82 /* end of kservice options */ 83 84 /* Inter-Thread communication */ 85 86 #define RT_USING_SEMAPHORE 87 #define RT_USING_MUTEX 88 #define RT_USING_EVENT 89 #define RT_USING_MAILBOX 90 #define RT_USING_MESSAGEQUEUE 91 /* end of Inter-Thread communication */ 92 93 /* Memory Management */ 94 95 #define RT_USING_MEMPOOL 96 #define RT_USING_SMALL_MEM 97 #define RT_USING_SMALL_MEM_AS_HEAP 98 #define RT_USING_HEAP 99 /* end of Memory Management */ 100 #define RT_USING_DEVICE 101 #define RT_USING_CONSOLE 102 #define RT_CONSOLEBUF_SIZE 128 103 #define RT_CONSOLE_DEVICE_NAME "uart0" 104 #define RT_VER_NUM 0x50201 105 #define RT_BACKTRACE_LEVEL_MAX_NR 32 106 /* end of RT-Thread Kernel */ 107 #define RT_USING_HW_ATOMIC 108 #define RT_USING_CPU_FFS 109 #define ARCH_ARM 110 #define ARCH_ARM_CORTEX_M 111 #define ARCH_ARM_CORTEX_SECURE 112 #define ARCH_ARM_CORTEX_M33 113 114 /* RT-Thread Components */ 115 116 #define RT_USING_COMPONENTS_INIT 117 #define RT_USING_USER_MAIN 118 #define RT_MAIN_THREAD_STACK_SIZE 2048 119 #define RT_MAIN_THREAD_PRIORITY 10 120 #define RT_USING_MSH 121 #define RT_USING_FINSH 122 #define FINSH_USING_MSH 123 #define FINSH_THREAD_NAME "tshell" 124 #define FINSH_THREAD_PRIORITY 20 125 #define FINSH_THREAD_STACK_SIZE 4096 126 #define FINSH_USING_HISTORY 127 #define FINSH_HISTORY_LINES 5 128 #define FINSH_USING_SYMTAB 129 #define FINSH_CMD_SIZE 80 130 #define MSH_USING_BUILT_IN_COMMANDS 131 #define FINSH_USING_DESCRIPTION 132 #define FINSH_ARG_MAX 10 133 #define FINSH_USING_OPTION_COMPLETION 134 135 /* DFS: device virtual file system */ 136 137 #define RT_USING_DFS 138 #define DFS_USING_POSIX 139 #define DFS_USING_WORKDIR 140 #define DFS_FD_MAX 16 141 #define RT_USING_DFS_V1 142 #define DFS_FILESYSTEMS_MAX 4 143 #define DFS_FILESYSTEM_TYPES_MAX 4 144 /* end of DFS: device virtual file system */ 145 146 /* Device Drivers */ 147 148 #define RT_USING_DEVICE_IPC 149 #define RT_UNAMED_PIPE_NUMBER 64 150 #define RT_USING_SERIAL 151 #define RT_USING_SERIAL_V1 152 #define RT_SERIAL_USING_DMA 153 #define RT_SERIAL_RB_BUFSZ 64 154 #define RT_USING_PIN 155 /* end of Device Drivers */ 156 157 /* C/C++ and POSIX layer */ 158 159 /* ISO-ANSI C layer */ 160 161 /* Timezone and Daylight Saving Time */ 162 163 #define RT_LIBC_USING_LIGHT_TZ_DST 164 #define RT_LIBC_TZ_DEFAULT_HOUR 8 165 #define RT_LIBC_TZ_DEFAULT_MIN 0 166 #define RT_LIBC_TZ_DEFAULT_SEC 0 167 /* end of Timezone and Daylight Saving Time */ 168 /* end of ISO-ANSI C layer */ 169 170 /* POSIX (Portable Operating System Interface) layer */ 171 172 173 /* Interprocess Communication (IPC) */ 174 175 176 /* Socket is in the 'Network' category */ 177 178 /* end of Interprocess Communication (IPC) */ 179 /* end of POSIX (Portable Operating System Interface) layer */ 180 /* end of C/C++ and POSIX layer */ 181 182 /* Network */ 183 184 /* end of Network */ 185 186 /* Memory protection */ 187 188 /* end of Memory protection */ 189 190 /* Utilities */ 191 192 /* end of Utilities */ 193 194 /* Using USB legacy version */ 195 196 /* end of Using USB legacy version */ 197 /* end of RT-Thread Components */ 198 199 /* RT-Thread Utestcases */ 200 201 /* end of RT-Thread Utestcases */ 202 203 /* RT-Thread online packages */ 204 205 /* IoT - internet of things */ 206 207 208 /* Wi-Fi */ 209 210 /* Marvell WiFi */ 211 212 /* end of Marvell WiFi */ 213 214 /* Wiced WiFi */ 215 216 /* end of Wiced WiFi */ 217 218 /* CYW43012 WiFi */ 219 220 /* end of CYW43012 WiFi */ 221 222 /* BL808 WiFi */ 223 224 /* end of BL808 WiFi */ 225 226 /* CYW43439 WiFi */ 227 228 /* end of CYW43439 WiFi */ 229 /* end of Wi-Fi */ 230 231 /* IoT Cloud */ 232 233 /* end of IoT Cloud */ 234 /* end of IoT - internet of things */ 235 236 /* security packages */ 237 238 /* end of security packages */ 239 240 /* language packages */ 241 242 /* JSON: JavaScript Object Notation, a lightweight data-interchange format */ 243 244 /* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */ 245 246 /* XML: Extensible Markup Language */ 247 248 /* end of XML: Extensible Markup Language */ 249 /* end of language packages */ 250 251 /* multimedia packages */ 252 253 /* LVGL: powerful and easy-to-use embedded GUI library */ 254 255 /* end of LVGL: powerful and easy-to-use embedded GUI library */ 256 257 /* u8g2: a monochrome graphic library */ 258 259 /* end of u8g2: a monochrome graphic library */ 260 /* end of multimedia packages */ 261 262 /* tools packages */ 263 264 /* end of tools packages */ 265 266 /* system packages */ 267 268 /* enhanced kernel services */ 269 270 /* end of enhanced kernel services */ 271 272 /* acceleration: Assembly language or algorithmic acceleration packages */ 273 274 /* end of acceleration: Assembly language or algorithmic acceleration packages */ 275 276 /* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */ 277 278 /* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */ 279 280 /* Micrium: Micrium software products porting for RT-Thread */ 281 282 /* end of Micrium: Micrium software products porting for RT-Thread */ 283 /* end of system packages */ 284 285 /* peripheral libraries and drivers */ 286 287 /* HAL & SDK Drivers */ 288 289 /* STM32 HAL & SDK Drivers */ 290 291 /* end of STM32 HAL & SDK Drivers */ 292 293 /* Infineon HAL Packages */ 294 295 /* end of Infineon HAL Packages */ 296 297 /* Kendryte SDK */ 298 299 /* end of Kendryte SDK */ 300 301 /* WCH HAL & SDK Drivers */ 302 303 /* end of WCH HAL & SDK Drivers */ 304 305 /* AT32 HAL & SDK Drivers */ 306 307 /* end of AT32 HAL & SDK Drivers */ 308 309 /* HC32 DDL Drivers */ 310 311 /* end of HC32 DDL Drivers */ 312 313 /* NXP HAL & SDK Drivers */ 314 315 /* end of NXP HAL & SDK Drivers */ 316 317 /* NUVOTON Drivers */ 318 319 /* end of NUVOTON Drivers */ 320 321 /* GD32 Drivers */ 322 323 #define PKG_USING_GD32_ARM_CMSIS_DRIVER 324 #define PKG_USING_GD32_ARM_CMSIS_DRIVER_LATEST_VERSION 325 #define PKG_USING_GD32_ARM_SERIES_DRIVER 326 #define PKG_USING_GD32_ARM_SERIES_DRIVER_LATEST_VERSION 327 /* end of GD32 Drivers */ 328 /* end of HAL & SDK Drivers */ 329 330 /* sensors drivers */ 331 332 /* end of sensors drivers */ 333 334 /* touch drivers */ 335 336 /* end of touch drivers */ 337 /* end of peripheral libraries and drivers */ 338 339 /* AI packages */ 340 341 /* end of AI packages */ 342 343 /* Signal Processing and Control Algorithm Packages */ 344 345 /* end of Signal Processing and Control Algorithm Packages */ 346 347 /* miscellaneous packages */ 348 349 /* project laboratory */ 350 351 /* end of project laboratory */ 352 353 /* samples: kernel and components samples */ 354 355 /* end of samples: kernel and components samples */ 356 357 /* entertainment: terminal games and other interesting software packages */ 358 359 /* end of entertainment: terminal games and other interesting software packages */ 360 /* end of miscellaneous packages */ 361 362 /* Arduino libraries */ 363 364 365 /* Projects and Demos */ 366 367 /* end of Projects and Demos */ 368 369 /* Sensors */ 370 371 /* end of Sensors */ 372 373 /* Display */ 374 375 /* end of Display */ 376 377 /* Timing */ 378 379 /* end of Timing */ 380 381 /* Data Processing */ 382 383 /* end of Data Processing */ 384 385 /* Data Storage */ 386 387 /* Communication */ 388 389 /* end of Communication */ 390 391 /* Device Control */ 392 393 /* end of Device Control */ 394 395 /* Other */ 396 397 /* end of Other */ 398 399 /* Signal IO */ 400 401 /* end of Signal IO */ 402 403 /* Uncategorized */ 404 405 /* end of Arduino libraries */ 406 /* end of RT-Thread online packages */ 407 #define SOC_FAMILY_GD32 408 #define SOC_SERIES_GD32F5xx 409 410 /* Hardware Drivers Config */ 411 412 #define SOC_GD32527 413 414 /* Onboard Peripheral Drivers */ 415 416 /* On-chip Peripheral Drivers */ 417 418 #define BSP_USING_GPIO 419 #define BSP_USING_UART 420 #define BSP_USING_UART0 421 /* end of On-chip Peripheral Drivers */ 422 423 /* Board extended module Drivers */ 424 425 /* end of Hardware Drivers Config */ 426 427 #endif 428