14.1.1.4. צריבת הקושחה#

לאחר שיש לך firmware.bin (וה-romfs<n>.img שלו) מתוך בניית הקושחה, יש לצרוב אותו על המצלמה. OpenMV IDE היא השיטה המומלצת; התהליך בשורת הפקודה משתנה בין משפחות המצלמות ומתועד עבור כל משפחה בעמודים המקושרים בתחתית. המאתחל (bootloader) עצמו משוחזר בנפרד – ראו שחזור המאתחל (bootloader).

14.1.1.4.2. Windows: התקנת מנהלי ההתקן של USB#

ל-Windows אין מנהל התקן מובנה עבור ממשקי ה-USB DFU, SDP ו-ISP של המצלמה, ולכן כלי שורת הפקודה (dfu-util, כלי NXP SPSDK, כלי Alif SE) אינם יכולים לזהות את ההתקן עד שמנהל התקן WinUSB משויך אליו. תוכנת ההתקנה של OpenMV IDE ל-Windows מתקינה את כל מנהלי ההתקן האלה, ולכן הגישה הפשוטה ביותר היא להתקין את OpenMV IDE פעם אחת – ולאחר מכן גם ה-IDE וגם כלי שורת הפקודה יעבדו. זו הסיבה שצריבה דרך הממשק הגרפי מצליחה במכונת Windows חדשה בעוד ש-dfu-util עצמאי לא.

אם התקנת ה-IDE אינה אפשרות, הריצו את תוכנת ההתקנה המתאימה של מנהל ההתקן מתיקיית share/qtcreator/drivers/ של OpenMV IDE כמנהל מערכת (Administrator):

תוכנת התקנת מנהל התקן

התקני USB שהיא משייכת

openmv\openmv.cmd

התקני OpenMV DFU, וממשקי RT1062 SPSDK (0x1FC9:0x0135 SDP ROM ו-0x15A2:0x0073 flashloader)

arduino\arduino.cmd

התקני Arduino DFU (2341:03xx)

ftdi\ftdi.cmd

מתאם FTDI 0403:6015 המשמש לשחזור המאתחל (bootloader) של AE3

DFU_Driver\STM32Bootloader.bat

התקן ה-DFU של מערכת ST 0483:df11 המשמש לשחזור המאתחל (bootloader) של STM32

לחלופין, שייכו את WinUSB ל-VID:PID הספציפי באמצעות Zadig או pnputil. צריבה דרך שורת הפקודה ב-Windows אינה עובדת בלי זה. Linux ו-macOS אינם זקוקים להתקנת מנהל התקן (Linux דורש רק את כללי ה-udev).

14.1.1.4.3. צריבה דרך SWD (make deploy)#

אם בדיקת ניפוי (debug probe) כבר מחווטת למצלמה – כפי שהיא עבור ניפוי באגים – מחזור העריכה-בנייה-צריבה המהיר ביותר עוקף את ה-USB DFU וצורב את השבב ישירות דרך SWD. במצלמות STM32:

make -j$(nproc) TARGET=<TARGET> deploy

פעולה זו צורבת את הקושחה שזה עתה נבנתה דרך STM32_Programmer_CLI (מתוך ה-SDK) דרך הבדיקה המחוברת. אין כניסה למאתחל (bootloader), אין חיבור מחדש של USB, ואין החלפת כבלים: בנו, הריצו deploy, והמצלמה תופעל מחדש ותריץ את הקוד החדש. זהו זרימת העבודה המומלצת במהלך פיתוח קושחה פעיל. השתמשו ב-DFU או ב-OpenMV IDE כאשר צורבים ללא בדיקה או כאשר מפיצים קושחה לאחרים.

14.1.1.4.4. כניסה למצב מאתחל (bootloader) / DFU#

הצריבה דורשת שהמצלמה תהיה במצב המאתחל (bootloader) / DFU שלה. ישנן שלוש דרכים להיכנס:

  • בחיבור (כל מצלמה). כל מצלמה מריצה את המאתחל (bootloader) שלה למשך חלון זמן קצר כשהיא מופעלת, לפני שהקושחה מתחילה – חברו את המצלמה ל-USB והמאתחל מאזין לזמן קצר.

  • מתוך ה-IDE (כל מצלמה). כאשר המצלמה מחוברת, Tools -> Force enter OpenMV Cam bootloader מאתחל אותה אל מצב המאתחל (bootloader).

  • כפתור האיפוס של Arduino. בלוחות Arduino, לחצו לחיצה כפולה על כפתור האיפוס כדי להיכנס למצב המאתחל (bootloader).

14.1.1.4.5. צריבה בשורת הפקודה לפי משפחת מצלמות#

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