כמעט כל מי שעובד עם ארדואינו עובד גם עם ה"סריאל מוניטור" המובנה של סביבת הפיתוח, ועובד איתו הרבה. המוניטור הזה מאד בסיסי, מה שהופך אותו לקל מאד לשימוש – אבל גם מגביל את המשתמשים בהרבה אופנים. נכון שהגיע הזמן למצוא תחליף נורמלי?
תוכנות "מקצועיות" לתקשורת סריאלית, כמו PuTTY או RealTerm, מציעות הרבה יותר אפשרויות אך הן גם קשות יותר לתפעול, ורוב היתרונות שלהן כלל לא רלוונטיים למשתמש הארדאינו הממוצע. לכן כתבתי את Serial Monitor Deluxe (בקיצור SMD, מין בדיחה קטנה) – תוכנת מוניטור סריאלי חלופית ומשופרת שמיועדת ספציפית לעבודה עם ארדואינו. הנה התכונות העיקריות שלה:
- אם יש רק חיבור ("COM") זמין אחד, התוכנה מתחברת אליו אוטומטית בעת ההפעלה. אחרת, אפשר לבחור חיבור ולהתנתק ממנו
- אפשר להגדיר קצבי תקשורת לא-סטנדרטיים ולעבוד איתם
- ניתן לאתחל את הארדואינו בלחיצת כפתור
- ההיסטוריה של המידע שנשלח על ידי המשתמש נשמרת ומאפשרת השלמה אוטומטית, לצמצום הקלדות חוזרות
- אפשר לשלוח ערכים מספריים, לא רק תווים*
- אפשר להגדיר "מעטפות" (envelopes) – מחרוזות שיוצמדו אוטומטית לפני ו/או אחרי כל מה שנשלח. למשל, תו שמסמל סיום שידור
- כל מה שנשלח מופיע גם בחלון הפלט, מה שמקל על מעקב ודיבוג בעת הצורך
- ניתן להציג תווים שאינם ניתנים להדפסה כמספרים*
* ערכים מספריים נכתבים ומוצגים כשהם מוקפים בתווי "\" (למשל \0\ עבור הערך המספרי אפס). אפשר לכתוב גם ערכים הקסדצימליים כמו בשפת פסקל (למשל \$F2\) או בשפת C (למשל \0x8A\).
התוכנה מסתמכת על אובייקט התקשורת הטורית הווירטואלית שמסופק על ידי מערכת ההפעלה חלונות, ולכן היא סובלת ממספר מגבלות זהות לאלה של הסריאל מוניטור המקורי – למשל, אין דרך לגלות אם הכבל של הארדואינו נותק באמצע העבודה.
כתבתי את Serial Monitor Deluxe בשפת Object Pascal, בעזרת סביבת הפיתוח Lazarus. זוהי גרסה ראשונית וייתכן שיהיו בה באגים ותקלות. אם נתקלתם בבעיה שלא קשורה לחיבור הסריאלי עצמו – כלומר, משהו עובד ב-Serial Monitor של הארדואינו אבל לא בתוכנה שלי – בבקשה דווחו בתגובות או למייל programming@idogendel.com.
כרגע יש גרסה לחלונות בלבד. ייתכן שבעתיד הקרוב תהיה גם גרסה ללינוקס. הורידו את התוכנה כאן וחלצו מקובץ ה-ZIP את הספריה (או את קובץ ה-exe לספריה משלו). אין צורך בהתקנה. התוכנה תיצור כמה קבצים קטנים (להיסטוריה ולהגדרות משתמש) באותה ספריה שבה היא נמצאת.
בקרוב אפרסם וידאו הדגמה בעברית. בינתיים, הנה הגרסה האנגלית:
מדהים.
אני בימים אלו ממש חוקר את עניין התקשורת שבין הארדואינו למחשב(כחלק מפרויקט הגמר שלי בי'ב) ומבלי ששמתי לב יצא שתכנתתי גירסה פרימיטיבית(אפילו יותר) של הסריאל מוניטור.
זה בהחלט הרשים אותי, נראה כמו משהוא שהיה כיף לתכנת.
תודה,
כלי מצוין!
חסרה לי התמיכה ב 't\' (קפיצה ב-TAB) ואולי גם היכולת להגדיר כמה רווחים הם TAB.
תודה. אני לא בטוח אם אני רוצה להוסיף תמיכה בטאבים, כי הרעיון הוא לא כלי לעיצוב יפה של הפלט אלא כלי שמאפשר למשתמש להבין טוב יותר מה מתרחש בתקשורת הטורית. מהבחינה הזו, כל תו "בלתי נראה" נוסף (גם אם זה רק עד שמגיע פלט חדש) הוא חיסרון.
רעיון מצויין, אני יתנסה עם התוכנה:)
אגב, יש לי רעיון לנושא מעניין שאולי תוכל לכתוב עליו קצת.
הוא לגבי תצוגה על עצם מסתובב, לדים/מאוורר…
טכנולוגיה מעניינת.
כמו זה לדוגמא:
https://www.youtube.com/watch?v=Nua5FS1zrcE
התחל כאן: http://www.ynet.co.il/articles/0,7340,L-4516386,00.html 🙂
היי עידו..
כמו תמיד- פוסט מעולה.. מוצג בצורה בהירה ואינפורמטיבית, ומועיל במידה רבה..
בנוסף, הרבה פעמים רובנו עושים דברים רק כי "המערכת שלי חייבת את זה בכדי לעבוד.."
נחמד לראות לשם שינוי פיתוח לשם "נוחות עבודה".. (:
ובכן, הניסיון מלמד שבסופו של דבר, גם כלי עבודה שהם "רק" נוחים יותר יכולים להשפיע מאד על התהליך והתוצר הסופי…
תודה!