13.1.14. A ROM fájlrendszer szerkesztése#
A ROMFS-támogatással rendelkező lapok egy csak olvasható fájlrendszert hordoznak a flash memóriában, amely a kamerán a /rom alá van csatolva. A lap alapértelmezett gépi tanulási modelljeivel érkezik, és ide tartoznak egy termék modelljei és eszközei: a ROMFS-ben lévő fájlok közvetlenül a flash memóriából vannak a memóriába leképezve, így egy nagy modell anélkül töltődik be, hogy RAM-ot fogyasztana egy másolathoz. Az IDE Tools → ROM File System almenüje ennek a szerkesztője.
13.1.14.1. A szerkesztő#
Az Edit ROMFS on OpenMV Cam beolvassa a csatlakoztatott kamera ROMFS-ét, és megnyitja a szerkesztőben: egy fájlfa, valamint gombok fájlok hozzáadásához, mappák létrehozásához, bejegyzések törléséhez és kibontásához, illetve egy modell egyenesen a model zoo-ból való behúzásához. Egy használati kijelző követi, hogy a tartalom mennyit foglal el a lap ROMFS partíciójából. Semmi nem érinti a kamerát, amíg meg nem nyomja a Commit gombot, amely megkérdezi, hogy az eredményt visszaírja-e a kamerára, vagy egy lemezen lévő .img fájlba mentse.
Két átalakítás automatikusan megtörténik a fájlok hozzáadásakor. Egy .py szkript a célkártyára .mpy bájtkóddá kerül keresztfordításra, egy modellfájl pedig a kártya NPU gyorsítójához kerül átalakításra, ha van ilyen, és a modellnek szüksége van rá. Ami a ROMFS-be kerül, az mindig az a forma, amelyet a kamera közvetlenül végrehajt. A fájlkezelőből behúzott fájlok ugyanezeken az átalakításokon mennek keresztül, abba a mappába, amelyre ejti őket – vagy a gyökérbe, ha üres helyre ejti.

Az Edit ROMFS párbeszédablak egy lap alapértelmezett tartalmát mutatja – a gépi tanulási modelljeit –, jobbra alul a használati kijelzővel.#
Az Open ROMFS File ugyanazt a szerkesztőt futtatja egy lemezen lévő .img képfájlon, nem pedig egy csatlakoztatott kamerán, a New ROMFS File pedig üresen indítja – mindkét esetben ez az út egy ROMFS kép offline előkészítéséhez, gyártásban való flasheléshez vagy egy egyedi firmware build mellé szállításhoz. A Reset ROMFS on OpenMV Cam visszaállítja a csatlakoztatott kamera ROMFS-ét a lap alapértelmezéseire, visszavonva minden szerkesztést.
A kamera ROMFS-ének olvasása és írása a rendszerbetöltőjén keresztül történik, egy megszakítható folyamatjelző párbeszédablakkal. Az olvasás megszakítása egyszerűen félbehagyja azt; az írás megszakítása részlegesen megírt ROMFS-t hagy hátra, ezért futtassa a Reset ROMFS-t, vagy véglegesítse újra, mielőtt támaszkodna rá. Az IDE mindkét esetben megkéri a rendszerbetöltőt a kamera újraindítására, és megvárja, amíg az visszatér – ha pedig a kamera ehelyett rendszerbetöltő módban marad, ezt jelzi, és a következő csatlakozáskor megjelenő rendszerbetöltő-párbeszédablak ugyanazokat a visszaállítási és szerkesztési műveleteket kínálja.
Lásd még
ROMFS-kép buildelése a ROMFS szerepéről egy alkalmazás szállításában – mit tegyen oda, és hogyan olvassa azt a kamera futásidőben.