ארכיון הקטגוריה: הלו טייני

הלו טייני #6.6: ביטים על הגל

עברנו דרך ארוכה בפוסט הקודם כדי ליצור גל ריבועי בתדר 38KHz על פין 5 של ה-ATtiny85. אם נחבר לפין הזה נורית IR LED, כל חיישן IR קרוב שמכוון לתדר המתאים יקלוט את הבהובי האור המהירים ויזהה אותם כסיגנל שידור. אלא שכדי שנוכל להעביר נתונים של ממש מצד לצד, אנחנו צריכים יותר מאשר זיהוי בלבד, וזה יהיה הנושא שלנו הפעם.

להמשיך לקרוא הלו טייני #6.6: ביטים על הגל

הלו טייני #6.5: שלושים ושמונה קילוהרץ

הטיימרים (Timers) שב-ATtiny85, ולמעשה בכל מיקרו-בקר אחר כמעט, הם כלי עבודה חזקים מאד שכוללים מגוון של אופני פעולה ואופציות. בפוסט זה ניגע רק בפינה אחת קטנה של אחד הטיימרים, למטרה מאד ספציפית: יצירת גל ריבועי בתדר של 38KHz בדיוק.

חיישן IR לתדר 38KHz (באמצע, במעטפת המתכת) ו-IR LED (משמאלו)
חיישן IR לתדר 38KHz (באמצע, במעטפת המתכת) ו-IR LED (משמאלו)

להמשיך לקרוא הלו טייני #6.5: שלושים ושמונה קילוהרץ

הלו טייני #5: לאלף את הכלב

בפוסט זה נתחיל לדבר על מנגנון קטן ומרתק בתוך הטייני, שנקרא Watchdog ("כלב שמירה"), ושלמען הקיצור נקרא לו פשוט WD. ה-WD כולל טיימר עצמאי שמוקדש רק לו, בעל תדר קבוע של כ-128KHz, והוא מהווה את קו ההגנה האחרון של מערכת מבוססת מיקרו-בקר לפני כשל טוטאלי. מכיוון שהתפקיד שלו חשוב כל כך, הוסיפו לו כמה שכבות של הגנה מפני שימוש רשלני, והעבודה איתו אינה מובנת מאליה. עם זאת, ברגע שמבינים איך הוא עובד, אפשר לנצל את היכולות שלו גם למשימות מעניינות ושימושיות אחרות.

להמשיך לקרוא הלו טייני #5: לאלף את הכלב

הלו טייני #4: המרת ADC בסיסית

בפרקים הקודמים בסדרת פוסטים זו על ה-ATtiny85 דיברנו על סביבת הפיתוח, על צורבים, הגדרות שעון, ועל גישה לקלט/פלט דיגיטלי באמצעות הרגיסטרים של הפורטים. הפעם נדבר על קלט אנלוגי, וליתר דיוק המרה של מתח חשמלי בפין קלט למספר, כפי שעושה פקודת analogRead בארדואינו. ראשית, הנה התקן שבניתי שמבוסס על פעולה זו ממש: הוא קורא את המתח שנוצר כתוצאה מסיבובי המדחף, וממיר את התוצאה למהירות העדכון של תצוגת לדים:

להמשיך לקרוא הלו טייני #4: המרת ADC בסיסית

הלו טייני #3.5: רק רגע, בבקשה!

בפוסט מס' 2 בסדרה דיברתי על הגדרות שעון שאפשר לבחור עבור ה-ATtiny85 (ומיקרו-בקרים אחרים ממשפחת AVR) באמצעות צריבת פיוזים. מבחר האפשרויות היה כה גדול, עד שבחרתי לדלג שם על חלק מהפרמטרים ולהתרכז אך ורק במקור השעון ובתדר שנבחר עבורו. כעת נתקלתי, לראשונה, במצב בו גם הפרמטרים הנוספים חשובים. אז כהשלמה קטנה לפוסט על הגדרות השעון, בואו נדבר על השהיה באתחול.

אפשרויות שעון בחלון צריבת הפיוזים
אפשרויות שעון בחלון צריבת הפיוזים

להמשיך לקרוא הלו טייני #3.5: רק רגע, בבקשה!

הלו טייני #3: פורט אחד קטן

פוסט קצר וקל זה עוסק בפורט (Port) של ה-ATtiny85 – אמצעי הגישה שלנו לקריאה וכתיבה של ערכים דיגיטליים בפיני הקלט/פלט. לטייני יש אמנם פורט אחד בלבד, שמסומן באות B, אך גם מיקרו-בקרים אחרים ממשפחת AVR עובדים באותה שיטה, כך שמה שאציג כאן מתאים – עם התאמות מינימליות – גם לעבודה בארדואינו.

להמשיך לקרוא הלו טייני #3: פורט אחד קטן

הלו טייני #2: הגדרת שעון

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

מיקרו-בקרים מדגם ATtiny85 עם שעון כיס
מיקרו-בקרים מדגם ATtiny85 עם שעון כיס

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

להמשיך לקרוא הלו טייני #2: הגדרת שעון

הלו טייני #1.5: צורב חלופי

פוסט זה לא היה חלק מהתוכנית המקורית של סדרת "הלו טייני" (מכאן המספור 1.5), אך הוא עשוי לעניין את אלה מביניכם שנרתעים מהמחיר הגבוה של צורב AVRISP MKII מקורי. אם לא אכפת לכם להשקיע עוד קצת עבודה בהכנות מקדימות ובתהליך הצריבה, תוכלו לחסוך שלושים ומשהו דולרים ולהעלות תוכנות ישירות למיקרו-בקר באמצעות צורב סיני זול.

הכלים

הצורב איתו נעבוד כאן נקרא USBasp. יש הרבה דגמים שלו באיביי ובאתרי הגאדג'טים הסיניים, במחירים של 3-10 דולר ליחידה – את שלי קניתי כאן. כצפוי, הוא מוגבל יחסית לצורב הרשמי ופחות משוכלל ממנו, אך לתחילת הדרך הוא יספיק בהחלט. אצלי במחשב (Windows 7) הוא זוהה בלי שהייתי צריך להתקין דרייברים כלשהם ידנית. תוספת מאוחרת: ב-Windows 8, ייתכן שתצטרכו לעשות מה שכתוב כאן.

צורב USBasp זול, ללא כבל החיבור
צורב USBasp זול, ללא כבל החיבור

להמשיך לקרוא הלו טייני #1.5: צורב חלופי