תוכן עניינים:
- שלב 1: מה אנחנו צריכים לפרויקט זה
- שלב 2: המעגל
- שלב 3: גרסת הלוח של המעגל
- שלב 4: טעינת הגופן
- שלב 5: הוספת מנהלי התקנים נוספים
- שלב 6: הגדר את המכשירים
- שלב 7: הגדר תווים וצייר קווים אופקיים ואנכיים
- שלב 8: קופסאות, בלוקים וקווים משופעים
- שלב 9: סמל תואר, השתלמות, תרשים עמוד ומעגל
- שלב 10: איסוף אשפה, כותרות ומעגלים
- שלב 11: הדגמת שורות
- שלב 12: הלולאה הראשית: תרשים עמודות ותווים מוגדרים
וִידֵאוֹ: גרפיקה על צג SSD1306 I2C OLED 128x64 עם מעגל פייתון באמצעות M4 Express Itsybitsy: 13 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
תצוגת OLED SSD1306 היא מסך קטן (0.96 אינץ ') זול, זמין, I2C, מונוכרום, עם 128x64 פיקסלים, שניתן להתממשק אליו בקלות (רק 4 חוטים) ללוחות פיתוח של מעבדים כגון Raspberry Pi, Arduino או Adafruit Itsybitsy M4 Express, CircuitPlayground Express או התקני CircuitPython אחרים. ניתן להוריד מנהלי התקנים מהאינטרנט.
שגרות גרפיות עבור Arduinos היו זמינות כבר זמן מה אך לא עבור מערכות פיתוח אחרות.
מנהלי ההתקנים הבסיסיים מאפשרים למשתמשים:
- נקה את המסך לשחור או לבן. oled.fill (ג)
- כתוב מחרוזת טקסט למסך במיקום מוגדר (x, y) oled.text ("טקסט", x, y, c)
- צייר נקודה במיקום שצוין (x, y) oled.pixel (x, y, c)
- טען קובץ תמונה למסך. (לא בשימוש בפרויקט זה)
- עדכן את התצוגה oled.show ()
מדריך זה ידגים, בעזרת נהלים פשוטים, כיצד לצייר באופן אינטראקטיבי:
- שורות
- מעגלים
- קופסאות חלולות
- בלוקים מוצקים
- תווים מוגדרים מראש
אני אשתמש ב- Adafruit Itsybitsy M4 Express כדי להדגים את השיטות אך ניתן להעביר את הקוד בפייתון בקלות למערכות פיתוח אחרות.
בחרתי ב- Itsybitsy M4 להדגמה זו מכיוון שהיא זולה, עוצמתית, קלה לתכנות, כוללת קלט/פלט אנלוגי ודיגיטלי, יש לה הרבה זיכרון, איתרה בקלות תיעודים ועזרה בפורומים באינטרנט, מאוד קלה להגדרה בתחילה ותומך ב- CircuitPython, גרסה של Python אידיאלית עבור אלה החדשים בקידוד.
לאחר שהגדרת את Itsybitsy ו- SSD1306 זוהי בניית לוח לחם פשוטה מאוד. אין הקלדה, ניתן להוריד את כל הקבצים.
זהו פרויקט זול וקל לבנייה אך מציג כמה רעיונות ביניים/מתקדמים. אני מקווה שתנסה. התרשמתי מהתצוגה הקטנה הזו.
שלב 1: מה אנחנו צריכים לפרויקט זה
חוּמרָה:
- תצוגת מונו מסוג SSD1306 I2C 128x64 פיקסלים
- Itsybitsy M4 Express
- כבל microUSB ל- USB - לתכנת הלוח
- לוח לחם
- 1 פוטנציומטר של 10K אוהם
- מתג כפתור אחד
- חיבור חוט - צבעים שונים יכולים לעזור
- מחשב (לכתוב את הקוד ולהעלות אותו) - מחשב נייד ישן מאוד יעשה.
תוֹכנָה:
עורך מו - לכתיבת קוד והעלאת הסקריפט ל- Itsybitsy
הגדרת ה- Itsybitsy מוסברת כאן:
הגרסה האחרונה של CircuitPython:
ספריות CircuitPython:
עורך מו:
שלב 2: המעגל
זהו מעגל פשוט מאוד להתקנה. העמוד הבא ממחיש את לוח הלחם המוגמר עם חוטים צבעוניים כדי להקל על העניינים.
שלב 3: גרסת הלוח של המעגל
בחלק העליון והתחתון של לוח הלחם יש מסילות חשמל. בעזרת חוט אדום חברו את מסילות +ve יחד. בעזרת חוט שחור חבר את המסילות -ve יחד.
הצטרף לסיכה 3V של ה- Itsybitsy למסילה התחתונה +ve - חוט אדום. (עמודה 12)
הצטרף לסיכת G (GND) של ה- Itsybitsy למסילה העליונה - חוט שחור. (עמודה 12)
בעמודות 33 ו -34, חבר את סיכות ה- VCC וה- GND של SSD1306 למסילות החשמל העליונות.
בעזרת חוט ורוד חברו את סיכות ה- SCL יחד.
בעזרת חוט אפור חברו את סיכות ה- SDA יחד.
בעזרת חוטים אדומים ושחורים חבר את הפינים החיצוניים של הפוטנטיומטר למסילות החשמל העליונות ובחוט ירוק חבר את סיכת המרכז (המגב) ל- A5 ב- Itsybitsy.
חבר צד אחד של מתג הכפתורים בעזרת חוט סגול לסיכה 2 ועם חוט שחור חבר את הצד השני למעקה GND.
שלב 4: טעינת הגופן
הורד את קובץ הגופן וגרור אותו לכונן CIRCUITPY. (זהו האיסיביצי.)
לחץ פעמיים על תיקיית lib והסתכל ברשימת מנהלי ההתקנים שכבר טענת.
שלב 5: הוספת מנהלי התקנים נוספים
תצטרך את הדברים הבאים בתיקיית lib:
- simpleio.mpy
- adafruit_bus_device
- adafruit_framebuf.mpy
- adafruit_ssd1306.mpy
אם הם חסרים, גרור אותם לתיקייה מהגרסה העדכנית ביותר הזמינה.
כעת אתה מוכן להוריד את הסקריפט.
לאחר טעינתו בעורך Mu תוכלו לשמור אותו ב- Itsybitsy בשם main.py.
התוכנית פועלת באמצעות סדרת הדגמות של קווים, עיגולים, גרף עמודות דינאמי והצגת תווים מוגדרים. פשוט סובב את הסיר לאט ולחץ על הלחצן והחזק אותו כדי לשלוט בתצוגה.
הדפים הבאים מספקים מידע נוסף על אופן הפעולה של התוכנית.
שלב 6: הגדר את המכשירים
חלק ראשון זה טוען את כל הספריות ומגדיר את SSD1306, הפוטנציומטר ומתג הכפתורים על הפינים הנכונים.
שלב 7: הגדר תווים וצייר קווים אופקיים ואנכיים
חלק זה מגדיר את התווים המוגדרים מראש. רוחבם 5 נקודות וגובהו 8 נקודות. כל נקודה בהגדרה מציירת 4 נקודות על המסך כך שיופיעו טוב יותר.
קווים אופקיים ואנכיים קלים לצייר בעזרת לולאה. אתה רק צריך לזכור שאתה צריך את הנקודה הנוספת בסוף. שורה בין (0, 7) ל- (5, 7) תזדקק ל -6 נקודות: כאשר x שווה ל- 0, 1, 2, 3, 4 ו -5 בתורו.
פקודת הנקודה הבסיסית היא oled.pixel (x, y, color) - 0 הוא שחור ו -1 הוא לבן.
המקור (0, 0) נמצא בחלק השמאלי העליון של המסך, 0 - 127 פיקסלים אופקי (משמאל לימין) ו- 0 - 63 אנכית (מלמעלה למטה).
שלב 8: קופסאות, בלוקים וקווים משופעים
הקופסאות בנויות מקווים אופקיים ואנכיים.
בלוקים בנויים ממספר קווים אופקיים.
לגבי קווים משופעים אנו בודקים תחילה את הקואורדינטות נותנות השמאליות ביותר תחילה. אם לא נחליף אותם כיוון שהקו יימשך משמאל לימין.
לאחר מכן אנו מחשבים את השיפוע ומשתמשים בו כדי להגדיר את ערך y לכל ערך של x.
הליך התצוגה (t) הופך את המסך המעודכן לגלוי ומחכה לעיכוב קצר, שניות.
שלב 9: סמל תואר, השתלמות, תרשים עמוד ומעגל
סמל התואר נוצר מ -4 פיקסלים.
שגרת היישור () מוסיפה רווחים נוספים מול המספר ליישור נכון של ערכים קצרים במרחב קבוע.
שגרת התרשים (v) מציירת גרף עמודות אופקי ונותן את האחוז שנבחר. הערך נכתב בקצה הימני באמצעות 'T' לייצוג 100 (טון או למעלה).
מעגלים דורשים קצת טריגונומטריה ולכן עלינו לייבא את ספריית המתמטיקה בתחילת התסריט. אנו משתמשים בחטא, cos ורדיאנים כדי לחשב את הקיזוז x ו- y מהמרכז כאשר רדיוס מסתובב לאורך 90 מעלות. נקודות מתואמות בכל אחת מארבעת הרביעים לכל חישוב הקיזוזים.
שלב 10: איסוף אשפה, כותרות ומעגלים
הוראות אלה מדגימות ניקוי מסך לשחור ולבן, כתיבת טקסט למסך ושימוש בשגרת 'איסוף האשפה' של gc () כדי לפנות מקום. הערך מראה שיש מספיק מקום לתסריט גדול בהרבה.
התוכנית מציירת אז מעגלים עם מרכז משותף ועם מרכזים נעים. שגרה די מהירה בהתחשב בכמות החישוב הנדרשת.
הכותרת להדגמת השורות כתובה בהמשך.
שלב 11: הדגמת שורות
השגרה הזו באמת נותנת לשגרת הקו () אימון. קווים רדיאליים נמשכים מכל אחת מארבע פינות התצוגה עם מרווחים שונים היוצרים דפוסים.
שלב 12: הלולאה הראשית: תרשים עמודות ותווים מוגדרים
זו הלולאה העיקרית של התוכנית. הערכים מהפוטנציומטר משנים את הערכים המוצגים ומשנים את אורך גרף העמודים.
אם הכפתור מוחזק כלפי מטה התווים המוגדרים מוחלפים כמו 1/0 ו- True/False. לולאה זו פועלת לאט למדי מכיוון שציור התווים שהוגדרו מראש הוא תהליך איטי. אתה יכול להאיץ את העניינים על ידי התייחסות לחלקם.
אין חיישן טמפרטורה מצויד בכדי שההדגמה הזו תהיה פשוטה, אז ה '?' מוצג במקום ערך בשורה 190.
מוּמלָץ:
מעגל מקביל באמצעות באג מעגל: 13 שלבים (עם תמונות)
מעגל מקביל באמצעות באג מעגל: באגים במעגל הם דרך פשוטה וכיפית להכיר לילדים חשמל ומעגלים ולקשור אותם עם תכנית לימודים מבוססת STEM. באג חמוד זה כולל מוטוריקה עדינה ויכולות יצירה יצירתיות, עבודה עם חשמל ומעגלים
גרפיקה מותאמת אישית במסך נוקיה 5110: 7 שלבים
גרפיקה מותאמת אישית במסך נוקיה 5110: היי חבר'ה! מוקסיגן כאן. לפני כשלוש שנים סגרתי את האתר האישי שלי (inKnowit.in) שבו היו 30 בלוגים בערך. המשכתי בלוג כאן אבל איבדתי מוטיבציה מהר מאוד וכתבתי רק שלושה בלוגים. לאחר מחשבה רבה החלטתי
שלוט בארדואינו באמצעות סמארטפון באמצעות USB באמצעות אפליקציית Blynk: 7 שלבים (עם תמונות)
שליטה בארדואינו באמצעות סמארטפון באמצעות USB באמצעות אפליקציית Blynk: במדריך זה נלמד כיצד להשתמש באפליקציית Blynk ובארדואינו על מנת לשלוט במנורה, השילוב יהיה באמצעות יציאה טורית USB. מטרת ההוראה היא להראות את הפתרון הפשוט ביותר לשלוט מרחוק בארדואינו או ב
כיצד להכין גרפיקה למשחק בסגנון DDR: 8 שלבים
כיצד להכין גרפיקה למשחק בסגנון DDR: מדריך זה יראה לך שלב אחר שלב כיצד ליצור גרפיקה למשחק בסגנון DDR ב- Scratch
הכנת גרפיקה למשחק מירוץ שריטות: 7 שלבים
הכנת גרפיקה למשחק מירוץ שריטות: מדריך זה יראה לך כיצד ליצור משחק מירוץ בתוך Scratch