From eda077d49f24487955a62ec96764dd1eb1b89718 Mon Sep 17 00:00:00 2001 From: DAProgs Date: Wed, 14 Jan 2026 14:19:14 -0500 Subject: [PATCH] Upload files to "libraries/ArduinoJoystickLibrary/examples/JoystickButton" --- .../JoystickButton/JoystickButton.ino | 50 +++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 libraries/ArduinoJoystickLibrary/examples/JoystickButton/JoystickButton.ino diff --git a/libraries/ArduinoJoystickLibrary/examples/JoystickButton/JoystickButton.ino b/libraries/ArduinoJoystickLibrary/examples/JoystickButton/JoystickButton.ino new file mode 100644 index 0000000..c6bc79e --- /dev/null +++ b/libraries/ArduinoJoystickLibrary/examples/JoystickButton/JoystickButton.ino @@ -0,0 +1,50 @@ +// Simple example application that shows how to read four Arduino +// digital pins and map them to the USB Joystick library. +// +// Ground digital pins 9, 10, 11, and 12 to press the joystick +// buttons 0, 1, 2, and 3. +// +// NOTE: This sketch file is for use with Arduino Leonardo and +// Arduino Micro only. +// +// by Matthew Heironimus +// 2015-11-20 +//-------------------------------------------------------------------- + +#include + +Joystick_ Joystick; + +void setup() { + // Initialize Button Pins + pinMode(9, INPUT_PULLUP); + pinMode(10, INPUT_PULLUP); + pinMode(11, INPUT_PULLUP); + pinMode(12, INPUT_PULLUP); + + // Initialize Joystick Library + Joystick.begin(); +} + +// Constant that maps the phyical pin to the joystick button. +const int pinToButtonMap = 9; + +// Last state of the button +int lastButtonState[4] = {0,0,0,0}; + +void loop() { + + // Read pin values + for (int index = 0; index < 4; index++) + { + int currentButtonState = !digitalRead(index + pinToButtonMap); + if (currentButtonState != lastButtonState[index]) + { + Joystick.setButton(index, currentButtonState); + lastButtonState[index] = currentButtonState; + } + } + + delay(50); +} +