ch32x035 OPA1

可以直接用这样使用ADC去采5V电压的AD值和OPA运放的输出的AD值吗?我这样使用得到的两个AD值都是相同的,误差只有5左右。感觉不对。

image.png

这个OPA读出来的AD值怎么算成实际值电流或者电压值


您好,注意使用ADC去采5V电压的AD值以及OPA运放输出的AD值时,MCU注意要使用5V供电,OPA运放输出的电压不要超过供电电压。ADC值转换成电压值的公式可参考下图,注意5V供电时将3.3改成5.后续若有问题,可通过邮箱(lzs@wch.cn)和我沟通。

image.png


就是说我用规则通道配置连续配置2个或以上,通道数量对应个数可以直接这样写的:

ADC_RegularChannelConfig(ADC1, ADC_Channel_7, 1, ADC_SampleTime_11Cycles);//

 ADC_RegularChannelConfig(ADC1, ADC_Channel_3, 2, ADC_SampleTime_11Cycles); //

ADC_SoftwareStartConvCmd(ADC1, ENABLE);             

ADC_AutoInjectedConvCmd(ADC1, ENABLE);

ADC_Cmd(ADC1, ENABLE);


上边配置,下边读值


    while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC));      //ADC_FLAG_EOC 转换结束状态 

    adc_val1 = ADC_GetConversionValue(ADC1);                                

     val      = ADC_GetConversionValue(ADC1);

    这样子,adc_val1和val的值读出来都是一样的



您好,附件例程是配置ADC通道3和通道7采样的例程,你可以参考一下

icon_rar.gifCH32X035 ADC采样.zip



好的,多谢



只有登录才能回复,可以选择微信账号登录