14.1. Aygıt yazılımı geliştirme¶
Bu sayfalar aygıt yazılımı geliştiricileri içindir – yalnızca MicroPython betikleri yazmak değil, OpenMV Cam üzerinde çalışan C kodunu değiştirmek isteyenler. Tüm döngüyü kapsarlar: bir düzenleyici kurma, derleme araç zincirini kurma, desteklenen her kart için aygıt yazılımını derleme, derlemenizi bir kameraya flash’lama ve bir J-Link probu ile gerçek donanım üzerinde VS Code’da tek adımlı kaynak düzeyinde hata ayıklama.
Sonunda temiz bir makine alabilmeli, aygıt yazılımını derleyebilmeli, bir kameraya koyabilmeli, C kaynağında bir kesme noktası ayarlayabilmeli ve işlemciyi tek adımda çalıştırabilmelisiniz.
Not
OpenMV aygıt yazılımı, OpenMV makine görüşü kitaplığı, sürücüler ve kart portları eklenmiş bir MicroPython çatallamasıdır. Kaynak github.com/openmv/openmv adresinde bulunur. Betiklerde kullandığınız Python image / ml / csi modülleri bu depodaki C kodudur.
14.1.1. Derlemenin nasıl çalıştığı¶
Başlamadan önce anlamaya değer iki şey vardır, çünkü bunlar aşağıdaki her talimatı açıklar:
Derleme SDK güdümlüdür. ARM derleyicisini, CMake’i, Python’u veya ST araçlarını kendiniz kurmazsınız. Depo, tam bir OpenMV SDK sürümünü sabitler (
SDK_VERSIONdosyası – yazım anında1.6.0) vemake sdkbu SDK’yı indirip~/openmv-sdk-<version>/dizinine açar. Derleme daha sonra SDK’nıngcc,llvm,cmake,pythonve ST araç dizinleriniPATH‘in başına ekler. Bu, herkesin tamamen aynı araç zinciriyle derlediği ve ana makine kurulumunun çok küçük olduğu anlamına gelir.Yerel bir Windows derlemesi yoktur. Araç zinciri ve derleme betikleri yalnızca Linux (x86-64) ve macOS (arm64) hedefler. Windows’ta gerçek bir Linux ortamı olan WSL (Windows Subsystem for Linux) içinde derleme yaparsınız – dolayısıyla WSL kurulduktan sonra Windows kullanıcıları Linux talimatlarını tam olarak izler. Docker tabanlı bir derleme ve bir Linux VM de seçeneklerdir.
Desteklenen herhangi bir sistemdeki üst düzey sıra her zaman şöyledir:
Bir düzenleyici kurun (VS Code).
Linux benzeri bir kabuk edinin (yerel Linux, macOS veya Windows’ta WSL).
Depoyu ve alt modüllerini klonlayın.
make sdk– bir kerelik araç zinciri kurulumu.make -C lib/micropython/mpy-cross– bayt kodu derleyicisini derleyin.make TARGET=<board>– aygıt yazılımını derleyin.Onu flash’layın (OpenMV IDE veya
dfu-util).İsteğe bağlı olarak, bir J-Link bağlayın ve hata ayıklayın.
Aşağıdaki sayfalar her adımı sırayla anlatır.