Mundarija:

Arduino Stream pastki: 5 qadam
Arduino Stream pastki: 5 qadam

Video: Arduino Stream pastki: 5 qadam

Video: Arduino Stream pastki: 5 qadam
Video: Lesson 09: Using Switch and Push Buttons with Arduino | Arduino Step By Step Course 2024, Noyabr
Anonim
Arduino oqimining pastki qismi
Arduino oqimining pastki qismi
Arduino oqimining pastki qismi
Arduino oqimining pastki qismi
Arduino oqimining pastki qismi
Arduino oqimining pastki qismi

Men Amerikaga qilgan sayohatimdan haqiqatan ham ajoyib va foydali narsa ko'rdim - The Stream Deck. Bu, asosan, xohlagan ilovangiz uchun tezkor tugmalar, ko'p vazifalarni bajarish uchun ajoyib. Ammo men uchun bu juda qimmat (100 dollar) va bu mening mamlakatimda ham mavjud emas. Shunday bo'lsa -da, bu mening ishim uchun juda foydali bo'ladi deb o'yladim, shuning uchun men o'zim tayyorlab berdim (arzon Pro Pro Micro -dan deyarli 10 dollar turadi) va uni talabalar va byudjetdagi odamlar sotib olishlari mumkin. hayot biroz oddiyroq.

Bu baribir 100 dollarlik ko'rinishga ega emas, lekin u juda yaxshi ishlaydi.

(Mening kemamdagi rasmda Arduino Pro Micro yo'q edi, chunki men uni tushirib sindirdim, HC - 05 va Arduino Pro Mini boshqa loyihaga tegishli edi, bunga qarshi emassiz).

Ta'minotlar

Arduino Pro Micro x 1

Tugmalar x 12 (Arduino Pro Micro maksimal 12 tugmani qo'llab -quvvatlaydi)

Siz tanlagan tugmalar soniga mos keladigan tenglikni o'lchami

10k Ohm qarshilik

1 -qadam: tugmalar

Tugmalar
Tugmalar
Tugmalar
Tugmalar
Tugmalar
Tugmalar

Tugma bosilganda Arduino -ni tanib olish uchun biz tugmalarni quyidagicha ulashimiz kerak bo'ladi:

Tugma pimi 1 -> 10k qarshilik -> GND

Tugma pin 2 -> VCC

4 tugmachasi -> Arduino raqamli pinlari yoki analog pinlaridan biri

Kerakli sonli tugmachalarni olmaguningizcha takrorlang

Mening PCB ahmoqona tartibsiz, shuning uchun xato yuz berganda uni kuzatib borish juda qiyin, siz uni osonroq nosozliklarni tuzatish uchun uyushgan bo'lishini xohlaysiz.

2 -qadam: Arduino dasturlash

Pro Micro -da dasturlash boshqa Arduino -lardan biroz farq qiladi va ba'zi qo'shimcha qadamlarni talab qiladi. Menga Pro Micro dasturlashda yordam bergan qo'llanmalarni taklif qilardim:

Sparkfun rasmiy qo'llanmasi:

www.sparkfun.com/products/12640

Ko'rsatmalar qo'llanmasi:

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

Pro MIcro -ni shaxsiy kompyuteringizga muvaffaqiyatli ulab, uni dasturlashtira olgandan so'ng, mening loyiham uchun kod:

#KEY_RIGHT_SHIFT 0x85 ni belgilang #KEY_RIGHT_ALT 0x86 ni belgilang #KEY_RIGHT_GUI 0x87 ni belgilang.

#KEY_UP_ARROW 0xDA ni belgilang

#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 tugmasiPin1 = 10; int tugmasiPin2 = 8; int tugmasiPin3 = 6; int tugmasiPin4 = 5;

#qo'shing

bo'sh o'rnatish ()

{pinMode (buttonPin, INPUT); pinMod (tugmaPin1, Kirish); pinMod (tugmaPin2, Kirish); pinMod (tugmaPin3, Kirish); pinMode (tugmaPin4, Kirish);

}

bo'sh halqa ()

{if (digitalRead (buttonPin) == 1) // 1 tugma bosilganda {Keyboard.print ("Istalgan iborani chop eting"); //

kechikish (1000);

} if (digitalRead (buttonPin1) == 1) {Keyboard.print (""); // Qaysi iborani xohlasangiz} if (if, digitalRead (buttonPin2) == 1) // Bu mening klaviatura tilini o'zgartirish uchun yorliq {Keyboard.press (KEY_RIGHT_SHIFT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.release (KEY_LEFT_CTRL); Keyboard.release (KEY_RIGHT_SHIFT); kechikish (1000); } if (digitalRead (buttonPin3) == 1) // Ilovani yorliq bilan ochish 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); kechikish (1000); } if (digitalRead (buttonPin4) == 1) // Ctrl + Alt + p yorliqlari bilan ilovani oching.

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

Agar klaviaturangiz "Enter" tugmachasini bosishini xohlasangiz: Keyboard.write (10); (Enter tugmachasining ACSII kodi - 10)

Har bir harakatdan keyin kechikish kalit spam yuborilishini oldini oladi.

Bu erda yuklab olish kodi:

3 -qadam: Ilovalar uchun yorliq tugmachalarini yaratish

Ilovalar uchun tezkor tugmalar yaratish
Ilovalar uchun tezkor tugmalar yaratish
Ilovalar uchun tezkor tugmalar yaratish
Ilovalar uchun tezkor tugmalar yaratish
Ilovalar uchun tezkor tugmalar yaratish
Ilovalar uchun tezkor tugmalar yaratish

1 -qadam: Siz foydalanmoqchi bo'lgan ilovalar uchun yorliq yarating

2 -qadam: o'ng tugmasini bosing va "Xususiyatlar" ni tanlang.

3 -qadam: "Yorliq" ni bosing (rasmda ko'rsatilgan) va kerakli kalitni tanlang

Masalan, agar siz "p" ni tanlasangiz, ilova uchun yorliq Ctrl + Alt + p bo'ladi

Endi siz borishingiz kerak

// Siz kodda ko'rishingiz mumkin

if (digitalRead (buttonPin4) == 1) // Ilovani yorliq bilan ochish 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); kechikish (1000); }

4 -qadam: Takliflar

Takliflar
Takliflar
Takliflar
Takliflar

Men Arduino Pro Micro -ning 12 ta kalitini bir narsaga bog'lab qo'ydim, siz nima qila olasiz:

- O'yin buyruqlari yoki spamlar (CS: GO, TF2)

- Windows Media Player uchun universal tezkor tugmalar, chunki mening klaviaturamda Media funktsional tugmachalari yo'q

Bu erda plagin uchun qo'llanma:

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

Yuklab olish havolasi:

wmpkeys.sourceforge.net/

- Parollarni avtomatik to'ldirish: Agar siz brauzerda parolni eslab qolishni xohlamasangiz, uni tugmalardan biriga bog'lab qo'ying (bu xavfga ega, lekin agar siz kalitlarni belgilamasangiz, bu yaxshi bo'lishi kerak):

if (digitalRead (buttonPin) == 1) // 1 tugma bosilganda {Keyboard.print ("Parol");

kechikish (1000);

Keyboard.write (10); // Enter ni bosing

}

5 -qadam: kengaytmalar

Kengaytmalar
Kengaytmalar

Kompyuter qulfini ochishning turli usullariga ega bo'lish uchun siz Pro Micro -ga sensorlar va modullarni qo'shib ko'rishingiz mumkin.

Ehtimol, RFID o'quvchi, IR o'quvchi, shuning uchun siz kartani skanerlashda yoki masofadan boshqarish pultini bosganingizda, Pro mini parolni bosib chiqarishi mumkin.

Masalan, siz shaxsiy kompyuteringizni yuklaysiz, parolni kiritish o'rniga, RFID kalitini skanerlaysiz va kompyuter qulfdan chiqariladi.

Men bu haqda bir muncha vaqt o'ylardim, lekin hech qachon buni qilmaganman, chunki mening PCB skaner uchun joy yo'q, lekin umid qilamanki, siz buni haqiqatga aylantira olasiz.

Tavsiya: