정확한 A2D 측정을 위해 사용하지 않는 모든 아날로그 입력 포트를 접지에 연결해야합니까?


18

Arduino Uno의 A0 포트를 사용하여 LM35 온도 센서에서 출력되는 전압을 읽습니다. 나머지 아날로그 입력 포트 A1 ~ A5를 플로팅 상태로두면 판독 값이 크게 변동하는 것을 관찰했습니다. 플로팅 아날로그 입력은 일부 신호에 연결된 입력 포트의 판독 정확도에 영향을 미칩니다.

답변:


12

모든 부동 핀은 안테나 역할을하며 주변의 값을 방해 할 수 있습니다. 이는 아날로그 사용의 주요 단점 중 하나입니다.

최소한의 간섭으로 가장 정확한 판독 값을 얻으려면 사용하지 않는 모든 입력을 접지로 끌어 올 수 있습니다.

정확도는 센서 자체에 의해 결정되므로 정확도는 변하지 않습니다. 그러나 노이즈 / 간섭의 양을 줄여보다 정확한 판독 값을 제공합니다.

사용하지 않는 아날로그 핀을 디지털 출력으로 구성하고 낮게 설정하면 이러한 풀 투 그라운드를 달성 할 수 있습니다.

pinMode(A1, OUTPUT);
digitalWrite(A1, LOW);

운이 좋은 추측인지 확실하지 않지만 출력 핀 (An 포함)을 낮게 구동하는 것이 가장 에너지 효율적인 방법입니다. 높이를 높이거나 풀업을 활성화하면 전원에서 더 많은 에너지를 소비합니다.
jippie

@jippie-보드 누수가 없으면 동일한 전력을 소비 할 수 있습니다. 누수가있는 경우 누전 여부에 따라 다릅니다.
코너 울프

1
@FakeName 아니요. 나는 그 문제에 관한 기사를 읽었습니다. 핀을 낮게 구동하면 높은 임피던스를 유지하는 것만 큼 전류가 많이 걸립니다. 높은 또는 풀업으로 운전하면 더 많은 전류가 소비됩니다. 오늘 기사를 찾도록하겠습니다.
jippie

나는 기사를 읽지 못했지만 모든 핀을 높게 구동하면 모든 로우보다 약간 더 많은 전류를 끌어 당길 수 있음을 확인할 수 있습니다.
Cybergibbons

@jippie-허, 이상하다. 토템 폴 출력이 대칭이 될 것으로 기대합니다. 그림을 이동!
코너 울프

0

사용하지 않는 핀을 OUTPUT / LOW로 설정해도 PULLUP이 활성화 된 상태에서 INPUT보다 약간 적은 전력을 소비하더라도 두 번째 옵션이 더 절약됩니다.

다른 사람을 인용하려면 :

실수로 핫 와이어를 출력 세트 로우에 닿으면 프로세서를 단락시키고 감쇄시킵니다. 실수로 접지선을 높은 출력 세트에 닿으면 프로세서를 단락시키고 감쇄시킵니다. 풀업으로 실수로 입력 중 하나의 전선을 만지면 눈치 채지 못할 것입니다.

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