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-07 zylx first version 9 */ 10 11 #ifndef __ADC_CONFIG_H__ 12 #define __ADC_CONFIG_H__ 13 14 #include <rtthread.h> 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 #ifdef BSP_USING_ADC1 21 #ifndef ADC1_CONFIG 22 #define ADC1_CONFIG \ 23 { \ 24 .Instance = ADC1, \ 25 .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \ 26 .Init.Resolution = ADC_RESOLUTION_12B, \ 27 .Init.DataAlign = ADC_DATAALIGN_RIGHT, \ 28 .Init.ScanConvMode = ADC_SCAN_DISABLE, \ 29 .Init.EOCSelection = ADC_EOC_SINGLE_CONV, \ 30 .Init.LowPowerAutoWait = DISABLE, \ 31 .Init.ContinuousConvMode = DISABLE, \ 32 .Init.NbrOfConversion = 1, \ 33 .Init.DiscontinuousConvMode = DISABLE, \ 34 .Init.NbrOfDiscConversion = 1, \ 35 .Init.ExternalTrigConv = ADC_SOFTWARE_START, \ 36 .Init.DMAContinuousRequests = DISABLE, \ 37 .Init.Overrun = ADC_OVR_DATA_OVERWRITTEN, \ 38 } 39 #endif /* ADC1_CONFIG */ 40 #endif /* BSP_USING_ADC1 */ 41 42 #ifdef BSP_USING_ADC2 43 #ifndef ADC2_CONFIG 44 #define ADC2_CONFIG \ 45 { \ 46 .Instance = ADC2, \ 47 .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \ 48 .Init.Resolution = ADC_RESOLUTION_12B, \ 49 .Init.DataAlign = ADC_DATAALIGN_RIGHT, \ 50 .Init.ScanConvMode = ADC_SCAN_DISABLE, \ 51 .Init.EOCSelection = ADC_EOC_SINGLE_CONV, \ 52 .Init.LowPowerAutoWait = DISABLE, \ 53 .Init.ContinuousConvMode = DISABLE, \ 54 .Init.NbrOfConversion = 1, \ 55 .Init.DiscontinuousConvMode = DISABLE, \ 56 .Init.NbrOfDiscConversion = 1, \ 57 .Init.ExternalTrigConv = ADC_SOFTWARE_START, \ 58 .Init.DMAContinuousRequests = DISABLE, \ 59 .Init.Overrun = ADC_OVR_DATA_OVERWRITTEN, \ 60 } 61 #endif /* ADC2_CONFIG */ 62 #endif /* BSP_USING_ADC2 */ 63 64 #ifdef BSP_USING_ADC3 65 #ifndef ADC3_CONFIG 66 #define ADC3_CONFIG \ 67 { \ 68 .Instance = ADC3, \ 69 .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \ 70 .Init.Resolution = ADC_RESOLUTION_12B, \ 71 .Init.DataAlign = ADC_DATAALIGN_RIGHT, \ 72 .Init.ScanConvMode = ADC_SCAN_DISABLE, \ 73 .Init.EOCSelection = ADC_EOC_SINGLE_CONV, \ 74 .Init.LowPowerAutoWait = DISABLE, \ 75 .Init.ContinuousConvMode = DISABLE, \ 76 .Init.NbrOfConversion = 1, \ 77 .Init.DiscontinuousConvMode = DISABLE, \ 78 .Init.NbrOfDiscConversion = 1, \ 79 .Init.ExternalTrigConv = ADC_SOFTWARE_START, \ 80 .Init.DMAContinuousRequests = DISABLE, \ 81 .Init.Overrun = ADC_OVR_DATA_OVERWRITTEN, \ 82 } 83 #endif /* ADC3_CONFIG */ 84 #endif /* BSP_USING_ADC3 */ 85 86 #ifdef __cplusplus 87 } 88 #endif 89 90 #endif /* __ADC_CONFIG_H__ */ 91