SPST 스위치를 디지털 입력으로 사용합니까?


10

저는 "전기 공학"을 처음 접했고 작은 arduino 프로젝트를 진행하고 있습니다. SPST 스위치를 보드의 디지털 입력으로 사용하고 싶습니다.

스위치 리드 중 하나가 양극에 연결되고 다른 하나는 디지털 입력에 연결되어 있습니다. 이것의 문제는 스위치를 끌 때 입력이 접지되는 것을 확신 할 수 없다는 것입니다. 스위치가 꺼져있을 때 입력이 접지되도록하려면 어떻게해야합니까?

디지털 입력을 접지에 연결된 저항에 연결하면 작동합니까? 스위치가 꺼져있을 때 접지되지만 스위치가 켜져 있으면 단락되지 않습니다. 작동합니까?

답변:


9

가장 일반적인 해결책은 스위치의 한쪽을 접지에 연결하는 것입니다. 다른 하나를 디지털 입력에 연결하고 양극 공급 장치로가는 1 ~ 10K 옴의 저항에 연결하십시오.

브루노가 묘사 한 풀다운 저항으로 다른 방법으로 갈 수는 있지만 덜 선호됩니다. 많은 입력은 이미 어느 정도 암시 적 풀업을 가지고 있으며 연결되지 않은 경우 '1'을 읽습니다. 그러나 스위치가 이미 포지티브 레일에 연결되어 있다면 풀다운은 괜찮은 해결책이지만 로직 입력을 포지티브 레일에 연결할 때 작은 저항을 사용하는 것이 좋습니다.

많은 마이크로 컨트롤러에는 GPIO 핀에 내부 풀업 및 / 또는 풀다운 저항이있어 구성 레지스터에 쓸 수 있습니다. 이러한 마이크로 컨트롤러의 입력을 구동하는 경우 모든 마이크로 컨트롤러에 이러한 기능이있는 것은 아니지만 외부 풀업 / 다운 저항이 전혀 필요하지 않을 수 있습니다.


4
또한 풀업 또는 풀다운이 내장 된 uC를 사용하는 경우 알려진 상태를 유지하는 데 사용되지 않는 핀에서 활성화하는 것이 좋습니다.
매트 영

내 프로젝트가 스위치를 접지에 연결하는 것이 실제로 더 쉽습니다. 풀업 저항을 사용하겠습니다. 감사!
스폰지 밥

2
큰! "스위치 바운스"에 대해 문의하고 싶을 때 다시
방문해주세요.

Arduino가 풀업을 자동으로 수행합니다. 어떻게 해야할지 모르겠지만 코드에는 디지털 "INPUT_PULLUP"이 있으며 저항이 필요하지 않습니다. 그것은 쉽다. 또한 스위치 바운스에 대해 직렬 출력을 모니터링 할 때 알았습니다. 그래서 코드에 3ms 지연을 추가했습니다. 가게에 또 다른 여행을 구했다. :)
스폰지 밥

ATMEGA 데이터 시트를 살펴보면 풀업을 활성화하기 위해 구성 레지스터에 쓸 수있는 비트가 있음을 알 수 있습니다. Arduino 라이브러리는 더 편리하게 만듭니다. 바운스의 경우 잠시 동안 (그) 입력을 무시하는 것이 일반적인 과정이지만 3ms는 약간 짧을 수 있습니다. 지연이 전체 시스템을 차단하는 경우 의도적 인 재 활성화가 여전히 느리기 때문에 입력을 무시할 수있는 것보다 입력을 무시하는 경우 짧게 유지해야 할 수도 있습니다.
Chris Stratton

9

예, 설명대로 작동합니다. 접점이 열릴 때 디지털 입력이 논리 상태 0 (낮음)이되도록하기 때문에 풀다운 저항이라고합니다. 일반적으로이 목적으로 10KΩ 저항을 사용할 수 있습니다.


2

그러면 작동하고 스위치가 닫힐 때 높은 수준 (논리 "1")이됩니다.

그러나 Chris가 말한 것처럼 반전 된 것이 더 일반적입니다. 접지에 연결된 스위치와 전원 공급 장치에 대한 풀업 저항 대신 풀업 저항입니다. 논리가 반전됩니다. 논리 "1"은 열린 스위치에 해당합니다.

풀업 버전의 좋은 이유는 대부분의 마이크로 컨트롤러에 통합되어 있으며 필요에 따라 활성화 / 비활성화 할 수 있기 때문입니다. 일부 마이크로 컨트롤러에는 구성 가능한 풀다운도 있지만 일반적이지 않습니다.

외부 풀업을 원한다면 10 kΩ이 좋은 값일 수 있습니다. 마이크로 컨트롤러의 입력은 최대 1µA의 누설 전류를 가질 수 있으며 10kΩ은 무시할 수있는 10mV를 떨어 뜨립니다. 값이 낮을수록 가능하지만 스위치를 닫을 때 접지에 더 큰 전류가 흐릅니다. 1kΩ 저항은 5V 전원에서 5mA를 소비하므로 실제로 전력 낭비입니다. 10kΩ의 경우 500µA에 불과합니다. 초 저전력 애플리케이션의 경우 값을 100kΩ으로 늘릴 수 있지만 누설 전류를 기억하십시오. 1µA는 100mV 드롭을 제공합니다!

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