可以直接用這樣使用ADC去采5V電壓的AD值和OPA運(yùn)放的輸出的AD值嗎?我這樣使用得到的兩個(gè)AD值都是相同的,誤差只有5左右。感覺不對(duì)。
這個(gè)OPA讀出來的AD值怎么算成實(shí)際值電流或者電壓值
您好,注意使用ADC去采5V電壓的AD值以及OPA運(yùn)放輸出的AD值時(shí),MCU注意要使用5V供電,OPA運(yùn)放輸出的電壓不要超過供電電壓。ADC值轉(zhuǎn)換成電壓值的公式可參考下圖,注意5V供電時(shí)將3.3改成5.后續(xù)若有問題,可通過郵箱(lzs@wch.cn)和我溝通。
就是說我用規(guī)則通道配置連續(xù)配置2個(gè)或以上,通道數(shù)量對(duì)應(yīng)個(gè)數(shù)可以直接這樣寫的:
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 轉(zhuǎn)換結(jié)束狀態(tài)?
? ? adc_val1 = ADC_GetConversionValue(ADC1);? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?????val? ? ? = ADC_GetConversionValue(ADC1);
? ? 這樣子,adc_val1和val的值讀出來都是一樣的
好的,多謝