תוכן עניינים:
וִידֵאוֹ: להאיר את האהבה שלך עם מטריצה נוצצת: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
חג האהבה הוא הזדמנות עבורך לשלוח הודעות אהבה. למה שלא תעשה פני LED מהנים עם רכיבים לא יקרים כדי לבטא את ההרגשה שלך!
שלב 1: דברים המשמשים בפרויקט זה
רכיבי חומרה
- Seeeduino V4.2
- מגן בסיס
- גרוב - מטריקס LED אדום עם נהג
- גרוב - מחווה (PAJ7620U2)
אפליקציות תוכנה ושירותים מקוונים
Arduino IDE
שלב 2: סיפור
שלב 3: חיבור חומרה
בפרויקט זה אנו משתמשים בחיישן המחווה כקלט ונותנים את המשוב לנהג מטריצת ה- LED כדי להאכיל את מטריצת ה- LED האדומה.
עליך לחבר את Grove - Gesture ו- Grove - Matrix LED אדום w/Driver ליציאת I^2^C של מגן הבסיס המחובר ל- Seeeduino. לאחר מכן חבר את Seeeduino למחשב באמצעות כבל USB.
שלב 4: תכנות תוכנה
התוכנית לפרויקט זה היא להציג את האמוג'י הסטטי (פרצוף בוכה ופנים מחכות) כאשר לא נקראה מחווה שמאל או ימין.
הצג אמוג'י דינמי לשינוי מיקום העין עם שליטה על ידי מחווה שמאל או ימינה כאשר נקראה מחווה שמאל או ימין.
במיקום העין הספציפי, לב פועם יוצג על מטריצת ה- LED.
דפוסי תצוגת LED מעוצבים על ידי עורך מטריקס LED, אתה יכול לשנות או להוסיף את דפוסי ה- LED שלך בתוכניות התוכנית לעיל.
כדי להתכונן לפרויקט זה, נדרש להתקין את Grove - Gesture, Grove - Red LED Matrix w/Driver וספרייות MsTimer2 לתוך Arduino IDE.
#כלול "Grove_LED_Matrix_Driver_HT16K33.h"
#כלול "MsTimer2.h" #include "paj7620.h" #כלול "Wire.h"
במהלך הליך ההתקנה, אתחלנו את הפונקציות Serial, matrix ו- MsTimer2. Serialized Initialized משמש לניפוי באגים של התוכנית, ולכן אין צורך להתחבר למחשב או להשתמש ב- Monitor Serial לאחר איתור באגים. אנו משתמשים ב- MsTimer2 בפרויקט זה כדי לשלוט על הצגת האמוג'י הסטטי.
// אתחל את הסידרה כדי לאתר באגים.
Serial.begin (9600); בעוד (! סדרתי); paj7620Init (); Wire.begin (); matrix.init (); matrix.setBrightness (15); matrix.setBlinkRate (BLINK_OFF); MsTimer2:: set (1000, displayStatic); MsTimer2:: start ();
בלולאה הראשית, אנו לוקחים רק שתי יציאות מחיישן המחווה, GES_RIGHT_FLAG, GES_LEFT_FLAG ואלה משמשות להנחיית הפונקציה displayDynamic ().
הפונקציה displayDynamic () תחשב את המרווח מהפעם האחרונה שהוצג אמוג'י דינמי לזמן הנוכחי, אם המרווח יעלה על TIMEOUT, הוא יפסיק לשחק אימוג'ים סטטיים, ויגדיר את אינדקס האימוג'ים הדינמי המוצג כדי להתחיל. כאשר קוראים מחוות משמאל לימין, מדד ההתחלה הוא 0, והאינדקס יוגדל לאחר שתנועות שמאל לימין יקראו שוב. אחרת, אינדקס ההתחלה הוא המדד האחרון של מערך DYNAMIC, והאינדקס יורד.
תצוגת חלל דינמית (bool leftToRight) {
currentTime long untime = millis (); אם (currentTime - prevTime> TIMEOUT) {dIndex = leftToRight? 0: ARRAY_LENGTH (דינאמי) - 1; showStatic = false; } // זה משמש כדי להימנע מחריגה מהגבול. אם (dIndex> = ARRAY_LENGTH (DYNAMIC) || dIndex <= -1) {heartBeat (); dIndex = leftToRight? ARRAY_LENGTH (דינאמי) - 1: 0; } prevTime = currentTime; matrixDisplay = DYNAMIC [leftToRight? dIndex ++: dIndex--]; }
אין לקרוא מחווה אם חרגת משך TIMEOUT, הפעלת אימוג'י סטטית תשוחזר.
העלה את התוכנית ל- Seeeduino שלך, הכל נעשה. שחקו ותהנו!
שלב 5: קוד
#כלול "Grove_LED_Matrix_Driver_HT16K33.h"
#include "MsTimer2.h" #include "paj7620.h" #include "Wire.h" #define TIMEOUT 5000 #define GES_REG_ADDR 0x43 #define ARRAY_LENGTH (array) (sizeof (array) / sizeof (array [0])) מטריצה_8x8; uint64_t matrixDisplay = 0; prevTime לא חתום ארוך = מיליס (); int8_t sIndex = 0; bool showStatic = true; const uint64_t STATIC = {0x00003c0000a54200, 0x00003c000000e700, 0x00003c004242e700}; int8_t dIndex = 0; const uint64_t DYNAMIC = {0x00003c000021e700, 0x00003c000042e700, 0x00003c000084e700}; const uint64_t HEART = {0x00183c7e7e240000, 0x00183c7effff6600, 0x183c7effffffff66, 0x00183c7effff6600}; void displayStatic (void) {if (showStatic) {matrixDisplay = STATIC [sIndex]; sIndex = (sIndex + 1) % ARRAY_LENGTH (STATIC); }} void heartBeat () {for (uint8_t i = 0; i TIMEOUT) {showStatic = false; prevTime = currentTime; dIndex = leftToRight? 0: ARRAY_LENGTH (דינאמי) - 1; } // זה משמש כדי להימנע מחריגת הגבול. אם (dIndex> = ARRAY_LENGTH (DYNAMIC) || dIndex TIMEOUT) {showStatic = true; } matrix.writeOnePicture (matrixDisplay); matrix.display (); עיכוב (100); }
מוּמלָץ:
להאיר את הקוביות שלך !: 4 שלבים
זוהר בקוביות שלך!: כל מי שאוהב קוביות אוהב גם זוהר בקוביות החשוכות! זה פרויקט ה- DIY שלי לתת להם לזרוח, אבל הרעיון מאחוריו היה להגן על העיניים שלך בזמן ש " נטען " רק רעיון בסיסי אחד, אל תהסס לבנות קופסאות דומות בעצמך
להאיר את האהבה שלך עם מטריצת RGB נוצצת: 3 שלבים
תאיר את האהבה שלך בעזרת מטריצת RGB נוצצת: יום האהבה מגיע, אתה פוגש מישהו שהתאהב ממבט ראשון?
להאיר את הפרויקט שלך עם נוריות: 4 שלבים
להאיר את הפרויקט שלך באמצעות נוריות LED: דרך יעילה מאוד להחיות פרויקט לחיים היא להוסיף תאורה. הטכנולוגיה של היום נתנה לעושים זאת מבחר רחב של אפשרויות תאורה בהירות מאוד, זולות מאוד לתפעול, זולות לרכישה וקלות להתקנה
להאיר את כרטיס הרובוט שלך: 7 שלבים (עם תמונות)
תאיר את כרטיס הרובוט שלך: שלום לכולם! לאחרונה זכיתי בתחרות מדריכים. הם שלחו לי חולצת רובוט של Instructables, ספר, מדבקות ותמונה של הרובוט Instructables. מצד שני, כשחשבתי על רעיונות פשוטים למעגלי נייר ורציתי לבנות
הכנת קופסת מלכודות נוצצת: 3 שלבים
הכנת קופסת מלכודות צעקנית: הדרכה זו מראה לך כיצד להכין קופסה המהבהבת כשמישהו פותח אותה, באמצעות מצלמה חד פעמית, מתג פשוט, מחזיק סוללות וגורם לקופסה. התוצאה מוצגת בסרטון למטה. (במציאות ההבזק הרבה יותר מבריק