pwm_config.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. /*
  2. * Copyright (c) 2020-2021, Bluetrum Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2021-01-28 greedyhao first version
  9. */
  10. #ifndef __PWM_CONFIG_H__
  11. #define __PWM_CONFIG_H__
  12. #include <rtthread.h>
  13. #ifdef __cplusplus
  14. extern "C" {
  15. #endif
  16. enum
  17. {
  18. PWMxCON,
  19. PWMxPR,
  20. PWMxxDUT,
  21. PWMyyDUT,
  22. PWMxCYCNUM,
  23. PWMxSTEP,
  24. };
  25. #define PWM_BASE ((hal_sfr_t)&PWMCON)
  26. #ifdef BSP_USING_T3_PWM
  27. #ifndef T3_PWM_CONFIG
  28. #define T3_PWM_CONFIG \
  29. { \
  30. .pwm_handle = TIM3_BASE, \
  31. .name = "t3pwm", \
  32. .channel = 0 \
  33. }
  34. #endif /* T3_PWM_CONFIG */
  35. #endif /* BSP_USING_T3_PWM */
  36. #ifdef BSP_USING_T4_PWM
  37. #ifndef T4_PWM_CONFIG
  38. #define T4_PWM_CONFIG \
  39. { \
  40. .pwm_handle = TIM4_BASE, \
  41. .name = "t4pwm", \
  42. .channel = 0 \
  43. }
  44. #endif /* T4_PWM_CONFIG */
  45. #endif /* BSP_USING_T4_PWM */
  46. #ifdef BSP_USING_T5_PWM
  47. #ifndef T5_PWM_CONFIG
  48. #define T5_PWM_CONFIG \
  49. { \
  50. .pwm_handle = TIM5_BASE, \
  51. .name = "t5pwm", \
  52. .channel = 0 \
  53. }
  54. #endif /* T5_PWM_CONFIG */
  55. #endif /* BSP_USING_T5_PWM */
  56. #ifdef BSP_USING_LPWM0
  57. #ifndef LPWM0_CONFIG
  58. #define LPWM0_CONFIG \
  59. { \
  60. .pwm_handle = PWM_BASE, \
  61. .name = "lpwm0", \
  62. .channel = 0 \
  63. }
  64. #endif /* LPWM0_CONFIG */
  65. #endif /* BSP_USING_LPWM0 */
  66. #ifdef BSP_USING_LPWM1
  67. #ifndef LPWM1_CONFIG
  68. #define LPWM1_CONFIG \
  69. { \
  70. .pwm_handle = PWM_BASE, \
  71. .name = "lpwm1", \
  72. .channel = 0 \
  73. }
  74. #endif /* LPWM1_CONFIG */
  75. #endif /* BSP_USING_LPWM1 */
  76. #ifdef BSP_USING_LPWM2
  77. #ifndef LPWM2_CONFIG
  78. #define LPWM2_CONFIG \
  79. { \
  80. .pwm_handle = PWM_BASE, \
  81. .name = "lpwm2", \
  82. .channel = 0 \
  83. }
  84. #endif /* LPWM2_CONFIG */
  85. #endif /* BSP_USING_LPWM2 */
  86. #ifdef BSP_USING_LPWM3
  87. #ifndef LPWM3_CONFIG
  88. #define LPWM3_CONFIG \
  89. { \
  90. .pwm_handle = PWM_BASE, \
  91. .name = "lpwm3", \
  92. .channel = 0 \
  93. }
  94. #endif /* LPWM3_CONFIG */
  95. #endif /* BSP_USING_LPWM3 */
  96. #ifdef __cplusplus
  97. }
  98. #endif
  99. #endif /* __PWM_CONFIG_H__ */