아두이노:아케이드 버튼 입력
보이기
아두이노 관련 정보를 모으기 위한 틀. 틀:아두이노
- 아두이노:개요
- 아두이노:하드웨어
- 아두이노:코드
- 아두이노:핀 사용
- 아두이노:시리얼 통신
- 아두이노:편의함수
- 센서 사용
- 아두이노:LCD 사용
- 아두이노:스위치 사용
- 아두이노:릴레이
- 통신 관련, 정보 교환
- 아두이노:해결되지 않은 다양한 의문들
- 수업용 간단 실습
- 아두이노 모터 출력
- 키 조작
- 미완문서
- 아두이노:스테핑 모터(미완)
- 분류:아두이노 프로젝트
아케이드 버튼 입력을 아두이노에서 받아들이는 방법.
| 단자 | 묘사 | 비고 |
|---|---|---|
| LED + | H52 라는 글씨가 바르게 보이는 상황에서.
왼쪽 위 |
5V, 3.3V 둘 다 사용 가능한데 5V가 밝지.
+단자를 아두이로 제어하면 적당히 밝기 조작도 가능할 듯. |
| LED - | 오른쪽 위 | 여기 GND와 연결. |
| NO | Normally Open | 여기 GND와 연결해도 되고, 여길 아두이노와 엮고 COM을 GND와 연결해도 되고.
어딘지 모르겠으면 그냥 둘 중 하나 아무거나 GND 넣으면 됨. 어차피 누를 때 회선이 이어지니까. |
| COM | Common | 보통 아두이노 핀에 연결. |
const int BUTTON_PIN = 2;
int lastState = HIGH;
void setup() {
pinMode(BUTTON_PIN, INPUT_PULLUP);
Serial.begin(9600);
}
void loop() {
int currentState = digitalRead(BUTTON_PIN);
if (currentState != lastState) {
if (currentState == LOW) {
Serial.println("버튼 눌림");
} else {
Serial.println("버튼 뗌");
}
lastState = currentState;
}
delay(10);
}
const int BUTTON_PIN = 2;
const int LED_PIN = 9;
int lastButtonState = HIGH;
int brightness = 255;
void setup() {
pinMode(BUTTON_PIN, INPUT_PULLUP);
pinMode(LED_PIN, OUTPUT);
analogWrite(LED_PIN, brightness);
Serial.begin(9600);
}
void loop() {
int buttonState = digitalRead(BUTTON_PIN);
analogWrite(LED_PIN, brightness);
// 버튼을 누르는 순간
if (buttonState == LOW && lastButtonState == HIGH) {
Serial.println("버튼 눌림");
brightness = 255;
}
// 버튼을 떼는 순간
if (buttonState == HIGH && lastButtonState == LOW) {
Serial.println("버튼 뗌 - LED 밝기 감소");
}
if (brightness > 0) {
brightness -= 1;
}
lastButtonState = buttonState;
delay(10);
}