תוכן עניינים:
2025 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2025-01-13 06:57
ראיתי משהו מהטיול שלי לאמריקה שלדעתי היה ממש מגניב ושימושי - 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 כפתורים לכל היותר)
גודל PCB שיתאים למספר הכפתורים המועדף עליך
נגדי 10k אוהם
שלב 1: הכפתורים
כדי לגרום ל- Arduino לזהות כאשר לוחצים על כפתור, נצטרך לחבר את הכפתורים ככאלה:
סיכה לחצן 1 -> 10k נגד -> GND
סיכה לחצן 2 -> VCC
סיכה לחצן 4 -> אחד מהסיכות הדיגיטליות או הסיכות האנלוגיות של הארדואינו
חזור על הפעולה עד שתקבל את מספר הכפתורים הרצוי
ה- PCB שלי מבולגן בטיפשות, כך שקשה מאוד לאתר מתי מתרחשת שגיאה, היית רוצה שהוא יהיה מסודר יותר לפתרון בעיות קל יותר.
שלב 2: תכנות הארדואינו
התכנות עם ה- Pro Micro שונה במקצת מהארדואינים האחרים ותדרש כמה צעדים נוספים. הייתי מציע את המדריכים שעזרו לי לתכנת את ה- Pro Micro:
המדריך הרשמי של Sparkfun:
www.sparkfun.com/products/12640
מדריך הוראות:
www.instructables.com/id/Set-up-and-Instal…
לאחר שחיברת בהצלחה את ה- Pro MIcro למחשב האישי שלך ועכשיו תוכל לתכנת אותו, הנה הקוד לפרויקט שלי:
#הגדר KEY_RIGHT_SHIFT 0x85 #הגדר KEY_RIGHT_ALT 0x86 #הגדר KEY_RIGHT_GUI 0x87
#הגדר 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;
#לִכלוֹל
הגדרת חלל ()
{pinMode (buttonPin, INPUT); pinMode (buttonPin1, INPUT); pinMode (buttonPin2, INPUT); pinMode (buttonPin3, INPUT); pinMode (buttonPin4, INPUT);
}
לולאת חלל ()
{if (digitalRead (buttonPin) == 1) // כאשר לוחצים על כפתור 1 {Keyboard.print ("הדפס איזה ביטוי שאתה רוצה"); //
עיכוב (1000);
} if (digitalRead (buttonPin1) == 1) {Keyboard.print (""); // איזה ביטוי שתרצו} if (digitalRead (buttonPin2) == 1) // זהו קיצור דרך לשינוי שפת המקלדת שלי {Keyboard.press (KEY_RIGHT_SHIFT); Keyboard.press (KEY_LEFT_CTRL); מהדורה של מקלדת (KEY_LEFT_CTRL); שחרור מקלדת (KEY_RIGHT_SHIFT); עיכוב (1000); } if (digitalRead (buttonPin3) == 1) // פתח אפליקציה עם קיצור דרך Ctrl + Alt + t {Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('t'); מהדורה של מקלדת (KEY_LEFT_ALT); מהדורה של מקלדת (KEY_LEFT_CTRL); עיכוב (1000); } אם (digitalRead (buttonPin4) == 1) // פתח אפליקציה עם קיצור דרך Ctrl + Alt + p
{Keyboard.press (KEY_LEFT_ALT); Keyboard.press (KEY_LEFT_CTRL); Keyboard.print ('p'); מהדורה של מקלדת (KEY_LEFT_ALT); מהדורה של מקלדת (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 ('p'); מהדורה של מקלדת (KEY_LEFT_ALT); מהדורה של מקלדת (KEY_LEFT_CTRL); עיכוב (1000); }
שלב 4: הצעות
כל 12 המפתחות של Arduino Pro Micro נקשרו למשהו, הנה מה שאתה יכול לעשות:
- פקודות משחק או דואר זבל (CS: GO, TF2)
- מקשי קיצור אוניברסליים עבור Windows Media Player מכיוון שלמקלדת שלי אין מקשי פונקציות מדיה
להלן המדריך לתוסף:
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, קורא IR כך שכאשר אתה סורק את הכרטיס או לוחץ על השלט, ה- Pro mini יכול להדפיס את הסיסמה.
לדוגמה, אתה מאתחל את המחשב האישי שלך, במקום להקליד את הסיסמה שלך, אתה סורק את מפתח ה- RFID והמחשב אינו נעול.
חשבתי על זה זמן מה אבל מעולם לא הצלחתי מכיוון שה- PCB שלי אינו מספיק מקום לסורק, אבל אני מקווה שתוכלו להפוך אותו למציאות.