Skip to content

Commit d8bde49

Browse files
Add files via upload
1 parent dc97399 commit d8bde49

File tree

1 file changed

+71
-0
lines changed

1 file changed

+71
-0
lines changed

ArduinoSketch/ArduinoSketch.ino

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
#include <Mouse.h>
2+
#include <Keyboard.h>
3+
4+
unsigned long timer1 = 0;
5+
unsigned long timer2 = 0;
6+
unsigned long timer3 = 0;
7+
unsigned long timer4 = 0;
8+
constexpr double tick64ms = 15.6;
9+
10+
bool isTimerElapsed(unsigned long& timer, unsigned long interval)
11+
{
12+
if (millis() - timer >= interval)
13+
{
14+
timer = millis();
15+
return true;
16+
}
17+
18+
return false;
19+
}
20+
21+
void setup()
22+
{
23+
Mouse.begin();
24+
Keyboard.begin();
25+
Serial.begin(9600);
26+
}
27+
28+
void loop()
29+
{
30+
if (Serial.available() > 0)
31+
{
32+
String message = Serial.readStringUntil('\0');
33+
34+
if (message == "MOUSE_MIDDLE_HOLDED" && isTimerElapsed(timer1, 100))
35+
{
36+
Serial.println("ARDUINO_INITIATED\n");
37+
Mouse.click(MOUSE_LEFT);
38+
}
39+
else if (message == "SPACE_BUTTON_HOLDED")
40+
{
41+
if (isTimerElapsed(timer2, tick64ms * 39))
42+
{
43+
Mouse.move(0, 0, -1);
44+
}
45+
if (isTimerElapsed(timer3, tick64ms * 8))
46+
{
47+
Keyboard.press(KEY_LEFT_CTRL);
48+
Keyboard.release(KEY_LEFT_CTRL);
49+
}
50+
if (isTimerElapsed(timer4, tick64ms * 2))
51+
{
52+
Mouse.move(0, 0, -1);
53+
}
54+
}
55+
else if (message.startsWith("MOUSE_LEFT_HOLDED:"))
56+
{
57+
message = message.substring(18);
58+
int index1 = message.indexOf(',');
59+
int index2 = message.indexOf(',', index1 + 1);
60+
61+
double x = message.substring(0, index1).toDouble();
62+
double y = message.substring(index1 + 1, index2).toDouble();
63+
64+
Mouse.move(x, y);
65+
}
66+
else if (message == "MOUSE_LEFT_CLICK")
67+
{
68+
Mouse.click(MOUSE_LEFT);
69+
}
70+
}
71+
}

0 commit comments

Comments
 (0)