adc_config.h 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /*
  2. * Copyright (c) 2006-2018, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2018-12-07 zylx first version
  9. */
  10. #ifndef __ADC_CONFIG_H__
  11. #define __ADC_CONFIG_H__
  12. #include <rtthread.h>
  13. #ifdef BSP_USING_ADC1
  14. #ifndef ADC1_CONFIG
  15. #define ADC1_CONFIG \
  16. { \
  17. .Instance = ADC1, \
  18. .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \
  19. .Init.Resolution = ADC_RESOLUTION_12B, \
  20. .Init.DataAlign = ADC_DATAALIGN_RIGHT, \
  21. .Init.ScanConvMode = ADC_SCAN_DISABLE, \
  22. .Init.EOCSelection = ADC_EOC_SINGLE_CONV, \
  23. .Init.LowPowerAutoWait = DISABLE, \
  24. .Init.ContinuousConvMode = DISABLE, \
  25. .Init.NbrOfConversion = 1, \
  26. .Init.DiscontinuousConvMode = DISABLE, \
  27. .Init.NbrOfDiscConversion = 1, \
  28. .Init.ExternalTrigConv = ADC_SOFTWARE_START, \
  29. .Init.DMAContinuousRequests = DISABLE, \
  30. .Init.Overrun = ADC_OVR_DATA_OVERWRITTEN, \
  31. }
  32. #endif /* ADC1_CONFIG */
  33. #endif /* BSP_USING_ADC1 */
  34. #ifdef BSP_USING_ADC2
  35. #ifndef ADC2_CONFIG
  36. #define ADC2_CONFIG \
  37. { \
  38. .Instance = ADC2, \
  39. .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \
  40. .Init.Resolution = ADC_RESOLUTION_12B, \
  41. .Init.DataAlign = ADC_DATAALIGN_RIGHT, \
  42. .Init.ScanConvMode = ADC_SCAN_DISABLE, \
  43. .Init.EOCSelection = ADC_EOC_SINGLE_CONV, \
  44. .Init.LowPowerAutoWait = DISABLE, \
  45. .Init.ContinuousConvMode = DISABLE, \
  46. .Init.NbrOfConversion = 1, \
  47. .Init.DiscontinuousConvMode = DISABLE, \
  48. .Init.NbrOfDiscConversion = 1, \
  49. .Init.ExternalTrigConv = ADC_SOFTWARE_START, \
  50. .Init.DMAContinuousRequests = DISABLE, \
  51. .Init.Overrun = ADC_OVR_DATA_OVERWRITTEN, \
  52. }
  53. #endif /* ADC2_CONFIG */
  54. #endif /* BSP_USING_ADC2 */
  55. #ifdef BSP_USING_ADC3
  56. #ifndef ADC3_CONFIG
  57. #define ADC3_CONFIG \
  58. { \
  59. .Instance = ADC3, \
  60. .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \
  61. .Init.Resolution = ADC_RESOLUTION_12B, \
  62. .Init.DataAlign = ADC_DATAALIGN_RIGHT, \
  63. .Init.ScanConvMode = ADC_SCAN_DISABLE, \
  64. .Init.EOCSelection = ADC_EOC_SINGLE_CONV, \
  65. .Init.LowPowerAutoWait = DISABLE, \
  66. .Init.ContinuousConvMode = DISABLE, \
  67. .Init.NbrOfConversion = 1, \
  68. .Init.DiscontinuousConvMode = DISABLE, \
  69. .Init.NbrOfDiscConversion = 1, \
  70. .Init.ExternalTrigConv = ADC_SOFTWARE_START, \
  71. .Init.DMAContinuousRequests = DISABLE, \
  72. .Init.Overrun = ADC_OVR_DATA_OVERWRITTEN, \
  73. }
  74. #endif /* ADC3_CONFIG */
  75. #endif /* BSP_USING_ADC3 */
  76. #endif /* __ADC_CONFIG_H__ */