Turinys:

„Arduino Stream“denis: 5 žingsniai
„Arduino Stream“denis: 5 žingsniai

Video: „Arduino Stream“denis: 5 žingsniai

Video: „Arduino Stream“denis: 5 žingsniai
Video: Arduino pirmi zingsniai(pirma programa) 2024, Liepa
Anonim
„Arduino Stream“denis
„Arduino Stream“denis
„Arduino Stream“denis
„Arduino Stream“denis
„Arduino Stream“denis
„Arduino Stream“denis

Iš savo kelionės į Ameriką pamačiau kažką, kas, mano manymu, buvo tikrai šaunu ir naudinga - „The Stream Deck“. Tai iš esmės yra bet kurios norimos programos spartieji klavišai, puikiai tinkantys atlikti daugiafunkcinius veiksmus. Bet dalykas yra tai, kad jis man yra per brangus (100 USD) ir net nėra prieinamas mano šalyje. Vis dėlto aš maniau, kad tai bus nepaprastai naudinga mano darbui, todėl nusprendžiau pati pasigaminti (tai kainavo beveik 10 USD nuo pigios kiniškos „Pro Micro“) ir pasidalyti ja, kad studentai ir žmonės, turintys biudžetą, galėtų jį turėti ir gyvenimas truputi paprastesnis.

Bet kokiu atveju jis nėra toks gražus kaip 100 USD, tačiau veikia puikiai.

(Mano denio paveikslėlyje trūko „Arduino Pro Micro“, nes aš jį numečiau ir sulaužiau, „HC -05“ir „Arduino Pro Mini“buvo skirti kitam projektui, todėl nesijaudinkite).

Prekės

„Arduino Pro Micro x 1“

Mygtukai x 12 („Arduino Pro Micro“gali palaikyti ne daugiau kaip 12 mygtukų)

PCB dydis, kuris atitiktų pageidaujamą mygtukų skaičių

10k omų rezistoriai

1 žingsnis: mygtukai

Mygtukai
Mygtukai
Mygtukai
Mygtukai
Mygtukai
Mygtukai

Kad „Arduino“atpažintų, kai paspaudžiamas mygtukas, turėsime prijungti mygtukus:

Mygtukas 1 -> 10k rezistorius -> GND

Mygtukas 2 -> VCC

Mygtuko kaištis 4 -> Vienas iš „Arduino“skaitmeninių arba analoginių kaiščių

Pakartokite, kol gausite norimą mygtukų skaičių

Mano PCB yra kvailai netvarkinga, todėl labai sunku atsekti, kai įvyksta klaida, norėsite, kad ji būtų labiau organizuota, kad būtų lengviau pašalinti triktis.

2 žingsnis: „Arduino“programavimas

Programavimas naudojant „Pro Micro“šiek tiek skiriasi nuo kitų „Arduinos“ir reikalauja papildomų veiksmų. Siūlyčiau vadovus, kurie padėjo man programuoti „Pro Micro“:

Oficialus „Sparkfun“vadovas:

www.sparkfun.com/products/12640

„Instructables“vadovas:

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

Sėkmingai prijungę „Pro MIcro“prie kompiuterio ir dabar galite jį užprogramuoti, čia yra mano projekto kodas:

#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 mygtukasPin1 = 10; int mygtukasPin2 = 8; int mygtukasPin3 = 6; int mygtukasPin4 = 5;

#įtraukti

negaliojanti sąranka ()

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

}

tuštumos kilpa ()

{if (digitalRead (buttonPin) == 1) // Kai paspaudžiamas 1 mygtukas {Keyboard.print ("Spausdinkite bet kokią norimą frazę"); //

vėlavimas (1000);

} if (digitalRead (buttonPin1) == 1) {Keyboard.print (""); // Kokios frazės norite} if (digitalRead (buttonPin2) == 1) // Tai yra klavišo kalbos keitimo nuoroda {Keyboard.press (KEY_RIGHT_SHIFT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.release (KEY_LEFT_CTRL); Keyboard.release (KEY_RIGHT_SHIFT); vėlavimas (1000); } if (digitalRead (buttonPin3) == 1) // Atidarykite programą naudodami spartųjį klavišą 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); vėlavimas (1000); } if (digitalRead (buttonPin4) == 1) // Atidarykite programą naudodami spartųjį klavišą 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); vėlavimas (1000); }}

Jei norite, kad klaviatūra paspaustų „Enter“klavišą: Keyboard.write (10); (Įvesties rakto ACSII kodas yra 10)

Po kiekvieno veiksmo vėluojama uždaryti raktą nuo šiukšlių.

Čia yra atsisiuntimo kodas:

3 veiksmas: programų sparčiųjų klavišų kūrimas

Programų sparčiųjų klavišų kūrimas
Programų sparčiųjų klavišų kūrimas
Programų sparčiųjų klavišų kūrimas
Programų sparčiųjų klavišų kūrimas
Programų sparčiųjų klavišų kūrimas
Programų sparčiųjų klavišų kūrimas

1 veiksmas: sukurkite norimų naudoti programų nuorodą

2 veiksmas: dešiniuoju pelės mygtuku spustelėkite ir pasirinkite „Ypatybės“

3 žingsnis: Spustelėkite nuorodą (parodyta paveikslėlyje) ir pasirinkite norimą raktą

Pavyzdžiui, jei pasirinksite „p“, programos spartusis klavišas bus Ctrl + Alt + p

Dabar jums turėtų būti gera eiti

// Kode matosi

if (digitalRead (buttonPin4) == 1) // Atidarykite programą naudodami spartųjį klavišą 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); vėlavimas (1000); }

4 žingsnis: pasiūlymai

Pasiūlymai
Pasiūlymai
Pasiūlymai
Pasiūlymai

Aš turiu visus 12 „Arduino Pro Micro“raktų susieta su kažkuo, štai ką galite padaryti:

- Žaidimo komandos arba šlamštas (CS: GO, TF2)

- universalūs „Windows Media Player“spartieji klavišai, nes mano klaviatūroje nėra laikmenų funkcijų klavišų

Čia yra papildinio vadovas:

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

Atsisiuntimo nuoroda:

wmpkeys.sourceforge.net/

- Automatiškai užpildyti slaptažodžius: jei nenorite prisiminti slaptažodžio savo naršyklėje, susiekite jį su vienu iš mygtukų (tai kelia pavojų, bet jei nepažymite raktų, tai turėtų būti gerai, naudokite:

if (digitalRead (buttonPin) == 1) // Kai paspaudžiamas 1 mygtukas {Keyboard.print ("Password");

vėlavimas (1000);

Klaviatūra.rašyti (10); // Norėdami paspausti Enter

}

5 žingsnis: išplėtimas

Išplėtimai
Išplėtimai

Galite pabandyti pridėti jutiklius ir modulius prie „Pro Micro“, kad galėtumėte įvairiais būdais atrakinti kompiuterį.

Galbūt RFID skaitytuvas, IR skaitytuvas, kad nuskaitydami kortelę ar paspausdami nuotolinio valdymo pultą „Pro mini“galėtų atspausdinti slaptažodį.

Pvz., Paleidžiate kompiuterį, o ne įvedate slaptažodį, nuskaitote RFID raktą ir kompiuteris yra atrakintas.

Aš kurį laiką apie tai galvojau, bet niekada to nepadariau, nes mano PCB nėra vietos skaitytuvui, bet tikiuosi, kad jūs, vaikinai, galėtumėte tai paversti realybe.

Rekomenduojamas: