Utilities Web

Calculatrice de résolution ADC · LSB · Tension

Calcule la tension LSB, l'erreur de quantification, la plage dynamique, la conversion code↔tension, l'ENOB et le suréchantillonnage à partir de la résolution et de la tension de référence

Comment utiliser

  1. Choisissez un préréglage d'appareil (Arduino / ESP32 / STM32 / 16bit) ou entrez la résolution (bit) et la tension de référence Vref
  2. Choisissez la convention LSB (2^N standard / 2^N−1 point final)
  3. La tension 1 LSB, le nombre de codes, l'erreur de quantification, la plage dynamique et le SNR idéal s'affichent
  4. En entrant le code ou la tension, l'autre est calculé dans les deux sens
  5. Dans le tableau de comparaison des résolutions, vous pouvez comparer les LSB de chaque profondeur de bits avec le même Vref
  6. En entrant le SINAD, l'ENOB (résolution effective) s'affiche; en entrant les bits supplémentaires, le ratio de suréchantillonnage requis s'affiche

Cas d'usage

  • Quand vous voulez savoir combien de mV/µV est 1 LSB à partir de la résolution et de la tension de référence
  • Quand vous voulez convertir la valeur de lecture ADC (code) en tension ou la tension en code
  • Quand vous voulez vérifier si vous divisez par 1024 ou 1023 lors de la conversion de analogRead d'Arduino en tension
  • Quand vous voulez obtenir la résolution effective (ENOB) à partir du SINAD de la fiche technique
  • Quand vous voulez savoir combien de fois l'échantillonnage est nécessaire pour obtenir une résolution supplémentaire en bits par suréchantillonnage

Questions fréquemment posées

Divisez-vous par 1024 ou 1023 lors de la conversion de analogRead en tension? ▼

Les deux sont utilisés. 1024 (=2^N) est fidèle à la fonction de transfert de l'ADC, et chaque code représente un bac de largeur Vref/1024 (la valeur de lecture 1023 est 4.9951V, pas exactement 5V). 1023 (=2^N−1) mappe linéairement 0 à Vref, et la valeur de lecture 1023 est exactement 5V. Le plus précis est de diviser par 1024 et d'ajouter un décalage de +0.5LSB. Le basculement de convention dans cet outil vous permet de vérifier les deux résultats.

Quelle est la relation entre LSB, l'erreur de quantification et la plage dynamique? ▼

1 LSB = Vref ÷ 2^N est la tension par code, et l'erreur de quantification est ±0.5 LSB. La plage dynamique est 6.02·N dB (le rapport pleine échelle÷1LSB), et le SNR idéal pour une onde sinusoïdale en pleine échelle est 6.02·N + 1.76 dB. En augmentant N d'1 bit, le LSB est réduit de moitié et la plage dynamique s'améliore d'environ 6 dB. Le LSB change avec Vref et la convention, mais la plage dynamique/SNR est déterminée par N seul.

Jusqu'où la résolution peut-elle être augmentée par suréchantillonnage? ▼

Pour augmenter la résolution de w bits, additionnez les échantillons 4^w fois et divisez par 2^w (décimation). Par exemple, pour ramener 12 bits à l'équivalent 14 bits, 4^2 = 16 fois l'échantillonnage est nécessaire. Cependant, cela suppose que l'entrée a un bruit aléatoire d'au moins 1 LSB (ou de la tramage si nécessaire), et si le bruit est trop faible, cela n'aura aucun effet. La résolution effective = N + w, et le LSB effectif = Vref ÷ 2^(N+w).

Outils associés