(1)配置 ADC 输入时钟分频,模式为独立模式,转换长度以及触发方式等 /* reset ADC */ adc_deinit(ADC0); /* ADC mode config */ adc_mode_config(ADC_MODE_FREE); //独立模式 /* ADC continous function enable */ adc_special_function_config(ADC0, ADC_SCAN_MODE, ENABLE) /* ADC data alignment ...
ADC的规则组和注入组需要选特定的触发源用于触发ADC转换,注意,ADC的Enable(即ADC_CTL1寄存器的ADC_ON位置“1”)不会触发ADC转换,而是当选定的触发源来临后ADC才开始转换。 触发源分为内部触发和外部触发,内部触发是指当ADC_ON已经为“1”的情况下,不改变其他ADC寄存器,再往ADC_ON位写“1”,将触发一次ADC转换;...
(1)配置 ADC 输入时钟分频,模式为独立模式,转换长度以及触发方式等 /* reset ADC */ adc_deinit(ADC0); /* ADC mode config */ adc_mode_config(ADC_MODE_FREE); //独立模式 /* ADC continous function enable */ adc_special_function_config(ADC0, ADC_SCAN_MODE, ENABLE) /* ADC data alignment ...
(1)配置 ADC 输入时钟分频,模式为独立模式,转换长度以及触发方式等 /* reset ADC */adc_deinit(ADC0);/* ADC mode config */adc_mode_config(ADC_MODE_FREE); //独立模式/* ADC continous function enable */adc_special_function_config(ADC0, ADC_SCAN_MODE, ENABLE)/* ADC data alignment config ...
在driver_adc.c中定义driver_adc_regular_ch_dma_config函数,该函数实现DMA和ADC的初始化。 Cvoid driver_adc_regular_ch_dma_config(typdef_adc_ch_general *ADC, typdef_adc_ch_parameter *ADC_CH,void *buffer){ dma_single_data_parameter_struct dma_single_data_parameter; rcu_periph_clock_enable(ADC...
ADC_STAT寄存器中的EOC、EOIC和WDE表示相应事件发生,EOC置“1”表示规则组的转换已经结束;EOIC置“1”表示注入组的转换已经结束,注意:注入组转换结束时,EOC标志位也会置起。 GD32F303的ADC原理部分就介绍到这里,下面我们通过电源电压单通道采样实验来详细介绍下ADC的用法。
VDDA 域包括 ADC/DAC( AD/DA 转换器)、 IRC8M( 内部 8MRC 振荡器)、 IRC48M( 内部 48M RC 振荡器)、 IRC40K(内部 40KHz RC 振荡器) PLLs(锁相环)和 LVD(低电压检测器)等等。VDD 域 POR/ PDR(上电/掉电复位) 电路检测VDD/VDDA并在电压低于特定阈值时产生电源复位信号复位除备份域之外...
ADC 输入时钟 ADCCLK由 PCLK2 经过分频产生,最大是28M,分频因子由 RCC 时钟配置寄存器RCU_CFG0的位 15:14 ADCPSC[1:0]设置,可以是 2/4/6/8/12/16 分频,注意这里没有 1 分频。一般我们设置 PCLK2=HCLK=120M。 采样时间 ADC 使用若干个 ADCCLK 周期对输入的电压进行采样,采样的周期数可通过 ADC采样...
(1)配置 ADC 输入时钟分频,模式为独立模式,转换长度以及触发方式等 /* reset ADC */ adc_deinit(ADC0); /* ADC mode config */ adc_mode_config(ADC_MODE_FREE); //独立模式 /* ADC continous function enable */ adc_special_function_config(ADC0, ADC_SCAN_MODE, ENABLE) /* ADC data alignment ...