ATMega328 외부 AREF 연결


10

로부터 ATMega328 데이터 시트 , 섹션 24.9.1 :

외부 기준 전압이 AREF 핀에 적용되는 경우 내부 전압 기준 옵션을 사용할 수 없습니다.

Arduino 참조 페이지에서 :

또는 5K 저항을 통해 외부 기준 전압을 AREF 핀에 연결하여 외부 기준 전압과 내부 기준 전압 사이를 전환 할 수 있습니다. AREF 핀에는 내부 32K 저항이 있으므로 저항은 기준으로 사용되는 전압을 변경합니다. 이 둘은 전압 분배기 역할을하므로 예를 들어 저항을 통해 적용된 2.5V는 AREF 핀에서 2.5 * 32 / (32 + 5) = ~ 2.2V가됩니다.

ATMega328 데이터 시트는 표 29.16의 "내부 32k 저항"참조를 확인합니다. ADC 특성 : 기준 입력 저항 = 32kOhm.

즉, 위의 두 진술은 서로 다소 반대되는 것처럼 보입니다. 0-5V 풀 스케일을 출력하는 일부 센서와 0-1.8V 풀 스케일을 출력하는 일부 센서가있는 응용 프로그램이 있습니다. 1.8V 센서를 샘플링하고 5V 센서에 대한 내부 AVCC 기준으로 전환 할 때 1.8V AREF 로의 스위칭 분해능이 향상되면이 애플리케이션의 이점을 활용할 수 있습니다.

Arduino 레퍼런스 페이지는 5kOhm 직렬 저항을 통해 1.8V AREF에 연결하고 내부 32kOhm 저항을 갖는 암시 적 전압 분배기를 고려하면 괜찮습니다. 이것은 Arduino 참조의 나쁜 조언입니까, 아니면 실제로 이런 종류의 일을하는 것이 일반적인 관행입니까? Atmel의 설명은 외부 전류 제한 저항없이 AREF에 적용되는 외부 전압으로 제한됩니까 (그렇다면 내부 32k 저항이 주어짐)?

또한 1.8V 신호를 최대 5V까지 스케일링하기 위해 올바르게 구성된 op-amp를 사용하여 유사한 결과를 얻을 수 있지만, 내장 된 ADC로도 처리 할 수 ​​있으면 추가 된 복잡성과 부품이 낭비되는 것처럼 보입니다. 변경 가능한 전압 레퍼런스를 활용합니다. 마찬가지로 감지 된 신호가 1.1V를 초과하지 않는다고 확신 할 수 있으면 내부 전압 레퍼런스를 활용할 수 있습니다. 다시 말하지만 저전압 센서에 전원을 공급하는 1.8V 레귤레이터를 사용하여 기준을 설정하는 것이 더 우아해 보입니다.


또한 "Atmel의 설명이 AREF에 적용되는 방해받지 않는 외부 전압으로 제한되어 있습니까?" "무제한으로 제한됨"을 이해하지 못합니다. 감사.
Telaclavo

@Telaclavo 나는 성명을 더 명확하게 만들었습니다 (희망적으로)
vicatcu

나는 당신의 혼란이 어디에서 왔는지 보았지만 사용중인 특정 Arduino의 회로도에 대한 링크를 게시 할 수 있습니까?
Telaclavo

@Telaclavo 특정 Arduino를 염두에 두지 않으면 Uno가 충분할 것입니다. 베이스 보드에서 AREF는 전압 소스에 연결되지 않고 단순히 100nF 커패시터를 통해 GND로 분리됩니다. 예를 들어 실드에 1.8V 레귤레이터가있는 경우 원칙적으로 5kOhm 저항을 통해 실드 헤더를 통해 AREF에 연결하여 ATMega328 ADC를 1.8V로 참조 한 다음 내부 AVCC 참조 ( 소프트웨어에서 ATMo328 ADC를 5V로 참조하기 위해 소프트웨어에서 5V로 연결됨).
vicatcu

좋아, 처음에는 5 kohm 저항이 Arduino에 포함되어 있다고 생각했지만 그렇지 않습니다. 방금 답변을 업데이트했습니다. 그리고 32kohm 저항이 AREF 에서 접지 로 이동한다는 것을 인정하지 않기 때문에 혼란이 생겼 습니다 . 그렇지 않으면 나는 "내부 32k 저항을 감안할 때 왜 그런지 이해하지 못합니까?"
Telaclavo

답변:


8

Arduino 기준 입력에 5 kohm 저항을 통해 외부 전압을 적용하는 데 아무런 문제가 없습니다. 또는 저항 분배기를 사용하면 5V를 원하는 AREF 전압으로 전환하는 동시에 약 5kohm의 소스 저항을 나타낼 수 있습니다. 이 두 번째 요구 사항은 정확하지 않아도됩니다. 이는 외부 회로를 통해 AVCC에서 접지로 흐르는 전류를 제한하기위한 것입니다.

개략도

MCU의 AREF 입력에서 1.8V를 끝내려면 1.8이 되도록 R1 및 R2를 선택하십시오. V 및 5kohm.Rsource=R1| | R2VAREF=5·R2||32000R1+(R2||32000)=Rsource=R1||R2

[0, 1.8] V 범위로 작업해야하는 경우 ATMega 내부의 레퍼런스를 비활성화하고 [0, 5] V로 작업해야하는 경우 내부 AVCC 레퍼런스 (5 V 인 경우)를 활성화하십시오 . 그림 24-1 (AREF 라인에 내부 기준을 연결하는)에 표시된 MOSFET의 온 저항이 5kohm보다 훨씬 낮은 경우 (내부 추정치) 내부 회로에 AVCC가 표시됩니다. 이 두 번째 상황에서는 내부 AVCC (5V 가정)에서 외부 저항 분배기로의 전류 드레인은 1mA가되지만 문제가되지는 않습니다.

요약하자면, 무언가가 손상 될 수 있다면 나쁜 조언이 될 것이지만 1 mA는 아무것도 손상시키지 않을 것입니다.


그림 24-1을 불러 오려면 +1 ... AREF의 전류 제한 저항이 안전한 내기 임을 제안 합니다 .
vicatcu

1
나는 오히려 AREF에 작은 전압 강하를 허용하고 내가 수용의 가치로 답변을 찾을하지만 ...하지만 레귤레이터에서 소스 1.8V 단일 외부 5kOhm 저항을 사용하는 거라고 생각
vicatcu

1

Aref PIN의 내부 구성과 Arduino의 ADC를 사용할 때이 핀이 수행하는 역할에 대한 훌륭한 설명.

여기 내 센트가 있습니다. 32kOhms 저항이 내부에 있음을 명확히하기 위해 회로도를 약간 수정했습니다. 또한 외부 Vref를보다 안전하게 사용하기 위해 대체 구성을 포함 시켰습니다. R1 및 R2에 대한 공식을 얻기 위해 최악의 시나리오 (실수로 스위치가 닫혀 있음)가 고려되었습니다.

건배
여기에 이미지 설명을 입력하십시오

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.