תוכן עניינים:

Arduino 101: הקורס מהטכנאי: 4 שלבים
Arduino 101: הקורס מהטכנאי: 4 שלבים

וִידֵאוֹ: Arduino 101: הקורס מהטכנאי: 4 שלבים

וִידֵאוֹ: Arduino 101: הקורס מהטכנאי: 4 שלבים
וִידֵאוֹ: Leap Motion SDK 2024, יולי
Anonim
ארדואינו 101: הקורס מהטכנאי
ארדואינו 101: הקורס מהטכנאי

אני מקווה שאנשים רבים, במיוחד מתחילים חדשים, שרוצים לצלול לעולם של ארדואינו, יגלו את זה ומאמרים אחרים שלי (אותם אני הולך לפרסם באופן קבוע) ומועילים.

זה לא יהיה כמו שיעורי העתקה והדבקה רגילים. זה יהיה הרבה יותר מ.

היי! אני רומאי ומפתח PHP בינוני.

זה יקבל קצת היסטוריה מוקדמת, אז אם אתה רוצה ללכת לשלב הבא - פשוט גלול מטה אל הדרישות.

התחלתי לתכנת כשהייתי בן 10 וזה השפיע עלי מאוד. כי זה היה כל כך מעניין - לא האמנתי. חוץ מזה, לא הרבה חבר'ה בגיל שלי הצליחו להראות כישורים כאלה בבית הספר. זה היה עוד לפני שהתחלנו ללמוד מידע, כנושא ותכנות בתוך הקורס.

אז רק רציתי לעזור לאנשים. להקל על חייהם ולספק כמה כלים, שיעזרו להם לצאת נגד השגרה ולפתור בעיות כלשהן. ולפני שנתיים המצאתי את Arduino, כתוספת.

לאחר מכן, החלטתי לעלות על קורס כלשהו וליצור דברים כמו זה. מאוחר יותר, אני אעשה סרטונים ביוטיוב, שם תוכל לראות, כיצד להגדיר ולעשות דברים כדי להשיג התאמה מושלמת.

אבל הנה, תקבל ממני עוד על יסודות הקוד. קוד חם כדי לבנות כראוי, מהם עקרונות התכנות ולמה הם חשובים. כל הדברים שאנחנו עושים - זה הנדסה. ואין מקום לטעות. לכן, קראו בבירור ואם תעלו כמה שאלות - פשוט הכניסו אותו לתגובות.

שלב 1: התקן את התוכנה הדרושה/קבל את החומרה הדרושה

כדי להתחיל את תהליך הפיתוח, תזדקק ל:

תוֹכנָה

- קוד Visual Studio

- Platform. IO

חוּמרָה

- אחד מלוחות ה- Arduino (מגה 2560, ננו, לאונרדו וכו ')

- לוח לחם

-חוטי דופונט (זכר לזכר)

- נגדים של נומינלים שונים

- נוריות RGB

- תצוגות וכו '

שלב 2: עקרונות תכנות

אם תרצה לכתוב קוד יעיל ומובן, עליך ללמוד עוד על עקרונות תכנות. בדוגמאות הפרויקט נעקוב אחר העקרונות הבאים:

- מוצק

- יבש (אל תחזור על עצמך)

- נשיקה (שמור על כך פשוט)

- YAGNI (אתה לא תצטרך את זה)

מה הם SOLID?

ניתן לתמלל את SOLID כ:

- [S] אחריות יחידה (כל שיעור אחראי על סוג אחד מסוגו)

- [O] עקרון פתוח-סגור (כיתות או אובייקטים פתוחים להרחבה, אך משתנים)

- [L] החלפת ליסקוב (ניתן להחליף כיתות וחפצים בתת -הסוגים שלהם ללא נזק)

- [I] הפרדת ממשקים (עדיף שיהיו ממשקים מיוחדים יותר, במקום שיהיה אוניברסלי אחד)

- [D] היפוך תלות (יש לבנות שיעורים על הפשטות)

מה זה DRY?

DRY פירושו לא לחזור על עצמך. לכן, כשאתה עושה פתרון כלשהו ואתה רואה שיש כמה שיטות זהות - פשוט צור שיעור עוזר עם השיטות האלה (אפילו אפשר להתקשר באופן סטטי) כדי לשמור על זה פשוט ככל האפשר. אבל זה סיפור אחר.

מה זה KISS?

KISS מייצג את Keep It So Simple. המשמעות היא שכל הפתרונות שלך צריכים לכלול כמה שפחות קוד ככל האפשר, אך גם כדי לא לסבך יותר מדי את כל המחלקה.

מה הם YAGNI?

YAGNI מייצג כי אתה לא תצטרך את זה. המשמעות היא שכדאי לבנות שיעורים ופונקציונליות בצורה כזו, מה שכולו, או בעיקר, יהיה בשימוש. כי אם זה לא יהיה - אז הסר בבטחה מכיוון שאתה לא צריך את זה. פָּשׁוּט.

נסה לשמור על הקוד שלך נקי ככל האפשר.

שלב 3: פרויקטים

שלב זה יכיל וימשיך, בגלל פרויקטים עם דוגמאות וספריות, תוכל לפצל ולהשתמש.

בנוסף, אנסה ליצור הרחבה עבור קוד VS בכדי שתוכל להוריד את libs הדרושים לפרויקט שלך.

זכור כי לפרויקטים ללא קישורים אין עדיין מימוש והם יבוצעו בעתיד הקרוב. אני מנסה לעשות כמה שיותר אינפורמטיבי. ובהמשך - אני מצלם סרטונים ומוסיף אותם כהוראות למעקב.

  • שליטה בנורות לד פשוטות
  • נוריות LED + פוטנציומטר (מיפוי דינמי של ערכי הפוטנטיומטר לספירת נוריות LED)
  • תחנת מזג אוויר פשוטה (v1; לחות + טמפרטורה)
  • תחנת מזג אוויר מתקדמת עם LCD 1602 (v2)
  • תחנת מזג אוויר מתקדמת v2 + הגדרות (v3)
  • שליטה מתקדמת בתחנת מזג אוויר v3 + IR (שלט אינפרא אדום) לתצוגה (v4)
  • תחנת מזג אוויר מתקדמת v4 + מציג את המצב עם נוריות LED (v5)
  • קורא RFID פשוט (v1)
  • קורא RFID מתקדם v1 עם הצגת נתונים על LCD 1602 ותצוגת OLED בגודל 0.91 אינץ '(I2C) (v2)
  • קורא RFID מתקדם v2 עם בקרת ממסר (v3)
  • תחנת SIM יחידה פשוטה (v1)
  • תחנת SIM יחידה מתקדמת עם תצוגת OLED בגודל 0.91 אינץ '(v2)
  • תחנת Dual SIM מתקדמת עם תצוגת OLED בגודל 0.91 אינץ '(v1)
  • תחנת Dual SIM מתקדמת v1 עם שליחת SMS
  • אוֹטוֹמָט מְכִירָה
  • בקרת רצועה פשוטה של RGB WS8212b (v1)
  • בקרת RGB מתקדמת WS8212b Control v1 w/ צבעים + בקרת בהירות (פוטנציומטר + לחצנים) (v2)
  • RGB מתקדם WS8212b Control v1 עם מכונת IRVending

כל הפרויקטים והספריות יהיו זמינים ב- GitHub.

שלב 4: פרויקטים קרובים שיפורסמו

7-8 במרץ’20- שליטה פשוטה בנורות לד- נוריות LED + פוטנציומטר (מיפוי דינמי של ערכי הפוטנציומטר לספירת נוריות LED)

מוּמלָץ: