2 pièce(s) jointe(s)
ESP32H2, pas mieux que 8 bits pour l'ADC ?
Bonjour,
J'ai un problème de mesure de tension en utilisant un ESP32 H2.
La fonction analogRead() retourne une valeur 12 bits, mais derrière la résolution semble être de seulement 8 bits.
Ci-dessous j'ai effectué la même mesure avec un ESP32 WROOM32 (à gauche) et un ESP32 H2 (à droite), valeurs brutes.
Les mesures sont toutes les 10 secondes, sur environ 15 minutes. On voit une décroissance "lisse" avec le WROOM, alors qu'on a un pallier avec le H2.
Pièce jointe 653122
Une estimation grossière montre qu'on peut s'attendre à avoir 256 valeurs sur l'intervalle de mesure, soit 8 bits.
analogReadResolution(12) ne change rien sur la valeur retournée, qui est déjà en 12 bits.
J'ai voulu essayer analogSetWidth(), mais cette fonction n'est pas reconnue.
Le code est des plus simples pour ce test (sous platformio):
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <Arduino.h>
void setup()
{
Serial.begin(9600);
}
void loop()
{
analogReadResolution(12);
Serial.print(analogRead(2));
delay(10000);
} |
Avez-vous des idées ?