rtconfig.h 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181
  1. /******************************************************************//**
  2. * @file rtconfig.h
  3. * @brief RT-Thread config file
  4. * COPYRIGHT (C) 2009, RT-Thread Development Team
  5. * @author
  6. * @version 0.4 beta
  7. **********************************************************************
  8. * @section License
  9. * The license and distribution terms for this file may be found in the file LICENSE in this
  10. * distribution or at http://www.rt-thread.org/license/LICENSE
  11. *********************************************************************/
  12. #ifndef __RTTHREAD_CFG_H__
  13. #define __RTTHREAD_CFG_H__
  14. /* Includes -------------------------------------------------------------------*/
  15. /* Exported types -------------------------------------------------------------*/
  16. /* Exported constants ---------------------------------------------------------*/
  17. /* Exported macro -------------------------------------------------------------*/
  18. /* RT_NAME_MAX*/
  19. #define RT_NAME_MAX 8
  20. /* RT_ALIGN_SIZE*/
  21. #define RT_ALIGN_SIZE 4
  22. /* PRIORITY_MAX */
  23. #define RT_THREAD_PRIORITY_MAX 32
  24. /* Tick per Second */
  25. #define RT_TICK_PER_SECOND 100
  26. /* SECTION: RT_DEBUG */
  27. #define RT_DEBUG
  28. //#define RT_MEM_DEBUG
  29. //#define THREAD_DEBUG
  30. //#define IRQ_DEBUG
  31. #define RT_USING_OVERFLOW_CHECK
  32. //#define RT_IRQHDL_DEBUG
  33. #define RT_USART_DEBUG
  34. //#define RT_IIC_DEBUG
  35. //#define RT_MISC_DEBUG
  36. //#define RT_ADC_DEBUG
  37. //#define RT_ACMP_DEBUG
  38. //#define RT_TIMER_DEBUG
  39. //#define RT_RTC_DEBUG
  40. #define EFM32_SFLASH_DEBUG
  41. //#define EFM32_SDCARD_DEBUG
  42. //#define DFS_DEBUG
  43. /* Using Hook */
  44. //#define RT_USING_HOOK
  45. /* Using Software Timer */
  46. /* #define RT_USING_TIMER_SOFT */
  47. #define RT_TIMER_THREAD_PRIO 4
  48. #define RT_TIMER_THREAD_STACK_SIZE 512
  49. #define RT_TIMER_TICK_PER_SECOND 10
  50. /* SECTION: IPC */
  51. /* Using Semaphore*/
  52. #define RT_USING_SEMAPHORE
  53. /* Using Mutex */
  54. #define RT_USING_MUTEX
  55. /* Using Event */
  56. //#define RT_USING_EVENT
  57. /* Using MailBox */
  58. //#define RT_USING_MAILBOX
  59. /* Using Message Queue */
  60. //#define RT_USING_MESSAGEQUEUE
  61. /* SECTION: Memory Management */
  62. /* Using Memory Pool Management*/
  63. //#define RT_USING_MEMPOOL
  64. /* Using Dynamic Heap Management */
  65. #define RT_USING_HEAP
  66. /* Using Small MM */
  67. #define RT_USING_SMALL_MEM
  68. /* SECTION: Device System */
  69. /* Using Device System */
  70. #define RT_USING_DEVICE
  71. /* USART Device for Console */
  72. #if defined(EFM32_G290_DK)
  73. #define RT_USING_USART1 (0x0UL)
  74. #define RT_USART1_NAME "debug"
  75. #define RT_USART1_USING_DMA (0x0UL)
  76. #elif defined(EFM32_G890_STK)
  77. #define RT_USING_USART1 (0x1UL)
  78. #define RT_USART1_NAME "debug"
  79. #define RT_USART1_USING_DMA (0x0UL)
  80. #endif
  81. /* SECTION: SPI options */
  82. #if defined(EFM32_G290_DK)
  83. #define RT_USING_USART0 (0x2UL)
  84. #define RT_USART0_SYNC_MODE (0x1UL) /* Master */
  85. #define RT_USART0_NAME "spi0"
  86. #define RT_USART0_USING_DMA (0x1UL)
  87. #elif defined(EFM32_G890_STK)
  88. //#define RT_USING_USART0 (0x0UL)
  89. //#define RT_USART0_SYNC_MODE (0x1UL) /* Master */
  90. //#define RT_USART0_NAME "spi0"
  91. //#define RT_USART0_USING_DMA (0x1UL)
  92. #endif
  93. /* SECTION: IIC options */
  94. //#define RT_USING_IIC0 0x1UL
  95. #define RT_IIC0_NAME "iic0"
  96. /* SECTION: ACMP options */
  97. //#define RT_USING_ACMP0
  98. #define RT_ACMP0_NAME "acmp0"
  99. /* SECTION: ADC options */
  100. //#define RT_USING_ADC0
  101. #define RT_ADC0_NAME "adc"
  102. /* SECTION: TIMER options */
  103. //#define RT_USING_TIMER2 (0x00) /* Continuous mode */
  104. #define RT_TIMER2_NAME "tmr2"
  105. /* SECTION: RTC options */
  106. #if (defined(EFM32_G290_DK) || defined(EFM32_G890_STK))
  107. //#define RT_USING_RTC
  108. #endif
  109. #define RT_RTC_NAME "rtc"
  110. /* SECTION: Serial options */
  111. #if defined(EFM32_G290_DK)
  112. #define RT_CONSOLE_DEVICE 0x1UL
  113. #elif defined(EFM32_G890_STK)
  114. #define RT_CONSOLE_DEVICE 0x1UL
  115. #endif
  116. /* SECTION: Console options */
  117. #define RT_USING_CONSOLE
  118. /* the buffer size of console*/
  119. #define RT_CONSOLEBUF_SIZE 128
  120. /* SECTION: finsh, a C-Express shell */
  121. #define RT_USING_FINSH
  122. /* Using symbol table */
  123. #define FINSH_USING_SYMTAB
  124. #define FINSH_USING_DESCRIPTION
  125. /* SECTION: SPI Flash and MicroSD card */
  126. #if defined(EFM32_G290_DK)
  127. //#define EFM32_USING_SFLASH
  128. #define EFM32_USING_SPISD
  129. #endif
  130. #if defined(EFM32_USING_SFLASH)
  131. #define SFLASH_USING_DEVICE_NAME RT_USART0_NAME
  132. #endif
  133. #if defined(EFM32_USING_SPISD)
  134. #define SPISD_USING_DEVICE_NAME RT_USART0_NAME
  135. #define SPISD_DEVICE_NAME "spiSd"
  136. #endif
  137. /* SECTION: device filesystem */
  138. #define RT_USING_DFS
  139. #define RT_USING_DFS_ELMFAT
  140. #define DFS_ELMFAT_INTERFACE_EFM
  141. /* the max number of mounted filesystem */
  142. #define DFS_FILESYSTEMS_MAX (2)
  143. /* the max number of opened files */
  144. #define DFS_FD_MAX (4)
  145. /* the max number of cached sector */
  146. #define DFS_CACHE_MAX_NUM (4)
  147. /* Exported functions --------------------------------------------------------- */
  148. #endif /* __RTTHREAD_CFG_H__ */