From 5f5eac1176eedfb37552fc2bd1435a78382f94d1 Mon Sep 17 00:00:00 2001 From: jesse Date: Wed, 20 Nov 2013 16:20:28 +0800 Subject: [PATCH] astyle and new astyle make target --- ArduinoKeyboard.h | 10 +- ArduinoKeyboard.ino | 509 +++++++++++++++++++++++--------------------- Makefile | 5 +- 3 files changed, 271 insertions(+), 253 deletions(-) diff --git a/ArduinoKeyboard.h b/ArduinoKeyboard.h index aa006a4f..cc13819b 100644 --- a/ArduinoKeyboard.h +++ b/ArduinoKeyboard.h @@ -8,8 +8,8 @@ #ifdef __cplusplus extern "C" { #endif -void loop(); -void setup(); + void loop(); + void setup(); #ifdef __cplusplus } // extern "C" #endif @@ -17,8 +17,8 @@ void setup(); //add your function definitions for the project KeyboardIO here typedef struct { - byte flags; - byte rawKey; + byte flags; + byte rawKey; } Key; #define KEY_FLAGS B00000000 @@ -57,7 +57,7 @@ typedef struct { #define mouseUpR (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_UP | MOUSE_R } #define mouseL (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_L } #define mouseR (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_R } -#define mouseDnL (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_DN | MOUSE_L } +#define mouseDnL (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_DN | MOUSE_L } #define mouseDn (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_DN } #define mouseDnR (Key){ KEY_FLAGS|MOUSE_KEY, MOUSE_DN | MOUSE_R } #define mouseScrollUp diff --git a/ArduinoKeyboard.ino b/ArduinoKeyboard.ino index 8654aa6a..affbadf2 100644 --- a/ArduinoKeyboard.ino +++ b/ArduinoKeyboard.ino @@ -1,6 +1,5 @@ // Do not remove the include below #include "ArduinoKeyboard.h" - // Copyright 2013 Jesse Vincent // All Rights Reserved. (To be licensed under an opensource license // before the release of the keyboard.io model 01 @@ -51,327 +50,343 @@ float carriedOverY =0; static const Key keymaps[LAYERS][ROWS][COLS] = { - { - { NoKey, Key_1, Key_2, Key_3, Key_4, Key_5, NoKey, NoKey, Key_6, Key_7, Key_8, Key_9, Key_0, NoKey }, - { Key_Backtick, Key_Q, Key_W, Key_E, Key_R, Key_T, NoKey, NoKey, Key_Y, Key_U, Key_I, Key_O, Key_P, Key_Equals}, - { Key_PageUp, Key_A, Key_S, Key_D, Key_F, Key_G, Key_Tab, Key_Return, Key_H, Key_J, Key_K, Key_L, Key_Semicolon, Key_Quote }, - { Key_PageDn, Key_Z, Key_X, Key_C, Key_V, Key_B, Key_Esc, Key_Return, Key_N, Key_M, Key_Comma, Key_Period, Key_Slash, Key_Minus}, - { Key_LGUI, Key_Backspace, Key_LShift, Key_LCtrl, NextKeymap, NoKey, NoKey, NoKey, NoKey, NextKeymap, Key_RCtrl, Key_RShift, Key_Space, Key_RAlt } - }, - { - { NoKey, Key_1, Key_2, Key_3, Key_4, Key_5, NoKey, NoKey, Key_6, Key_7, Key_8, Key_9, Key_0, NoKey }, - { Key_Backtick, Key_Q, mouseBtnL, mouseBtnM, mouseBtnR, Key_T, NoKey, NoKey, Key_LCurlyBracket, Key_RCurlyBracket, Key_LSquareBracket, Key_RSquareBracket, Key_P, Key_Equals}, - { Key_PageUp, mouseL, mouseUp, mouseDn, mouseR, Key_G, Key_Tab, Key_Return, Key_LArrow, Key_DnArrow, Key_UpArrow, Key_RArrow, Key_Semicolon, Key_Quote}, - { Key_PageDn, Key_Z, mouseBtnL, mouseBtnM, mouseBtnR, Key_B, Key_Esc, Key_Return, Key_Pipe, Key_M, Key_Comma, Key_Period, Key_Backslash, Key_Minus}, - { Key_LGUI, Key_Backspace, Key_LShift, Key_LCtrl, NextKeymap, NoKey, NoKey, NoKey, NoKey, NextKeymap, Key_RCtrl, Key_RShift, Key_Space, Key_RAlt } - } + { + { NoKey, Key_1, Key_2, Key_3, Key_4, Key_5, NoKey, NoKey, Key_6, Key_7, Key_8, Key_9, Key_0, NoKey }, + { Key_Backtick, Key_Q, Key_W, Key_E, Key_R, Key_T, NoKey, NoKey, Key_Y, Key_U, Key_I, Key_O, Key_P, Key_Equals}, + { Key_PageUp, Key_A, Key_S, Key_D, Key_F, Key_G, Key_Tab, Key_Return, Key_H, Key_J, Key_K, Key_L, Key_Semicolon, Key_Quote }, + { Key_PageDn, Key_Z, Key_X, Key_C, Key_V, Key_B, Key_Esc, Key_Return, Key_N, Key_M, Key_Comma, Key_Period, Key_Slash, Key_Minus}, + { Key_LGUI, Key_Backspace, Key_LShift, Key_LCtrl, NextKeymap, NoKey, NoKey, NoKey, NoKey, NextKeymap, Key_RCtrl, Key_RShift, Key_Space, Key_RAlt } + }, + { + { NoKey, Key_1, Key_2, Key_3, Key_4, Key_5, NoKey, NoKey, Key_6, Key_7, Key_8, Key_9, Key_0, NoKey }, + { Key_Backtick, Key_Q, mouseBtnL, mouseBtnM, mouseBtnR, Key_T, NoKey, NoKey, Key_LCurlyBracket, Key_RCurlyBracket, Key_LSquareBracket, Key_RSquareBracket, Key_P, Key_Equals}, + { Key_PageUp, mouseL, mouseUp, mouseDn, mouseR, Key_G, Key_Tab, Key_Return, Key_LArrow, Key_DnArrow, Key_UpArrow, Key_RArrow, Key_Semicolon, Key_Quote}, + { Key_PageDn, Key_Z, mouseBtnL, mouseBtnM, mouseBtnR, Key_B, Key_Esc, Key_Return, Key_Pipe, Key_M, Key_Comma, Key_Period, Key_Backslash, Key_Minus}, + { Key_LGUI, Key_Backspace, Key_LShift, Key_LCtrl, NextKeymap, NoKey, NoKey, NoKey, NoKey, NextKeymap, Key_RCtrl, Key_RShift, Key_Space, Key_RAlt } + } }; -void release_keys_not_being_pressed() { +void release_keys_not_being_pressed() +{ - // we use charsReportedLastTime to figure out what we might not be holding anymore and can now release. this is destructive to charsReportedLastTime + // we use charsReportedLastTime to figure out what we might not be holding anymore and can now release. this is destructive to charsReportedLastTime - for (int i=0; i> 4)) ^ B00001111 ) { - return false; - } - else { - return true; - } +boolean key_was_pressed (byte keyState) +{ + if ( byte((keyState >> 4)) ^ B00001111 ) { + return false; + } else { + return true; + } } -boolean key_was_not_pressed (byte keyState) { - if ( byte((keyState >> 4)) ^ B00000000 ) { - return false; - } - else { - return true; - } +boolean key_was_not_pressed (byte keyState) +{ + if ( byte((keyState >> 4)) ^ B00000000 ) { + return false; + } else { + return true; + } } -boolean key_is_pressed (byte keyState) { +boolean key_is_pressed (byte keyState) +{ - if ( byte((keyState << 4)) ^ B11110000 ) { - return false; - } - else { - return true; - } + if ( byte((keyState << 4)) ^ B11110000 ) { + return false; + } else { + return true; + } } -boolean key_is_not_pressed (byte keyState) { - - if ( byte((keyState << 4)) ^ B00000000 ) { - return false; - } - else { - return true; - } +boolean key_is_not_pressed (byte keyState) +{ + + if ( byte((keyState << 4)) ^ B00000000 ) { + return false; + } else { + return true; + } } -boolean key_toggled_on(byte keyState) { - if (key_is_pressed(keyState) && key_was_not_pressed(keyState)) { - return true; - } - else { - return false; - } +boolean key_toggled_on(byte keyState) +{ + if (key_is_pressed(keyState) && key_was_not_pressed(keyState)) { + return true; + } else { + return false; + } } -boolean key_toggled_off(byte keyState) { - if (key_was_pressed(keyState) && key_is_not_pressed(keyState)) { - return true; - } - else { - return false; - } +boolean key_toggled_off(byte keyState) +{ + if (key_was_pressed(keyState) && key_is_not_pressed(keyState)) { + return true; + } else { + return false; + } } -void reset_matrix() { - for (int col = 0; col < COLS; col++) { - for (int row = 0; row < ROWS; row++) { - matrixState[row][col] <<= 1; +void reset_matrix() +{ + for (int col = 0; col < COLS; col++) { + for (int row = 0; row < ROWS; row++) { + matrixState[row][col] <<= 1; + } + } + for (int i=0; i0) { - moveX = (x*accel) + carriedOverX; - carriedOverX = moveX - floor(moveX); - } - else if(x<0) { - moveX = (x*accel) - carriedOverX; - carriedOverX = ceil(moveX) - moveX; } + if (mouseActiveThisCycle) { + mouseActiveForCycles++; + double accel = (double) mouse_accel(mouseActiveForCycles); + float moveX=0; + float moveY=0; + if (x>0) { + moveX = (x*accel) + carriedOverX; + carriedOverX = moveX - floor(moveX); + } else if(x<0) { + moveX = (x*accel) - carriedOverX; + carriedOverX = ceil(moveX) - moveX; + } - if (y >0) { - moveY = (y*accel) + carriedOverY; - carriedOverY = moveY - floor(moveY); - } else if (y<0) { - moveY = (y*accel) - carriedOverY; - carriedOverY = ceil(moveY) - moveY; + if (y >0) { + moveY = (y*accel) + carriedOverY; + carriedOverY = moveY - floor(moveY); + } else if (y<0) { + moveY = (y*accel) - carriedOverY; + carriedOverY = ceil(moveY) - moveY; + } + Serial.println(); + Serial.print("cycles: "); + Serial.println(mouseActiveForCycles); + Serial.print("Accel: "); + Serial.print(accel); + Serial.print(" moveX is "); + Serial.print(moveX); + Serial.print(" moveY is "); + Serial.print(moveY); + Serial.print(" carriedoverx is "); + Serial.print(carriedOverX); + Serial.print(" carriedOverY is "); + Serial.println(carriedOverY); + Mouse.move(moveX,moveY, 0); + } else { + mouseActiveForCycles=0; } - Serial.println(); - Serial.print("cycles: "); - Serial.println(mouseActiveForCycles); - Serial.print("Accel: "); - Serial.print(accel); Serial.print(" moveX is "); Serial.print(moveX); Serial.print(" moveY is "); Serial.print(moveY); Serial.print(" carriedoverx is "); Serial.print(carriedOverX); Serial.print(" carriedOverY is "); Serial.println(carriedOverY); - Mouse.move(moveX,moveY, 0); - } else { - mouseActiveForCycles=0; - } - release_keys_not_being_pressed(); + release_keys_not_being_pressed(); } -void setup_matrix() { - //set up the row pins as outputs - for (int row = 0; row < ROWS; row++) { - pinMode(rowPins[row], OUTPUT); - digitalWrite(rowPins[row], HIGH); - } +void setup_matrix() +{ + //set up the row pins as outputs + for (int row = 0; row < ROWS; row++) { + pinMode(rowPins[row], OUTPUT); + digitalWrite(rowPins[row], HIGH); + } - for (int col = 0; col < COLS; col++) { - pinMode(colPins[col], INPUT); - digitalWrite(colPins[col], HIGH); - //drive em high by default s it seems to be more reliable than driving em low + for (int col = 0; col < COLS; col++) { + pinMode(colPins[col], INPUT); + digitalWrite(colPins[col], HIGH); + //drive em high by default s it seems to be more reliable than driving em low - } - //blank out the matrix. - for (int col = 0; col < COLS; col++) { - for (int row = 0; row < ROWS; row++) { - matrixState[row][col] = 0; } - } + //blank out the matrix. + for (int col = 0; col < COLS; col++) { + for (int row = 0; row < ROWS; row++) { + matrixState[row][col] = 0; + } + } } -void scan_matrix() { +void scan_matrix() +{ - int active_layer = current_layer; + int active_layer = current_layer; - //scan the Keyboard matrix looking for connections - for (int row = 0; row < ROWS; row++) { - digitalWrite(rowPins[row], LOW); - for (int col = 0; col < COLS; col++) { - //If we see an electrical connection on I->J, + //scan the Keyboard matrix looking for connections + for (int row = 0; row < ROWS; row++) { + digitalWrite(rowPins[row], LOW); + for (int col = 0; col < COLS; col++) { + //If we see an electrical connection on I->J, - if (digitalRead(colPins[col])) { - matrixState[row][col] |= 0; // noop. just here for clarity - } - else { - matrixState[row][col] |= 1; // noop. just here for clarity - } - // while we're inspecting the electrical matrix, we look - // to see if the Key being held is a firmware level - // metakey, so we can act on it, lest we only discover - // that we should be looking at a seconary Keymap halfway through the matrix scan + if (digitalRead(colPins[col])) { + matrixState[row][col] |= 0; // noop. just here for clarity + } else { + matrixState[row][col] |= 1; // noop. just here for clarity + } + // while we're inspecting the electrical matrix, we look + // to see if the Key being held is a firmware level + // metakey, so we can act on it, lest we only discover + // that we should be looking at a seconary Keymap halfway through the matrix scan - if (! (keymaps[active_layer][row][col].flags ^ ( MOMENTARY | SWITCH_TO_LAYER))) { // this logic sucks. there is a better way TODO this + if (! (keymaps[active_layer][row][col].flags ^ ( MOMENTARY | SWITCH_TO_LAYER))) { // this logic sucks. there is a better way TODO this - if (key_is_pressed(matrixState[row][col])) { - active_layer = keymaps[current_layer][row][col].rawKey; + if (key_is_pressed(matrixState[row][col])) { + active_layer = keymaps[current_layer][row][col].rawKey; + } + } } - } + digitalWrite(rowPins[row], HIGH); } - digitalWrite(rowPins[row], HIGH); - } - send_key_events(active_layer); + send_key_events(active_layer); } -void report_matrix() { - if (reporting_counter++ %100 == 0 ) { - for (int row = 0; row < ROWS; row++) { - for (int col = 0; col < COLS; col++) { - Serial.print(matrixState[row][col],HEX); - Serial.print(", "); +void report_matrix() +{ + if (reporting_counter++ %100 == 0 ) { + for (int row = 0; row < ROWS; row++) { + for (int col = 0; col < COLS; col++) { + Serial.print(matrixState[row][col],HEX); + Serial.print(", "); - } - Serial.println(""); + } + Serial.println(""); + } + Serial.println(""); } - Serial.println(""); - } } -void report(int row, int col, boolean value) { - Serial.print("Detected a change on "); - Serial.print(col); - Serial.print(" "); - Serial.print(row); - Serial.print(" to "); - Serial.print(value); - Serial.println("."); +void report(int row, int col, boolean value) +{ + Serial.print("Detected a change on "); + Serial.print(col); + Serial.print(" "); + Serial.print(row); + Serial.print(" to "); + Serial.print(value); + Serial.println("."); } -void setup() { - Keyboard.begin(); - Mouse.begin(); - Serial.begin(115200); - setup_matrix(); +void setup() +{ + Keyboard.begin(); + Mouse.begin(); + Serial.begin(115200); + setup_matrix(); } -void loop() { - scan_matrix(); - // report_matrix(); - reset_matrix(); +void loop() +{ + scan_matrix(); + // report_matrix(); + reset_matrix(); } diff --git a/Makefile b/Makefile index 77eb09dd..280ff2ed 100644 --- a/Makefile +++ b/Makefile @@ -1,7 +1,10 @@ # Arduino Make file. Refer to https://github.com/sudar/Arduino-Makefile BOARD_TAG = micro -MONITOR_PORT = /dev/ttyACM0 +MONITOR_PORT = /dev/ttyACM* ARDUINO_LIBS = include build/arduino-mk/Arduino.mk + +astyle: + astyle --style=linux ArduinoKeyboard.ino ArduinoKeyboard.h