זרוע חלודה
אתה בטח שמעת כי חלודה היא שפת תכנות מערכות שיש לה די הולך גדל. זה מתיימר להיות מהיר כמו C, אבל יש תכונות כמו זיכרון מובטחת ובטיחות חוט, גנריקה, והוא מונע תקלות פילוח. נשמע כמו רק את הדבר עבור מערכת מוטבע, נכון? [חורחה Aparicio] היה מתוסכל כי המעבד שלו של בחירה, זרוע STM32 Cortex-M לא היה תמיכה יליד חלודה.
כנראה, אתה יכול בקלות לקשור C פונקציות לתוך תוכנית חלודה אבל זה לא מה שהוא היה אחרי. אז הוא יצא לבנות תוכניות חלודה טהורים שיכולים לגשת לחומרה של המכשיר והוא תיעד את המאמץ.
לא רק את ההודעה להראות לך את הכלים שאתה צריך ואת גרסאות התוכנה, אלא באמצעות OpenCD, [חורחה] אפילו הצליח לעשות כמה איתור באגים. הטכניקה נראית די יפה, גם, כפי שהוא אומר שהוא עשה את אותו טריק על שישה בקרי שונים משלוש ספקים שונים ללא בעיה. אתה צריך להגדיר את הפרויקט על ידי שינוי כמה ערכים בתבנית.
למרות שזה לא הדרכה חלודה, בעקבותיו עם קוד [חורחה] ואת ההסברים שלו ייתן לך רעיון טוב למדי של איך נראה חלודה. הוא גם מראה כלי מסודר, לוח המחוונים של GDB. כדי לבנות את ה- API לאזורים הזיכרון המיוחדים של הזרוע, [חורחה] משתמש בכלי שנקרא SVD2Rust כדי לעבד את קבצי SVD של הספק. אלה משמשים בדרך כלל עבור תכנות jtag ובדיקה, אז חשבנו שזה היה דרך חדשה לבנות באופן אוטומטי תמיכה במעבד.
הרבה שפות המציעות תכונות בטיחות נוטים לקמפל קוד שומן. [חורחה] מראה דוגמא LED מהבהב ומפרק אותו וזה נראה די קומפקטי על 127 בתים. לאחר מכן הוא מופשט משם את רושם הטיימר ואת הקוד הוא כמעט באותו גודל בדיוק כאשר הוא הידור.
כיסינו את חלודה לזמן מה בחזרה. ראינו גם חלודה על כמה ציוד WiFi לאחרונה.