ADC_ChannelConfig(ADC1,ADC_Channel_6,ADC_SampleTime_55_5Cycles); ADC_ChannelConfig(ADC1,ADC_Channel_7,ADC_SampleTime_55_5Cycles); ADC_ChannelConfig(ADC1,ADC_Channel_9,ADC_SampleTime_55_5Cycles); //ADC_ChannelConfig(ADC1,ADC_Channel_0, ADC_SampleTime_239Cycles5 ); //等待更长采集周期 A...
* @arg ADC_Channel_7: ADC Channel7 selected * @arg ADC_Channel_8: ADC Channel8 selected * @arg ADC_Channel_9: ADC Channel9 selected * @arg ADC_Channel_10: ADC Channel10 selected * @arg ADC_Channel_11: ADC Channel11 selected * @arg ADC_Channel_12: ADC Channel12 selected * @arg ...
三个函数 Get_Adc,用于读取某个通道的 ADC 值,例如我们读取通道 9 上的 ADC 值,就 可以通过 Get_Adc(ADC_CHANNEL_9)得到。最后一个函数 Get_Adc_Average,用于多次 获取ADC 值,取平均,用来提高准确度。 接下来看看 main.c 的代码如下: // 共阴数字数组 // 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E...
HAL_ADC_ConfigChannel(&ADC1_Handler,&ADC1_ChanConf); ADC1_ChanConf.Channel=ADC_CHANNEL_9; //通道9 ADC1_ChanConf.Rank=3; //第三次转换 ADC1_ChanConf.SamplingTime=ADC_SAMPLETIME_480CYCLES; ADC1_ChanConf.Offset=0; HAL_ADC_ConfigChannel(&ADC1_Handler,&ADC1_ChanConf); HAL_ADC_Start_IT...
ADC_ChannelConfig(ADC1,ADC_Channel_9,ADC_SampleTime_55_5Cycles); //ADC_ChannelConfig(ADC1,ADC_Channel_0, ADC_SampleTime_239Cycles5 ); //等待更长采集周期 ADC_GetCalibrationFactor(ADC1); //校准ADC ADC_DMACmd(ADC1, ENABLE); //使能ADC1的DMA通道,还需独立配置DMA通道等参数 ...
*/sConfig.Channel=ADC_CHANNEL_8;sConfig.Rank=ADC_REGULAR_RANK_1;sConfig.SamplingTime=ADC_SAMPLETIME_1CYCLE_5;if(HAL_ADC_ConfigChannel(&hadc1,&sConfig)!=HAL_OK){Error_Handler();}/** Configure Regular Channel */sConfig.Channel=ADC_CHANNEL_9;sConfig.Rank=ADC_REGULAR_RANK_2;if(HAL_ADC...
}R_ADC_Read(&g_adc0_ctrl, ADC_CHANNEL_0, &adc_data); a0 = (double)(adc_data*3.3/4095);returna0; } R_ADC_ScanStart()启动软件扫描或启用扫描的硬件触发器,具体取决于触发器在R_ADC_Open调用中的配置方式。 如果该单元被配置为ELC或外部硬件触发,那么该功能允许触发信号到达ADC单元。 该函数不能...
该模式既可通过设置ADC_CR2寄存器的ADON位(只适用于规则通道)启动也可通过外部触发启动(适用于规则通道或注入通道),这时CONT位为0。 - 连续转换模式 在连续转换模式中,当前面ADC转换一结束马上就启动另一次转换。此模式可通过外部触发启动或通过设置ADC_CR2寄存器上的ADON位启动,此时CONT位是...
STC32G_ADC_CHN //STC32G ADC channel STC32G_ADC_SPEED //STC32G ADC clock frequency /Macro function STC32G_ADCPOWERON(); //adc power on STC32G_ADCPOWEROFF(); //adc power off STC32G_ADCSTART(); //adc start STC32G_ADCSTOP(); //adc stop ...
voidAdcInit(void){AdcGpioInit();AdcConfig();}voidAdcPolling(void){staticuint32_t tick=0;float temperature=0;uint16_t ref=0;float Vdd=0;if(SystemGetTick()-tick>1000){ref=AdcSample(ADC_CHANNEL_17);Vdd=1.2/(float)ref*4095;printf("\r\nVdd=%.3f V\r\n",Vdd);printf("Channel 1=%...