内部电压参考(VREFINT)提供了一个稳定的(带隙基准)电压输出给 ADC 和比较器,典型值为1.2V。13.3 硬件设计 本实验使用两个内部ADC通道,无需要硬件设计。13.4 代码解析 13.4.1 中断使能函数 在driver_adc.c中定义了开启中断的函数ADC_int_enable。13.4.2 ADC中断函数 在driver_adc.c中定义了ADC的中断...
DMA_Cmd(DMA1_Channel1, ENABLE);// ADC内置温度传感器禁止 ADC_TempSensorVrefintCmd(DISABLE);/* ...
标注2:输入通道 前面提到,ADC有最多16个外部模拟通道和3个内部通道,外部通道号从IN0~IN15,由IO口号来决定,两个内部通道是IN16(温度传感器)和IN17(内部Vrefint,典型值1.2V),下表给出了IO口号对应的ADC通道:标注3:规则组 GD32F470的ADC转换组称为规则组,也叫常规序列。规则组有两个重要的参数,...
adc_tempsensor_vrefint_enable(); } } 被用作ADC采样的IO口需要被设置为Analog模式,因为ADC_CH0~ADC_CH15是和外部IO关联的,而ADC_CH16和ADC_CH17是内部通道,所以只有在通道号小于ADC_CHANNEL_16时才需要配置IO口,而大于等于ADC_CHANNEL_16时需要使能ADC内部通道。 3、配置ADC规则组工作模式 C /*配置ADC工...
ADC1/2/3 还有内部通道: ADC1 的通道 16 连接到了芯片内部的温度传感器, Vrefint 连接到了通道 17。 ADC2 的模拟通道 16 和 17 连接到了内部的 VSS。 ADC3 的模拟通道 9、 14、 15、 16 和 17 连接到了内部的 VSS。 外部的 16 个通道在转换时分为规则通道和注入通道,规则通道最多有 16 路,注入通...
内部电压参考(VREFINT)提供了一个稳定的(带隙基准)电压输出给 ADC 和比较器,典型值为1.2V。 13.3硬件设计 本实验使用两个内部ADC通道,无需要硬件设计。 13.4代码解析 13.4.1中断使能函数 在driver_adc.c中定义了开启中断的函数ADC_int_enable。 C /*ADC中断使能函数*/ void ADC_int_enable(typdef_adc_ch_gen...
adc_internal_channel_config(ADC_CHANNEL_INTERNAL_TEMPSENSOR, ENABLE); } else if(ADC_CH[i].adc_channel == ADC_CHANNEL_19) { adc_internal_channel_config(ADC_CHANNEL_INTERNAL_VREFINT, ENABLE); } else if(ADC_CH[i].adc_channel == ADC_CHANNEL_20) { adc_internal_channel_config(ADC_CHANNEL...
ADC_TempSensorVrefintCmd(ENABLE);//打开内部温度和电压传感器的DMA连接ADC_RegularChannelConfig(ADC1,16,1, ADC_SampleTime_239Cycles5 ); ADC_RegularChannelConfig(ADC1,17,2, ADC_SampleTime_239Cycles5 ); ADC_DMACmd(ADC1,ENABLE); ADC_Cmd(ADC1, ENABLE); ...
对于STM32F40x 和 STM32F41x 器件,温度传感器内部连接到通道 ADC1_IN16。内部参考电压 VREFINT 连接到 ADC1_IN17。 对于 STM23F42x 和 STM32F43x 器件,温度传感器内部连接到与 VBAT 共用的通道ADC1_IN18。一次只能选择一个转换(温度传感器或 VBAT)。同时设置了温度传感器和 VBAT 转换时,将只进行 VBAT转换...
【注意】温度传感器和VREFINT只能出现在主ADC0 中。 1.3 ADC转换模式 单次转换模式 该模式能够运行在规则组和注入组。单次转换模式下, ADC_RSQ2寄存器的RSQ0[4:0]位或者ADC_ISQ寄存器的ISQ3[4:0]位规定了ADC的转换通道。当ADCON位被置1,一旦相应软件触发或者外部触发发生, ADC就会采样和转换一个通道。