ה-Serial Monitor של סביבת הפיתוח של הארדואינו נועד לתת למפתחים כלי נוח ופשוט לתקשורת דו-סטרית עם המיקרו-בקר. כל עוד מדובר בפלט שמגיע מלוח הארדואינו, באמצעות פקודות כמו Serial.println, המוניטור ממלא את תפקידו היטב. הבעיות מתחילות כשהמשתמש מנסה לשלוח לארדואינו מידע מורכב שכולל שני תווים ומעלה. הדוגמה הקלאסית לכך היא מספר שיש בו יותר מספרה אחת, והנושא עולה לעתים מספיק קרובות כדי שאקדיש לו פוסט אז איך עושים את זה?
הלו טייני #6: כלב טוב!
אנחנו ממשיכים בסקירה של מנגנון ה-Watchdog הרב-שימושי של הטייני, והפעם אסביר איך לכבות אותו, איך לגלות אם הוא פעל – וגם איך ולמה להשתמש בפונקציונליות הפסיקה (interrupt) המובנית שלו.
הלו טייני #5: לאלף את הכלב
בפוסט זה נתחיל לדבר על מנגנון קטן ומרתק בתוך הטייני, שנקרא Watchdog ("כלב שמירה"), ושלמען הקיצור נקרא לו פשוט WD. ה-WD כולל טיימר עצמאי שמוקדש רק לו, בעל תדר קבוע של כ-128KHz, והוא מהווה את קו ההגנה האחרון של מערכת מבוססת מיקרו-בקר לפני כשל טוטאלי. מכיוון שהתפקיד שלו חשוב כל כך, הוסיפו לו כמה שכבות של הגנה מפני שימוש רשלני, והעבודה איתו אינה מובנת מאליה. עם זאת, ברגע שמבינים איך הוא עובד, אפשר לנצל את היכולות שלו גם למשימות מעניינות ושימושיות אחרות.
הלו טייני #4: המרת ADC בסיסית
בפרקים הקודמים בסדרת פוסטים זו על ה-ATtiny85 דיברנו על סביבת הפיתוח, על צורבים, הגדרות שעון, ועל גישה לקלט/פלט דיגיטלי באמצעות הרגיסטרים של הפורטים. הפעם נדבר על קלט אנלוגי, וליתר דיוק המרה של מתח חשמלי בפין קלט למספר, כפי שעושה פקודת analogRead בארדואינו. ראשית, הנה התקן שבניתי שמבוסס על פעולה זו ממש: הוא קורא את המתח שנוצר כתוצאה מסיבובי המדחף, וממיר את התוצאה למהירות העדכון של תצוגת לדים:
לזרוס 1.2, או: היה באג?
בשקט בשקט יצאה לאוויר העולם גרסה 1.2 הרשמית של FPC/Lazarus, סביבת הפיתוח בקוד פתוח לשפת Object Pascal. נכון להיום, זו האופציה המודרנית היחידה עבור מי שרוצה לתכנת בשפה זו, ולא מוכן למכור כליה בשביל לקנות גרסה מלאה של Delphi. יש בגרסה הזו גם באג קטן ומעצבן מאד, אבל…
לוגי'ק לקמצנים – תכונות מתקדמות
בפוסט הקודם ראינו איך להגדיר טריגר עבור הלוג'יק, לבצע דגימה של אותות לוגיים מלוח ארדואינו, ולראות את התוצאות הגולמיות בתוכנה של Saleae. הפעם נראה איך מוציאים מהמדידה מידע מדויק יותר על זמנים ותדרים, וכיצד מפענחים נתונים שנשלחים בפרוטוקול תקשורת.
נתחיל במקום בו הפסקנו בפעם שעברה, עם המדידה של אות ה-PWM. זוכרים?

לוג'יק אנלייזר לקמצנים – מבוא
מנתח לוגי ("Logic Analyzer") ראוי לשמו הוא מכשיר גדול, מורכב ויקר מאד – בערך בסדר גודל של אוצילוסקופ. עם זאת, בניגוד לסקופ, הלוג'יק מתעד רק רמות מתח דיגיטליות ("0" ו-"1" לוגיים, מכאן השם), ולכן מתאים ונוח במיוחד לעבודה עם מיקרו-בקרים, מעבדים למיניהם ומערכות דיגיטליות אחרות.
יש בשוק מספר התקנים בסיסיים יותר, שעושים את אותו הדבר אך עם יכולות מוגבלות פי כמה ובחיבור למחשב, כלומר ללא מסך או ממשק משל עצמם. בין המוכרים שבהם נמצאים Logic הקומפקטי של חברת Saleae, שמחירו $149 בלבד, ואחיו הגדול והמשוכלל Logic16 שעולה, נכון לעכשיו, פי שניים. התקנים כאלה הם מושלמים לחובבים שעובדים עם מיקרו-בקרים איטיים יחסית, כמו בארדואינו או ב-MSP430 Launchpad. לרוע המזל, המחיר עדיין קצת גבוה עבור החובב המתחיל הטיפוסי, ולנישה הזו נכנסו – כרגיל – חיקויים סיניים זולים.
מתכנתים ברמה נמוכה
סיפורנו מתחיל במתכנת אמריקני מסוים, בואו נקרא לו נ', שאני מכיר (לא אישית) דרך הרשת. נ' הוא מקצוען כבד בשפת Object Pascal וגם, עד כמה שאני יכול לשפוט, בעל הבנה מעמיקה בכל מה שקשור להנדסת תוכנה, ניהול פרוייקטי תכנות וכל הדברים הגדולים והחשובים האלה. מדי פעם, לקול מצהלות העוקבים אחריו ברשתות החברתיות, נ' מציג פיסות קוד תמוהות ועקומות שהוא מוצא במסגרת עבודתו.
חיישני רוורס תוצרת בית
בפוסט זה אציג את הטכניקות בהן השתמשתי ליצירת חיישן התראה אחורי למשאית צעצוע. מערכת זו מבוססת על חיישן אולטרה-סוני פשוט מדגם HC-SR04 ומיקרו-בקר ATtiny85, וכמו המערכות האמתיות לרכב, היא מציגה התראה ויזואלית על גבי שורה של נוריות LED צבעוניות. ראשית, הנה וידאו של המערכת בפעולה:
הלו טייני #3.5: רק רגע, בבקשה!
בפוסט מס' 2 בסדרה דיברתי על הגדרות שעון שאפשר לבחור עבור ה-ATtiny85 (ומיקרו-בקרים אחרים ממשפחת AVR) באמצעות צריבת פיוזים. מבחר האפשרויות היה כה גדול, עד שבחרתי לדלג שם על חלק מהפרמטרים ולהתרכז אך ורק במקור השעון ובתדר שנבחר עבורו. כעת נתקלתי, לראשונה, במצב בו גם הפרמטרים הנוספים חשובים. אז כהשלמה קטנה לפוסט על הגדרות השעון, בואו נדבר על השהיה באתחול.
