GPIO 핀에 풀업 또는 풀다운 저항이 필요한지 어떻게 알 수 있습니까?


8

많은 마이크로 컨트롤러가 GPIO 핀 설정 또는 하드웨어의 일부로 풀업 또는 풀다운 저항을 사용하는 것을 보았습니다.

GPIO 핀에 풀업 또는 풀다운 저항이 필요한지 어떻게 알 수 있으며 필요한 경우 내 응용 분야에 적합한 것이 무엇인지 어떻게 알 수 있습니까?

답변:


6

플로팅 입력뿐만 아니라 I2C 라인과 같이 전압 수준이 "예측할 수없는"라인 인 풀업 또는 풀다운 저항이 필요합니다.

라인의 기본값을 디지털 1로하려면 풀업을 사용하십시오. 디지털 0이 되려면 풀다운을 사용하십시오.

가장 일반적인 예는 버튼입니다. 버튼을 눌렀을 때 소프트웨어가 핀이 내려갈 것으로 예상한다고 가정합니다. 해당 핀에서 풀업을 사용하고 버튼으로 핀을 접지에 연결합니다.


3

최종 레이아웃에서는 사용하지 않는 모든 핀을 적절한 레벨로 당기는 것이 좋습니다. 시작 시간이나 실행중인 프로그램에서 예기치 않은 동작이 발생할 수 있으므로 연결하지 마십시오.


0

당신이 그것을 끌어 올리 든 내리 든 실제로 당신과 프로젝트 요구에 달려 있습니다.

앞서 언급했듯이

코드가 하강 에지 또는에서 트리거 0하려는 경우 풀업을 사용하여 사용하지 않을 때 레벨을 높게 유지하려고합니다.

코드가 상승 에지 또는에서 트리거 1하려고하는 경우 풀다운을 사용하여 전위를 0으로 유지하고 싶을 때 외부 소스를 끌어 올리십시오.

이제 풀링 저항은 제거해야하는 노이즈를 극복 할 수있을만큼 높은 저항 값을 가져야하지만 외부 soucre가이를 극복 할 수 없을 정도로 강하지는 않아야합니다.

일반적으로 아래로 당기면 몇 mA의 전력이 절약됩니다.

1mA핀당 5k 풀업 @ 5v가 있다고 가정하겠습니다 . 배터리가 소진되면 모든 mA가 소중합니다.

풀다운하면 일반적으로 EMF 노이즈를 태워 무시할 수있는 mA 수를 소비합니다.


라인이 낮게 구동되지 않을 때 풀업 전류가 공칭 전류를 소비하지 않고 라인이 높을 때 풀다운 전류를 낭비하지 않습니까?
John O'M.

일반적으로 풀업 / 다운 저항은 원하는 "기본"신호 (일반적으로 Vin 또는 Gnd)를 달성하기에 충분합니다. 이를 위해 일반적으로 약 10k 정도입니다. 따라서 풀다운 저항이 연결된 상태에서 라인을 HIGH로 구동하면 Vhigh / 10k 앰프 만 낭비됩니다. Vhigh가 5V이면 0.5mA에 해당합니다.
척 9
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.