반응형
현재까지 구현한 코드
#include "Keyboard.h"
#include "Mouse.h"
// set pin numbers for the five buttons:
// https://fishpoint.tistory.com/9357
// https://creatorjoseph.com/268
// https://docs.arduino.cc/language-reference/en/functions/usb/Keyboard/keyboardModifiers/
const int startlow = 12;
const int yellow = 3; //SW1
const int blue = 4; //SW2
const int green = 11; //SW3
const int red = A3; //SW1
const int black = A2; //SW1
const int white = A1; //SW1
void setup() { // initialize the buttons' inputs:
pinMode(startlow, INPUT); //when 12 num pin goes Low, Start!
pinMode(yellow, INPUT);
pinMode(blue, INPUT);
pinMode(green, INPUT);
pinMode(red, INPUT);
pinMode(black, INPUT);
pinMode(white, INPUT);
Serial.begin(9600);
// initialize mouse control:
Mouse.begin();
Keyboard.begin();
while (digitalRead(startlow) == HIGH) { // 12번 핀 LOW 입력받을때 시작 High면 정지상태 유지 - 꼭 필요함
delay(100);
}
Serial.println("Auto Keyboard Start");
}
void loop() {
while (digitalRead(startlow) == HIGH) { // 12번 핀 GND 아니면 동작 안하도록, 반드시 추가
delay(100);
}
//Serial.println("start low");
if (digitalRead(yellow) == LOW){ //마우스 우클릭 이미지 다른 이름으로 저장 끝
Serial.println("yellow Button");
Mouse.click(MOUSE_RIGHT);
delay(100);
Keyboard.write('v');
delay(600);
Keyboard.press(KEY_LEFT_ALT); // 오른쪽 ALT키를 길게 누릅니다.
delay(200);
Keyboard.press('s'); // s 누르기
//delay(200);
Keyboard.releaseAll(); // 둘 다 놓기
//delay(100);
//Keyboard.releaseAll();
Serial.println("operate yellow end");
}
if (digitalRead(blue) == LOW){ // 한글 드래그 한것 지우고 ctrl-enter, delete, 개요 1적용, 엔터 2번
Serial.println("blue Button");
Keyboard.press(KEY_LEFT_CTRL); //왼쪽 컨트롤 키
Keyboard.press(KEY_RETURN);
delay(100);
Keyboard.releaseAll();
Keyboard.write(KEY_DELETE);
//delay(500);
Keyboard.press(KEY_LEFT_CTRL); //
Keyboard.press(51);
Keyboard.releaseAll();
Keyboard.press(KEY_LEFT_CTRL); //
Keyboard.press(51);
Keyboard.releaseAll();
delay(100);
Keyboard.write(KEY_KP_1); //숫자 키패드 1 - END 줄 끝으로 간다
Keyboard.write(KEY_RETURN);
delay(200);
Keyboard.write(KEY_RETURN);
Keyboard.releaseAll();
Serial.println("operate blue end");
}
if (digitalRead(green) == LOW) // 백스페이스 지우기 세 번
{
Serial.println("green Button");
Keyboard.write(KEY_BACKSPACE);
delay(200);
Keyboard.write(KEY_BACKSPACE);
delay(200);
Keyboard.write(KEY_BACKSPACE);
//delay(500);
Serial.println("operate green end");
}
if (digitalRead(red) == LOW) // 백스페이스 문자 하나를 지우고 클립보드 내용을 복사 - HTML 코드 수정에 이용
{
Serial.println("red Button");
Keyboard.write(KEY_BACKSPACE);
delay(200);
Keyboard.press(KEY_LEFT_CTRL); // ctrl-v 붙여넣기 과정
Keyboard.write('v');
delay(200);
Keyboard.releaseAll();
Serial.println("operate red end");
}
if (digitalRead(black) == LOW) //구현 예정
{
Serial.println("black Button");
delay(500);
Serial.println("operate black end");
}
if (digitalRead(white) == LOW) // 구현 예정
{
Serial.println("white Button");
delay(500);
Serial.println("operate white end");
}
}
반응형
'아두이노우노 R4' 카테고리의 다른 글
우노 R4로 키보드로 업무를 자동화 버튼 (1) | 2024.12.15 |
---|---|
DS18B20 온도센서 식별 번호 관리 방법 (1) | 2024.12.14 |
Adafruit CH552 QT Py (2) | 2024.12.08 |
Adafruit CH552 QT Py 아두이노 환경 설정 (1) | 2024.12.08 |
DF Player Mini를 사용한 Arduino와 함께 오디오 플레이어 프로젝트 (0) | 2024.11.20 |
Bluetooth HM-10 BLE module 서로 통신하는 방법 (0) | 2024.11.12 |
DIY 홈보안 시스템 Arduino Uno R4 Wi-Fi키패드 LCD 디스플레이 (2) | 2024.11.02 |
아두이노 OLED 메뉴 디스플레이 (2) | 2024.11.01 |
더욱 좋은 정보를 제공하겠습니다.~ ^^