{"id":132818,"date":"2026-05-05T12:00:51","date_gmt":"2026-05-05T10:00:51","guid":{"rendered":"https:\/\/riverdi.com\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve"},"modified":"2026-09-08T15:34:37","modified_gmt":"2026-09-08T13:34:37","slug":"uruchamianie-lvgl-na-wyswietlaczu-eve","status":"publish","type":"post","link":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve","title":{"rendered":"Uruchamianie LVGL na wy\u015bwietlaczu EVE"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_87_1 counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Prze\u0142\u0105cznik Spisu Tre\u015bci\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #002175;color:#002175\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #002175;color:#002175\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Jak_uruchomic_LVGL_na_wyswietlaczu_Riverdi_EVE\" >Jak uruchomi\u0107 LVGL na wy\u015bwietlaczu Riverdi EVE<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Uzyty_sprzet\" >U\u017cyty sprz\u0119t<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Wymagania_programowe\" >Wymagania programowe<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Zrozumienie_architektury_renderowania_w_EVE\" >Zrozumienie architektury renderowania w EVE<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Najwazniejsze_bloki_pamieci_EVE\" >Najwa\u017cniejsze bloki pami\u0119ci EVE<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Jak_LVGL_wpisuje_sie_w_proces\" >Jak LVGL wpisuje si\u0119 w proces<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Tworzenie_projektu_STM32\" >Tworzenie projektu STM32<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Inicjalizacja_LVGL_i_sterownika_wyswietlacza_EVE\" >Inicjalizacja LVGL i sterownika wy\u015bwietlacza EVE<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Wlaczanie_obslugi_ekranu_dotykowego\" >W\u0142\u0105czanie obs\u0142ugi ekranu dotykowego<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Uruchomienie_pierwszego_demo_LVGL\" >Uruchomienie pierwszego demo LVGL<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\/#Podsumowanie\" >Podsumowanie<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Jak_uruchomic_LVGL_na_wyswietlaczu_Riverdi_EVE\"><\/span>Jak uruchomi\u0107 LVGL na wy\u015bwietlaczu Riverdi EVE<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Uruchamianie nowoczesnej GUI na mikrokontrolerze zazwyczaj wi\u0105\u017ce si\u0119 z konieczno\u015bci\u0105 radzenia sobie z buforami ramki, ograniczeniami pami\u0119ci i kompromisami w zakresie wydajno\u015bci.<\/p>\n<p>Dzi\u0119ki rozwi\u0105zaniu EVE od naszego partnera Bridgetek renderowanie grafiki HMI w wysokiej rozdzielczo\u015bci, obs\u0142uga d\u017awi\u0119ku i sterowanie dotykowe przechodzi w r\u0119ce procesora graficznego (GPU). Jednocze\u015bnie LVGL, r\u00f3wnie\u017c partner Riverdi, zapewnia elastyczny i powszechnie stosowany framework interfejsu u\u017cytkownika. <\/p>\n<p>Efekt: dzi\u0119ki takiej konfiguracji mo\u017cesz tworzy\u0107 z\u0142o\u017cone interfejsy bez wykorzystywania pe\u0142nej mocy MCU, a niedrogie procesory mog\u0105 obs\u0142ugiwa\u0107 zaawansowane, profesjonalnie wygl\u0105daj\u0105ce kolorowe wy\u015bwietlacze przy minimalnym obci\u0105\u017ceniu<\/p>\n<p>W tym poradniku wyja\u015bniamy, jak uruchomi\u0107 LVGL na inteligentnym wy\u015bwietlaczu Riverdi EVE4 przy u\u017cyciu p\u0142ytki ewaluacyjnej Riverdi opartej na uk\u0142adzie STM32F4.<\/p>\n<p>W tym przyk\u0142adzie wykorzystano 7-calowy wy\u015bwietlacz Riverdi <a href=\"https:\/\/riverdi.com\/pl\/produkt\/eve4-intelligent-display-rvt70hsbnwc00-b-7-calowy-panel-dotykowy-pcap-z-bondingem-optycznym-uxtouch\">RVT70HSBNWC00-B<\/a> pod\u0142\u0105czony przez <strong>interfejs SPI za po\u015brednictwem interfejsu RiBUS.<\/strong><\/p>\n<p>Celem tego samouczka jest pokazanie, jak:<\/p>\n<ul>\n<li>zainicjuj LVGL na MCU hosta<\/li>\n<li>po\u0142\u0105cz LVGL z silnikiem graficznym EVE<\/li>\n<li>renderowa\u0107 wid\u017cety LVGL na wy\u015bwietlaczu<\/li>\n<li>w\u0142\u0105cz obs\u0142ug\u0119 dotykow\u0105<\/li>\n<\/ul>\n<p>W przeciwie\u0144stwie do tradycyjnych wy\u015bwietlaczy wbudowanych, architektura EVE nie wymaga, \u017ceby MCU hosta renderowa\u0142 ca\u0142y bufor ramki. Zamiast tego MCU wysy\u0142a polecenia rysowania do procesora graficznego EVE, kt\u00f3ry renderuje ostateczny obraz. <\/p>\n<p>To znacznie zmniejsza zu\u017cycie pami\u0119ci i obci\u0105\u017cenie procesora MCU.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Uzyty_sprzet\"><\/span>U\u017cyty sprz\u0119t<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p><img decoding=\"async\" class=\"alignnone wp-image-129399 size-full\" src=\"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_Grafika_POMIEDZY-TEKSTY_1-3.png\" alt=\"\" width=\"826\" height=\"544\" srcset=\"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_Grafika_POMIEDZY-TEKSTY_1-3.png 826w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_Grafika_POMIEDZY-TEKSTY_1-3-300x198.png 300w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_Grafika_POMIEDZY-TEKSTY_1-3-768x506.png 768w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_Grafika_POMIEDZY-TEKSTY_1-3-600x395.png 600w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_Grafika_POMIEDZY-TEKSTY_1-3-64x42.png 64w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><\/p>\n<p>W tym poradniku u\u017cywamy EVE4 (BT817Q). Zgodnie z dokumentacj\u0105 LVGL powinno to dzia\u0142a\u0107 r\u00f3wnie\u017c na innych wersjach EVE, ale nie zosta\u0142o to jeszcze przetestowane. <\/p>\n<p>W tym samouczku wykorzystano nast\u0119puj\u0105ce elementy sprz\u0119towe.<\/p>\n<p><strong>Riverdi RVT70HSBNWC00-B<\/strong><\/p>\n<ul>\n<li>7-calowy inteligentny wy\u015bwietlacz EVE4<\/li>\n<li>Rozdzielczo\u015b\u0107: 1280 \u00d7 600<\/li>\n<li>Wbudowany procesor graficzny BT817Q<\/li>\n<li>Ekran pojemno\u015bciowy PCAP<\/li>\n<\/ul>\n<p><strong>P\u0142ytka ewaluacyjna Riverdi<\/strong><\/p>\n<ul>\n<li>Mikrokontroler STM32F4<\/li>\n<\/ul>\n<p><strong>ST-Link<\/strong><\/p>\n<ul>\n<li>s\u0142u\u017cy do programowania i debugowania<\/li>\n<\/ul>\n<p><strong>P\u0142aski kabel RiBUS<\/strong><\/p>\n<ul>\n<li>s\u0142u\u017cy do komunikacji SPI mi\u0119dzy hostem a modu\u0142em EVE<\/li>\n<\/ul>\n<p><strong>Kable micro-USB<\/strong><\/p>\n<ul>\n<li>jeden dla ST-Link<\/li>\n<li>jeden do zasilania p\u0142ytki ewaluacyjnej<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"Wymagania_programowe\"><\/span>Wymagania programowe<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Zanim zaczniesz proces integracji, musisz przygotowa\u0107 kilka komponent\u00f3w oprogramowania. Projekt zosta\u0142 stworzony w \u015brodowisku programistycznym <strong>STM32CubeIDE<\/strong>, a framework interfejsu graficznego zapewnia <strong>LVGL<\/strong>. Komunikacja z silnikiem graficznym EVE odbywa si\u0119 za po\u015brednictwem bibliotek wsparcia Riverdi EVE, kt\u00f3re realizuj\u0105 interfejs niskopoziomowy mi\u0119dzy MCU hosta a procesorem graficznym BT817.  <\/p>\n<p>W tej konfiguracji LVGL nie renderuje pikseli bezpo\u015brednio do bufora ramki. Zamiast tego operacje rysowania LVGL s\u0105 przekszta\u0142cane na polecenia EVE, kt\u00f3re s\u0105 wysy\u0142ane do procesora graficznego przez interfejs SPI. Urz\u0105dzenie EVE nast\u0119pnie wykonuje te polecenia, \u017ceby wy\u015bwietli\u0107 ostateczn\u0105 klatk\u0119 na wy\u015bwietlaczu.  <\/p>\n<p>Potrzebne s\u0105 nast\u0119puj\u0105ce narz\u0119dzia:<\/p>\n<p><strong>STM32CubeIDE<\/strong> (lub inne \u015brodowisko IDE)<\/p>\n<ul>\n<li>\u015brodowisko programistyczne dla projekt\u00f3w STM32<\/li>\n<li>s\u0142u\u017cy do konfiguracji urz\u0105dze\u0144 peryferyjnych, kompilacji projektu i programowania MCU<\/li>\n<\/ul>\n<p><strong>Biblioteka graficzna LVGL<\/strong><\/p>\n<ul>\n<li>wbudowany framework GUI s\u0142u\u017c\u0105cy do tworzenia interfejsu u\u017cytkownika<\/li>\n<li>oferuje wid\u017cety, system uk\u0142ad\u00f3w oraz obs\u0142ug\u0119 zdarze\u0144<\/li>\n<\/ul>\n<p><strong>Biblioteki pomocnicze Riverdi EVE<\/strong><\/p>\n<ul>\n<li>zapewnia komunikacj\u0119 na niskim poziomie z procesorem graficznym EVE]<\/li>\n<li>obs\u0142uguje transakcje SPI i dost\u0119p do bufora FIFO polece\u0144<\/li>\n<\/ul>\n<p><strong>Git<\/strong><\/p>\n<ul>\n<li>s\u0142u\u017cy do pobierania repozytori\u00f3w i przyk\u0142adowych projekt\u00f3w<\/li>\n<\/ul>\n<p>\u017beby znale\u017a\u0107 ten projekt, zajrzyj na <a href=\"https:\/\/github.com\/riverdi\">GitHub Riverdi<\/a> i poszukaj repozytorium <a href=\"https:\/\/github.com\/riverdi\/EVE-LVGL\">EVE-LVGL<\/a>.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Zrozumienie_architektury_renderowania_w_EVE\"><\/span>Zrozumienie architektury renderowania w EVE<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Kluczow\u0105 r\u00f3\u017cnic\u0105 mi\u0119dzy wy\u015bwietlaczami EVE a tradycyjnymi wy\u015bwietlaczami wbudowanymi jest spos\u00f3b generowania ramek. W wi\u0119kszo\u015bci system\u00f3w wbudowanych mikrokontroler wykonuje renderowanie pikseli do bufora ramki, z kt\u00f3rego kontroler wy\u015bwietlacza na bie\u017c\u0105co odczytuje dane w celu od\u015bwie\u017cania ekranu <\/p>\n<p>Urz\u0105dzenia EVE dzia\u0142aj\u0105 na innej zasadzie. Zamiast wysy\u0142a\u0107 bufor ramki, MCU host wysy\u0142a polecenia rysowania do procesora graficznego. Polecenia te okre\u015blaj\u0105, co ma si\u0119 pojawi\u0107 na ekranie, a silnik graficzny EVE sam generuje ostateczne piksele.  <\/p>\n<p>To znacznie zmniejsza zu\u017cycie pami\u0119ci i wymagania dotycz\u0105ce przepustowo\u015bci w MCU.<\/p>\n<p>Renderowana ramka jest definiowana przez struktur\u0119 zwan\u0105 display list. Display list to sekwencja polece\u0144 dla procesora graficznego, kt\u00f3re s\u0105 wykonywane w ka\u017cdej ramce w celu wygenerowania ostatecznego obrazu. <\/p>\n<p>Uproszczony potok wy\u015bwietlania wygl\u0105da wi\u0119c tak:<\/p>\n<p>MCU \u2192 polecenia rysowania \u2192 procesor graficzny EVE \u2192 panel LCD<\/p>\n<p>To w\u0142a\u015bnie dzi\u0119ki tej architekturze opartej na poleceniach skomplikowane interfejsy graficzne mog\u0105 dzia\u0142a\u0107 na stosunkowo niewielkich mikrokontrolerach.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Najwazniejsze_bloki_pamieci_EVE\"><\/span>Najwa\u017cniejsze bloki pami\u0119ci EVE<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Wewn\u0119trznie procesor graficzny EVE korzysta z kilku obszar\u00f3w pami\u0119ci do przetwarzania polece\u0144 graficznych.<\/p>\n<p><strong>RAM_DL<\/strong><\/p>\n<ul>\n<li>zapisuje display list u\u017cywan\u0105 do renderowania bie\u017c\u0105cej ramki<\/li>\n<\/ul>\n<p><strong>RAM_G<\/strong><\/p>\n<ul>\n<li>pami\u0119\u0107 graficzna og\u00f3lnego przeznaczenia, u\u017cywana do przechowywania obraz\u00f3w, czcionek i innych zasob\u00f3w graficznych<\/li>\n<\/ul>\n<p><strong>Command FIFO<\/strong><\/p>\n<ul>\n<li>bufor u\u017cywany przez koprocesor do odbierania polece\u0144 z MCU<\/li>\n<\/ul>\n<p>MCU hosta zapisuje polecenia do bufora FIFO polece\u0144. Koprocesor EVE interpretuje te polecenia i tworzy display list przechowywan\u0105 w pami\u0119ci RAM_DL. Podczas cyklu od\u015bwie\u017cania ekranu procesor graficzny (GPU) wykonuje display list i generuje ostateczn\u0105 ramk\u0119.  <\/p>\n<h3><span class=\"ez-toc-section\" id=\"Jak_LVGL_wpisuje_sie_w_proces\"><\/span>Jak LVGL wpisuje si\u0119 w proces<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Gdy LVGL dzia\u0142a z tradycyjnymi wy\u015bwietlaczami, wykonuje renderowanie pikseli do bufora ramki w pami\u0119ci MCU. W przypadku wy\u015bwietlaczy EVE proces ten przebiega inaczej. <\/p>\n<p>Operacje rysowania LVGL s\u0105 przekszta\u0142cane na polecenia EVE dla procesora graficznego, kt\u00f3re s\u0105 wysy\u0142ane do urz\u0105dzenia przez interfejs SPI. Nast\u0119pnie procesor graficzny tworzy display list i wykonuje renderowanie ramki wewn\u0119trznie. <\/p>\n<p>Oto jak wygl\u0105da wynikowy przebieg:<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-129407 size-full\" src=\"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_grafika_POMIEDZY-TEKSTY_2-2.png\" alt=\"\" width=\"826\" height=\"320\" srcset=\"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_grafika_POMIEDZY-TEKSTY_2-2.png 826w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_grafika_POMIEDZY-TEKSTY_2-2-300x116.png 300w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_grafika_POMIEDZY-TEKSTY_2-2-768x298.png 768w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_grafika_POMIEDZY-TEKSTY_2-2-600x232.png 600w, https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_grafika_POMIEDZY-TEKSTY_2-2-64x25.png 64w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><\/p>\n<p>Dzi\u0119ki temu LVGL mo\u017ce obs\u0142ugiwa\u0107 z\u0142o\u017cone interfejsy u\u017cytkownika, a jednocze\u015bnie zu\u017cycie pami\u0119ci przez MCU pozostaje na bardzo niskim poziomie.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Tworzenie_projektu_STM32\"><\/span>Tworzenie projektu STM32<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Kolejnym krokiem jest przygotowanie projektu rozwojowego dla p\u0142ytki ewaluacyjnej Riverdi. MCU host b\u0119dzie obs\u0142ugiwa\u0142 framework LVGL i komunikowa\u0142 si\u0119 z procesorem graficznym EVE za pomoc\u0105 interfejsu SPI. <\/p>\n<p>Zacznij od utworzenia nowego projektu STM32 w STM32CubeIDE dla mikrokontrolera u\u017cywanego na p\u0142ytce ewaluacyjnej. Po utworzeniu projektu skonfiguruj urz\u0105dzenia peryferyjne potrzebne do komunikacji z urz\u0105dzeniem EVE. <\/p>\n<p>Najwa\u017cniejszym interfejsem jest SPI, kt\u00f3ry s\u0142u\u017cy do przesy\u0142ania polece\u0144 i danych mi\u0119dzy MCU a kontrolerem graficznym EVE.<\/p>\n<p>Opr\u00f3cz interfejsu SPI trzeba skonfigurowa\u0107 kilka sygna\u0142\u00f3w steruj\u0105cych jako piny GPIO. Sygna\u0142y te s\u0142u\u017c\u0105 do sterowania stanem zasilania urz\u0105dzenia EVE oraz do zarz\u0105dzania komunikacj\u0105 z procesorem graficznym (GPU). <\/p>\n<p>Typowe sygna\u0142y wymagane przez interfejs EVE to mi\u0119dzy innymi:<\/p>\n<p><strong>CS<\/strong><\/p>\n<ul>\n<li>sygna\u0142 Chip Select dla komunikacji SPI<\/li>\n<\/ul>\n<p><strong>PD<\/strong><\/p>\n<ul>\n<li>pin steruj\u0105cy wy\u0142\u0105czaniem, s\u0142u\u017c\u0105cy do resetowania lub wy\u0142\u0105czenia i ponownego w\u0142\u0105czenia urz\u0105dzenia EVE<\/li>\n<\/ul>\n<p><strong>INT<\/strong><\/p>\n<ul>\n<li>linia przerwa\u0144 u\u017cywana przez procesor graficzny do sygnalizowania zdarze\u0144 do MCU hosta<\/li>\n<\/ul>\n<p>Po skonfigurowaniu interfejsu SPI i sygna\u0142\u00f3w GPIO mo\u017cna skompilowa\u0107 projekt i wgra\u0107 go na p\u0142ytk\u0119, \u017ceby sprawdzi\u0107, czy podstawowa konfiguracja sprz\u0119towa dzia\u0142a.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Inicjalizacja_LVGL_i_sterownika_wyswietlacza_EVE\"><\/span>Inicjalizacja LVGL i sterownika wy\u015bwietlacza EVE<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Gdy \u015brodowisko projektowe b\u0119dzie ju\u017c gotowe, trzeba zainicjowa\u0107 bibliotek\u0119 LVGL. Ten krok przygotowuje wewn\u0119trzne struktury LVGL i w\u0142\u0105cza framework graficzny. <\/p>\n<pre style=\"white-space: break-spaces; padding: 15px; border: solid 1px; word-wrap: break-word; background-color: #f2f6ff;\">lv_init();\n<\/pre>\n<p>LVGL udost\u0119pnia specjalny sterownik dla wy\u015bwietlacza dla procesor\u00f3w graficznych EVE. Sterownik ten przekszta\u0142ca operacje rysowania LVGL na polecenia zrozumia\u0142e dla silnika graficznego EVE. <\/p>\n<p>Sterownik wy\u015bwietlacza tworzy si\u0119 za pomoc\u0105 funkcji <em>lv_draw_eve_display_create()<\/em>.<\/p>\n<pre style=\"white-space: break-spaces; padding: 15px; border: solid 1px; word-wrap: break-word; background-color: #f2f6ff;\">lv_display_t * disp = lv_draw_eve_display_create(\n  1280,\n  600,\n  LV_DISPLAY_RENDER_MODE_DIRECT\n);\n<\/pre>\n<p>Te parametry okre\u015blaj\u0105 rozdzielczo\u015b\u0107 wy\u015bwietlacza. W tym przyk\u0142adzie u\u017cywamy rozdzielczo\u015bci <strong>1280&#215;600<\/strong> wy\u015bwietlacza Riverdi RVT70HSBNWC00-B. <\/p>\n<h3><span class=\"ez-toc-section\" id=\"Wlaczanie_obslugi_ekranu_dotykowego\"><\/span>W\u0142\u0105czanie obs\u0142ugi ekranu dotykowego<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Wy\u015bwietlacz Riverdi EVE ma wbudowany kontroler dotyku pojemno\u015bciowy, do kt\u00f3rego mo\u017cna uzyska\u0107 dost\u0119p przez interfejs GPU EVE.<\/p>\n<p>LVGL udost\u0119pnia funkcj\u0119 pomocnicz\u0105, kt\u00f3ra tworzy sterownik urz\u0105dzenia wej\u015bciowego po\u0142\u0105czonego z silnikiem dotykowym EVE.<\/p>\n<pre style=\"white-space: break-spaces; padding: 15px; border: solid 1px; word-wrap: break-word; background-color: #f2f6ff;\">lv_draw_eve_touch_create(disp);\n<\/pre>\n<p>Po wywo\u0142aniu tej funkcji wsp\u00f3\u0142rz\u0119dne dotykowe wykryte przez kontroler EVE s\u0105 automatycznie przekazywane do LVGL i przekszta\u0142cane w zdarzenia wej\u015bciowe.<\/p>\n<p>Dzi\u0119ki temu wid\u017cety LVGL, takie jak przyciski, suwaki i listy, mog\u0105 reagowa\u0107 na dzia\u0142ania u\u017cytkownika.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Uruchomienie_pierwszego_demo_LVGL\"><\/span>Uruchomienie pierwszego demo LVGL<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Po zainicjowaniu sterownik\u00f3w wy\u015bwietlacza i wej\u015bcia system jest gotowy do renderowania pierwszego interfejsu graficznego.<\/p>\n<p>Prostym sposobem na sprawdzenie, czy wszystko dzia\u0142a, jest stworzenie ekranu z kilkoma standardowymi wid\u017cetami LVGL. Poni\u017cej znajdziesz kod demonstracyjny: <\/p>\n<pre style=\"white-space: break-spaces; padding: 15px; border: solid 1px; word-wrap: break-word; background-color: #f2f6ff;\">static void create_test_ui(void)\n{\n  lv_obj_t * scr = lv_screen_active();\n\n  \/* Informacje og\u00f3lne *\/\n  lv_obj_set_style_bg_color(scr, COLOR_BG, 0);\n  lv_obj_set_style_bg_opa(scr, LV_OPA_COVER, 0);\n\n  \/* Tytu\u0142 *\/\n  lv_obj_t * title = lv_label_create(scr);\n lv_label_set_text(title, \"LVGL on Riverdi EVE\");\n  lv_obj_set_style_text_font(title, &lv_font_montserrat_44, 0);\n  lv_obj_set_style_text_color(title, COLOR_TEXT, 0);\n  lv_obj_align(title, LV_ALIGN_TOP_MID, 0, 48);\n\n  \/* Podtytu\u0142 *\/\n  lv_obj_t * subtitle = lv_label_create(scr);\n lv_label_set_text(subtitle, \"Basic widget compatibility test\");\n lv_obj_set_style_text_font(subtitle, &lv_font_montserrat_24, 0);\n  lv_obj_set_style_text_color(subtitle, COLOR_TEXT, 0);\n  lv_obj_align(subtitle, LV_ALIGN_TOP_MID, 0, 100);\n\n  \/* --- punkty odniesienia uk\u0142adu --- *\/\n  int start_y = 170;\n  int col_left = 180;\n  int col_right = 640;\n\n  \/* Przycisk *\/\n  lv_obj_t * btn = lv_button_create(scr);\n  lv_obj_set_size(btn, 200, 60);\n  lv_obj_align(btn, LV_ALIGN_TOP_LEFT, col_left, start_y);\n  lv_obj_set_style_bg_color(btn, COLOR_ACCENT, 0);\n\n  lv_obj_t * btn_label = lv_label_create(btn);\n lv_label_set_text(btn_label, \"Button\");\n  lv_obj_center(btn_label);\n\n \/* Slider *\/\n  lv_obj_t * slider = lv_slider_create(scr);\n  lv_obj_set_width(slider, 260);\n  lv_obj_align(slider, LV_ALIGN_TOP_LEFT, col_right, start_y + 15);\n  lv_slider_set_value(slider, 45, LV_ANIM_OFF);\n\n  lv_obj_set_style_bg_color(slider, COLOR_WIDGET, LV_PART_MAIN);\n  lv_obj_set_style_bg_color(slider, COLOR_ACCENT, LV_PART_INDICATOR);\n\n \/* Slider *\/\n  lv_obj_t * sw = lv_switch_create(scr);\n  lv_obj_align(sw, LV_ALIGN_TOP_LEFT, col_left, start_y + 120);\n\n  lv_obj_t * sw_label = lv_label_create(scr);\n lv_label_set_text(sw_label, \"Switch\");\n  lv_obj_set_style_text_color(sw_label, COLOR_TEXT, 0);\n  lv_obj_align_to(sw_label, sw, LV_ALIGN_OUT_RIGHT_MID, 20, 0);\n\n \/* Checkbox *\/\n lv_obj_t * cb = lv_checkbox_create(scr);\n lv_checkbox_set_text(cb, \"Checkbox\");\n  lv_obj_set_style_text_color(cb, COLOR_TEXT, 0);\n  lv_obj_align(cb, LV_ALIGN_TOP_LEFT, col_right, start_y + 120);\n\n  \/* Bar *\/\n  lv_obj_t * bar = lv_bar_create(scr);\n  lv_obj_set_size(bar, 500, 20);\n  lv_obj_align(bar, LV_ALIGN_TOP_MID, 0, start_y + 220);\n  lv_bar_set_value(bar, 70, LV_ANIM_OFF);\n\n  lv_obj_set_style_bg_color(bar, COLOR_WIDGET, LV_PART_MAIN);\n  lv_obj_set_style_bg_color(bar, COLOR_ACCENT, LV_PART_INDICATOR);\n\n  lv_obj_t * bar_label = lv_label_create(scr);\n lv_label_set_text(bar_label, \"Bar\");\n  lv_obj_set_style_text_color(bar_label, COLOR_TEXT, 0);\n  lv_obj_align_to(bar_label, bar, LV_ALIGN_OUT_TOP_MID, 0, -8);\n}\n\n<\/pre>\n<h2><span class=\"ez-toc-section\" id=\"Podsumowanie\"><\/span>Podsumowanie<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>W tym poradniku pokazali\u015bmy, jak uruchomi\u0107 LVGL na wy\u015bwietlaczu Riverdi EVE4, u\u017cywaj\u0105c p\u0142ytki ewaluacyjnej Riverdi jako platformy hosta.<\/p>\n<p>Zamiast renderowa\u0107 tradycyjny bufor ramki na MCU, system wykorzystuje silnik graficzny EVE do generowania ostatecznego obrazu. Mikrokontroler g\u0142\u00f3wny wysy\u0142a polecenia rysowania przez interfejs SPI, a procesor graficzny BT817 tworzy display list i renderuje klatk\u0119 na ekranie. <\/p>\n<p>Ta architektura pozwala na uruchamianie z\u0142o\u017conych graficznych interfejs\u00f3w u\u017cytkownika na stosunkowo niewielkich mikrokontrolerach, przy jednoczesnym utrzymaniu niskiego zu\u017cycia pami\u0119ci i obci\u0105\u017cenia procesora.<\/p>\n<p>Gdy sterownik wy\u015bwietlacza zostanie poprawnie zainicjowany, mo\u017cna u\u017cywa\u0107 LVGL do tworzenia pe\u0142noprawnych aplikacji graficznych tak samo, jak w przypadku innych obs\u0142ugiwanych sterownik\u00f3w wy\u015bwietlacza.<\/p>\n<p>Od tego momentu programi\u015bci mog\u0105 zacz\u0105\u0107 tworzy\u0107 w\u0142asne interfejsy, korzystaj\u0105c z wid\u017cet\u00f3w LVGL, uk\u0142ad\u00f3w i mechanizm\u00f3w obs\u0142ugi zdarze\u0144.<\/p>\n<p>Dalsze kroki mog\u0105 obejmowa\u0107:<\/p>\n<ul>\n<li>Wdra\u017canie niestandardowych ekran\u00f3w i logiki aplikacji<\/li>\n<li>Dodawanie obraz\u00f3w i czcionek zapisanych w pami\u0119ci EVE RAM_G<\/li>\n<li>Optymalizacja komunikacji SPI w celu zwi\u0119kszenia wydajno\u015bci renderowania<\/li>\n<\/ul>\n<p>\u017beby to zrobi\u0107, zajrzyj na <a href=\"https:\/\/lvgl.io\/docs\/open\/integration\/external_display_controllers\/eve\">stron\u0119 z dokumentacj\u0105 LVGL<\/a> i przejrzyj nasz profil <a href=\"https:\/\/github.com\/riverdi\">Riverdi na GitHubie.<\/a><\/p>\n<p><iframe style=\"aspect-ratio: 16\/9;\" title=\"\" src=\"https:\/\/www.youtube.com\/embed\/UEyqY8DMToA\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><span data-mce-type=\"bookmark\" style=\"display: inline-block; width: 0px; overflow: hidden; line-height: 0;\" class=\"mce_SELRES_start\"><\/span><span data-mce-type=\"bookmark\" style=\"display: inline-block; width: 0px; overflow: hidden; line-height: 0;\" class=\"mce_SELRES_start\"><\/span><\/iframe><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jak uruchomi\u0107 LVGL na wy\u015bwietlaczu Riverdi EVE Uruchamianie nowoczesnej GUI na mikrokontrolerze zazwyczaj wi\u0105\u017ce si\u0119 z konieczno\u015bci\u0105 radzenia sobie z buforami ramki, ograniczeniami pami\u0119ci i kompromisami w zakresie wydajno\u015bci. Dzi\u0119ki rozwi\u0105zaniu EVE od naszego partnera Bridgetek renderowanie grafiki HMI w wysokiej rozdzielczo\u015bci, obs\u0142uga d\u017awi\u0119ku i sterowanie dotykowe przechodzi w r\u0119ce procesora graficznego (GPU). Jednocze\u015bnie LVGL, [&hellip;]<\/p>\n","protected":false},"author":3328,"featured_media":132819,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","inline_featured_image":false,"footnotes":""},"categories":[5043],"tags":[],"class_list":["post-132818","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wyswietlacz-101"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Uruchamianie LVGL na wy\u015bwietlaczu EVE - Riverdi<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Uruchamianie LVGL na wy\u015bwietlaczu EVE - Riverdi\" \/>\n<meta property=\"og:description\" content=\"Jak uruchomi\u0107 LVGL na wy\u015bwietlaczu Riverdi EVE Uruchamianie nowoczesnej GUI na mikrokontrolerze zazwyczaj wi\u0105\u017ce si\u0119 z konieczno\u015bci\u0105 radzenia sobie z buforami ramki, ograniczeniami pami\u0119ci i kompromisami w zakresie wydajno\u015bci. Dzi\u0119ki rozwi\u0105zaniu EVE od naszego partnera Bridgetek renderowanie grafiki HMI w wysokiej rozdzielczo\u015bci, obs\u0142uga d\u017awi\u0119ku i sterowanie dotykowe przechodzi w r\u0119ce procesora graficznego (GPU). Jednocze\u015bnie LVGL, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve\" \/>\n<meta property=\"og:site_name\" content=\"Riverdi\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/riverdi.displays\/\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-05T10:00:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-09-08T13:34:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_COVER_LVGL-on-EVE.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Rafa\u0142 F\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@riverdidisplays\" \/>\n<meta name=\"twitter:site\" content=\"@riverdidisplays\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rafa\u0142 F\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minuta\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve\"},\"author\":{\"name\":\"Rafa\u0142 F\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl#\\\/schema\\\/person\\\/dac328f88dda36bae87261c19a2e30ef\"},\"headline\":\"Uruchamianie LVGL na wy\u015bwietlaczu EVE\",\"datePublished\":\"2026-05-05T10:00:51+00:00\",\"dateModified\":\"2026-09-08T13:34:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve\"},\"wordCount\":1575,\"image\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/riverdi.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/BLOG_COVER_LVGL-on-EVE.jpg\",\"articleSection\":[\"Wy\u015bwietlacz 101\"],\"inLanguage\":\"pl-PL\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve\",\"url\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve\",\"name\":\"Uruchamianie LVGL na wy\u015bwietlaczu EVE - Riverdi\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/riverdi.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/BLOG_COVER_LVGL-on-EVE.jpg\",\"datePublished\":\"2026-05-05T10:00:51+00:00\",\"dateModified\":\"2026-09-08T13:34:37+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl#\\\/schema\\\/person\\\/dac328f88dda36bae87261c19a2e30ef\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage\",\"url\":\"https:\\\/\\\/riverdi.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/BLOG_COVER_LVGL-on-EVE.jpg\",\"contentUrl\":\"https:\\\/\\\/riverdi.com\\\/wp-content\\\/uploads\\\/2026\\\/05\\\/BLOG_COVER_LVGL-on-EVE.jpg\",\"width\":1280,\"height\":600},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl\\\/blog\\\/uruchamianie-lvgl-na-wyswietlaczu-eve#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Front Page\",\"item\":\"https:\\\/\\\/riverdi.com\\\/pl\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Uruchamianie LVGL na wy\u015bwietlaczu EVE\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl#website\",\"url\":\"https:\\\/\\\/riverdi.com\\\/pl\",\"name\":\"Riverdi\",\"description\":\"Global TFT LCD Manufacturer\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/riverdi.com\\\/pl?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/riverdi.com\\\/pl#\\\/schema\\\/person\\\/dac328f88dda36bae87261c19a2e30ef\",\"name\":\"Rafa\u0142 F\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b208bcbc75c8894f7448c2283e1f99dd68d97018826b56edce8aeb3c8c3985ee?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b208bcbc75c8894f7448c2283e1f99dd68d97018826b56edce8aeb3c8c3985ee?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/b208bcbc75c8894f7448c2283e1f99dd68d97018826b56edce8aeb3c8c3985ee?s=96&d=mm&r=g\",\"caption\":\"Rafa\u0142 F\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Uruchamianie LVGL na wy\u015bwietlaczu EVE - Riverdi","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve","og_locale":"pl_PL","og_type":"article","og_title":"Uruchamianie LVGL na wy\u015bwietlaczu EVE - Riverdi","og_description":"Jak uruchomi\u0107 LVGL na wy\u015bwietlaczu Riverdi EVE Uruchamianie nowoczesnej GUI na mikrokontrolerze zazwyczaj wi\u0105\u017ce si\u0119 z konieczno\u015bci\u0105 radzenia sobie z buforami ramki, ograniczeniami pami\u0119ci i kompromisami w zakresie wydajno\u015bci. Dzi\u0119ki rozwi\u0105zaniu EVE od naszego partnera Bridgetek renderowanie grafiki HMI w wysokiej rozdzielczo\u015bci, obs\u0142uga d\u017awi\u0119ku i sterowanie dotykowe przechodzi w r\u0119ce procesora graficznego (GPU). Jednocze\u015bnie LVGL, [&hellip;]","og_url":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve","og_site_name":"Riverdi","article_publisher":"https:\/\/www.facebook.com\/riverdi.displays\/","article_published_time":"2026-05-05T10:00:51+00:00","article_modified_time":"2026-09-08T13:34:37+00:00","og_image":[{"width":1280,"height":600,"url":"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_COVER_LVGL-on-EVE.jpg","type":"image\/jpeg"}],"author":"Rafa\u0142 F","twitter_card":"summary_large_image","twitter_creator":"@riverdidisplays","twitter_site":"@riverdidisplays","twitter_misc":{"Napisane przez":"Rafa\u0142 F","Szacowany czas czytania":"10 minuta"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#article","isPartOf":{"@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve"},"author":{"name":"Rafa\u0142 F","@id":"https:\/\/riverdi.com\/pl#\/schema\/person\/dac328f88dda36bae87261c19a2e30ef"},"headline":"Uruchamianie LVGL na wy\u015bwietlaczu EVE","datePublished":"2026-05-05T10:00:51+00:00","dateModified":"2026-09-08T13:34:37+00:00","mainEntityOfPage":{"@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve"},"wordCount":1575,"image":{"@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage"},"thumbnailUrl":"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_COVER_LVGL-on-EVE.jpg","articleSection":["Wy\u015bwietlacz 101"],"inLanguage":"pl-PL"},{"@type":"WebPage","@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve","url":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve","name":"Uruchamianie LVGL na wy\u015bwietlaczu EVE - Riverdi","isPartOf":{"@id":"https:\/\/riverdi.com\/pl#website"},"primaryImageOfPage":{"@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage"},"image":{"@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage"},"thumbnailUrl":"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_COVER_LVGL-on-EVE.jpg","datePublished":"2026-05-05T10:00:51+00:00","dateModified":"2026-09-08T13:34:37+00:00","author":{"@id":"https:\/\/riverdi.com\/pl#\/schema\/person\/dac328f88dda36bae87261c19a2e30ef"},"breadcrumb":{"@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#primaryimage","url":"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_COVER_LVGL-on-EVE.jpg","contentUrl":"https:\/\/riverdi.com\/wp-content\/uploads\/2026\/05\/BLOG_COVER_LVGL-on-EVE.jpg","width":1280,"height":600},{"@type":"BreadcrumbList","@id":"https:\/\/riverdi.com\/pl\/blog\/uruchamianie-lvgl-na-wyswietlaczu-eve#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Front Page","item":"https:\/\/riverdi.com\/pl"},{"@type":"ListItem","position":2,"name":"Uruchamianie LVGL na wy\u015bwietlaczu EVE"}]},{"@type":"WebSite","@id":"https:\/\/riverdi.com\/pl#website","url":"https:\/\/riverdi.com\/pl","name":"Riverdi","description":"Global TFT LCD Manufacturer","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/riverdi.com\/pl?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Person","@id":"https:\/\/riverdi.com\/pl#\/schema\/person\/dac328f88dda36bae87261c19a2e30ef","name":"Rafa\u0142 F","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/secure.gravatar.com\/avatar\/b208bcbc75c8894f7448c2283e1f99dd68d97018826b56edce8aeb3c8c3985ee?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/b208bcbc75c8894f7448c2283e1f99dd68d97018826b56edce8aeb3c8c3985ee?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/b208bcbc75c8894f7448c2283e1f99dd68d97018826b56edce8aeb3c8c3985ee?s=96&d=mm&r=g","caption":"Rafa\u0142 F"}}]}},"_links":{"self":[{"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/posts\/132818","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/users\/3328"}],"replies":[{"embeddable":true,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/comments?post=132818"}],"version-history":[{"count":1,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/posts\/132818\/revisions"}],"predecessor-version":[{"id":132880,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/posts\/132818\/revisions\/132880"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/media\/132819"}],"wp:attachment":[{"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/media?parent=132818"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/categories?post=132818"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/riverdi.com\/pl\/wp-json\/wp\/v2\/tags?post=132818"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}