כל הפוסטים של עידו גנדל

אמא'לה, ג'וק! מבוא למעגלים משולבים

בפוסט זה ניצור פרויקט ארדואינו שמציג מספרים בין 0 ל-255, בייצוג בינארי, באמצעות שורה של שמונה נוריות LED. לכאורה, אפשר פשוט לחבר שמונה נוריות לשמונה חיבורי פלט של הארדואינו, ואז לבודד ולשלוח לכל אחת מהן את הביט המתאים מתוך הבייט שמכיל את המספר. אבל לארדואינו הבסיסי יש רק 14 חיבורי פלט, אז מה היינו עושים אם צריך היה להציג מספר בעל 16 ביטים, או 32 או 128?

SIPO Binary Number Display
מציג המספרים הבינאריים, עם ארדואינו ומעגל משולב (בין כל החוטים)

הפתרון שיוצג כאן תופס שלושה חיבורי פלט בלבד לשמונה הנורות, ומנצל לשם כך מעגל משולב – "ג'וק" בלשון העם – מסוג SIPO – Serial In Parallel Out. אנחנו נתחיל בסקירה זריזה של ג'וקים בכלל, אחר כך של הג'וק הספציפי שלנו, ומשם נמשיך להרכבה ולתכנות. מוכנים?

להמשיך לקרוא אמא'לה, ג'וק! מבוא למעגלים משולבים

הַיי, TI!

ובכן, נכנעתי ללחץ החברתי ולמחיר המפתה, ורכשתי את ערכת הפיתוח למתחילים MSP430 Launchpad של חברת TI (טקסס אינסטרומנטס). הערכה נקנתה ישירות מהאתר ($4.30 ליחידה, כולל הכל), והגיעה תוך ימים ספורים עד הבית עם שליח של FedEx. הנה מה שמצאתי באריזה המפוארת:

להמשיך לקרוא הַיי, TI!

פרויקט 99

TI99/A4 Case
שיא הטכנולוגיה הביתית, 1981

המחשב שבתמונה – ליתר דיוק, המחשב שהיה בתוך המארז שבתמונה – הוא TI99/4A, מחשב אישי מתחילת שנות השמונים, והמחשב הראשון שהיה אצלי בבית. אני הייתי צעיר מכדי להבין באמת במה מדובר, וכשהאמיגה הגיעה, הצעצוע הזה נשלח אחר כבוד אל המרתף. במשך כמעט שלושים לא נגזים: עשרים וחמש שנה הוא העלה אבק, פחות או יותר שכוח לגמרי. כשגיליתי אותו מחדש לאחרונה, הוא כבר היה טוטל-לוס: לוח האם היה מקולקל מעבר לכל אפשרות תיקון סבירה. אין לי שום כוונה לשחזר אותו (יחס המחיר/נוסטלגיה הרבה יותר מדי גבוה), אבל המארז יפה והצליל התקתוק של המקשים נעים. משהו פה פשוט צועק "ארדואינו!", לא?

להמשיך לקרוא פרויקט 99

ארדואינו למתחילים: מדחום אינטראקטיבי

בפוסט זה נחבר לארדואינו רכיב ממשפחת LM35 – חיישני טמפרטורה קטנים וזולים שמותאמים למדידה של מעלות בסולם צלזיוס – וניצור מדחום אלקטרוני, שבודק את הטמפרטורה בחדר, שולח את המידע למחשב, ואפילו מאפשר למשתמש לקבוע דרך המחשב את פרק הזמן שיעבור בין מדידה למדידה!

להמשיך לקרוא ארדואינו למתחילים: מדחום אינטראקטיבי

ארדואינו למתחילים: לתקשר עם המחשב

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

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

להמשיך לקרוא ארדואינו למתחילים: לתקשר עם המחשב

ארדואינו למתחילים: קוד לנגן המוזיקה (פוסט המשך)

בפוסט הקודם חיברנו ארדואינו לרמקול, בתיווך פוטנציומטר לשליטה בעוצמת הקול. כתבנו קוד בסיסי ביותר להשמעה של צליל קצר מדי שניה, רק כדי לבדוק שהעסק עובד. בפוסט הנוכחי אציג את הקוד המלא של תוכנה, ש"יושבת" על אותה חומרה בדיוק אך מנגנת את "יונתן הקטן", "London bridge" – ובשינויים קלים, גם מנגינות נוספות.

להמשיך לקרוא ארדואינו למתחילים: קוד לנגן המוזיקה (פוסט המשך)

ארדואינו למתחילים: פרויקט – נגן מוזיקה

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

אם טרם ראיתם אותו, הנה הסרטון שמציג את הנגן בפעולה (בשתי הגרסאות):

רוצים גם?

להמשיך לקרוא ארדואינו למתחילים: פרויקט – נגן מוזיקה

ארדואינו למתחילים: חומרה – מטריצות וכבלים

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

בפרויקט הבסיסי שהצגתי בטור שלי ב-ynet, הכנסתי לתוך אחד מחיבורי הקלט של הארדואינו, בו-זמנית, שתי "רגליים" של רכיבים שונים: חיישן אור ונגד. הדבר התאפשר מכיוון שלרכיבים בהם השתמשתי היו רגליים דקות במיוחד, אבל אי אפשר לסמוך על זה. בעיקרון, כל פרויקט נסיוני שכולל יותר משניים-שלושה רכיבים, או מצריך "שרשור" של רכיבים, מחייב פתרון חכם ופרקטי יותר לחיבור – והפתרון הזה הוא בדרך כלל מטריצה (המטריצות נקראות באנגלית, מסיבות הסטוריות, Breadboard, וליתר דיוק Solderless Breadboard). כך הן נראות בשטח…

להמשיך לקרוא ארדואינו למתחילים: חומרה – מטריצות וכבלים

איפה משיגים ארדואינו?

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

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

להמשיך לקרוא איפה משיגים ארדואינו?

Hello world

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

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

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