1menu "Hardware Drivers Config"
2
3menu "Onboard Peripheral Drivers"
4
5    config BSP_USING_USB_TO_USART
6        bool "Enable USB TO USART (uart1)"
7        select BSP_USING_UART
8        select BSP_USING_UART1
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_UART2
16        select BSP_USING_UART3
17        select BSP_USING_GPIO
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_CH1
23        select BSP_USING_PWM2_CH2
24        select BSP_USING_PWM3
25        select BSP_USING_PWM3_CH1
26        select BSP_USING_PWM3_CH2
27        select BSP_USING_PWM3_CH3
28        select BSP_USING_PWM3_CH4
29        select BSP_USING_I2C
30        select BSP_USING_I2C1
31        select BSP_USING_SPI
32        select BSP_USING_SPI2
33        # select BSP_SPI2_TX_USING_DMA
34        # select BSP_SPI2_RX_USING_DMA
35        select RTDUINO_USING_WIRE
36        select RTDUINO_USING_SPI
37        imply RTDUINO_USING_SERVO
38        default n
39
40endmenu
41
42menu "On-chip Peripheral Drivers"
43
44    config BSP_USING_GPIO
45        bool "Enable GPIO"
46        select RT_USING_PIN
47        default y
48
49    menuconfig BSP_USING_UART
50        bool "Enable UART"
51        default y
52        select RT_USING_SERIAL
53        if BSP_USING_UART
54            config BSP_STM32_UART_V1_TX_TIMEOUT
55                int "UART TX timeout"
56                default 2000
57                depends on RT_USING_SERIAL_V1
58
59            menuconfig BSP_USING_UART1
60                bool "Enable UART1"
61                default y
62                if BSP_USING_UART1
63                    config BSP_UART1_RX_USING_DMA
64                        bool "Enable UART1 RX DMA"
65                        depends on BSP_USING_UART1 && RT_SERIAL_USING_DMA
66                        default n
67
68                    config BSP_UART1_TX_USING_DMA
69                        bool "Enable UART1 TX DMA"
70                        depends on BSP_USING_UART1 && RT_SERIAL_USING_DMA
71                        default n
72
73                    config BSP_UART1_RX_BUFSIZE
74                        int "Set UART1 RX buffer size"
75                        range 64 65535
76                        depends on RT_USING_SERIAL_V2
77                        default 256
78
79                    config BSP_UART1_TX_BUFSIZE
80                        int "Set UART1 TX buffer size"
81                        range 0 65535
82                        depends on RT_USING_SERIAL_V2
83                        default 0
84
85                    config BSP_UART1_DMA_PING_BUFSIZE
86                        int "Set UART1 RX DMA ping-pong buffer size"
87                        range 32 65535
88                        depends on RT_USING_SERIAL_V2 && BSP_UART1_RX_USING_DMA
89                        default 64
90                endif
91
92            menuconfig BSP_USING_UART2
93                bool "Enable UART2"
94                default n
95                if BSP_USING_UART2
96                    config BSP_UART2_RX_USING_DMA
97                        bool "Enable UART2 RX DMA"
98                        depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA
99                        default n
100
101                    config BSP_UART2_TX_USING_DMA
102                        bool "Enable UART2 TX DMA"
103                        depends on BSP_USING_UART2 && RT_SERIAL_USING_DMA
104                        default n
105
106                    config BSP_UART2_RX_BUFSIZE
107                        int "Set UART2 RX buffer size"
108                        range 64 65535
109                        depends on RT_USING_SERIAL_V2
110                        default 256
111
112                    config BSP_UART2_TX_BUFSIZE
113                        int "Set UART2 TX buffer size"
114                        range 0 65535
115                        depends on RT_USING_SERIAL_V2
116                        default 0
117
118                    config BSP_UART2_DMA_PING_BUFSIZE
119                        int "Set UART2 RX DMA ping-pong buffer size"
120                        range 32 65535
121                        depends on RT_USING_SERIAL_V2 && BSP_UART2_RX_USING_DMA
122                        default 64
123                endif
124
125            menuconfig BSP_USING_UART3
126                bool "Enable UART3"
127                default n
128                if BSP_USING_UART3
129                    config BSP_UART3_RX_USING_DMA
130                        bool "Enable UART3 RX DMA"
131                        depends on BSP_USING_UART3 && RT_SERIAL_USING_DMA
132                        default n
133
134                    config BSP_UART3_TX_USING_DMA
135                        bool "Enable UART3 TX DMA"
136                        depends on BSP_USING_UART3 && RT_SERIAL_USING_DMA
137                        default n
138
139                    config BSP_UART3_RX_BUFSIZE
140                        int "Set UART3 RX buffer size"
141                        range 64 65535
142                        depends on RT_USING_SERIAL_V2
143                        default 256
144
145                    config BSP_UART3_TX_BUFSIZE
146                        int "Set UART3 TX buffer size"
147                        range 0 65535
148                        depends on RT_USING_SERIAL_V2
149                        default 0
150
151                    config BSP_UART3_DMA_PING_BUFSIZE
152                        int "Set UART3 RX DMA ping-pong buffer size"
153                        range 32 65535
154                        depends on RT_USING_SERIAL_V2 && BSP_UART3_RX_USING_DMA
155                        default 64
156                endif
157        endif
158
159    menuconfig BSP_USING_I2C1
160        bool "Enable I2C1 BUS (software simulation)"
161        default n
162        select RT_USING_I2C
163        select RT_USING_I2C_BITOPS
164        select RT_USING_PIN
165        if BSP_USING_I2C1
166            config BSP_I2C1_SCL_PIN
167                int "i2c1 scl pin number (PB8)"
168                range 0 143
169                default 24
170            config BSP_I2C1_SDA_PIN
171                int "I2C1 sda pin number (PB9)"
172                range 0 143
173                default 25
174        endif
175
176    menuconfig BSP_USING_PWM
177        bool "Enable PWM"
178        default n
179        select RT_USING_PWM
180        if BSP_USING_PWM
181        menuconfig BSP_USING_PWM2
182            bool "Enable timer2 output PWM"
183            default n
184            if BSP_USING_PWM2
185                config BSP_USING_PWM2_CH1
186                    bool "Enable PWM2 channel1"
187                    default n
188
189                config BSP_USING_PWM2_CH2
190                    bool "Enable PWM2 channel2"
191                    default n
192            endif
193
194        menuconfig BSP_USING_PWM3
195            bool "Enable timer3 output PWM"
196            default n
197            if BSP_USING_PWM3
198                config BSP_USING_PWM3_CH1
199                    bool "Enable PWM3 channel1"
200                    default n
201
202                config BSP_USING_PWM3_CH2
203                    bool "Enable PWM3 channel2"
204                    default n
205
206                config BSP_USING_PWM3_CH3
207                    bool "Enable PWM3 channel3"
208                    default n
209
210                config BSP_USING_PWM3_CH4
211                    bool "Enable PWM3 channel4"
212                    default n
213            endif
214        endif
215
216    menuconfig BSP_USING_ONCHIP_RTC
217        bool "Enable RTC"
218        select RT_USING_RTC
219        default n
220        if BSP_USING_ONCHIP_RTC
221            choice
222                prompt "Select clock source"
223                default BSP_RTC_USING_LSE
224
225                config BSP_RTC_USING_LSE
226                    bool "RTC USING LSE"
227
228                config BSP_RTC_USING_LSI
229                    bool "RTC USING LSI"
230            endchoice
231        endif
232
233    menuconfig BSP_USING_SPI
234        bool "Enable SPI BUS"
235        default n
236        select RT_USING_SPI
237        if BSP_USING_SPI
238            config BSP_USING_SPI2
239                bool "Enable SPI2 BUS"
240                default n
241
242            config BSP_SPI2_TX_USING_DMA
243                bool "Enable SPI2 TX DMA"
244                depends on BSP_USING_SPI2
245                default n
246
247            config BSP_SPI2_RX_USING_DMA
248                bool "Enable SPI2 RX DMA"
249                depends on BSP_USING_SPI2
250                select BSP_SPI2_TX_USING_DMA
251                default n
252        endif
253
254     menuconfig BSP_USING_ADC
255        bool "Enable ADC"
256        default n
257        select RT_USING_ADC
258        if BSP_USING_ADC
259            config BSP_USING_ADC1
260                bool "Enable ADC1"
261                default n
262
263        endif
264
265    config BSP_USING_USBD
266        bool "Enable USB device"
267        select RT_USING_USB_DEVICE
268        default n
269
270    source "$(BSP_DIR)/../libraries/HAL_Drivers/drivers/Kconfig"
271
272endmenu
273
274menu "Board extended module Drivers"
275
276endmenu
277
278endmenu
279