רשמים מהארדואינו ב-$9 של Borderless Electronics

פרויקט מימון ההמונים הראשון שהשתתפתי בו התגלה כהצלחה: "ארדואינו ב-9 דולר" של הרולד טימיס ו"Borderless Electronics". מדובר בהעתק של ארדואינו לאונרדו, במחיר שהוא – לדברי היזם – עלות מינימלית לחלוטין, והמטרה המוצהרת היא לאפשר גם למי שידו אינה משגת לקנות ארדואינו מקוריים להתנסות ולעבוד עם לוח תואם, אמין וזול. אוקיי, אז אולי אני לא דוגמה מייצגת במאה אחוזים לקהל היעד הזה, אבל בינינו, ספק גדול אם אפילו רבע מ-15,000(!) הלוחות שנוצרו במסגרת הפרויקט יגיעו לידיים של נזקקים אמתיים… אנחנו פשוט אוהבים לוחות פיתוח זולים, אין מה לעשות 🙂

9DA_Board_Reduced
תואם הלאונרדו של Borderless Electronics

להמשיך לקרוא רשמים מהארדואינו ב-$9 של Borderless Electronics

אתגר התכנות 3: קוף על רשת!

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

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

יש מגבלה נוספת וחשובה מאד: הקוף אינו יכול לנוע לצומת שסכום הספרות של הקואורדינטות שלו גדול מ-19. לדוגמה, הוא לעולם לא יוכל להגיע לצומת 96,51 כי 9+6+5+1 יותר גדול מ-19. במקרה של קואורדינטה שלילית, אנחנו פשוט מתעלמים מהסימן ומחשבים את הסכום כאילו היא היתה חיובית.

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

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

אתגר התכנות, תרגיל 2

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

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

A[n] = n

אנחנו נרצה לראות את n מוצג על המסך. איך עושים את זה – ואיך עושים את זה עוד יותר טוב?

להמשיך לקרוא אתגר התכנות, תרגיל 2

MMXIII: אתגר התכנות מתחיל

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

להמשיך לקרוא MMXIII: אתגר התכנות מתחיל

נערת האמצע של הגרפיקה הממוחשבת

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

להמשיך לקרוא נערת האמצע של הגרפיקה הממוחשבת

טיימרים בארדואינו: מבוא

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

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

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

מדור פרסומי: הפוטנציומטרים של Tmart

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

להמשיך לקרוא מדור פרסומי: הפוטנציומטרים של Tmart

כמה פעמים ספרת עד עשר (עם ג'וק)

המעגל המשולב CD4017BE הוא ג'וק מוזר. בזמן שחבריו מריצים קוד, מפעילים פרוטוקולים מתוחכמים, מנהלים מתחים וזרמים או לפחות מבצעים פעולות לוגיות פונדמנטליות, הג'וק הזה – שמכונה Decade Counter ("מונה עשרות") – פשוט סופר עד עשר. ליתר דיוק, יש לו כניסת שעון אחת ועשר יציאות, שממוספרות 0 עד 9, ובכל פעם שהמתח בכניסת השעון עולה, הג'וק מוציא מתח ביציאה הבאה בתור, ורק בה. קצת כמו להסתכל רק על ספרת האחדות של מספר שעולה ועולה בלי סוף. למה זה טוב?

להמשיך לקרוא כמה פעמים ספרת עד עשר (עם ג'וק)

איזה לוח ארדואינו מתאים לי?

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

שימו לב: כל מה שנאמר כאן נכון לאמצע שנת 2013.

להמשיך לקרוא איזה לוח ארדואינו מתאים לי?

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

בשנת 1984 הוצגה בתערוכת CES הדגמת יכולת בשם Boing, שהביאה לעולם את מחשבי האמיגה והפכה לאחד ה"דמואים" הקלאסיים, המוכרים והחשובים בעולם המחשבים. התעלמו מכל מה שקשור למערכת ההפעלה הגרפית שמוצגת בסרטון – היא לא היתה חלק מההדגמה המקורית – והתרכזו בכדור הקופץ:

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

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

בלוג אישי בנושאי מייקינג, תכנות, מיקרו-בקרים ואלקטרוניקה