Vypra
Member
Попробовал сделать вольтметр на ESP32 чтоб отслеживать заряд аккумулятора 18650 до 4,2В.
На 34 пин вход через делитель 100К-10К.
Но при заряде батареи 3,7В показывает итоговое значение замера 2,2В. Сначала прыгали показания. подкинул 0,1мкф к пину, стало стабильней, но все же 2,2В.
Что не так?
На 34 пин вход через делитель 100К-10К.
Но при заряде батареи 3,7В показывает итоговое значение замера 2,2В. Сначала прыгали показания. подкинул 0,1мкф к пину, стало стабильней, но все же 2,2В.
Код:
#include <driver/adc.h>
float vout = 0.0;
float vin = 0.0;
float R1 = 100000.0; // resistance of R1 (100K)
float R2 = 10000.0; // resistance of R2 (10K)
void setup()
{
Serial.begin(9600);
adc1_config_width(ADC_WIDTH_BIT_12);
adc1_config_channel_atten(ADC1_CHANNEL_6, ADC_ATTEN_DB_11);
}
void loop()
{
delay(500);
float value = adc1_get_raw(ADC1_CHANNEL_6);
vout = (value * 3.3) / 4095.0;
vin = (vout / (R2 / (R1 + R2)));
Serial.println("Read ADC pin [" + String(ADC1_CHANNEL_6_GPIO_NUM) + "]: " + " [" + String(value) + "]" + " [" + String(vin) + "]");
}