diff --git a/drivers/bl702_driver/hal_drv/inc/hal_adc.h b/drivers/bl702_driver/hal_drv/inc/hal_adc.h index a79366e2..09e533b9 100644 --- a/drivers/bl702_driver/hal_drv/inc/hal_adc.h +++ b/drivers/bl702_driver/hal_drv/inc/hal_adc.h @@ -46,18 +46,18 @@ enum adc_index_type { #define adc_channel_config(dev, list) device_control(dev, DEVICE_CTRL_ADC_CHANNEL_CONFIG, list) typedef enum { - ADC_CHANNEL0, /* GPIO 0, ADC channel 0 */ - ADC_CHANNEL1, /* GPIO 1, ADC channel 1 */ - ADC_CHANNEL2, /* GPIO 2, ADC channel 2 */ - ADC_CHANNEL3, /* GPIO 3, ADC channel 3 */ - ADC_CHANNEL4, /* GPIO 4, ADC channel 4 */ - ADC_CHANNEL5, /* GPIO 5, ADC channel 5 */ - ADC_CHANNEL6, /* GPIO 6, ADC channel 6 */ - ADC_CHANNEL7, /* GPIO 7, ADC channel 7 */ - ADC_CHANNEL8, /* GPIO 8, ADC channel 8 */ - ADC_CHANNEL9, /* GPIO 9, ADC channel 9 */ - ADC_CHANNEL10, /* GPIO 10, ADC channel 10 */ - ADC_CHANNEL11, /* GPIO 11, ADC channel 11 */ + ADC_CHANNEL0, /* ADC channel 0 */ + ADC_CHANNEL1, /* ADC channel 1 */ + ADC_CHANNEL2, /* ADC channel 2 */ + ADC_CHANNEL3, /* ADC channel 3 */ + ADC_CHANNEL4, /* ADC channel 4 */ + ADC_CHANNEL5, /* ADC channel 5 */ + ADC_CHANNEL6, /* ADC channel 6 */ + ADC_CHANNEL7, /* ADC channel 7 */ + ADC_CHANNEL8, /* ADC channel 8 */ + ADC_CHANNEL9, /* ADC channel 9 */ + ADC_CHANNEL10, /* ADC channel 10 */ + ADC_CHANNEL11, /* ADC channel 11 */ ADC_CHANNEL_DAC_OUTA, /* DACA, ADC channel 12 */ ADC_CHANNEL_DAC_OUTB, /* DACB, ADC channel 13 */ ADC_CHANNEL_TSEN_P, /* TSenp, ADC channel 14 */ diff --git a/drivers/bl702_driver/hal_drv/src/hal_adc.c b/drivers/bl702_driver/hal_drv/src/hal_adc.c index 287b8a52..43570d56 100644 --- a/drivers/bl702_driver/hal_drv/src/hal_adc.c +++ b/drivers/bl702_driver/hal_drv/src/hal_adc.c @@ -47,9 +47,6 @@ int adc_open(struct device *dev, uint16_t oflag) ADC_CFG_Type adc_cfg = { 0 }; ADC_FIFO_Cfg_Type adc_fifo_cfg = { 0 }; - ADC_Disable(); - ADC_Reset(); - adc_cfg.clkDiv = adc_device->clk_div; adc_cfg.vref = adc_device->vref; @@ -83,11 +80,15 @@ int adc_open(struct device *dev, uint16_t oflag) adc_fifo_cfg.fifoThreshold = adc_device->fifo_threshold; + ADC_Disable(); + ADC_Enable(); + + ADC_Reset(); + ADC_Init(&adc_cfg); ADC_FIFO_Cfg(&adc_fifo_cfg); - ADC_Enable(); return 0; } /**