반응형
○ 아두이노와 4x4 KeyPad로 시리얼 입력 해보기
키패드를 이용해서 아두이노 제어를 해보았습니다.
1. 1초간 아두이노 깜빡이기
○ 사용 부품
○ 회로 연결
○ 적용 코드
#include <Keypad.h>
//https://playground.arduino.cc/Code/Keypad/ 에서 다운로드
const byte ROWS = 4;
const byte COLS = 4;
char hexaKeys[ROWS][COLS] = {
{'0','1','2','3'},
{'4','5','6','7'},
{'8','9','a','b'},
{'c','d','e','f'}
};
byte rowPins[ROWS] = { 6, 7, 8, 9 };
byte colPins[COLS] = {10, 11, 12, 13};
char customKey;
Keypad customKeypad = Keypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS);
void setup(){
Serial.begin(9600);
}
void keyPress();
void loop(){
keyPress();
}
void keyPress(){ // 키 입력 함수
customKey = customKeypad.getKey();
if(customKey){ //키 입력 신호가 있을때만 작동
Serial.println(customKey);
delay(100);
}
}
위 Key Pad 라이브러리는
기본적으로 setDebounceTime은 50ms
HoldTime 은 1000ms으로 설정되어 있습니다.
바꾸고 싶으시다면, keypad.setDebounceTime(unsgined int 시간)으로 바꾸시면 됩니다~!
○ 키패드
키패드는 4개의 입력선, 4개의 출력선이 스위치를 통해 연결되어 있다.
아두이노에서 각각의 입력선으로 신호를 보내면 연결된 출력선으로 입력한 신호를 돌려받게 됩니다!
○ 키패드를 활용해서 다양한 활용이 가능할 것 같네요 ^^
반응형
'메이커 이야기 > 아두이노' 카테고리의 다른 글
[수위 측정] 아두이노 수위센서 사용방법 (0) | 2020.02.05 |
---|---|
[아두이노 랜덤] 완벽한 랜덤 값 생성 (2) | 2020.02.05 |
[아두이노 LCD 타이머] 아두이노 LCD 화면 제어 _ EP5 (23) | 2020.02.04 |
[아두이노 가변저항] 아두이노 가변저항으로 LED 컨트롤_EP4 (0) | 2020.02.02 |
[아두이노 RGB] 아두이노 Color 컨트롤러 만들기_EP3 (0) | 2020.02.02 |