לאחרונה חשבתי לא מעט על הכיוון אליו אני רוצה להתקדם בעולם המייקינג בכלל והמיקרו-בקרים בפרט. הטווח והמגוון של הדברים שאפשר ללמוד הם פשוט מטורפים – החל ממסתורי הנוסחאות של האלקטרוניקה הבסיסית ועד לטכניקות מתקדמות בלינוקס ובשפת התכנות פייתון עבור מחשבים ממוזערים – ואין שום אפשרות ללמוד את כולם ביחד כפי שהייתי רוצה. זה כיף להתנסות ולטעום קצת מכל דבר, וכמובן שאמשיך לעשות את זה, אך במקביל, מכיוון שאני רוצה להכיר דברים גם לעומק ולא רק לרוחב, הגיע הזמן להחליט על מנה עיקרית.
התחום שבו החלטתי להתמקד בשלב ראשון (וזה בטח לא יפתיע את מי שעוקב אחרי הבלוג הזה ושאר הדברים שאני עושה) הוא מיקרו-בקרים, וליתר דיוק מיקרו-בקרים בארכיטקטורת AVR של Atmel, וספציפית ATtiny85. הפור נפל בעקבות ההודעה הזו באתר מייקרס, שגילתה לי שיטה מתוחכמת למדוד את המתח שהמיקרו-בקר עצמו מקבל, בלי צורך בשום רכיבים חיצוניים. כדי להבין את השיטה, שלא לדבר על לגלות אותה לבד, חייבים היכרות טובה עם הארכיטקטורה, היכולות המובנות של המיקרו-בקר ודרך העבודה איתן. הבנתי שכל עוד אין לי את אלה, גם הקוד הכי מתוחכם שאכתוב לארדואינו ודומיו לא יהיה אלא תוכנית למחשב, שרצה במקרה על מחשב חלש במיוחד: היכולות המלאות והאמתיות של המיקרו-בקר, גם מבחינת ביצועים וגם מבחינת הממשק שלו עם האלקטרוניקה שמסביב, לא יבואו לידי ביטוי. ולמה דווקא ATtiny85? כי הוא מבוסס על אותה ארכיטקטורה כמו ה-ATmega של הארדואינו לסוגיו, אך פשוט יותר וזול יותר – נוח ללמידה גם מבחינת המורכבות וגם מבחינת העלות הכלכלית של טעויות שיקרו מן הסתם.
פוסט זה מסומן במספר 0 כי הוא עדיין לא מגיע לתכל'ס. מה שאציג כאן זו רשימת הכלים איתם אני מתכוון לעבוד.
1. המיקרו-בקר: דגם ATtiny85-20PU. הנה קישור ל-datasheet שלו ושל מספר דגמים נוספים מאותה משפחה. מהרבה בחינות אפשר לחשוב עליו כעל "רבע של ATmega328", שהוא המיקרו-בקר שבארדואינו Uno. נכון לכתיבת פוסט זה אפשר להשיג אותו באיביי במחירים של כ-1.5-2.5 דולר ליחידה (המחיר יורד בדרך כלל בהתאם למספר היחידות), ואילו ב-taydaelectronics.com הוא עולה 1.15 דולר, לפני ההנחה החודשית המסורתית ולפני משלוח. [תוספת מאוחרת: גם באתר Futurelec.com אפשר למצוא מיקרו-בקרים ורכיבים אחרים במחירים נמוכים יחסית]
2. הצורב: אפשר לצרוב תוכנה מסביבת הפיתוח של ארדואינו, דרך לוח ארדואינו, אל ה-ATtiny85 כפי שמוסבר כאן. מכיוון שבחרתי לעבוד עם סביבת פיתוח אחרת, הלכתי על האורגינל: צורב AVRISP MKII. יש המון זיופים וחיקויים שלו באיביי, וייתכן שהם עובדים בלי בעיה – לא בדקתי. המקורי נמכר באתרים רשמיים כמו Digikey ו-Mouser במחיר של 35-40 דולר, לא כולל משלוח, ואתר היצרן עצמו אינו שולח לישראל.
3. סביבת הפיתוח: גם כאן הלכתי על האורגינל, שלשמחתי חינמי לגמרי – Atmel Studio.
בפוסט הבא בסדרה זו אדגים תכנות בסיסי של הטייני (כך אקרא לו מעכשיו כדי לחסוך הקלדה…) עם הכלים הנ"ל, ולאחר מכן נתחיל להיכנס לעובי הקורה.
יש לך פוסטים על הרבה סוגי בקרים, מעניין אותי לדעת, אם בתעשיה האמיתית (לא poc ומייקרים, אלא תעשיה) משתמשים בכאלה בקרים או שיש להם בקרים אחרים.
ברמה העקרונית, אין בכלל דבר כזה מיקרו-בקרים שהם לא "לתעשייה האמתית". זה נכון שארדואינו יצרו שוק לא רע ל-ATmega328P, אבל הוא לא הומצא בשביל ארדואינו, וגם זה מקרה חריג ביותר. בעולם האמבדד המסחרי – כמו בכל תחום מסחרי מן הסתם – יש הרגלים, דעות קדומות, אופנות, הסכמים מסחריים וכו', כך שבהחלט יהיו מקומות שיסתכלו עקום על צ'יפים של חברה X (או של כל חברה שהיא לא Y). אף על פי כן, מבחינת יכולות ושימושיות המיקרו-בקרים האלה טובים כמו כל האחרים ויש מי שקונה ומשתמש בהם. מה שכן, השוק מתפתח ומאז שכתבתי את הפוסט הזה כבר הופיע דור חדש של מיקרו-בקרים,… לקרוא עוד »
תודה על התגובה.
אני אשמח אם תעשה פוסטים גם על הבקרים החדשים, אני נהנה לקרוא כל פעם מחדש.
האמת שעוד לא גיליתי את כל מה שיש לגלות אפילו על הישנים 😀 ולצערי הפוסטים מהסוג הזה הם בין הכי פחות פופולריים בבלוג, זה פחות או יותר לכתוב לעצמי ולך… אז אני משלב קצת מידע בפוסטים אחרים, וכרגע אין תוכניות למשהו מסודר יותר.
חבל.. אשמח לפחות לשמות של בקרים.
וכמה קישורים אם זה לא קשה מידי.
אולי אכתוב פוסט כללי על הנושא בקרוב.
🙂
לפני חודשיים יצא atmel studio 7.
יצא לך להתנסות איתו?
כן, אבל לא נכנסתי יותר מדי לעומק ולא ראיתי הבדלים משמעותיים מהגרסה הקודמת. עובד וזהו 🙂