borrwoed a lot code from https://github.com/foriequal0/devterm_keyboard in order to optimize the trackball

This commit is contained in:
cuu
2021-12-16 20:41:37 +08:00
parent 1a1be01dbb
commit b1370d2124
18 changed files with 538 additions and 118 deletions

View File

@@ -2,6 +2,7 @@
#include "keys.h"
#include "trackball.h"
#include "devterm.h"
#include "tickwaiter.h"
#include <USBComposite.h>
@@ -17,6 +18,8 @@ const uint8_t reportDescription[] = {
HID_MOUSE_REPORT_DESCRIPTOR()
};
static const uint32_t LOOP_INTERVAL_MS = 0;
static TickWaiter<LOOP_INTERVAL_MS> waiter;
void setup() {
USBComposite.setManufacturerString("ClockworkPI");
@@ -29,7 +32,8 @@ void setup() {
dev_term.Consumer = new HIDConsumer(HID);
dev_term.Keyboard->setAdjustForHostCapsLock(false);
dev_term.state = new State();
dev_term.Keyboard_state.layer = 0;
dev_term.Keyboard_state.prev_layer = 0;
@@ -55,8 +59,11 @@ void setup() {
}
void loop() {
dev_term.delta = waiter.waitForNextTick();
dev_term.state->tick(dev_term.delta);
trackball_task(&dev_term);
keys_task(&dev_term); //keys above keyboard
keyboard_task(&dev_term);