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 512 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 #define RT_USING_DEBUG 84 #define RT_DEBUGING_ASSERT 85 #define RT_DEBUGING_COLOR 86 #define RT_DEBUGING_CONTEXT 87 88 /* Inter-Thread communication */ 89 90 #define RT_USING_SEMAPHORE 91 #define RT_USING_MUTEX 92 #define RT_USING_EVENT 93 #define RT_USING_MAILBOX 94 #define RT_USING_MESSAGEQUEUE 95 /* end of Inter-Thread communication */ 96 97 /* Memory Management */ 98 99 #define RT_USING_MEMPOOL 100 #define RT_USING_SMALL_MEM 101 #define RT_USING_SMALL_MEM_AS_HEAP 102 #define RT_USING_HEAP 103 /* end of Memory Management */ 104 #define RT_USING_DEVICE 105 #define RT_USING_CONSOLE 106 #define RT_CONSOLEBUF_SIZE 256 107 #define RT_CONSOLE_DEVICE_NAME "uart0" 108 #define RT_VER_NUM 0x50201 109 #define RT_BACKTRACE_LEVEL_MAX_NR 32 110 /* end of RT-Thread Kernel */ 111 #define ARCH_ARM 112 #define ARCH_ARM_CORTEX_M 113 #define ARCH_ARM_CORTEX_M0 114 115 /* RT-Thread Components */ 116 117 #define RT_USING_COMPONENTS_INIT 118 #define RT_USING_USER_MAIN 119 #define RT_MAIN_THREAD_STACK_SIZE 2048 120 #define RT_MAIN_THREAD_PRIORITY 10 121 #define RT_USING_MSH 122 #define RT_USING_FINSH 123 #define FINSH_USING_MSH 124 #define FINSH_THREAD_NAME "tshell" 125 #define FINSH_THREAD_PRIORITY 20 126 #define FINSH_THREAD_STACK_SIZE 4096 127 #define FINSH_USING_HISTORY 128 #define FINSH_HISTORY_LINES 5 129 #define FINSH_USING_SYMTAB 130 #define FINSH_CMD_SIZE 80 131 #define MSH_USING_BUILT_IN_COMMANDS 132 #define FINSH_USING_DESCRIPTION 133 #define FINSH_ARG_MAX 10 134 #define FINSH_USING_OPTION_COMPLETION 135 136 /* DFS: device virtual file system */ 137 138 #define RT_USING_DFS 139 #define DFS_USING_POSIX 140 #define DFS_USING_WORKDIR 141 #define DFS_FD_MAX 16 142 #define RT_USING_DFS_V1 143 #define DFS_FILESYSTEMS_MAX 2 144 #define DFS_FILESYSTEM_TYPES_MAX 2 145 #define RT_USING_DFS_DEVFS 146 /* end of DFS: device virtual file system */ 147 148 /* Device Drivers */ 149 150 #define RT_USING_DEVICE_IPC 151 #define RT_UNAMED_PIPE_NUMBER 64 152 #define RT_USING_SERIAL 153 #define RT_USING_SERIAL_V1 154 #define RT_SERIAL_USING_DMA 155 #define RT_SERIAL_RB_BUFSZ 64 156 #define RT_USING_ADC 157 #define RT_USING_PWM 158 #define RT_USING_PM 159 #define PM_TICKLESS_THRESHOLD_TIME 2 160 #define RT_USING_RTC 161 #define RT_USING_WDT 162 #define RT_USING_PIN 163 #define RT_USING_HWTIMER 164 /* end of Device Drivers */ 165 166 /* C/C++ and POSIX layer */ 167 168 /* ISO-ANSI C layer */ 169 170 /* Timezone and Daylight Saving Time */ 171 172 #define RT_LIBC_USING_LIGHT_TZ_DST 173 #define RT_LIBC_TZ_DEFAULT_HOUR 8 174 #define RT_LIBC_TZ_DEFAULT_MIN 0 175 #define RT_LIBC_TZ_DEFAULT_SEC 0 176 /* end of Timezone and Daylight Saving Time */ 177 /* end of ISO-ANSI C layer */ 178 179 /* POSIX (Portable Operating System Interface) layer */ 180 181 182 /* Interprocess Communication (IPC) */ 183 184 185 /* Socket is in the 'Network' category */ 186 187 /* end of Interprocess Communication (IPC) */ 188 /* end of POSIX (Portable Operating System Interface) layer */ 189 /* end of C/C++ and POSIX layer */ 190 191 /* Network */ 192 193 /* end of Network */ 194 195 /* Memory protection */ 196 197 /* end of Memory protection */ 198 199 /* Utilities */ 200 201 #define RT_USING_UTEST 202 #define UTEST_THR_STACK_SIZE 4096 203 #define UTEST_THR_PRIORITY 20 204 /* end of Utilities */ 205 206 /* Using USB legacy version */ 207 208 #define RT_USING_USB 209 #define RT_USING_USB_DEVICE 210 #define RT_USBD_THREAD_STACK_SZ 4096 211 #define USB_VENDOR_ID 0x0FFE 212 #define USB_PRODUCT_ID 0x0001 213 #define RT_USB_DEVICE_COMPOSITE 214 #define RT_USB_DEVICE_NONE 215 #define RT_USB_DEVICE_HID 216 #define RT_USB_DEVICE_HID_MOUSE 217 /* end of Using USB legacy version */ 218 /* end of RT-Thread Components */ 219 220 /* RT-Thread Utestcases */ 221 222 #define RT_USING_UTESTCASES 223 224 /* Utest Self Testcase */ 225 226 #define UTEST_SELF_PASS_TC 227 /* end of Utest Self Testcase */ 228 229 /* Kernel Testcase */ 230 231 #define UTEST_SMALL_MEM_TC 232 /* end of Kernel Testcase */ 233 234 /* CPP11 Testcase */ 235 236 /* end of CPP11 Testcase */ 237 238 /* Utest Serial Testcase */ 239 240 /* end of Utest Serial Testcase */ 241 242 /* Serial-Bypass Testcase */ 243 244 /* end of Serial-Bypass Testcase */ 245 246 /* Utest IPC Testcase */ 247 248 /* end of Utest IPC Testcase */ 249 250 /* RTT Posix Testcase */ 251 252 /* end of RTT Posix Testcase */ 253 254 /* Memory Management Subsytem Testcase */ 255 256 /* end of Memory Management Subsytem Testcase */ 257 258 /* Tmpfs Testcase */ 259 260 /* end of Tmpfs Testcase */ 261 262 /* SMP-Call Testcase */ 263 264 /* end of SMP-Call Testcase */ 265 /* end of RT-Thread Utestcases */ 266 267 /* RT-Thread online packages */ 268 269 /* IoT - internet of things */ 270 271 272 /* Wi-Fi */ 273 274 /* Marvell WiFi */ 275 276 /* end of Marvell WiFi */ 277 278 /* Wiced WiFi */ 279 280 /* end of Wiced WiFi */ 281 282 /* CYW43012 WiFi */ 283 284 /* end of CYW43012 WiFi */ 285 286 /* BL808 WiFi */ 287 288 /* end of BL808 WiFi */ 289 290 /* CYW43439 WiFi */ 291 292 /* end of CYW43439 WiFi */ 293 /* end of Wi-Fi */ 294 295 /* IoT Cloud */ 296 297 /* end of IoT Cloud */ 298 /* end of IoT - internet of things */ 299 300 /* security packages */ 301 302 /* end of security packages */ 303 304 /* language packages */ 305 306 /* JSON: JavaScript Object Notation, a lightweight data-interchange format */ 307 308 /* end of JSON: JavaScript Object Notation, a lightweight data-interchange format */ 309 310 /* XML: Extensible Markup Language */ 311 312 /* end of XML: Extensible Markup Language */ 313 /* end of language packages */ 314 315 /* multimedia packages */ 316 317 /* LVGL: powerful and easy-to-use embedded GUI library */ 318 319 /* end of LVGL: powerful and easy-to-use embedded GUI library */ 320 321 /* u8g2: a monochrome graphic library */ 322 323 /* end of u8g2: a monochrome graphic library */ 324 /* end of multimedia packages */ 325 326 /* tools packages */ 327 328 /* end of tools packages */ 329 330 /* system packages */ 331 332 /* enhanced kernel services */ 333 334 /* end of enhanced kernel services */ 335 336 /* acceleration: Assembly language or algorithmic acceleration packages */ 337 338 /* end of acceleration: Assembly language or algorithmic acceleration packages */ 339 340 /* CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */ 341 342 /* end of CMSIS: ARM Cortex-M Microcontroller Software Interface Standard */ 343 344 /* Micrium: Micrium software products porting for RT-Thread */ 345 346 /* end of Micrium: Micrium software products porting for RT-Thread */ 347 /* end of system packages */ 348 349 /* peripheral libraries and drivers */ 350 351 /* HAL & SDK Drivers */ 352 353 /* STM32 HAL & SDK Drivers */ 354 355 /* end of STM32 HAL & SDK Drivers */ 356 357 /* Infineon HAL Packages */ 358 359 /* end of Infineon HAL Packages */ 360 361 /* Kendryte SDK */ 362 363 /* end of Kendryte SDK */ 364 365 /* WCH HAL & SDK Drivers */ 366 367 /* end of WCH HAL & SDK Drivers */ 368 369 /* AT32 HAL & SDK Drivers */ 370 371 /* end of AT32 HAL & SDK Drivers */ 372 373 /* HC32 DDL Drivers */ 374 375 /* end of HC32 DDL Drivers */ 376 377 /* NXP HAL & SDK Drivers */ 378 379 /* end of NXP HAL & SDK Drivers */ 380 381 /* NUVOTON Drivers */ 382 383 #define PKG_USING_NUVOTON_CMSIS_DRIVER 384 #define PKG_USING_NUVOTON_CMSIS_DRIVER_LATEST_VERSION 385 #define PKG_USING_NUVOTON_SERIES_DRIVER 386 #define PKG_USING_NUVOTON_SERIES_DRIVER_LATEST_VERSION 387 /* end of NUVOTON Drivers */ 388 389 /* GD32 Drivers */ 390 391 /* end of GD32 Drivers */ 392 /* end of HAL & SDK Drivers */ 393 394 /* sensors drivers */ 395 396 /* end of sensors drivers */ 397 398 /* touch drivers */ 399 400 /* end of touch drivers */ 401 /* end of peripheral libraries and drivers */ 402 403 /* AI packages */ 404 405 /* end of AI packages */ 406 407 /* Signal Processing and Control Algorithm Packages */ 408 409 /* end of Signal Processing and Control Algorithm Packages */ 410 411 /* miscellaneous packages */ 412 413 /* project laboratory */ 414 415 /* end of project laboratory */ 416 417 /* samples: kernel and components samples */ 418 419 /* end of samples: kernel and components samples */ 420 421 /* entertainment: terminal games and other interesting software packages */ 422 423 /* end of entertainment: terminal games and other interesting software packages */ 424 /* end of miscellaneous packages */ 425 426 /* Arduino libraries */ 427 428 429 /* Projects and Demos */ 430 431 /* end of Projects and Demos */ 432 433 /* Sensors */ 434 435 /* end of Sensors */ 436 437 /* Display */ 438 439 /* end of Display */ 440 441 /* Timing */ 442 443 /* end of Timing */ 444 445 /* Data Processing */ 446 447 /* end of Data Processing */ 448 449 /* Data Storage */ 450 451 /* Communication */ 452 453 /* end of Communication */ 454 455 /* Device Control */ 456 457 /* end of Device Control */ 458 459 /* Other */ 460 461 /* end of Other */ 462 463 /* Signal IO */ 464 465 /* end of Signal IO */ 466 467 /* Uncategorized */ 468 469 /* end of Arduino libraries */ 470 /* end of RT-Thread online packages */ 471 472 /* Hardware Drivers Config */ 473 474 /* On-chip Peripheral Drivers */ 475 476 #define SOC_SERIES_M032 477 #define BSP_USE_STDDRIVER_SOURCE 478 #define BSP_USING_PDMA 479 #define NU_PDMA_MEMFUN_ACTOR_MAX 4 480 #define NU_PDMA_SGTBL_POOL_SIZE 16 481 #define BSP_USING_GPIO 482 #define BSP_USING_CLK 483 #define NU_CLK_INVOKE_WKTMR 484 #define BSP_USING_RTC 485 #define NU_RTC_SUPPORT_IO_RW 486 #define NU_RTC_SUPPORT_MSH_CMD 487 #define BSP_USING_ADC 488 #define BSP_USING_ADC0 489 #define BSP_USING_TMR 490 #define BSP_USING_TIMER 491 #define BSP_USING_TMR0 492 #define BSP_USING_TIMER0 493 #define BSP_USING_TMR1 494 #define BSP_USING_TIMER1 495 #define BSP_USING_TMR2 496 #define BSP_USING_TIMER2 497 #define BSP_USING_UART 498 #define BSP_USING_UART0 499 #define BSP_USING_UART1 500 #define BSP_USING_UART1_TX_DMA 501 #define BSP_USING_UART1_RX_DMA 502 #define BSP_USING_UART2 503 #define BSP_USING_UART3 504 #define BSP_USING_UART4 505 #define BSP_USING_UART5 506 #define BSP_USING_UART6 507 #define BSP_USING_UART7 508 #define BSP_USING_WDT 509 #define BSP_USING_USBD 510 /* end of On-chip Peripheral Drivers */ 511 512 /* On-board Peripheral Drivers */ 513 514 #define BSP_USING_NULINKME 515 /* end of On-board Peripheral Drivers */ 516 517 /* Board extended module drivers */ 518 519 /* end of Board extended module drivers */ 520 521 /* Nuvoton Packages Config */ 522 523 #define NU_PKG_USING_UTILS 524 #define NU_PKG_USING_DEMO 525 /* end of Nuvoton Packages Config */ 526 /* end of Hardware Drivers Config */ 527 528 #endif 529