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