ATMega328 Zewnętrzne połączenie AREF

10

Z arkusza danych ATMega328 , sekcja 24.9.1:

Opcji wewnętrznego napięcia odniesienia nie można używać, jeśli zewnętrzne napięcie odniesienia jest przykładane do pinu AREF.

Ze stron referencyjnych Arduino :

Alternatywnie możesz podłączyć zewnętrzne napięcie odniesienia do pinu AREF poprzez rezystor 5K, co pozwala na przełączanie między zewnętrznymi i wewnętrznymi napięciami odniesienia. Zauważ, że rezystor zmieni napięcie, które zostanie użyte jako odniesienie, ponieważ na pinie AREF znajduje się wewnętrzny rezystor 32K. Oba działają jak dzielnik napięcia, więc na przykład 2,5 V przyłożone przez rezystor da 2,5 * 32 / (32 + 5) = ~ 2,2 V na pinie AREF.

Arkusz danych ATMega328 potwierdza odniesienie do „wewnętrznego rezystora 32k” w tabeli 29.16 Charakterystyka ADC za pomocą: Referencyjna rezystancja wejściowa = 32 kOhm.

Biorąc to pod uwagę, powyższe dwa stwierdzenia wydają się być w pewnym stopniu sprzeczne. Mam aplikację z niektórymi czujnikami o pełnej skali 0–5 V, a inne o pełnej skali 0–1,8 V. Aplikacja skorzystałaby na zwiększonej rozdzielczości przełączania na 1,8 V AREF podczas próbkowania czujników 1,8 V i przełączania na wewnętrzne odniesienie AVCC dla czujników 5 V.

Strony referencyjne Arduino sugerują, że jest to w porządku, biorąc pod uwagę, że po podłączeniu do 1,8 V AREF przez rezystor szeregowy 5 kOhm uwzględniliśmy domyślny dzielnik napięcia z wewnętrzną rezystancją 32 kOhm. Czy to tylko zła rada z referencji Arduino, czy też jest to powszechna praktyka robienia tego rodzaju rzeczy? Czy oświadczenie Atmela jest ograniczone do napięć zewnętrznych zastosowanych do AREF bez zewnętrznego rezystora ograniczającego prąd (a jeśli tak, to dlaczego, biorąc pod uwagę wewnętrzną rezystancję 32k)?

Nawiasem mówiąc, oczywiście można osiągnąć podobny wynik z odpowiednio skonstruowanym wzmacniaczem operacyjnym do skalowania sygnałów 1,8 V do 5 V, ale dodatkowa złożoność i części wydają się marnotrawstwem, jeśli równie dobrze może poradzić sobie na pokładzie ADC wykorzystując zmienne napięcie odniesienia. Podobnie, jeśli możesz się przekonać, że wykryty sygnał nie przekroczy 1,1 V, możesz skorzystać z wewnętrznego napięcia odniesienia. Ponownie wydaje mi się bardziej eleganckie użycie regulatora 1,8 V, którym zasilam czujniki niskiego napięcia, aby ustawić wartość odniesienia.

vicatcu
źródło
Czy potrafisz też przeformułować „Czy oświadczenie Atmela ogranicza się do niezakłóconego napięcia zewnętrznego zastosowanego do AREF?” Nie rozumiem „ograniczony do niezakłóconego”. Dzięki.
Telaclavo,
@Telaclavo Sprawiłem, że oświadczenie stało się jaśniejsze (miejmy nadzieję)
vicatcu
Wydaje mi się, że właśnie widziałem, skąd bierze się twoje zamieszanie, ale czy możesz zamieścić link do schematu konkretnego Arduino, którego używasz?
Telaclavo,
@ Telaclavo nie ma na myśli konkretnego Arduino, jako przykład wystarczy Uno. Na płycie bazowej AREF nie jest podłączony do żadnego źródła napięcia, ale po prostu odłączony od GND poprzez kondensator 100nF. Gdybym miał regulator 1,8 V, na przykład na osłonie, mógłbym w zasadzie podłączyć go do AREF przez nagłówki osłony za pomocą rezystora 5kOhm w celu odniesienia ATMega328 ADC do 1,8 V, a następnie przełączyć na wewnętrzne odniesienie AVCC (które jest podłączony do 5 V w Uno) w oprogramowaniu do odniesienia ATMega328 ADC do 5 V.
vicatcu
Ok, najpierw pomyślałem, że rezystor 5 kΩ jest zawarty w Arduinos, ale tak nie jest. Właśnie zaktualizowałem swoją odpowiedź. I myślę, że twoje zamieszanie wynikało z nieuznania, że ​​rezystor 32 kohm przechodzi od AREF do masy . W przeciwnym razie nie zrozumiałbym twojego „a jeśli tak, dlaczego, biorąc pod uwagę wewnętrzny opór 32k?”
Telaclavo,

Odpowiedzi:

8

Nie widzę problemu z doprowadzeniem zewnętrznego napięcia przez rezystor 5 kΩ do wejścia referencyjnego Arduino. Lub lepiej, stosując dzielnik rezystorowy, dzięki czemu zamienisz 5 V na żądane napięcie AREF, jednocześnie wykazując oporność źródła około 5 kohm. To drugie wymaganie nie musi być dokładne. Jest to po prostu ograniczenie prądu, który przepłynie z AVCC do ziemi, przez obwód zewnętrzny.

schematyczny

Jeśli chcesz uzyskać 1,8 V na wejściu AREF MCU, po prostu wybierz R1 i R2, aby 1,8 V i 5 kohm.VAREF=5·R2||32000R1+(R2||32000)=Rsource=R1||R2

Gdy potrzebujesz pracować z zakresem [0, 1,8] V, wyłącz wewnętrzne odniesienia do ATMega, a gdy musisz pracować z [0, 5] V, włącz wewnętrzne odniesienie AVCC (jeśli jest to 5 V) . Jeśli MOSFET pokazany na ryc. 24-1 (który łączy wewnętrzne odniesienia z linią AREF) ma rezystancję znacznie niższą niż 5 kohm (jak przypuszczam, że ma), wewnętrzny obwód zobaczy AVCC. W tej drugiej sytuacji prąd pobierany z wewnętrznego AVCC (przy założeniu 5 V) do zewnętrznego dzielnika rezystora wyniesie 1 mA, ale to nie jest problem.

Podsumowując: źle byłoby, gdyby coś zostało uszkodzone, ale 1 mA niczego nie uszkodzi.

Telaclavo
źródło
+1 za wywołanie cyfry 24-1 ... co sugeruje mi (również), że opornik ograniczający prąd na AREF to bezpieczny zakład.
vicatcu
1
Myślę, że wolałbym zaakceptować niewielki spadek napięcia na AREF i użyć pojedynczego zewnętrznego rezystora 5kOhm do źródła 1.8V z regulatora ... ale uważam, że twoja odpowiedź jest godna akceptacji
vicatcu
1

Świetne wyjaśnienie dotyczące wewnętrznej konfiguracji Aref PIN, a także roli, jaką odgrywa ten pin, gdy używany jest ADC z Arduino.

Oto moje dwa centy. Właśnie zmodyfikowałem trochę schemat, aby wyjaśnić, że rezystor 32 kOhm jest wewnętrzny. Do tego dołączyłem alternatywną konfigurację, aby uczynić bezpieczniej korzystanie z zewnętrznego Vrefa. Równania dla R1 i R2 są uzyskiwane po ograniczeniu prądu przez nie przy 1mA. Rozważono najgorszy scenariusz (przypadkowe zamknięcie przełącznika wewnętrznego) w celu uzyskania wzorów dla R1 i R2.

Twoje zdrowie
wprowadź opis zdjęcia tutaj

José Vicente Muñoz Díez
źródło