Na wielu układach odniesienia napięcia (na przykład MAX610x ) wydaje się, że dostępne są różne napięcia odniesienia (1,25, 1,8, 2,5, 3,3 itd.).
Co mnie dziwne, to referencje 2.048V i 4.096V. Dlaczego używamy referencji przy tych napięciach zamiast po prostu 2 V i 4 V, co z pewnością byłoby łatwiejsze w użyciu matematycznym?
Odpowiedzi:
Podczas kwantyzacji napięć (tj. Przechodzących przez ADC), zwykle przekształcasz napięcie w reprezentację liczb całkowitych, która jest reprezentowana za pomocą schematu potęgi 2.
Oznacza to, że mieszczą się w strukturze liczb binarnych, np. 8-bitowy przetwornik cyfrowo-analogowy ma 256 indywidualnych poziomów. Użycie odniesienia o mocy 2 liczby miliwoltów oznacza, że rzeczywiste wartości cyfrowe mają znaczące wartości.
Na przykład, jeśli masz 11-bitowy przetwornik cyfrowo-analogowy z referencją 2,048, wówczas wartością cyfrową jest liczba miliwoltów.
Edycja : Jak wskazał Andrew Morton, zapewnia to 2048 poziomów, podczas gdy istnieje 2049 poziomów miliwoltów, w tym 0. Dlatego zatem, aby poprawnie przedstawić każdy bit jako miliwolt, potrzebujesz dodatkowego bitu. Jeśli jednak będziesz konsekwentnie zaokrąglać, nadal można zaokrąglić każdy element w dół i osiągnąć 0-2047 mV lub zaokrąglić w górę i mieć 1-2048 mV. Jeśli zmieścisz 2048 do 2049, stracisz niezłą właściwość bezpośredniego dopasowania liczby miliwoltów.
źródło
Referencje 4,096 V i 2,048 V pozwalają ADC wygenerować wartość całkowitą w mV. Oznacza to, że każdy krok ADC reprezentuje 1 mV lub całkowitą wielokrotność 1 mV. 4,096 V = 2 ^ 12 mV
źródło
Powodem tego jest to, że można je łatwo podzielić na bazę 2. To sprawia, że są one przydatne w przypadku takich ADC, w których 12-bitowy ADC z szyną między 0 a 4,096 V będzie oznaczać 1 mV na bit, co jest znacznie łatwiejsze numer.
Istnieje również więcej napięć, które robią to samo. Można również uzyskać odniesienia napięcia w 1.024 V, czyli 2 10 . Różne odniesienia mogą być używane dla różnych bitowych przetworników ADC.
źródło
Może to być korzystne w odpowiednich okolicznościach, gdy mikrokontroler wyświetla wartości bezpośrednio człowiekowi. Jednak przez większość czasu dzieje się tak dlatego, że jest wielu ludzi, którzy są źli z matematyki lub nie przestawają i naprawdę myślą.
Jak już inni pokazano 2048 = 2, 11 /1000 i 4.096 = 2, 12 /1000. Jeśli używasz 12-bitowego A / D z napięciem odniesienia 4,096 V, każda liczba wynosi 1 mV.
Jednak zatrzymaj się i zastanów, kiedy to naprawdę ma znaczenie. W jednostkach miliwoltów nie ma z natury nic szczególnego. Pod względem fizyki są one całkowicie arbitralną jednostką do pomiaru pola elektromagnetycznego.
Na przykład w systemie sterowania jednostki używane do różnych mierzonych wielkości mogą być dowolne, o ile wiesz, jakie są. Jeśli używasz punktu stałego, to chcesz, aby maksymalna wartość prawie wypełniła liczbę i użyj wystarczającej liczby bitów, aby uzyskać niezbędną rozdzielczość. Skalowanie jednostek powinno być podyktowane wygodnymi wewnętrznymi reprezentacjami binarnymi.
W każdym razie nieuchronnie będą istnieć regulowane współczynniki wzmocnienia. Niestandardowe skalowanie wszystkich wartości wejściowych można dostosować, stosując różne wartości współczynników wzmocnienia, które już tam są, a system musi już obsługiwać dowolne wartości. Żadne dodatkowe obliczenia nie są wymagane, tylko różne wartości wprowadzane do tych samych obliczeń.
W niektórych przypadkach te małe systemy wbudowane muszą wyświetlać ludziom wartości cyfrowe. W takim przypadku jednostki miliwoltów są przydatne, gdy chcesz pokazać napięcie z dokładnością do trzech miejsc po przecinku. Jednak interfejsy ludzkie z natury są powolne w porównaniu do mikrokontrolerów. Zasadniczo nie chcesz aktualizować wyświetlacza cyfrowego przy częstotliwości większej niż 2 Hz. Konwersja liczby na cyfry dziesiętne i tak wymaga już pewnej arytmetyki. Skalowanie niektórych wartości wewnętrznych w celu dopasowania wyświetlanej rozdzielczości jest raczej niewielkim dodatkowym krokiem w stosunku do tego procesu.
Następnie zastanów się, jak często rzeczywiście chcesz mierzyć napięcie w zakresie od 0 do 4,095 V lub przynajmniej większość tego zakresu. Jeśli chcesz zmierzyć 0 do 5 V, to odniesienie 4.096 naprawdę nie pomaga. W każdym razie musisz osłabić sygnał do A / D, więc odczyt tłumionego sygnału w miliwoltach nie daje żadnej szczególnej korzyści, nawet przy wyświetlaniu wartości cyfrowych.
Krótko mówiąc, w dzisiejszym świecie, w którym mikrokontrolery obsługują odczyty A / D, referencje 2.048 i 4.096 V zaspokajają głównie dostrzeganą potrzebę, a także szarpiący kolana, którzy źle myślą o tym problemie.
źródło