2013-05-24 6 views
2

arduino 기한 보드에 푸시 버튼을 몇 개 사용하고 있지만 올바르게 읽지는 않습니다. 일부 연구를 한 후에 회로에 저항을 연결해야한다는 것을 알았습니다.푸시 버튼을 사용한 Arduino 이유

그러나 데이터 시트에 풀업 레지스터 의 빌드를 사용할 수 있다고 나와 있지만 여전히 작동하지 않는다고합니다. 다음 코드를 사용했습니다.

if (digitalRead(22)) { 
    // do code 
} 

버튼 단순히 연결되어 다음과 같습니다 :

+3.3V -> button -> pin 22 

내가 잘못 무슨 짓을 수있는 버튼을 누를 경우

void setup() { 
    pinMode(22, INPUT); 
    pinMode(23, INPUT); 
    pinMode(24, INPUT); 
    pinMode(25, INPUT); 
    digitalWrite(22, HIGH); // pullup resistors 
    digitalWrite(23, HIGH); // pullup resistors 
    digitalWrite(24, HIGH); // pullup resistors 
    digitalWrite(25, HIGH); // pullup resistors 
} 

는 확인?

답변

4

버튼의 다른 쪽을 3.3V가 아닌 접지에 연결해야합니다. 이미 HIGH (3.3V) 입력을 끌어 왔으므로 정상 상태입니다. 버튼을 누르면 digitalReadLOW을 알려줍니다. 그렇지 않으면 버튼을 눌러도 아무 것도 바뀌지 않으므로 감지 할 수 없습니다.

관련 문제