Оглавление:
- Запасы
- Шаг 1: кнопки
- Шаг 2: программирование Arduino
- Шаг 3. Создание горячих клавиш для приложений
- Шаг 4: предложения
- Шаг 5: Расширения
Видео: Колода Arduino Stream: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
Во время поездки в Америку я увидел кое-что, что мне показалось действительно крутым и полезным - The Stream Deck. Это в основном сочетания клавиш для любого приложения, которое вы хотите, отлично подходит для многозадачности. Но дело в том, что для меня это слишком дорого (100 $) и даже в моей стране его нет. Тем не менее, я подумал, что это будет невероятно полезно для моей работы, поэтому я решил сделать его сам (который стоил почти 10 долларов со времен дешевого китайского Pro Micro) и поделиться им, чтобы студенты и люди с ограниченным бюджетом могли иметь его и делать свои жизнь немного проще.
В любом случае он даже отдаленно не так красив, как 100-долларовый, но работает отлично.
(На изображении моей колоды не было Arduino Pro Micro с тех пор, как я уронил и сломал его, HC-05 и Arduino Pro Mini предназначались для другого проекта, так что не обращайте на это внимания).
Запасы
Arduino Pro Micro x 1
Кнопки x 12 (Arduino Pro Micro может поддерживать максимум 12 кнопок)
Размер печатной платы, который соответствует желаемому количеству кнопок
Резисторы 10 кОм
Шаг 1: кнопки
Чтобы Arduino распознал нажатие кнопки, нам нужно подключить кнопки как таковые:
Контакт кнопки 1 -> резистор 10 кОм -> GND
Контакт кнопки 2 -> VCC
Контакт кнопки 4 -> один из цифровых или аналоговых контактов Arduino
Повторяйте, пока не получите желаемое количество кнопок.
Моя печатная плата тупо грязная, поэтому очень сложно отследить, когда происходит ошибка, вы бы хотели, чтобы она была более организована для более легкого устранения неполадок.
Шаг 2: программирование Arduino
Программирование с помощью Pro Micro немного отличается от других Arduinos и потребует некоторых дополнительных шагов. Я бы предложил руководства, которые помогли мне запрограммировать Pro Micro:
Официальное руководство Sparkfun:
www.sparkfun.com/products/12640
Руководство по Instructables:
www.instructables.com/id/Set-up-and-Instal…
После того, как вы успешно подключили Pro MIcro к компьютеру и теперь можете его программировать, вот код моего проекта:
#define KEY_RIGHT_SHIFT 0x85 # define KEY_RIGHT_ALT 0x86 #define KEY_RIGHT_GUI 0x87
#define KEY_UP_ARROW 0xDA
#define KEY_DOWN_ARROW 0xD9 #define KEY_LEFT_ARROW 0xD8 #define KEY_RIGHT_ARROW 0xD7 #define Key_Backspace 0xB2 #define Key_Tab 0xB3 #define Key_Return 0xB0 #define KEY_ESC 0xB1 #define Key_Insert 0xD1 #define Key_Delete 0xD4 #define KEY_PAGE_UP 0xD3 #define KEY_PAGE_DOWN 0xD6 #define #define Key_Home 0xD2 Key_End 0xD5 #define KEY_CAPS_LOCK 0xC1 #define Key_F1 0xC2 #define Key_F2 0xC3 #define Key_F3 0xC4 #define Key_F4 0xC5 #define Key_F5 0xC6 #define Key_F6 0xC7 #define Key_F7 0xC8 #define Key_F8 0xC9 #define Key_F9 0xca #define Key_F10 0xCB #define Key_F11 0xCC #define KEY_F12 0xCD #define KEY_LEFT_CTRL 0x80 int buttonPin = 9; int buttonPin1 = 10; int buttonPin2 = 8; int buttonPin3 = 6; int buttonPin4 = 5;
#включают
установка void ()
{pinMode (buttonPin, ВВОД); pinMode (buttonPin1, ВХОД); pinMode (buttonPin2, ВХОД); pinMode (buttonPin3, ВХОД); pinMode (buttonPin4, ВХОД);
}
пустой цикл ()
{if (digitalRead (buttonPin) == 1) // Когда нажимается кнопка 1 {Keyboard.print ("Печатайте любую фразу, которую хотите"); //
задержка (1000);
} если (digitalRead (buttonPin1) == 1) {Keyboard.print (""); // Какую фразу вы хотите} if (digitalRead (buttonPin2) == 1) // Это ярлык для изменения языка моей клавиатуры {Keyboard.press (KEY_RIGHT_SHIFT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.release (KEY_LEFT_CTRL); Keyboard.release (KEY_RIGHT_SHIFT); задержка (1000); } if (digitalRead (buttonPin3) == 1) // Открыть приложение с помощью сочетания клавиш Ctrl + Alt + t {Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('т'); Keyboard.release (KEY_LEFT_ALT); Keyboard.release (KEY_LEFT_CTRL); задержка (1000); } if (digitalRead (buttonPin4) == 1) // Открыть приложение с помощью сочетания клавиш Ctrl + Alt + p
{Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('п'); Keyboard.release (KEY_LEFT_ALT); Keyboard.release (KEY_LEFT_CTRL); задержка (1000); }}
Если вы хотите, чтобы ваша клавиатура нажимала клавишу «Enter»: Keyboard.write (10); (Код ACSII для клавиши Enter - 10)
Задержка после каждого действия предназначена для предотвращения спама ключа.
Вот код для скачивания:
Шаг 3. Создание горячих клавиш для приложений
Шаг 1. Создайте ярлык для приложений, которые хотите использовать
Шаг 2. Щелкните правой кнопкой мыши и выберите «Свойства».
Шаг 3: Нажмите «Ярлык» (показано на изображении) и выберите нужный ключ.
Например, если вы выберете «p», ярлык для приложения будет Ctrl + Alt + p.
Теперь тебе должно быть хорошо идти
// Вы можете увидеть в коде
if (digitalRead (buttonPin4) == 1) // Открыть приложение с помощью сочетания клавиш Ctrl + Alt + p
{
Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('п'); Keyboard.release (KEY_LEFT_ALT); Keyboard.release (KEY_LEFT_CTRL); задержка (1000); }
Шаг 4: предложения
У меня все 12 ключей Arduino Pro Micro к чему-то привязаны, вот что вы можете сделать:
- Игровые команды или спам (CS: GO, TF2)
- Универсальные горячие клавиши для проигрывателя Windows Media, поскольку на моей клавиатуре нет функциональных клавиш мультимедиа
Вот руководство для плагина:
www.howtogeek.com/howto/19356/add-global-h…
Ссылка для скачивания:
wmpkeys.sourceforge.net/
- Автоматическое заполнение паролей: если вы не хотите запоминать пароль в своем браузере, привяжите его к одной из кнопок (это связано с риском, но если вы не помечаете ключи, все должно быть в порядке, используйте:
if (digitalRead (buttonPin) == 1) // При нажатии кнопки 1 {Keyboard.print ("Пароль");
задержка (1000);
Keyboard.write (10); // Нажать Enter
}
Шаг 5: Расширения
Вы можете попробовать добавить датчики и модули в Pro Micro, чтобы иметь разные способы разблокировки вашего ПК.
Может быть, считыватель RFID или ИК-считыватель, чтобы при сканировании карты или нажатии пульта дистанционного управления Pro mini мог распечатать пароль.
Например, вы загружаете свой компьютер, вместо того, чтобы вводить пароль, вы сканируете ключ RFID, и компьютер разблокируется.
Я думал об этом некоторое время, но так и не сделал этого, так как на моей печатной плате нет места для сканера, но я надеюсь, что вы, ребята, сможете воплотить это в жизнь.
Рекомендуемые:
Дизайн игры в Flick за 5 шагов: 5 шагов
Дизайн игры в Flick за 5 шагов: Flick - это действительно простой способ создания игры, особенно чего-то вроде головоломки, визуального романа или приключенческой игры
Счетчик шагов - Micro: Bit: 12 шагов (с изображениями)
Счетчик шагов - Микро: Бит: Этот проект будет счетчиком шагов. Мы будем использовать датчик акселерометра, встроенный в Micro: Bit, для измерения наших шагов. Каждый раз, когда Micro: Bit трясется, мы добавляем 2 к счетчику и отображаем его на экране
Играйте в Doom на своем IPod за 5 простых шагов !: 5 шагов
Играйте в Doom на своем IPod за 5 простых шагов!: Пошаговое руководство по двойной загрузке Rockbox на iPod, чтобы играть в Doom и десятки других игр. Это действительно легко сделать, но многие люди до сих пор удивляются, когда видят, как я играю дум на своем iPod, и путаются с инструкциями
Кормушка для рыбы Arduino Uno за 6 простых и простых шагов !: 6 шагов
Arduino Uno Fish Feeder за 6 простых и дешевых шагов !: Итак, для этого проекта может потребоваться немного предыстории. Людям с домашними рыбками, вероятно, приходилось сталкиваться с той же проблемой, что и мне: отпуск и забывчивость. Я постоянно забывала покормить рыбу и всегда старалась это сделать, пока она не упала
Акустическая левитация с Arduino Uno, шаг за шагом (8 шагов): 8 шагов
Акустическая левитация с Arduino Uno Пошаговая инструкция (8 шагов): ультразвуковые преобразователи звука L298N Женский адаптер питания постоянного тока с штыревым контактом постоянного тока Arduino UNOBreadboard Как это работает: сначала вы загружаете код в Arduino Uno (это микроконтроллер, оснащенный цифровым и аналоговые порты для преобразования кода (C ++)