amiro-os / modules / STM32F4Discovery / halconf.h @ 8d756b18
History | View | Annotate | Download (16.785 KB)
1 | 07ff44a7 | Thomas Schöpping | /*
|
---|---|---|---|
2 | AMiRo-OS is an operating system designed for the Autonomous Mini Robot (AMiRo) platform.
|
||
3 | 84f0ce9e | Thomas Schöpping | Copyright (C) 2016..2019 Thomas Schöpping et al.
|
4 | 07ff44a7 | Thomas Schöpping | |
5 | This program is free software: you can redistribute it and/or modify
|
||
6 | it under the terms of the GNU General Public License as published by
|
||
7 | the Free Software Foundation, either version 3 of the License, or
|
||
8 | (at your option) any later version.
|
||
9 | |||
10 | This program is distributed in the hope that it will be useful,
|
||
11 | but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||
12 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||
13 | GNU General Public License for more details.
|
||
14 | |||
15 | You should have received a copy of the GNU General Public License
|
||
16 | along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||
17 | */
|
||
18 | |||
19 | /**
|
||
20 | * @file
|
||
21 | * @brief HAL configuration header for the STM32F4Discovery module.
|
||
22 | * @details HAL configuration file, this file allows to enable or disable the
|
||
23 | * various device drivers from your application. You may also use
|
||
24 | * this file in order to override the device drivers default settings.
|
||
25 | *
|
||
26 | c9cecdb6 | Thomas Schöpping | * @addtogroup STM32F4DISCOVERY_HAL_CONF
|
27 | 07ff44a7 | Thomas Schöpping | * @{
|
28 | */
|
||
29 | |||
30 | #ifndef _HALCONF_H_
|
||
31 | #define _HALCONF_H_
|
||
32 | |||
33 | #define _CHIBIOS_HAL_CONF_
|
||
34 | #define _CHIBIOS_HAL_CONF_VER_6_0_
|
||
35 | |||
36 | #include "mcuconf.h" |
||
37 | |||
38 | /**
|
||
39 | * @brief Enables the PAL subsystem.
|
||
40 | */
|
||
41 | #if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
|
||
42 | #define HAL_USE_PAL TRUE
|
||
43 | #endif
|
||
44 | |||
45 | /**
|
||
46 | * @brief Enables the ADC subsystem.
|
||
47 | */
|
||
48 | #if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
|
||
49 | #define HAL_USE_ADC FALSE
|
||
50 | #endif
|
||
51 | |||
52 | /**
|
||
53 | * @brief Enables the CAN subsystem.
|
||
54 | */
|
||
55 | #if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
|
||
56 | 90e99d44 | Thomas Schöpping | #define HAL_USE_CAN FALSE
|
57 | 07ff44a7 | Thomas Schöpping | #endif
|
58 | |||
59 | /**
|
||
60 | * @brief Enables the cryptographic subsystem.
|
||
61 | */
|
||
62 | #if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
|
||
63 | #define HAL_USE_CRY FALSE
|
||
64 | #endif
|
||
65 | |||
66 | /**
|
||
67 | * @brief Enables the DAC subsystem.
|
||
68 | */
|
||
69 | #if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
|
||
70 | #define HAL_USE_DAC FALSE
|
||
71 | #endif
|
||
72 | |||
73 | /**
|
||
74 | * @brief Enables the EXT subsystem.
|
||
75 | */
|
||
76 | #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
|
||
77 | #define HAL_USE_EXT FALSE
|
||
78 | #endif
|
||
79 | |||
80 | /**
|
||
81 | * @brief Enables the GPT subsystem.
|
||
82 | */
|
||
83 | #if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
|
||
84 | #define HAL_USE_GPT FALSE
|
||
85 | #endif
|
||
86 | |||
87 | /**
|
||
88 | * @brief Enables the I2C subsystem.
|
||
89 | */
|
||
90 | #if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
|
||
91 | #define HAL_USE_I2C FALSE
|
||
92 | #endif
|
||
93 | |||
94 | /**
|
||
95 | * @brief Enables the I2S subsystem.
|
||
96 | */
|
||
97 | #if !defined(HAL_USE_I2S) || defined(__DOXYGEN__)
|
||
98 | #define HAL_USE_I2S FALSE
|
||
99 | #endif
|
||
100 | |||
101 | /**
|
||
102 | * @brief Enables the ICU subsystem.
|
||
103 | */
|
||
104 | #if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
|
||
105 | #define HAL_USE_ICU FALSE
|
||
106 | #endif
|
||
107 | |||
108 | /**
|
||
109 | * @brief Enables the MAC subsystem.
|
||
110 | */
|
||
111 | #if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
|
||
112 | #define HAL_USE_MAC FALSE
|
||
113 | #endif
|
||
114 | |||
115 | /**
|
||
116 | * @brief Enables the MMC_SPI subsystem.
|
||
117 | */
|
||
118 | #if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
|
||
119 | #define HAL_USE_MMC_SPI FALSE
|
||
120 | #endif
|
||
121 | |||
122 | /**
|
||
123 | * @brief Enables the PWM subsystem.
|
||
124 | */
|
||
125 | #if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
|
||
126 | #define HAL_USE_PWM FALSE
|
||
127 | #endif
|
||
128 | |||
129 | /**
|
||
130 | * @brief Enables the QEI subsystem.
|
||
131 | */
|
||
132 | #if !defined(HAL_USE_QEI) || defined(__DOXYGEN__)
|
||
133 | #define HAL_USE_QEI FALSE
|
||
134 | #endif
|
||
135 | |||
136 | /**
|
||
137 | * @brief Enables the QSPI subsystem.
|
||
138 | */
|
||
139 | #if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
|
||
140 | #define HAL_USE_QSPI FALSE
|
||
141 | #endif
|
||
142 | |||
143 | /**
|
||
144 | * @brief Enables the RTC subsystem.
|
||
145 | */
|
||
146 | #if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
|
||
147 | #define HAL_USE_RTC TRUE
|
||
148 | #endif
|
||
149 | |||
150 | /**
|
||
151 | * @brief Enables the SDC subsystem.
|
||
152 | */
|
||
153 | #if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
|
||
154 | #define HAL_USE_SDC FALSE
|
||
155 | #endif
|
||
156 | |||
157 | /**
|
||
158 | * @brief Enables the SERIAL subsystem.
|
||
159 | */
|
||
160 | #if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
|
||
161 | #define HAL_USE_SERIAL TRUE
|
||
162 | #endif
|
||
163 | |||
164 | /**
|
||
165 | * @brief Enables the SERIAL over USB subsystem.
|
||
166 | */
|
||
167 | #if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
|
||
168 | #define HAL_USE_SERIAL_USB FALSE
|
||
169 | #endif
|
||
170 | |||
171 | /**
|
||
172 | * @brief Enables the SPI subsystem.
|
||
173 | */
|
||
174 | #if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
|
||
175 | #define HAL_USE_SPI FALSE
|
||
176 | #endif
|
||
177 | |||
178 | /**
|
||
179 | * @brief Enables the UART subsystem.
|
||
180 | */
|
||
181 | #if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
|
||
182 | #define HAL_USE_UART FALSE
|
||
183 | #endif
|
||
184 | |||
185 | /**
|
||
186 | * @brief Enables the USB subsystem.
|
||
187 | */
|
||
188 | #if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
|
||
189 | #define HAL_USE_USB FALSE
|
||
190 | #endif
|
||
191 | |||
192 | /**
|
||
193 | * @brief Enables the WDG subsystem.
|
||
194 | */
|
||
195 | #if !defined(HAL_USE_WDG) || defined(__DOXYGEN__)
|
||
196 | #define HAL_USE_WDG FALSE
|
||
197 | #endif
|
||
198 | |||
199 | /*===========================================================================*/
|
||
200 | /* PAL driver related settings. */
|
||
201 | /*===========================================================================*/
|
||
202 | |||
203 | /**
|
||
204 | * @brief Enables synchronous APIs.
|
||
205 | * @note Disabling this option saves both code and data space.
|
||
206 | */
|
||
207 | #if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__)
|
||
208 | #define PAL_USE_CALLBACKS TRUE
|
||
209 | #endif
|
||
210 | |||
211 | /**
|
||
212 | * @brief Enables synchronous APIs.
|
||
213 | * @note Disabling this option saves both code and data space.
|
||
214 | */
|
||
215 | #if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__)
|
||
216 | #define PAL_USE_WAIT FALSE
|
||
217 | #endif
|
||
218 | |||
219 | /*===========================================================================*/
|
||
220 | /* ADC driver related settings. */
|
||
221 | /*===========================================================================*/
|
||
222 | |||
223 | /**
|
||
224 | * @brief Enables synchronous APIs.
|
||
225 | * @note Disabling this option saves both code and data space.
|
||
226 | */
|
||
227 | #if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
|
||
228 | #define ADC_USE_WAIT TRUE
|
||
229 | #endif
|
||
230 | |||
231 | /**
|
||
232 | * @brief Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
|
||
233 | * @note Disabling this option saves both code and data space.
|
||
234 | */
|
||
235 | #if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
|
||
236 | #define ADC_USE_MUTUAL_EXCLUSION TRUE
|
||
237 | #endif
|
||
238 | |||
239 | /*===========================================================================*/
|
||
240 | /* CAN driver related settings. */
|
||
241 | /*===========================================================================*/
|
||
242 | |||
243 | /**
|
||
244 | * @brief Sleep mode related APIs inclusion switch.
|
||
245 | */
|
||
246 | #if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
|
||
247 | #define CAN_USE_SLEEP_MODE TRUE
|
||
248 | #endif
|
||
249 | |||
250 | /**
|
||
251 | * @brief Enforces the driver to use direct callbacks rather than OSAL events.
|
||
252 | */
|
||
253 | #if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__)
|
||
254 | #define CAN_ENFORCE_USE_CALLBACKS FALSE
|
||
255 | #endif
|
||
256 | |||
257 | /*===========================================================================*/
|
||
258 | /* CRY driver related settings. */
|
||
259 | /*===========================================================================*/
|
||
260 | |||
261 | /**
|
||
262 | * @brief Enables the SW fall-back of the cryptographic driver.
|
||
263 | * @details When enabled, this option, activates a fall-back software
|
||
264 | * implementation for algorithms not supported by the underlying
|
||
265 | * hardware.
|
||
266 | * @note Fall-back implementations may not be present for all algorithms.
|
||
267 | */
|
||
268 | #if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__)
|
||
269 | #define HAL_CRY_USE_FALLBACK FALSE
|
||
270 | #endif
|
||
271 | |||
272 | /**
|
||
273 | * @brief Makes the driver forcibly use the fall-back implementations.
|
||
274 | */
|
||
275 | #if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__)
|
||
276 | #define HAL_CRY_ENFORCE_FALLBACK FALSE
|
||
277 | #endif
|
||
278 | |||
279 | /*===========================================================================*/
|
||
280 | /* DAC driver related settings. */
|
||
281 | /*===========================================================================*/
|
||
282 | |||
283 | /**
|
||
284 | * @brief Enables synchronous APIs.
|
||
285 | * @note Disabling this option saves both code and data space.
|
||
286 | */
|
||
287 | #if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__)
|
||
288 | #define DAC_USE_WAIT TRUE
|
||
289 | #endif
|
||
290 | |||
291 | /**
|
||
292 | * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs.
|
||
293 | * @note Disabling this option saves both code and data space.
|
||
294 | */
|
||
295 | #if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
|
||
296 | #define DAC_USE_MUTUAL_EXCLUSION TRUE
|
||
297 | #endif
|
||
298 | |||
299 | /*===========================================================================*/
|
||
300 | /* I2C driver related settings. */
|
||
301 | /*===========================================================================*/
|
||
302 | |||
303 | /**
|
||
304 | * @brief Enables the mutual exclusion APIs on the I2C bus.
|
||
305 | */
|
||
306 | #if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
|
||
307 | #define I2C_USE_MUTUAL_EXCLUSION TRUE
|
||
308 | #endif
|
||
309 | |||
310 | /*===========================================================================*/
|
||
311 | /* MAC driver related settings. */
|
||
312 | /*===========================================================================*/
|
||
313 | |||
314 | /**
|
||
315 | * @brief Enables the zero-copy API.
|
||
316 | */
|
||
317 | #if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
|
||
318 | #define MAC_USE_ZERO_COPY FALSE
|
||
319 | #endif
|
||
320 | |||
321 | /**
|
||
322 | * @brief Enables an event sources for incoming packets.
|
||
323 | */
|
||
324 | #if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
|
||
325 | #define MAC_USE_EVENTS TRUE
|
||
326 | #endif
|
||
327 | |||
328 | /*===========================================================================*/
|
||
329 | /* MMC_SPI driver related settings. */
|
||
330 | /*===========================================================================*/
|
||
331 | |||
332 | /**
|
||
333 | * @brief Delays insertions.
|
||
334 | * @details If enabled this options inserts delays into the MMC waiting
|
||
335 | * routines releasing some extra CPU time for the threads with
|
||
336 | * lower priority, this may slow down the driver a bit however.
|
||
337 | * This option is recommended also if the SPI driver does not
|
||
338 | * use a DMA channel and heavily loads the CPU.
|
||
339 | */
|
||
340 | #if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
|
||
341 | #define MMC_NICE_WAITING TRUE
|
||
342 | #endif
|
||
343 | |||
344 | /*===========================================================================*/
|
||
345 | /* QSPI driver related settings. */
|
||
346 | /*===========================================================================*/
|
||
347 | |||
348 | /**
|
||
349 | * @brief Enables synchronous APIs.
|
||
350 | * @note Disabling this option saves both code and data space.
|
||
351 | */
|
||
352 | #if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__)
|
||
353 | #define QSPI_USE_WAIT TRUE
|
||
354 | #endif
|
||
355 | |||
356 | /**
|
||
357 | * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs.
|
||
358 | * @note Disabling this option saves both code and data space.
|
||
359 | */
|
||
360 | #if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
|
||
361 | #define QSPI_USE_MUTUAL_EXCLUSION TRUE
|
||
362 | #endif
|
||
363 | |||
364 | /*===========================================================================*/
|
||
365 | /* SDC driver related settings. */
|
||
366 | /*===========================================================================*/
|
||
367 | |||
368 | /**
|
||
369 | * @brief Number of initialization attempts before rejecting the card.
|
||
370 | * @note Attempts are performed at 10mS intervals.
|
||
371 | */
|
||
372 | #if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
|
||
373 | #define SDC_INIT_RETRY 100 |
||
374 | #endif
|
||
375 | |||
376 | /**
|
||
377 | * @brief Include support for MMC cards.
|
||
378 | * @note MMC support is not yet implemented so this option must be kept
|
||
379 | * at @p FALSE.
|
||
380 | */
|
||
381 | #if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
|
||
382 | #define SDC_MMC_SUPPORT FALSE
|
||
383 | #endif
|
||
384 | |||
385 | /**
|
||
386 | * @brief Delays insertions.
|
||
387 | * @details If enabled this options inserts delays into the MMC waiting
|
||
388 | * routines releasing some extra CPU time for the threads with
|
||
389 | * lower priority, this may slow down the driver a bit however.
|
||
390 | */
|
||
391 | #if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
|
||
392 | #define SDC_NICE_WAITING TRUE
|
||
393 | #endif
|
||
394 | |||
395 | /**
|
||
396 | * @brief OCR initialization constant for V20 cards.
|
||
397 | */
|
||
398 | #if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__)
|
||
399 | #define SDC_INIT_OCR_V20 0x50FF8000U |
||
400 | #endif
|
||
401 | |||
402 | /**
|
||
403 | * @brief OCR initialization constant for non-V20 cards.
|
||
404 | */
|
||
405 | #if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__)
|
||
406 | #define SDC_INIT_OCR 0x80100000U |
||
407 | #endif
|
||
408 | |||
409 | /*===========================================================================*/
|
||
410 | /* SERIAL driver related settings. */
|
||
411 | /*===========================================================================*/
|
||
412 | |||
413 | /**
|
||
414 | * @brief Default bit rate.
|
||
415 | * @details Configuration parameter, this is the baud rate selected for the
|
||
416 | * default configuration.
|
||
417 | */
|
||
418 | #if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
|
||
419 | #define SERIAL_DEFAULT_BITRATE 115200 |
||
420 | #endif
|
||
421 | |||
422 | /**
|
||
423 | * @brief Serial buffers size.
|
||
424 | * @details Configuration parameter, you can change the depth of the queue
|
||
425 | * buffers depending on the requirements of your application.
|
||
426 | * @note The default is 16 bytes for both the transmission and receive
|
||
427 | * buffers.
|
||
428 | */
|
||
429 | #if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
|
||
430 | #define SERIAL_BUFFERS_SIZE 16 |
||
431 | #endif
|
||
432 | |||
433 | /*===========================================================================*/
|
||
434 | /* SERIAL_USB driver related setting. */
|
||
435 | /*===========================================================================*/
|
||
436 | |||
437 | /**
|
||
438 | * @brief Serial over USB buffers size.
|
||
439 | * @details Configuration parameter, the buffer size must be a multiple of
|
||
440 | * the USB data endpoint maximum packet size.
|
||
441 | * @note The default is 256 bytes for both the transmission and receive
|
||
442 | * buffers.
|
||
443 | */
|
||
444 | #if !defined(SERIAL_USB_BUFFERS_SIZE) || defined(__DOXYGEN__)
|
||
445 | #define SERIAL_USB_BUFFERS_SIZE 256 |
||
446 | #endif
|
||
447 | |||
448 | /**
|
||
449 | * @brief Serial over USB number of buffers.
|
||
450 | * @note The default is 2 buffers.
|
||
451 | */
|
||
452 | #if !defined(SERIAL_USB_BUFFERS_NUMBER) || defined(__DOXYGEN__)
|
||
453 | #define SERIAL_USB_BUFFERS_NUMBER 2 |
||
454 | #endif
|
||
455 | |||
456 | /*===========================================================================*/
|
||
457 | /* SPI driver related settings. */
|
||
458 | /*===========================================================================*/
|
||
459 | |||
460 | /**
|
||
461 | * @brief Enables synchronous APIs.
|
||
462 | * @note Disabling this option saves both code and data space.
|
||
463 | */
|
||
464 | #if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
|
||
465 | #define SPI_USE_WAIT TRUE
|
||
466 | #endif
|
||
467 | |||
468 | /**
|
||
469 | * @brief Enables circular transfers APIs.
|
||
470 | * @note Disabling this option saves both code and data space.
|
||
471 | */
|
||
472 | #if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__)
|
||
473 | #define SPI_USE_CIRCULAR FALSE
|
||
474 | #endif
|
||
475 | |||
476 | |||
477 | /**
|
||
478 | * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
|
||
479 | * @note Disabling this option saves both code and data space.
|
||
480 | */
|
||
481 | #if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
|
||
482 | #define SPI_USE_MUTUAL_EXCLUSION TRUE
|
||
483 | #endif
|
||
484 | |||
485 | /**
|
||
486 | * @brief Handling method for SPI CS line.
|
||
487 | * @note Disabling this option saves both code and data space.
|
||
488 | */
|
||
489 | #if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__)
|
||
490 | #define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
|
||
491 | #endif
|
||
492 | |||
493 | /*===========================================================================*/
|
||
494 | /* UART driver related settings. */
|
||
495 | /*===========================================================================*/
|
||
496 | |||
497 | /**
|
||
498 | * @brief Enables synchronous APIs.
|
||
499 | * @note Disabling this option saves both code and data space.
|
||
500 | */
|
||
501 | #if !defined(UART_USE_WAIT) || defined(__DOXYGEN__)
|
||
502 | #define UART_USE_WAIT FALSE
|
||
503 | #endif
|
||
504 | |||
505 | /**
|
||
506 | * @brief Enables the @p uartAcquireBus() and @p uartReleaseBus() APIs.
|
||
507 | * @note Disabling this option saves both code and data space.
|
||
508 | */
|
||
509 | #if !defined(UART_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
|
||
510 | #define UART_USE_MUTUAL_EXCLUSION FALSE
|
||
511 | #endif
|
||
512 | |||
513 | /*===========================================================================*/
|
||
514 | /* USB driver related settings. */
|
||
515 | /*===========================================================================*/
|
||
516 | |||
517 | /**
|
||
518 | * @brief Enables synchronous APIs.
|
||
519 | * @note Disabling this option saves both code and data space.
|
||
520 | */
|
||
521 | #if !defined(USB_USE_WAIT) || defined(__DOXYGEN__)
|
||
522 | #define USB_USE_WAIT FALSE
|
||
523 | #endif
|
||
524 | |||
525 | #endif /* _HALCONF_H_ */ |
||
526 | |||
527 | /** @} */
|