aboutsummaryrefslogtreecommitdiff
path: root/keyboard/mbed_onekey
diff options
context:
space:
mode:
Diffstat (limited to 'keyboard/mbed_onekey')
-rw-r--r--keyboard/mbed_onekey/Makefile33
-rw-r--r--keyboard/mbed_onekey/config.h7
-rw-r--r--keyboard/mbed_onekey/main.cpp33
3 files changed, 73 insertions, 0 deletions
diff --git a/keyboard/mbed_onekey/Makefile b/keyboard/mbed_onekey/Makefile
new file mode 100644
index 000000000..b1e5f5e59
--- /dev/null
+++ b/keyboard/mbed_onekey/Makefile
@@ -0,0 +1,33 @@
1PROJECT = mbed_onekey
2
3TMK_DIR = ../..
4MBED_DIR = $(TMK_DIR)/mbed-sdk
5
6#VPATH += $(MBED_DIR):$(TMK_DIR)
7vpath %.s .:$(MBED_DIR):$(TMK_DIR)
8vpath %.c .:$(MBED_DIR):$(TMK_DIR)
9vpath %.cpp .:$(MBED_DIR):$(TMK_DIR)
10
11OBJDIR = ./build
12
13OBJECTS = \
14 $(OBJDIR)/./main.o
15
16CONFIG_H = config.h
17
18SYS_OBJECTS =
19
20INCLUDE_PATHS = -I.
21
22LIBRARY_PATHS =
23LIBRARIES =
24
25# Build Options
26# Comment out to disable
27#BOOTMAGIC_ENABLE = yes
28#MOUSEKEY_ENABLE = yes
29
30
31include $(TMK_DIR)/tool/mbed/mbed.mk
32include $(TMK_DIR)/tool/mbed/common.mk
33include $(TMK_DIR)/tool/mbed/gcc.mk
diff --git a/keyboard/mbed_onekey/config.h b/keyboard/mbed_onekey/config.h
new file mode 100644
index 000000000..a3aadd038
--- /dev/null
+++ b/keyboard/mbed_onekey/config.h
@@ -0,0 +1,7 @@
1#ifndef CONFIG_H
2#define CONFIG_H
3
4#define MATRIX_ROWS 1
5#define MATRIX_COLS 1
6
7#endif
diff --git a/keyboard/mbed_onekey/main.cpp b/keyboard/mbed_onekey/main.cpp
new file mode 100644
index 000000000..71342e7ec
--- /dev/null
+++ b/keyboard/mbed_onekey/main.cpp
@@ -0,0 +1,33 @@
1#include "mbed.h"
2#include "action.h"
3#include "keycode.h"
4#include "host.h"
5#include "mbed_driver.h"
6
7
8// Button and LEDs of LPC11U35 board
9DigitalIn isp(P0_1); // ISP button
10DigitalOut led_red(P0_20);
11DigitalOut led_green(P0_21);
12
13
14int main(void) {
15 isp.mode(PullUp);
16 led_red = 1;
17 led_green = 0;
18
19 host_set_driver(&mbed_driver);
20
21 bool last_isp = isp;
22 while (1) {
23 if (last_isp == isp) continue;
24 last_isp = isp;
25 if (last_isp == 0) {
26 led_red = 0; // on
27 register_code(KC_A);
28 } else {
29 led_red = 1; // off
30 unregister_code(KC_A);
31 }
32 }
33}