1 /* 2 * Copyright (c) 2006-2023, RT-Thread Development Team 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 * 6 * Change Logs: 7 * Date Author Notes 8 * 2018-12-11 zylx first version 9 * 2023-12-7 supperthomas add timer 10 */ 11 12 #ifndef __TIM_CONFIG_H__ 13 #define __TIM_CONFIG_H__ 14 15 #include <rtthread.h> 16 17 #ifdef __cplusplus 18 extern "C" { 19 #endif 20 21 #ifndef TIM_DEV_INFO_CONFIG 22 #define TIM_DEV_INFO_CONFIG \ 23 { \ 24 .maxfreq = 1000000, \ 25 .minfreq = 3000, \ 26 .maxcnt = 0xFFFF, \ 27 .cntmode = HWTIMER_CNTMODE_UP, \ 28 } 29 #endif /* TIM_DEV_INFO_CONFIG */ 30 31 #ifdef BSP_USING_TIM1 32 #ifndef TIM1_CONFIG 33 #define TIM1_CONFIG \ 34 { \ 35 .tim_handle.Instance = TIM1, \ 36 .tim_irqn = TIM1_UP_TIM16_IRQn, \ 37 .name = "timer1", \ 38 } 39 #endif /* TIM1_CONFIG */ 40 #endif /* BSP_USING_TIM1 */ 41 42 #ifdef BSP_USING_TIM2 43 #ifndef TIM2_CONFIG 44 #define TIM2_CONFIG \ 45 { \ 46 .tim_handle.Instance = TIM2, \ 47 .tim_irqn = TIM2_IRQn, \ 48 .name = "timer2", \ 49 } 50 #endif /* TIM2_CONFIG */ 51 #endif /* BSP_USING_TIM2 */ 52 53 #ifdef BSP_USING_TIM3 54 #ifndef TIM3_CONFIG 55 #define TIM3_CONFIG \ 56 { \ 57 .tim_handle.Instance = TIM3, \ 58 .tim_irqn = TIM3_IRQn, \ 59 .name = "timer3", \ 60 } 61 #endif /* TIM3_CONFIG */ 62 #endif /* BSP_USING_TIM3 */ 63 64 #ifdef BSP_USING_TIM4 65 #ifndef TIM4_CONFIG 66 #define TIM4_CONFIG \ 67 { \ 68 .tim_handle.Instance = TIM4, \ 69 .tim_irqn = TIM4_IRQn, \ 70 .name = "timer4", \ 71 } 72 #endif /* TIM4_CONFIG */ 73 #endif /* BSP_USING_TIM4 */ 74 75 #ifdef BSP_USING_TIM6 76 #ifndef TIM6_CONFIG 77 #define TIM6_CONFIG \ 78 { \ 79 .tim_handle.Instance = TIM6, \ 80 .tim_irqn = TIM6_IRQn, \ 81 .name = "timer6", \ 82 } 83 #endif /* TIM7_CONFIG */ 84 #endif /* BSP_USING_TIM7 */ 85 86 #ifdef BSP_USING_TIM7 87 #ifndef TIM7_CONFIG 88 #define TIM7_CONFIG \ 89 { \ 90 .tim_handle.Instance = TIM7, \ 91 .tim_irqn = TIM7_IRQn, \ 92 .name = "timer7", \ 93 } 94 #endif /* TIM7_CONFIG */ 95 #endif /* BSP_USING_TIM7 */ 96 97 #ifdef BSP_USING_TIM8 98 #ifndef TIM8_CONFIG 99 #define TIM8_CONFIG \ 100 { \ 101 .tim_handle.Instance = TIM8, \ 102 .tim_irqn = TIM8_UP_IRQn, \ 103 .name = "timer8", \ 104 } 105 #endif /* TIM8_CONFIG */ 106 #endif /* BSP_USING_TIM8 */ 107 108 #ifdef BSP_USING_TIM11 109 #ifndef TIM11_CONFIG 110 #define TIM11_CONFIG \ 111 { \ 112 .tim_handle.Instance = TIM11, \ 113 .tim_irqn = TIM1_TRG_COM_TIM11_IRQn, \ 114 .name = "timer11", \ 115 } 116 #endif /* TIM11_CONFIG */ 117 #endif /* BSP_USING_TIM11 */ 118 119 #ifdef BSP_USING_TIM13 120 #ifndef TIM13_CONFIG 121 #define TIM13_CONFIG \ 122 { \ 123 .tim_handle.Instance = TIM13, \ 124 .tim_irqn = TIM8_UP_TIM13_IRQn, \ 125 .name = "timer13", \ 126 } 127 #endif /* TIM13_CONFIG */ 128 #endif /* BSP_USING_TIM13 */ 129 130 #ifdef BSP_USING_TIM14 131 #ifndef TIM14_CONFIG 132 #define TIM14_CONFIG \ 133 { \ 134 .tim_handle.Instance = TIM14, \ 135 .tim_irqn = TIM8_TRG_COM_TIM14_IRQn, \ 136 .name = "timer14", \ 137 } 138 #endif /* TIM14_CONFIG */ 139 #endif /* BSP_USING_TIM14 */ 140 141 #ifdef BSP_USING_TIM15 142 #ifndef TIM15_CONFIG 143 #define TIM15_CONFIG \ 144 { \ 145 .tim_handle.Instance = TIM15, \ 146 .tim_irqn = TIM1_BRK_TIM15_IRQn, \ 147 .name = "timer15", \ 148 } 149 #endif /* TIM16_CONFIG */ 150 #endif /* BSP_USING_TIM16 */ 151 152 #ifdef BSP_USING_TIM16 153 #ifndef TIM16_CONFIG 154 #define TIM16_CONFIG \ 155 { \ 156 .tim_handle.Instance = TIM16, \ 157 .tim_irqn = TIM1_UP_TIM16_IRQn, \ 158 .name = "timer16", \ 159 } 160 #endif /* TIM16_CONFIG */ 161 #endif /* BSP_USING_TIM16 */ 162 163 #ifdef BSP_USING_TIM17 164 #ifndef TIM17_CONFIG 165 #define TIM17_CONFIG \ 166 { \ 167 .tim_handle.Instance = TIM17, \ 168 .tim_irqn = TIM1_TRG_COM_TIM17_IRQn, \ 169 .name = "timer17", \ 170 } 171 #endif /* TIM17_CONFIG */ 172 #endif /* BSP_USING_TIM17 */ 173 174 #ifdef __cplusplus 175 } 176 #endif 177 178 #endif /* __TIM_CONFIG_H__ */ 179