본문 바로가기

메이커 Maker

아두이노 Minima 6버튼 키보드 회로와 거버파일

반응형

 

항상 최신 버전의 프로그램과 툴을 사용하세요. 쉽게 자신의 성장을 돕는 방법입니다. 메이커 활동을 하든, 코딩 학습을 하시는 분들도 최신 버전의 실습 보드와 프로그램 환경을 구성하시기 바랍니다. 

 

지루하고 심심해서 만들어봤습니다. 버튼은 6개를 가진 아두이노 Minima 쉴드 보드입니다. 

 

아두이노의 최신 버전 Arduino R4 Minima 보드는 HID를 지원합니다. HID(Human Interface Device) 지원 기능이 내장되어 있어 USB Data C-type 케이블을 통해 컴퓨터에 연결하면 마우스나 키보드처럼 동작하는 제품을 개발할 수 있습니다. 이 편리한 기능을 사용하면 키 입력과 마우스 움직임을 컴퓨터로 쉽게 보낼 수 있어 반복작업, 버튼이나 스위치 입력, 마우스 이동이나 드래그와 같은 기능을 쉽게 구현할 수 있습니다.

 

보드의 장점:

 

1. 버튼 6개로 각 버튼의 자동화 코드 실행

2. 리셋 버튼으로 동작 이상시 리셋 실행

3. 키보드 동작시 슬라이드 스위치 ON 상태로 수행

4. 키보드 동작 이상할 경우 OFF 상태로 실행 금지하고 디버깅

 

 

회로도

 

 

 

 

 

PCB 설계 도면

 

 

 

 

3D 도면입니다.

 

 

 

 

거버파일 필요하시면 다운로드 하세요.

 

bu-gbr20240921.zip
0.10MB

 

 

 

버튼 입력 프로그램 코드 예

 

 

#include "Keyboard.h"
#include "Mouse.h"

// set pin numbers for the five buttons:

const int startlow = 8;

const int yellow = 4;

void setup() {  // initialize the buttons' inputs:

  pinMode(startlow, INPUT_PULLUP); //when 2 num pin goes Low, Start!
  pinMode(yellow, INPUT);
  Serial.begin(9600);
  
  // initialize mouse control:
  Mouse.begin();
  Keyboard.begin();

  while (digitalRead(startlow) == HIGH) {  // 8번 핀 LOW 입력받을때 시작 High면 정지상태 유지 - 꼭 필요함
    delay(100);
  }
  Serial.println("operate");
}

void loop() {
  
  while (digitalRead(startlow) == HIGH) {  // 8번 핀 GND 아니면 동작 안하도록, 반드시 추가
    delay(100);
  }

  //Serial.println("start low");

  if (digitalRead(yellow) == HIGH) {

    Serial.println("yellow Button");
    Mouse.click(MOUSE_RIGHT);
    //Mouse.press(MOUSE_RIGHT);
    delay(100);
    //Mouse.release(MOUSE_RIGHT);
    //delay(100);
    Keyboard.write('v');
    delay(600);
    Keyboard.press(KEY_RETURN);
    delay(100);
    Keyboard.releaseAll();
  }
}

 

 

 

반응형

더욱 좋은 정보를 제공하겠습니다.~ ^^