adc_enable(ADC0); delay_1ms(1);//延迟 等待稳定 /* ADC calibration and reset calibration */ adc_calibration_enable(ADC0);//使能 ADC 校准 (3)读取 ADC 值 在上面的步骤完成后, ADC 就算准备好了。所谓的查询法就是不断地进行通道切换 unsigned short adc0_transfer(unsigned char adc_channel) { ...
adc_enable(ADC0); delay_1ms(1);//延迟 等待稳定 /* ADC calibration and reset calibration */ adc_calibration_enable(ADC0);//使能 ADC 校准 (3)读取 ADC 值 在上面的步骤完成后, ADC 就算准备好了。所谓的查询法就是不断地进行通道切换 unsigned shortadc0_transfer(unsigned char adc_channel) { u...
ADC 在规则组一个通道转换结束后产生一个 DMA 请求, DMA 接受到请求后可以将转换的数据从 ADC_RDATA 寄存器传输到用户指定的目的地址。 注意: 只有 ADC0 和 ADC2 有 DMA 功能, ADC1 转换的数据可以在 ADC 同步模式下传输。 7.转换时间 ADC 时钟 ADC 输入时钟 ADCCLK由 PCLK2 经过分频产生,最大是28M,分...
adc_external_trigger_config(ADC0,ADC_REGULAR_CHANNEL,ENABLE); /* ADC temperature and Vrefint enable */ adc_tempsensor_vrefint_enable(); /* enable ADC interface */ adc_enable(ADC0); delay_ms(1); /* ADC calibration and reset calibration */ adc_calibration_enable(ADC0); } 1. 2. 3. ...
adc_oversample_mode_config(ADC_OVERSAMPLING_ALL_CONVERT, ADC_OVERSAMPLING_SHIFT_4B, ADC_OVERSAMPLING_RATIO_MUL16); adc_oversample_mode_enable(); /* enable ADC interface */ adc_enable(); delay_1ms(1U); /* ADC calibration and reset calibration */ ...
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采样...
;//通过软件触发 ADC 转换adc_external_trigger_config(ADC0, ADC_REGULAR_CHANNEL, ENABLE);(2)开启 AD 转换器 在设置完了以上信息后,我们就开启 AD 转换器了 /* enable ADC interface */adc_enable(ADC0);delay_1ms(1);//延迟 等待稳定/* ADC calibration and reset calibration */adc_calibration_...
因为4个通道转换的结果分别放在4个不同的注入组数据寄存器ADC_IDATAx中,所以注入组不需要用到DMA,只需要在注入组转换完成后分别去不同注入组数据寄存器中取数即可。 标注4:触发源 ADC的规则组和注入组需要选特定的触发源用于触发ADC转换,注意,ADC的Enable(即ADC_CTL1寄存器的ADC_ON位置“1”)不会触发ADC转换,...
*/adc_inserted_channel_config(0U, ADC_CHANNEL_0, ADC_SAMPLETIME_55POINT5);/* ADC external trigger enable */adc_external_trigger_config(ADC_INSERTED_CHANNEL, ENABLE);/* enable ADC interface */adc_enable();delay_1ms(1U);/* ADC calibration and reset calibration */adc_calibration_enable();...
*/adc_external_trigger_config(ADC_REGULAR_CHANNEL,ENABLE);adc_channel_16_to_19(ADC_TEMP_CHANNEL_SWITCH,ENABLE);adc_channel_16_to_19(ADC_INTERNAL_CHANNEL_SWITCH,ENABLE);/* enable ADC interface */adc_enable();DelayMs(1U);/* ADC calibration and reset calibration */adc_calibration_enable();}...