Cuprins:

Arduino Stream Deck: 5 pași
Arduino Stream Deck: 5 pași

Video: Arduino Stream Deck: 5 pași

Video: Arduino Stream Deck: 5 pași
Video: DIY Stream Deck (3D Printing, Arduino, Electronics!) 2024, Noiembrie
Anonim
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck
Arduino Stream Deck

Am văzut ceva din călătoria mea în America care mi s-a părut foarte interesant și util - The Stream Deck. Practic, este vorba de taste rapide pentru orice aplicație doriți, excelent pentru multitasking. Dar lucrul este că este mult prea scump pentru mine (100 $) și nici măcar nu este disponibil în țara mea. Totuși, m-am gândit că va fi extrem de util pentru munca mea, așa că am decis să fac unul singur (care a costat aproape 10 $ de la ieftinul chinez Pro Micro) și să îl împărtășesc, astfel încât studenții și oamenii cu buget să poată avea unul viața ceva mai simplă.

Nu este nici măcar la distanță la fel de frumos ca cel de 100 $, dar funcționează foarte bine.

(În imaginea Deck-ului meu lipsea Arduino Pro Micro de când am scăpat-o și am spart-o, HC-05 și Arduino Pro Mini erau pentru un alt proiect, așa că nu vă deranjați).

Provizii

Arduino Pro Micro x 1

Butoane x 12 (Arduino Pro Micro poate suporta maximum 12 butoane)

Dimensiunea PCB-ului care s-ar potrivi cu numărul dorit de butoane

Rezistoare de 10k Ohm

Pasul 1: Butoanele

Butoanele
Butoanele
Butoanele
Butoanele
Butoanele
Butoanele

Pentru a face Arduino să recunoască când este apăsat un buton, va trebui să conectăm butoanele ca atare:

Butonul pin 1 -> 10k rezistor -> GND

Butonul pin 2 -> VCC

Butonul pin 4 -> Unul dintre pinii digitali sau pinii analogici ai Arduino

Repetați până obțineți numărul dorit de butoane

PCB-ul meu este prost dezordonat, așa că este foarte greu de depistat când apare o eroare, ați dori să fie mai organizat pentru o depanare mai ușoară.

Pasul 2: Programarea Arduino

Programarea cu Pro Micro este puțin diferită de celelalte Arduino și ar necesita niște pași suplimentari. Aș sugera ghidurile care m-au ajutat să programez Pro Micro:

Ghidul oficial al Sparkfun:

www.sparkfun.com/products/12640

Un ghid Instructables:

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

După ce v-ați conectat cu succes Pro MIcro la computer și îl puteți programa acum, iată codul pentru Proiectul meu:

#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; butonul intPin1 = 10; butonul intPin2 = 8; butonul intPin3 = 6; butonul intPin4 = 5;

#include

configurare nulă ()

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

}

bucla nulă ()

{if (digitalRead (buttonPin) == 1) // Când butonul 1 este apăsat {Keyboard.print („Imprimați orice frază doriți”); //

întârziere (1000);

} if (digitalRead (buttonPin1) == 1) {Keyboard.print (""); // Orice expresie doriți} dacă (digitalRead (buttonPin2) == 1) // Aceasta este o comandă rapidă pentru schimbarea limbii tastaturii mele {Keyboard.press (KEY_RIGHT_SHIFT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.release (KEY_LEFT_CTRL); Keyboard.release (KEY_RIGHT_SHIFT); întârziere (1000); } if (digitalRead (buttonPin3) == 1) // Deschideți aplicația cu comanda rapidă 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); întârziere (1000); } if (digitalRead (buttonPin4) == 1) // Deschideți aplicația cu comanda rapidă 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); întârziere (1000); }}

Dacă doriți ca tastatura dvs. să apese tasta „Enter”: Keyboard.write (10); (Codul ACSII pentru tasta Enter este 10)

Întârzierea după fiecare acțiune este de a preveni spamul cheii.

Iată codul pentru descărcare:

Pasul 3: Crearea tastelor de comenzi rapide pentru aplicații

Crearea tastelor de comenzi rapide pentru aplicații
Crearea tastelor de comenzi rapide pentru aplicații
Crearea tastelor de comenzi rapide pentru aplicații
Crearea tastelor de comenzi rapide pentru aplicații
Crearea tastelor de comenzi rapide pentru aplicații
Crearea tastelor de comenzi rapide pentru aplicații

Pasul 1: creați o comandă rapidă pentru aplicațiile pe care doriți să le utilizați

Pasul 2: Faceți clic dreapta și alegeți „Proprietăți”

Pasul 3: Faceți clic pe „Comandă rapidă” (afișată pe imagine) și alegeți cheia dorită

De exemplu, dacă alegeți „p”, comanda rapidă pentru aplicație va fi Ctrl + Alt + p

Acum ar trebui să fii bun să pleci

// Puteți vedea în cod

if (digitalRead (buttonPin4) == 1) // Deschideți aplicația cu comanda rapidă 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); întârziere (1000); }

Pasul 4: Sugestii

Sugestii
Sugestii
Sugestii
Sugestii

Am toate cele 12 taste ale Arduino Pro Micro legate de ceva, iată ce ai putea face:

- Comenzi de joc sau spam (CS: GO, TF2)

- Taste rapide universale pentru Windows Media Player, deoarece tastatura mea nu are tastele funcționale media

Iată ghidul pentru plugin:

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

Link de descărcare:

wmpkeys.sourceforge.net/

- Parole de completare automată: dacă nu doriți să vă amintiți parola de pe browser, legați-o de unul dintre butoane (are riscuri, dar dacă nu etichetați tastele ar trebui să fie bine, utilizați:

if (digitalRead (buttonPin) == 1) // Când butonul 1 este apăsat {Keyboard.print („Parolă”);

întârziere (1000);

Keyboard.write (10); // Pentru a apăsa Enter

}

Pasul 5: Extinderi

Extinderi
Extinderi

Puteți încerca să adăugați senzori și module la Pro Micro pentru a avea modalități diferite de a debloca computerul.

Poate un cititor RFID, un cititor IR, astfel încât atunci când scanați cardul sau apăsați telecomanda, Pro mini să poată imprima parola.

De exemplu, porniți computerul, în loc să introduceți parola, scanați cheia RFID și computerul este deblocat.

M-am gândit la asta de ceva vreme, dar nu am reușit niciodată, deoarece PCB-ul meu nu mai are loc pentru scaner, dar sper că voi o puteți face realitate.

Recomandat: