צריכים ייעוץ? אל תחכו!

השאירו פרטים ונחזור אליכם בהקדם

    search
    0

    BlinkWithOutDelay

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

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

    נפתח את הדוגמא BlinkWithOutDelay בתוכנה של ארדואינו. נכנס לדף הדוגמא באתר של ארדואינו ונרכיב את המעגל החשמלי לפי השרטוט באתר.

    נטען את הקוד ללוח הארדואינו ונראה איך הנורה מהבהבת ללא דיליי. נעבור על הקוד ונבין מה כל שורה עושה.

    צריכים ייעוץ? אל תחכו!

    השאירו פרטים ונחזור אליכם בהקדם

      מידול בעזרת קוד

      אחד הכלים החדשים ביותר ש-tinkercad מציעה לנו היום הוא מידול...

      המשך קריאה
      יניב רשף

      יניב מצא את הדרך לשלב בין התחביב המאתגר והמהנה של...

      המשך קריאה
      אריאל מאירסון

      אריאל ניהל את מחנה הטיס בשנת 2012 בהצלחה יתרה לאריאל,...

      המשך קריאה
      מנחת אשרד

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

      המשך קריאה