步骤
修改 board/Kconfig,添加 adc 相关部分,以下为参考
1 2 3 4 5 6 7 8 9
| menuconfig BSP_USING_ADC bool "enable ADC" default n select RT_USING_ADC if BSP_USING_ADC config BSP_USING_ADC1 bool "enable ADC1" default n endif
|
如果启用的 adc 不自带,需要手工修改
修改libraries/HAL_Drivers/config/f4/adc_config.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| #ifdef BSP_USING_ADC1 #ifndef ADC1_CONFIG #define ADC1_CONFIG \ { \ .Instance = ADC1, \ .Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4, \ .Init.Resolution = ADC_RESOLUTION_12B, \ .Init.DataAlign = ADC_DATAALIGN_RIGHT, \ .Init.ScanConvMode = DISABLE, \ .Init.EOCSelection = DISABLE, \ .Init.ContinuousConvMode = DISABLE, \ .Init.NbrOfConversion = 1, \ .Init.DiscontinuousConvMode = DISABLE, \ .Init.NbrOfDiscConversion = 0, \ .Init.ExternalTrigConv = ADC_SOFTWARE_START, \ .Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE, \ .Init.DMAContinuousRequests = DISABLE, \ } #endif #endif
|
1 2
| scons --menuconfig 启用 adc stm32XXxx_hal_conf.h 需要启用 HAL_ADC_MODULE_ENABLED
|