14.1.1.3. Flasha den fasta programvaran¶
När du har en firmware.bin (och dess romfs<n>.img) från Bygga den fasta programvaran programmerar du in den på kameran. OpenMV IDE är den rekommenderade metoden; kommandoradsproceduren skiljer sig åt mellan kamerafamiljer och dokumenteras per familj på sidorna som länkas längst ner. Själva startladdaren återställs separat – se Återställa startladdaren.
14.1.1.3.1. OpenMV IDE: Ladda anpassad fast programvara (rekommenderas)¶
OpenMV IDE inkluderar alla flashningsverktyg (dfu-util, NXP SPSDK-verktygen, Alif SE Tools, STM32-verktygen), installerar de nödvändiga USB-drivrutinerna i Windows, hanterar att gå in i startladdaren och väljer rätt kommando för den anslutna kameran. Det är det rekommenderade sättet att flasha en anpassad build.
Anslut kameran till USB (du behöver inte klicka på Connect).
Tools -> Load Custom Firmware.
I dialogrutan ställer du in Firmware Path till din builds
build/<TARGET>/bin/firmware.bin.Bocka eventuellt i Erase internal file system för att rensa kamerans interna FAT-filsystem (se Radera det interna filsystemet för när och varför).
Bocka eventuellt i Reset ROMFS file system för att flasha om standard-ROMFS (inaktiverat om du valde en
.imgdirekt).Klicka på Run. IDE:n återställer kameran till dess startladdare, visar det exakta flashningskommandot och en förloppsindikator och startar om kameran med den nya fasta programvaran. Vänta på den blå självtest-LED:en; kameran räknas sedan upp på nytt på vanligt sätt.
Det finns också Tools -> Force enter OpenMV Cam bootloader för att placera kameran i DFU-läge manuellt före flashning.
14.1.1.3.2. Windows: installera USB-drivrutinerna¶
Windows har ingen inbyggd drivrutin för kamerans USB-gränssnitt för DFU, SDP och ISP, så kommandoradsverktygen (dfu-util, NXP SPSDK-verktygen, Alif SE Tools) kan inte upptäcka enheten förrän en WinUSB-drivrutin har bundits till den. OpenMV IDE:s installationsprogram för Windows installerar alla dessa drivrutiner, så det enklaste tillvägagångssättet är att installera OpenMV IDE en gång – varefter både IDE:n och kommandoradsverktygen fungerar. Det är därför GUI-flashning lyckas på en ny Windows-dator medan en fristående dfu-util inte gör det.
Om det inte är möjligt att installera IDE:n kör du det matchande drivrutinsinstallationsprogrammet från OpenMV IDE:s katalog share/qtcreator/drivers/ som administratör:
Drivrutinsinstallationsprogram |
USB-enheter det binder |
|---|---|
|
OpenMV DFU-enheter och RT1062 SPSDK-gränssnitten ( |
|
Arduino DFU-enheter ( |
|
FTDI-adaptern |
|
ST-systemets DFU-enhet |
Alternativt binder du WinUSB till den specifika VID:PID med Zadig eller pnputil. Ingen kommandoradsflashning på Windows fungerar utan detta. Linux och macOS behöver ingen drivrutinsinstallation (Linux kräver endast udev-reglerna).
14.1.1.3.3. Flashning över SWD (make deploy)¶
Om en debug-sond redan är ansluten till kameran – som den är vid felsökning – kringgår den snabbaste redigera-bygga-flasha-cykeln USB DFU och programmerar chipet direkt över SWD. På STM32-kamerorna:
make -j$(nproc) TARGET=<TARGET> deploy
Detta flashar den nybyggda fasta programvaran via STM32_Programmer_CLI (från SDK:n) över den anslutna sonden. Det sker ingen start i startladdaren, ingen ny USB-uppräkning och inget kabelbyte: bygg, kör deploy, och kameran startar om och kör den nya koden. Detta är det rekommenderade arbetsflödet under aktiv utveckling av fast programvara. Använd DFU eller OpenMV IDE när du flashar utan en sond eller när du distribuerar fast programvara till andra.
14.1.1.3.4. Gå in i startladdar-/DFU-läge¶
Flashning kräver att kameran är i sitt startladdar-/DFU-läge. Det finns tre sätt att komma in:
Vid inkoppling (vilken kamera som helst). Varje kamera kör sin startladdare under ett kort fönster när den slås på, innan den fasta programvaran startar – anslut kameran till USB så lyssnar startladdaren under en kort stund.
Från IDE:n (vilken kamera som helst). Med kameran ansluten startar Tools -> Force enter OpenMV Cam bootloader om den till startladdarläge.
Arduinos återställningsknapp. På Arduino-kort dubbelklickar du på återställningsknappen för att gå in i startladdarläge.
14.1.1.3.5. Kommandoradsflashning per kamerafamilj¶
Sidorna nedan visar vad OpenMV IDE gör under huven för varje kamerafamilj, för när du vill köra flashningen själv – i skript, i CI eller på en produktionslinje. För daglig flashning rekommenderar vi OpenMV IDE.