Po ponad trzech latach rozwoju, funkcja "ROMFS" została w końcu ukończona. ROMFS definiuje rozszerzalny, tylko do odczytu, mapowany w pamięci system plików, który może zawierać dowolne zasoby, w tym wstępnie skompilowane pliki mpy. Pozwala na wykonywanie kodu bajtowego bezpośrednio z systemu plików, co znacznie przyspiesza importowanie i zmniejsza zużycie pamięci. Dodatkowo, zasoby takie jak czcionki mogą być używane bezpośrednio z ROMFS bez ładowania ich do pamięci RAM. Dzięki ROMFS, kod bajtowy może być teraz przechowywany w pamięci flash urządzenia i wykonywany bezpośrednio stamtąd. To sprawia, że MicroPython staje się znacznie bardziej praktyczny dla dużych projektów embedded.
Jak wyjaśnia użytkownik antirez z Hacker News, przed wprowadzeniem ROMFS, głównym ograniczeniem MicroPython nie był brak mocy obliczeniowej, ale niedobór pamięci RAM. Wcześniej kod bajtowy musiał być przechowywany w pamięci operacyjnej, co znacząco ograniczało rozmiar programów. Gdy projekt stawał się większy, pamięć RAM szybko się zapełniała, co stanowiło wąskie gardło.
Ta wersja wprowadza również zupełnie nowy port "alif" wspierający mikrokontrolery Alif Ensemble. Te mikrokontrolery oferują wiele rdzeni ARM, w tym procesory do uczenia maszynowego Ethos-U55, oraz kompleksowy zestaw peryferiów.
Asembler wbudowany w MicroPython teraz obsługuje 32-bitowy kod asemblerowy RISC-V. Umożliwia to pisanie małych fragmentów kodu maszynowego RISC-V, które mogą być wywoływane bezpośrednio z kodu Python.
MicroPython jest obecnie na tyle dojrzały, że w wielu przypadkach może skutecznie zastąpić języki niskopoziomowe, takie jak C, w projektach embedded na popularnych mikrokontrolerach jak RP2040/RP2050 czy ESP32. Jest solidny oraz wystarczająco szybki.
Użytkownik joezydeco z Hacker News wspomina, że dzięki płytce Adafruit Feather z MicroPython był w stanie stworzyć działający prototyp małego urządzenia embedded w ciągu jednego dnia, a do końca tygodnia miał już działającą płytkę PCB. Koszt mikrokontrolera RP2040 z pamięcią QSPI flash to zaledwie około dolara w zestawieniu materiałów (BOM).
Jedną z najważniejszych zalet MicroPython jest jego przenośność między różnymi mikrokontrolerami. Jak podkreśla antirez z Hacker News, możliwość zmiany mikrokontrolera bez konieczności przepisywania całego kodu jest nieoceniona. Jeśli jutro użytkownik zdecyduje się przejść z RP2040 na ESP32 z powodu kosztów lub potrzeby dodania WiFi, może dostosować swój kod w ciągu zaledwie kilku minut.
Źródło:
https://github.com/micropython/micropython/releases/tag/v1.25.0
Źródło komentarzy:
https://news.ycombinator.com/item?id=43991091
Źródło logotypu MicroPython:
https://en.wikipedia.org/wiki/File:Micropython-logo.svg
Czy byłoby zainteresowanie prostym kursem nowej wersji MicroPython? @p.kaczmarek2
Jak wyjaśnia użytkownik antirez z Hacker News, przed wprowadzeniem ROMFS, głównym ograniczeniem MicroPython nie był brak mocy obliczeniowej, ale niedobór pamięci RAM. Wcześniej kod bajtowy musiał być przechowywany w pamięci operacyjnej, co znacząco ograniczało rozmiar programów. Gdy projekt stawał się większy, pamięć RAM szybko się zapełniała, co stanowiło wąskie gardło.
Ta wersja wprowadza również zupełnie nowy port "alif" wspierający mikrokontrolery Alif Ensemble. Te mikrokontrolery oferują wiele rdzeni ARM, w tym procesory do uczenia maszynowego Ethos-U55, oraz kompleksowy zestaw peryferiów.
Asembler wbudowany w MicroPython teraz obsługuje 32-bitowy kod asemblerowy RISC-V. Umożliwia to pisanie małych fragmentów kodu maszynowego RISC-V, które mogą być wywoływane bezpośrednio z kodu Python.
MicroPython jest obecnie na tyle dojrzały, że w wielu przypadkach może skutecznie zastąpić języki niskopoziomowe, takie jak C, w projektach embedded na popularnych mikrokontrolerach jak RP2040/RP2050 czy ESP32. Jest solidny oraz wystarczająco szybki.
Użytkownik joezydeco z Hacker News wspomina, że dzięki płytce Adafruit Feather z MicroPython był w stanie stworzyć działający prototyp małego urządzenia embedded w ciągu jednego dnia, a do końca tygodnia miał już działającą płytkę PCB. Koszt mikrokontrolera RP2040 z pamięcią QSPI flash to zaledwie około dolara w zestawieniu materiałów (BOM).
Jedną z najważniejszych zalet MicroPython jest jego przenośność między różnymi mikrokontrolerami. Jak podkreśla antirez z Hacker News, możliwość zmiany mikrokontrolera bez konieczności przepisywania całego kodu jest nieoceniona. Jeśli jutro użytkownik zdecyduje się przejść z RP2040 na ESP32 z powodu kosztów lub potrzeby dodania WiFi, może dostosować swój kod w ciągu zaledwie kilku minut.
Źródło:
https://github.com/micropython/micropython/releases/tag/v1.25.0
Źródło komentarzy:
https://news.ycombinator.com/item?id=43991091
Źródło logotypu MicroPython:
https://en.wikipedia.org/wiki/File:Micropython-logo.svg
Czy byłoby zainteresowanie prostym kursem nowej wersji MicroPython? @p.kaczmarek2
Fajne? Ranking DIY