v3.9.4¶
v3.9.4 lisää buzzer-moduulin, Himax HM01B0 -liiketunnistuksen ioctl-kutsut (ja vähävirtaiset liikkeestä herättävät esimerkit), MT9V034:n lukuikkunan hallinnan, Ethernetin vähävirtatoiminnot, OV7670-kamera-ajurin sekä Arduino Nano 33 BLE Sense -kameran. Se tuo myös suuren joukon JPEG- / LCD- / TV-nopeutuksia. VSYNC-ulostulon API korvattiin takaisinkutsulla ja MT9V034:n vahvistus-/valotuslaskenta korjattiin — lue alla olevat rikkovat muutokset.
Kohokohdat¶
Buzzer-moduuli — uusi
buzzer-moduuli (freq(),duty(),RESONANT_FREQ) OpenMV Pure Thermalissa.HM01B0-liiketunnistus — uudet Himax-liiketunnistuksen ioctl-kutsut sekä vähävirtainen liikkeestä herättävä esimerkki.
MT9V034:n lukuikkuna — hallitse globaalin sulkimen lukuikkunaa
sensor.ioctl()-kutsulla.Uudet kamerat / kortit — perustason OV7670-ajuri, Arduino Nano 33 BLE Sense -kamera ja Bormio-kortti.
Nopeampi liukuhihna — uudelleenkirjoitettu SIMD JPEG -enkooderi, nopeampi debayerointi ja suuret LCD/TV-siirtonopeutukset.
Rikkova:
sensor.set_vsync_output()korvattiinsensor.set_vsync_callback()-kutsulla ja MT9V034:n vahvistus-/valotuslaskenta korjattiin — katso rikkovat muutokset.
Uudet ominaisuudet¶
Buzzer — lisätty
buzzer-moduuli, jossabuzzer.freq(),buzzer.duty()jabuzzer.RESONANT_FREQ-vakio (OpenMV Pure Thermal).HM01B0-liiketunnistus — lisätty
IOCTL_HIMAX_MD_ENABLE/MD_WINDOW/MD_THRESHOLD/MD_CLEARjaIOCTL_HIMAX_OSC_ENABLE-ioctl-kutsut, mukana Himax-liiketunnistuksen esimerkki sekähimax_wakeup_on_motion_detection.py-vähävirtainen herätysesimerkki.MT9V034:n lukuikkuna — lisätty
IOCTL_SET_READOUT_WINDOW/IOCTL_GET_READOUT_WINDOWMT9V034:n lukuikkunan hallintaansensor.ioctl()-kutsulla.Ethernetin vähävirtatila — lisätty Ethernetin virrankatkaisu- / vähävirtatoiminnot.
Portenta — lisätty ulkoisen oskillaattorin käyttöönotto-/poiskytkentätakaisinkutsut.
Muut muutokset ja parannukset¶
Kirjoitettu JPEG-enkooderi uudelleen SIMD:llä ja nopeutettu Bayer→YCbCr-enkoodausta, pidetty laitteistopohjainen JPEG-ydin virroitettuna skriptin suorituksen aikana, nopeutettu debayerointia (~19,5 ms VGA:lle), siirretty JPEG-pakkaus MDMA:lle, kiihdytetty TV/LCD-siirtopolkuja SIMD:llä/tehokkaalla DMA:lla ja vähennetty merkittävästi SPI LCD -väylän käyttöä. Lisätty USB3320 ULPI PHY -ajuri suurnopeus-USB:lle.
Vikakorjaukset¶
Kamera ja sensorit:
Korjattu HM01B0-ajurin alustus/striimaus ja viritetty sen AE-tavoite / maksimivahvistus, korjattu MT9V034:n AGC/AEC-vahvistuksen rajoitus ja korjattu OV5640:n autofokus-laiteohjelmiston lataus (tavujärjestys).
Näyttö:
Korjattu yli 64 kt:n SPI LCD DMA -siirrot, LCD-ulostulon polariteetti ja LCD-väylän vakaus (AXI QOS).
Järjestelmä ja yhteydet:
Korjattu CYW43 WiFi -ajurin käyttämä SDMMC-instanssi (kortilla määritetyllä SDMMC-instanssilla), parannettu FLIR Lepton -DMA:n tehokkuutta (VOSPI nostettu 20 MHz:iin H7:llä), korjattu Portentan vähävirta- / valmiustilan käyttäytyminen (PMIC SW1 -virtaraja, Ethernetin ja ULPI:n vähävirta), saatu RTSP-palvelin sietämään epäjärjestyksessä saapuvat
CSeq- jaPLAY Range-otsakkeet (FFPLAY), korjattu linkkerin pinon 8-tavuinen EABI-kohdistus ja korjattu rikkinäinen import Portentanmqtt_sub.py-esimerkissä.
Laitteisto- ja korttituki¶
OV7670-kamerasensori — perustason ajuri.
Arduino Nano 33 BLE Sense — kamerasensoriajuri (nrf-portti) reset-nastan ja I2C-väylän korjauksilla.
HM01B0 — lisätty 320x320-resoluutio.
Bormio — PLL-kellokonfiguraatio, flash-muistin asettelu ja GPIO PORT K (otettu käyttöön myös Portentassa).
USB3320 ULPI PHY — suurnopeus-USB.
Rikkovat API-muutokset¶
Käyttäjälle näkyvät API-rikot v3.9.3:n ja v3.9.4:n välillä. Laajuus: Python-C-moduulit kansiossa modules/ ja Python-kirjastot kansiossa scripts/libraries/.
Jokainen muutos on merkitty vaikutuksensa mukaan:
major — vaikuttaa useimpiin ominaisuutta käyttäneisiin skripteihin; koodi on portattava.
behavior — sama API, eri tulokset; tarkista viritetyt skriptit uudelleen.
Muutokset on ryhmitelty vaikutuksen mukaan tässä järjestyksessä. Jos haluat vain portata koodisi, siirry lopussa olevaan siirtymistarkistuslistaan. Jokainen commit-tiiviste linkittää sen diffiin GitHubissa.
VSYNC-ulostulo korvattu takaisinkutsulla (major)¶
sensor.set_vsync_output(pin) poistettiin ja korvattiin sensor.set_vsync_callback(callback)-kutsulla. VSYNC-linja ei enää ohjaa Pin-nastaa suoraan; sen sijaan Python-kutsuttavaa kutsutaan VSYNC-tilalla, ja takaisinkutsusi vaihtaa itse Pin-nastan tilaa. Koodi, joka käytti sensor.set_vsync_output()-kutsua, on portattava (katso päivitetty vsync_gpio_output.py-esimerkki).
Commitit: 5bbe25c20
MT9V034:n vahvistus-/valotuslaskenta korjattu (behavior)¶
MT9V034:n kellonopeus ja vahvistus-/valotuslaskenta korjattiin, joten sensor.set_auto_gain() / sensor.set_auto_exposure() tuottavat nyt tarkkoja (ja siksi erilaisia) arvoja kuin ennen. Skriptit, jotka kovakoodasivat kompensoivia vahvistus-/valotusarvoja kiertääkseen vanhaa virheellistä laskentaa MT9V034:n globaalin sulkimen kameroissa, kannattaa poistaa nuo kiertotavat ja virittää uudelleen.
Commitit: 4420536c4
Siirtymistarkistuslista¶
Siisti portaus v3.9.4:ään edellyttää tyypillisesti seuraavaa:
Korvaa
sensor.set_vsync_output(pin)sensor.set_vsync_callback(callback)-kutsulla ja vaihdaPin-nastan tilaa takaisinkutsun sisältä (VSYNC-muutos).Viritä uudelleen mahdolliset MT9V034:n vahvistus-/valotuskiertotavat korjattua laskentaa vasten (MT9V034-muutos).
Kaikki muut skriptit toimivat sellaisinaan.