ארכיון הקטגוריה: שפות תכנות

אופטימיזציה: האם אפשר להוציא את המיץ מהסוויץ'?

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

להמשיך לקרוא אופטימיזציה: האם אפשר להוציא את המיץ מהסוויץ'?

התחבולה האטומית של הטירה הנאצית

טריק מעניין במיוחד, שהומצא בשנת 1992 כדי למנוע גליצ'ים בתצוגה של המשחק המפורסם Wolfenstein 3D, עשוי להיות רלוונטי למפתחי תוכנות Embedded אפילו כיום.

צילום מסך מ-3d.wolfenstein.com
צילום מסך מ-3d.wolfenstein.com

להמשיך לקרוא התחבולה האטומית של הטירה הנאצית

ארדואינו: סוד האתחול הנעלם

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

ceci n'est pas un feu de circulation
ceci n'est pas un feu de circulation

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

איכס, פייתון

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

להמשיך לקרוא איכס, פייתון

טלאי על הבאג: הסכנה בכשלים שקטים

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

לוח פיתוח למיקרו-בקר ATtiny416
לוח פיתוח למיקרו-בקר ATtiny416

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

לוח Pyboard סיני: סקירה וביקורת

בפוסט שכתבתי לא מזמן על שפת התכנות MicroPython, טענתי שהיא עשויה להצליח בעולם המייקרים ואפילו להתחרות בארדואינו אם הסינים ייצרו לוחות זולים עם MicroPython מובנית ויכולות חומרה מעניינות. רגע אחרי שפרסמתי את זה, חשבתי פתאום: מי אמר שהם לא עשו את זה כבר? ואכן, חיפוש קצר באיביי העלה לוח "תואם pyBoard 1.1" ב-15 דולר בלבד. בואו נראה אם ארדואינו צריכים להתחיל לשקשק.

הלוח הסיני (הגיע עם כבל USB שאינו בתמונה)
הלוח הסיני (הגיע עם כבל USB שאינו בתמונה)

להמשיך לקרוא לוח Pyboard סיני: סקירה וביקורת

כשהארדואינו קלט את שידורי ה-BBC

בין שלל האפשרויות שמציע הפיתוח בשפת MicroPython על הלוח הלימודי BBC Micro:bit נמצא המודול המובנה Radio, שמאפשר העברה אלחוטית של מידע בין לוחות כאלה. האם אפשר לפרוץ את הגן הסגור של ה-BBC ולהוציא מידע גם אל פלטפורמות אחרות, למשל ארדואינו?

טבעת NeoPixel בשליטת ארדואינו מציגה מידע מה-Micro:bit
טבעת NeoPixel בשליטת ארדואינו מציגה מידע מה-Micro:bit

להמשיך לקרוא כשהארדואינו קלט את שידורי ה-BBC

פרויקט "גחלים לוחשות": הדגמה של מיקרו-פייתון בשטח

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

פרויקט הגחלים בפעולה
פרויקט הגחלים בפעולה

להמשיך לקרוא פרויקט "גחלים לוחשות": הדגמה של מיקרו-פייתון בשטח

מיקרו-פייתון: האם זה העתיד של המייקינג?

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

להמשיך לקרוא מיקרו-פייתון: האם זה העתיד של המייקינג?

קורס מקוון על MSP430FR6989: סקירה וביקורת

אתר udemy.com מציע קורס חינמי בשם "מיקרו-בקרים ושפת C" (באנגלית כמובן), שמתבסס על לוח הפיתוח MSP430FR6989 Launchpad של חברת TI. מה לומדים בקורס הזה, ולמי הוא יכול להתאים?

צילום מסך מ-udemy.com
צילום מסך מ-udemy.com

להמשיך לקרוא קורס מקוון על MSP430FR6989: סקירה וביקורת