Arduino Stream Deck: 5 passos
Arduino Stream Deck: 5 passos
Anonim
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck

Vaig veure alguna cosa del meu viatge a Amèrica que em va semblar molt divertit i útil: The Stream Deck. Bàsicament són tecles de drecera per a qualsevol aplicació que vulgueu, ideal per a la multitarea. Però el cas és que és massa car per a mi (100 $) i ni tan sols està disponible al meu país. Tot i així, vaig pensar que seria increïblement útil per a la meva feina, així que vaig decidir fer-ne un jo mateix (que costava gairebé 10 dòlars des del xinès Pro Micro barat) i compartir-lo perquè els estudiants i les persones que tinguessin un pressupost en poguessin tenir un la vida una mica més senzilla.

No és ni tan sols remotament tan maco com el de 100 $, però funciona bé.

(A la imatge del meu Deck faltava l'Arduino Pro Micro des que el vaig deixar caure i el vaig trencar, l'HC-05 i l'Arduino Pro Mini eren per a un altre projecte, així que no us importa).

Subministraments

Arduino Pro Micro x 1

Botons x 12 (Arduino Pro Micro pot suportar 12 botons com a màxim)

Mida de PCB que s’adapti al nombre de botons que preferiu

Resistències de 10k Ohm

Pas 1: els botons

Els botons
Els botons
Els botons
Els botons
Els botons
Els botons

Per fer que Arduino reconegui quan es prem un botó, haurem de connectar els botons com a tals:

Botó pin 1 -> 10k resistència -> GND

Botó pin 2 -> VCC

Botó pin 4 -> Un dels pins digitals o pins analògics de l'Arduino

Repetiu fins que obtingueu el nombre desitjat de botons

El meu PCB és estupidament desordenat, de manera que és molt difícil localitzar-lo quan es produeixi un error; voldríeu que estigui més organitzat per facilitar-ne la solució.

Pas 2: Programació de l'Arduino

Programar amb el Pro Micro és una mica diferent dels altres Arduinos i requeriria alguns passos addicionals. Jo suggeriria les guies que em van ajudar a programar el Pro Micro:

Guia oficial de Sparkfun:

www.sparkfun.com/products/12640

Una guia Instructables:

www.instructables.com/id/Set-up-and-Instal…

Després d’haver connectat amb èxit el vostre Pro MIcro al vostre ordinador i ara el pugueu programar, aquí teniu el codi del meu Projecte:

#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 KEY_HOME 0xD2 #define 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;

#incloure

configuració nul·la ()

{pinMode (buttonPin, INPUT); pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); pinMode (buttonPin3, INPUT); pinMode (buttonPin4, INPUT);

}

bucle buit ()

{if (digitalRead (buttonPin) == 1) // Quan es prem el botó 1 {Keyboard.print ("Imprimeix la frase que vulguis"); //

retard (1000);

} if (digitalRead (buttonPin1) == 1) {Keyboard.print (""); // Qualsevol frase que vulgueu} si (digitalRead (buttonPin2) == 1) // Aquesta és una drecera per canviar l'idioma del meu teclat {Keyboard.press (KEY_RIGHT_SHIFT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.release (KEY_LEFT_CTRL); Keyboard.release (KEY_RIGHT_SHIFT); retard (1000); } if (digitalRead (buttonPin3) == 1) // Obre l'aplicació amb la drecera Ctrl + Alt + t {Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('t'); Keyboard.release (KEY_LEFT_ALT); Keyboard.release (KEY_LEFT_CTRL); retard (1000); } if (digitalRead (buttonPin4) == 1) // Obre l'aplicació amb la drecera Ctrl + Alt + p

{Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('p'); Keyboard.release (KEY_LEFT_ALT); Keyboard.release (KEY_LEFT_CTRL); retard (1000); }}

Si voleu que el teclat premi la tecla "Retorn": Keyboard.write (10); (El codi ACSII de la tecla Retorn és 10)

El retard després de cada acció és per evitar que la clau sigui spam.

Aquí teniu el codi per descarregar:

Pas 3: creació de tecles de dreceres per a aplicacions

Creació de tecles de dreceres per a aplicacions
Creació de tecles de dreceres per a aplicacions
Creació de tecles de dreceres per a aplicacions
Creació de tecles de dreceres per a aplicacions
Creació de tecles de dreceres per a aplicacions
Creació de tecles de dreceres per a aplicacions

Pas 1: creeu una drecera per a les aplicacions que vulgueu utilitzar

Pas 2: Feu clic amb el botó dret i trieu "Propietats".

Pas 3: feu clic a la "drecera" (que es mostra a la imatge) i trieu la tecla que vulgueu

Per exemple, si trieu "p", la drecera de l'aplicació serà Ctrl + Alt + p

Ara hauríeu d’anar bé

// Es pot veure al codi

if (digitalRead (buttonPin4) == 1) // Obre l'aplicació amb la drecera Ctrl + Alt + p

{

Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('p'); Keyboard.release (KEY_LEFT_ALT); Keyboard.release (KEY_LEFT_CTRL); retard (1000); }

Pas 4: suggeriments

Suggeriments
Suggeriments
Suggeriments
Suggeriments

Tinc les 12 tecles de l’Arduino Pro Micro lligades a alguna cosa, això és el que podríeu fer:

- Ordres de jocs o correu brossa (CS: GO, TF2)

- Tecles d'accés directe universals per al Windows Media Player, ja que el meu teclat no té les tecles de funció multimèdia

Aquí teniu la guia del connector:

www.howtogeek.com/howto/19356/add-global-h…

Enllaç de descàrrega:

wmpkeys.sourceforge.net/

- Emplenament automàtic de contrasenyes: si no voleu recordar la contrasenya del navegador, lligueu-la a un dels botons (té riscos, però si no etiqueteu les claus hauria de ser correcte, utilitzeu:

if (digitalRead (buttonPin) == 1) // Quan es prem el botó 1 {Keyboard.print ("Contrasenya");

retard (1000);

Keyboard.write (10); // Per prémer Retorn

}

Pas 5: expansions

Expansions
Expansions

Podeu provar d'afegir sensors i mòduls al Pro Micro per tenir diferents maneres de desbloquejar el vostre PC.

Potser un lector RFID, un lector IR per tal que quan escanegeu la targeta o premeu el comandament a distància, el Pro mini pugui imprimir la contrasenya.

Per exemple, inicieu el vostre PC, en lloc d’escriure la contrasenya, escaneu la clau RFID i el PC es desbloqueja.

He estat pensant en això durant un temps, però mai ho he aconseguit ja que el meu PCB no té espai per a l'escàner, però espero que vosaltres ho pogueu fer realitat.

Recomanat: