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

נבואות הזעם על מותה הקרוב של ארכיטקטורת AVR התבדו, והשאלה עתיקת היומין – מה עדיף, PIC או AVR – חזרה להיות רלוונטית. האם התשובה השתנתה לאור ההתפתחויות האחרונות?
ספריית SoftwareSerial הכושלת מוכרת לכל משתמש ארדואינו שהיה צריך אי-פעם לעבוד בתקשורת UART מול שני רכיבים (או מול רכיב ומחשב). לעתים קרובות, מצב כזה מחייב בסופו של דבר מעבר למיקרו-בקר גדול ויקר בהרבה, שתומך ביותר מ-UART אחד בחומרה; אבל בתנאים מסוימים, מיקרו-בקרים חדשים ממשפחת PIC מציעים פתרון אחר, מתוחכם ואלגנטי.
באחד הפרויקטים שאני עובד עליהם לאחרונה, המיקרו-בקר התבקש ליצור לעצמו מספר זיהוי ייחודי לפי פקודה, ברמת אקראיות גבוהה מספיק כדי שמספרים "כפולים" יהיו נדירים גם במערכת שכוללת הרבה מיקרו-בקרים כאלה. מאיפה משיגים ביטים אקראיים כדי "להתניע" את מחולל המספרים הפסודו-אקראיים, ומה עושים כשהמחולל עצמו נותן לנו מעט מדי אפשרויות?
האם אפשר לנסח אלגוריתם לקריאה של מקודד סיבובי, שפותר לגמרי את בעיית ה-Bounce מצד אחד, ומצד שני לא נופל בפח של היפוך כיוון הסיבוב כפי שקרה לאלגוריתם הקודם שלי?
לפני שלוש שנים, בעודי לומד מה-Datasheet את התכונות הבסיסיות של המיקרו-בקר ATtiny85, גיליתי שאני יכול להפעיל אותו על בסיס אות שעון חיצוני בקצב איטי עד כדי גיחוך של 1Hz. בדיון הזעיר שהתנהל בנושא העליתי את הרעיון של עבודה בקצב איטי עוד יותר – עליית שעון אחת ביום, או 0.000011574Hz – כדי ליצור מערכת שמדליקה לד מדי שבת, כאשר אות השעון מבוסס איכשהו על המחזור הטבעי של יום ולילה.
הרעיון הזה מטופש מכדי להשאיר אותו לנצח בגדר תיאוריה, נכון? 🙂
אחד הדברים הראשונים שמשתמשי ארדואינו לומדים הוא לקשר מספרי פינים מסוימים עם פונקציות ספציפיות: פינים 0 ו-1 הם RX ו-TX של Serial, פין 5 הוא אחד מהשישה שמסוגלים להוציא פלט PWM, וכן הלאה. במיקרו-בקרים מודרניים יותר, מוסכמות כאלה לא תמיד תופסות – לטוב ולרע. הנה כמה הסברים ודוגמאות.
להמשיך לקרוא תעביר את זה הלאה: הקצאת פינים דינמית במיקרו-בקרים