EC300 MPG用ArduinoProMicroへ書き込むソースファイル
(2020年3月1日)

コピーしてArduino IDEに貼り付けて下さい。
#include "Keyboard.h"
int TAB = 10;
int SHIFT = 16;
int Cycle_Start = 15;
int STOP = 18;
int Reset = 20;
int Jog_Mode = 14;
int Cycle_Jog_Step = 6;
int Slow_Jog_UP = 5;
int Slow_Jog_DN = 4;
int X_UP = 2;
int X_DN = 19;
int Y_UP = 3;
int Y_DN = 21;
int Z_UP = 0;
int Z_DN = 1;

void setup() {
  Keyboard.begin();
  pinMode(TAB, INPUT_PULLUP);
  pinMode(SHIFT, INPUT_PULLUP);
  pinMode(Cycle_Start, INPUT_PULLUP);
  pinMode(STOP, INPUT_PULLUP);
  pinMode(Reset, INPUT_PULLUP);
  pinMode(Jog_Mode, INPUT_PULLUP);
  pinMode(Cycle_Jog_Step, INPUT_PULLUP);
  pinMode(Slow_Jog_UP, INPUT_PULLUP);
  pinMode(Slow_Jog_DN, INPUT_PULLUP);
  pinMode(X_UP, INPUT_PULLUP);
  pinMode(X_DN, INPUT_PULLUP);
  pinMode(Y_UP, INPUT_PULLUP);
  pinMode(Y_DN, INPUT_PULLUP);
  pinMode(Z_UP, INPUT_PULLUP);
  pinMode(Z_DN, INPUT_PULLUP);
}

void loop() {
  TAB = digitalRead(10);
  SHIFT = digitalRead(16);
  Cycle_Start = digitalRead(15);
  STOP = digitalRead(18);
  Reset = digitalRead(20);
  Jog_Mode = digitalRead(14);
  Cycle_Jog_Step = digitalRead(6);
  Slow_Jog_UP = digitalRead(5);
  Slow_Jog_DN = digitalRead(4);
  X_UP = digitalRead(2);
  X_DN = digitalRead(19);
  Y_UP = digitalRead(3);
  Y_DN = digitalRead(21);
  Z_UP = digitalRead(0);
  Z_DN = digitalRead(1);

  if (TAB == LOW) { // TAB-KEY
    Keyboard.press(KEY_TAB);
    delay(100);
    Keyboard.releaseAll();
    delay(200);
  }
  if (Cycle_Start == LOW) {  // Cycle_Start
    Keyboard.press(KEY_LEFT_ALT);
    Keyboard.press('r');
    delay(100);
    Keyboard.releaseAll();
    delay(100);
  }
  if (Reset == LOW) {  // RESET
    Keyboard.press('[');
    Keyboard.releaseAll();
    delay(200);
  }
  if (Jog_Mode == LOW) {  // Jog_Mode
    Keyboard.press(KEY_LEFT_ALT);
    Keyboard.press('m');
    delay(100);
    Keyboard.releaseAll();
    delay(200);
  }
  if (Cycle_Jog_Step == LOW) {  // Cycle_Jog_Step
    if (SHIFT == LOW) { // Zero_X-axis
      Keyboard.press(KEY_LEFT_ALT);
      Keyboard.press('x');
      delay(100);
      Keyboard.releaseAll();
      delay(200);
    }
    Keyboard.press(KEY_LEFT_ALT);
    Keyboard.press('t');
    delay(100);
    Keyboard.releaseAll();
    delay(200);
  }
  if (Slow_Jog_UP == LOW) {  // Slow_Jog_UP
    if (SHIFT == LOW) { // Zero_Y-axis
      Keyboard.press(KEY_LEFT_ALT);
      Keyboard.press('y');
      delay(100);
      Keyboard.releaseAll();
      delay(200);
    }
    else {
      Keyboard.press(KEY_LEFT_ALT);
      Keyboard.press('u');
      delay(100);
      Keyboard.releaseAll();
      delay(200);
    }
  }
  if (Slow_Jog_DN == LOW) {
    if (SHIFT == LOW) { // Zero_Z-axis
      Keyboard.press(KEY_LEFT_ALT);
      Keyboard.press('z');
      delay(100);
      Keyboard.releaseAll();
      delay(200);
    }
    else {
      Keyboard.press(KEY_LEFT_ALT);
      Keyboard.press('d');
      delay(100);
      Keyboard.releaseAll();
      delay(200);
    }
  }
  if (X_UP == LOW) { // X-axis Right
    Keyboard.press(KEY_RIGHT_ARROW);
    delay(300);//delay
    Keyboard.release(KEY_RIGHT_ARROW);
    delay(1);
  }
  if (X_DN == LOW) { // X-axis Left300
    Keyboard.press(KEY_LEFT_ARROW);
    delay(300);//delay
    Keyboard.release(KEY_LEFT_ARROW);
    delay(1);
  }
  if (Y_UP == LOW) { // Y-axis Forward
    Keyboard.press(KEY_UP_ARROW);
    delay(300);//delay
    Keyboard.release(KEY_UP_ARROW);
    delay(1);
  }
  if (Y_DN == LOW) { // Y-axis BackForward
    Keyboard.press(KEY_DOWN_ARROW);
    delay(300);//delay
    Keyboard.release(KEY_DOWN_ARROW);
    delay(1);
  }
  if (Z_UP == LOW) { // Z-axis UP
    Keyboard.press(KEY_PAGE_UP);
    delay(300);//delay
    Keyboard.release(KEY_PAGE_UP);
    delay(1);
  }
  if (Z_DN == LOW) { // Z-axis Down
    Keyboard.press(KEY_PAGE_DOWN);
    delay(300);
    Keyboard.releaseAll();
    delay(1);
  }
  if (STOP == LOW) { // STOP/ Goto Zero
    if (SHIFT == LOW) { // Goto Zero
      Keyboard.press(KEY_LEFT_CTRL);
      Keyboard.press(KEY_LEFT_ALT);
    }
    else { // STOP
      Keyboard.press(KEY_LEFT_ALT);
    }
    Keyboard.press('s');
    delay(100);
    Keyboard.releaseAll();
    delay(200);
  }
}

元のページヘ戻る