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

תכונות מוכרות יותר של ארדואינו: 9 שלבים
תכונות מוכרות יותר של ארדואינו: 9 שלבים

וִידֵאוֹ: תכונות מוכרות יותר של ארדואינו: 9 שלבים

וִידֵאוֹ: תכונות מוכרות יותר של ארדואינו: 9 שלבים
וִידֵאוֹ: סרטון מדהים ומרגש עם מסר חזק במיוחד 2024, נוֹבֶמבֶּר
Anonim
Arduino תכונות ידועות פחות
Arduino תכונות ידועות פחות

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

תסתכל על הקוד כדי לראות דוגמאות לכל התכונות האלה כפי שהשתמשתי בהן בכמה פרויקטים שלי כאן על מדריך (למשל תצוגת 1-חוט Arduino (144 תווים)). השלבים הבאים מסבירים תכונה אחת לכל אחד.

שלב 1: מתח אספקה

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

לפרטים מדויקים כיצד לעשות זאת כולל קוד לדוגמא ראה:

  • מד מתח Arduino סוד-מדידת מתח הסוללה:
  • האם Arduino יכול למדוד וין משלו ?:

שלב 2: טמפרטורה פנימית

חלק מהארדואינו מצוידים בחיישן טמפרטורה פנימי ולכן יכולים למדוד את הטמפרטורה הפנימית (מוליכים למחצה) שלהם.

לפרטים מדויקים כיצד לעשות זאת כולל קוד לדוגמא ראה:

חיישן טמפרטורה פנימי:

האם Arduino יכול למדוד וין משלו ?:

שלב 3: משווה אנלוגי (הפרעה)

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

לפרטים מדויקים כיצד לעשות זאת כולל קוד לדוגמא ראה:

Interrupt Comparator Interrupt:

שלב 4: מונה

כמובן של- AVR כלולים מספר מונים. בדרך כלל הם רגילים להגדיר טיימר של תדרים שונים ולהעלות הפרעות לפי הצורך. שימוש אחר עשוי להיות מיושן מאוד הוא להשתמש בהם בדיוק כמו מונים ללא קסם נוסף, פשוט קרא את הערך כשאתה צריך אותו (סקר). שימוש מרשים בכך יכול להיות ביטול כפתורים למשל כנס למשל פוסט זה: מונה דוגמאות AV1 T1

שלב 5: קבועים מוגדרים מראש

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

לפרטים מדויקים כיצד לעשות זאת כולל קוד לדוגמא ראה:

Serial.println (_ DATE_); // תאריך הידור

Serial.println (_ TIME_); // זמן איסוף

String stringOne = מחרוזת (ARDUINO, DEC);

Serial.println (stringOne); // גרסת arduino ide

Serial.println (_ VERSION_); // גרסת gcc

Serial.println (_ FILE_); // קובץ נערך

קטעי קוד אלה יפיקו נתונים אלה לקונסולה הטורית.

שלב 6: שמור על משתנה ב- RAM באמצעות איפוס

זה ידוע של Arduino Uno (ATmega328) יש EEPROM פנימי המאפשר לך לשמור על ערכים והגדרות במהלך הכיבוי ולשחזר אותם בזמן ההפעלה הבאה. עובדה לא כל כך ידועה יכולה להיות שבעצם אפשר לשמר את הערך במהלך האיפוס גם ב- RAM - אולם הערכים הולכים לאיבוד במהלך מחזור ההפעלה - עם התחביר:

משתנה ארוך_לא_חתום_זה_שמור _attribute_ ((סעיף (".noinit")));

זה מאפשר לך למשל לספור את מספר האיפוס ובאמצעות EEPROM גם את מספר ההפעלות.

לפרטים מדויקים כיצד לעשות זאת כולל קוד לדוגמא ראה:

  • שמור משתנה ב- Ram באמצעות איפוס:
  • ספריית EEPROM:

שלב 7: גש לאות השעון

Arduinos ו- AVR אחרים (כמו ATtiny) כוללים שעון פנימי המאפשר לך להפעיל אותם ללא שימוש במתנד קריסטל חיצוני. יתר על כן באותו הזמן הם גם מסוגלים לחבר את האות הזה מבחוץ על ידי הנחתו על סיכה (למשל PB4). החלק המסובך כאן הוא שאתה צריך לשנות את סיבי הפתיל של השבבים על מנת לאפשר תכונה זו ושינוי פיסות הנתיכים תמיד נושא בסיכון לבנייה של השבב.

עליך להפעיל את נתיך CKOUT והדרך הקלה ביותר לעשות זאת היא על פי ההנחיות כיצד לשנות ביט ביט של AVR Atmega328p - מיקרו -בקר 8 ביט באמצעות Arduino.

לפרטים מדויקים כיצד לעשות זאת כולל קוד לדוגמא ראה:

  • כוונון מתנד פנימי ATtiny:
  • כיצד לשנות ביט ביט של AVR Atmega328p-מיקרו 8 ביט באמצעות Arduino:

שלב 8: מבנה פנימי של הנמל של ATmega328P

הכרת המבנה הפנימי של היציאות של ATmega328P מאפשרת לנו לחרוג ממגבלות השימוש הסטנדרטיות. העבר את הסעיף אודות מד קיבול לטווח 20 pF עד 1000 nF לפרטים נוספים ותרשים של המעגל הפנימי.

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

מתקדם יותר השימוש בידע זה כאמור למדידת קבלים עד 20 pF ובהמשך ללא כל חיווט נוסף! על מנת להשיג את הביצועים, הדוגמא עושה שימוש בעכבה הפנימית/כניסה, בנגד המשיכה הפנימי ובקבל התועה. השווה למדריך Arduino CapacitanceMeter שאינו יכול לרדת נמוך מכמה nF.

שלב 9: LED על הלוח (מובנה) כצלם גלאי

להרבה לוחות Arduino יש נוריות מובנות או מובנות הניתנות לשליטה באמצעות קוד, למשל הלוחות של Uno או Nano על סיכה 13. על ידי הוספת חוט אחד אחד מהסיכה הזו לסיכת כניסה אנלוגית (למשל A0) נוכל להשתמש גם בנורית זו כפוטודקטור. ניתן להשתמש בזה במגוון דרכים שונות כמו; השתמש כדי למדוד את התאורה הסביבתית, השתמש ב- LED ככפתור, השתמש ב- LED לתקשורת דו -כיוונית (PJON AnalogSampling) וכו '.

מוּמלָץ: