1menu "Hardware Drivers Config"
2
3menu "Onboard Peripheral Drivers"
4
5    config BSP_USING_STLINK_TO_USART
6        bool "Enable STLINK TO USART (uart2)"
7        select BSP_USING_UART
8        select BSP_USING_UART2
9        default y
10
11    config BSP_USING_ARDUINO
12        bool "Compatible with Arduino Ecosystem (RTduino)"
13        select PKG_USING_RTDUINO
14        select BSP_USING_STLINK_TO_USART
15        select BSP_USING_GPIO
16        select BSP_USING_TIM
17        select BSP_USING_TIM7
18        select BSP_USING_ADC
19        select BSP_USING_ADC1
20        select BSP_USING_PWM
21        select BSP_USING_PWM2
22        select BSP_USING_PWM2_CH2
23        select BSP_USING_PWM2_CH3
24        select BSP_USING_PWM3
25        select BSP_USING_PWM3_CH1
26        select BSP_USING_PWM3_CH2
27        select BSP_USING_PWM4
28        select BSP_USING_PWM4_CH1
29        select BSP_USING_PWM17
30        select BSP_USING_PWM17_CH1
31        select BSP_USING_I2C
32        select BSP_USING_I2C1
33        select BSP_USING_SPI
34        select BSP_USING_SPI1
35        select BSP_SPI1_TX_USING_DMA
36        select BSP_SPI1_RX_USING_DMA
37        select RTDUINO_USING_WIRE
38        select RTDUINO_USING_SPI
39        imply RTDUINO_USING_SERVO
40        default n
41
42endmenu
43
44menu "On-chip Peripheral Drivers"
45
46    config BSP_USING_GPIO
47        bool "Enable GPIO"
48        select RT_USING_PIN
49        default y
50
51    menuconfig BSP_USING_UART
52        bool "Enable UART"
53        default y
54        select RT_USING_SERIAL
55        if BSP_USING_UART
56            config BSP_STM32_UART_V1_TX_TIMEOUT
57                int "UART TX timeout"
58                default 2000
59                depends on RT_USING_SERIAL_V1
60
61            menuconfig BSP_USING_UART2
62                bool "Enable UART2"
63                default n
64                if BSP_USING_UART2
65                    config BSP_UART2_RX_USING_DMA
66                        bool "Enable UART2 RX DMA"
67                        depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA
68                        default n
69
70                    config BSP_UART2_TX_USING_DMA
71                        bool "Enable UART2 TX DMA"
72                        depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA
73                        default n
74
75                    config BSP_UART2_RX_BUFSIZE
76                        int "Set UART2 RX buffer size"
77                        range 64 65535
78                        depends on RT_USING_SERIAL_V2
79                        default 256
80
81                    config BSP_UART2_TX_BUFSIZE
82                        int "Set UART2 TX buffer size"
83                        range 0 65535
84                        depends on RT_USING_SERIAL_V2
85                        default 0
86
87                    config BSP_UART2_DMA_PING_BUFSIZE
88                        int "Set UART2 RX DMA ping-pong buffer size"
89                        range 32 65535
90                        depends on RT_USING_SERIAL_V2 && BSP_UART2_RX_USING_DMA
91                        default 64
92                endif
93        endif
94
95    menuconfig BSP_USING_I2C
96        bool "Enable I2C (software simulation)"
97        default n
98        select RT_USING_I2C
99        select RT_USING_I2C_BITOPS
100        select RT_USING_PIN
101
102        if BSP_USING_I2C
103            config BSP_USING_I2C1
104                bool "Enable I2C1 BUS (software simulation)"
105                default n
106
107            if BSP_USING_I2C1
108                config BSP_I2C1_SCL_PIN
109                    int "i2c1 scl pin number (PB8)"
110                    range 1 176
111                    default 24
112
113                config BSP_I2C1_SDA_PIN
114                    int "i2c1 sda pin number (PB9)"
115                    range 1 176
116                    default 25
117            endif
118
119            config BSP_USING_I2C2
120                bool "Enable I2C2 BUS (software simulation)"
121                default n
122
123            if BSP_USING_I2C2
124                config BSP_I2C2_SCL_PIN
125                    int "i2c2 scl pin number"
126                    range 1 176
127                    default 26
128
129                config BSP_I2C2_SDA_PIN
130                    int "I2C2 sda pin number"
131                    range 1 176
132                    default 27
133            endif
134
135            config BSP_USING_I2C3
136                bool "Enable I2C3 BUS (software simulation)"
137                default n
138
139            if BSP_USING_I2C3
140                config BSP_I2C3_SCL_PIN
141                    int "i2c3 scl pin number"
142                    range 1 176
143                    default 32
144
145                config BSP_I2C3_SDA_PIN
146                    int "I2C3 sda pin number"
147                    range 1 176
148                    default 33
149            endif
150        endif
151
152    menuconfig BSP_USING_SPI
153        bool "Enable SPI BUS"
154        default n
155        select RT_USING_SPI
156        if BSP_USING_SPI
157            config BSP_USING_SPI1
158                bool "Enable SPI1 BUS"
159                default n
160
161            config BSP_SPI1_TX_USING_DMA
162                bool "Enable SPI1 TX DMA"
163                depends on BSP_USING_SPI1
164                default n
165
166            config BSP_SPI1_RX_USING_DMA
167                bool "Enable SPI1 RX DMA"
168                depends on BSP_USING_SPI1
169                select BSP_SPI1_TX_USING_DMA
170                default n
171
172            config BSP_USING_SPI3
173                bool "Enable SPI3 BUS"
174                default n
175
176            config BSP_SPI3_TX_USING_DMA
177                bool "Enable SPI3 TX DMA"
178                depends on BSP_USING_SPI3
179                default n
180
181            config BSP_SPI3_RX_USING_DMA
182                bool "Enable SPI3 RX DMA"
183                depends on BSP_USING_SPI3
184                select BSP_SPI3_TX_USING_DMA
185                default n
186        endif
187
188    menuconfig BSP_USING_TIM
189        bool "Enable timer"
190        default n
191        select RT_USING_HWTIMER
192        if BSP_USING_TIM
193            config BSP_USING_TIM7
194                bool "Enable TIM7"
195                default n
196
197            config BSP_USING_TIM15
198                bool "Enable TIM15"
199                default n
200
201            config BSP_USING_TIM16
202                bool "Enable TIM16"
203                default n
204
205            config BSP_USING_TIM17
206                bool "Enable TIM17"
207                default n
208        endif
209
210    menuconfig BSP_USING_PWM
211        bool "Enable PWM"
212        default n
213        select RT_USING_PWM
214        if BSP_USING_PWM
215        menuconfig BSP_USING_PWM2
216            bool "Enable timer2 output PWM"
217            default n
218            if BSP_USING_PWM2
219                config BSP_USING_PWM2_CH2
220                    bool "Enable PWM2 channel2"
221                    default n
222                config BSP_USING_PWM2_CH3
223                    bool "Enable PWM2 channel3"
224                    default n
225            endif
226
227        menuconfig BSP_USING_PWM3
228            bool "Enable timer3 output PWM"
229            default n
230            if BSP_USING_PWM3
231                config BSP_USING_PWM3_CH1
232                    bool "Enable PWM3 channel1"
233                    default n
234                config BSP_USING_PWM3_CH2
235                    bool "Enable PWM3 channel2"
236                    default n
237            endif
238
239        menuconfig BSP_USING_PWM4
240            bool "Enable timer4 output PWM"
241            default n
242            if BSP_USING_PWM4
243                config BSP_USING_PWM4_CH1
244                    bool "Enable PWM4 channel1"
245                    default n
246            endif
247
248        menuconfig BSP_USING_PWM17
249            bool "Enable timer17 output PWM"
250            default n
251            if BSP_USING_PWM17
252                config BSP_USING_PWM17_CH1
253                    bool "Enable PWM17 channel1"
254                    default n
255            endif
256
257        endif
258
259    menuconfig BSP_USING_ADC
260        bool "Enable ADC"
261        default n
262        select RT_USING_ADC
263        if BSP_USING_ADC
264            config BSP_USING_ADC1
265                bool "Enable ADC1"
266                default n
267
268            config BSP_USING_ADC2
269                bool "Enable ADC2"
270                default n
271
272            config BSP_USING_ADC3
273                bool "Enable ADC3"
274                default n
275        endif
276
277    menuconfig BSP_USING_ONCHIP_RTC
278        bool "Enable RTC"
279        select RT_USING_RTC
280        default n
281        if BSP_USING_ONCHIP_RTC
282            choice
283                prompt "Select clock source"
284                default BSP_RTC_USING_LSE
285
286                config BSP_RTC_USING_LSE
287                    bool "RTC USING LSE"
288
289                config BSP_RTC_USING_LSI
290                    bool "RTC USING LSI"
291            endchoice
292        endif
293
294    source "$(BSP_DIR)/../libraries/HAL_Drivers/drivers/Kconfig"
295
296endmenu
297
298menu "Board extended module Drivers"
299
300endmenu
301
302endmenu
303