Skocz do zawartości

Monitory HMI w użytku domowym.


Pomocna odpowiedź

16 minut temu, _LM_ napisał:

Nie wiem co masz nie tak, Także kombinuj, może ostatni link podałem do innego tft ale na 99% było to wzięte z jakiejś oficjalnej strony. 

Uwielbiam tą precyzję wypowiedzi.

@ethanak ile za tą kulę szklaną?

(edytowany)

Wysłałeś mi poradnik ale nie wiesz do jakich plików, na pewno był to plik z jakiejś oficjalnej strony jakiejś płytki.

Wszystko wiadomo, dzięki.

Edytowano przez SOYER

Pyskówką nic nie wskurasz skoro uważasz że przedstawione informacje są nic warte to poproś admina o usunięcie wątku i po prostu nie wkurwiaj ludzi 

  • Lubię! 1
1 minutę temu, _LM_ napisał:

Pyskówką nic nie wskurasz skoro uważasz że przedstawione informacje są nic warte to poproś admina o usunięcie wątku i po prostu nie wkurwiaj ludzi 

Dzięki za poświęcony czas, ale sam widzisz co z tego wyszło...

(edytowany)
5 godzin temu, _LM_ napisał:

Pyskówką nic nie wskurasz skoro uważasz że przedstawione informacje są nic warte to poproś admina o usunięcie wątku i po prostu nie wkurwiaj ludzi 

Nie pyskuję, delikatnie zwracam uwagę, że Twoje informacje są, jakby to powiedzieć, nieprecyzyjne.

Jak można pisać poradnik na podstawie jakiejś biblioteki/przykładu i nie wiedzieć jaka to dokładnie biblioteka/przykład.

Serio...?

Edytowano przez SOYER

@_LM_ może wklej po prostu tutaj w "<Wstaw kod programu>" zawartość tych 15(?) plików które wgrałeś z poziomu arduino IDE. Będzie można porównać i sprawdzić z której to biblioteki/dema. Tak chyba będzie najprościej.

(edytowany)

Pierwszy własny szkic wgrany. 

Testuję na różnych wariantach libsów, boardów itd. Jednak jest sukces.

Bez pomocy @_LM_ bym sobie nie poradził bo mnie naprowadził na to by się skupić na przykładzie z „porting”. Ja myślałem, że ten przykład ma coś wspólnego ze sterowaniem pinami zewnętrznymi, a to porting dla lvgl, czyli ustawianie pod libsa obsługującego lcd. Przynajmniej ja to tak rozumiem.

Używam pików demo, tych co ja wkleiłem. 4”. Później napiszę dokładnie jakie wersje libsów, boardów…

Na razie się jaram, że działa.

Dziękuję @_LM_

 

IMG_2933.JPG

Edytowano przez SOYER

Niestety, jeśli tylko dodam jakiś user action, event, to dostaję przy kompilacji:

c:/users/katon/appdata/local/arduino15/packages/esp32/tools/esp-xs3/2302/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: sketch\objs.a(screens.c.o):(.literal.event_handler_cb_main_btn1+0x4): undefined reference to `action_akcja'
c:/users/katon/appdata/local/arduino15/packages/esp32/tools/esp-xs3/2302/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: sketch\objs.a(screens.c.o): in function `event_handler_cb_main_btn1':
C:\Users\katon\OneDrive\Pulpit\Szkice\02_LVGL_Porting_YES/screens.c:17: undefined reference to `action_akcja'
collect2.exe: error: ld returned 1 exit status
exit status 1
Błąd kompilacji dla płytki ESP32S3 Dev Module.

Nie wiem co z tym zrobić...

Zrzut ekranu 2024-12-24 104506.png

Zrzut ekranu 2024-12-24 104723.png

4 minuty temu, SOYER napisał:

Niestety, jeśli tylko dodam jakiś user action, event, to dostaję przy kompilacji:

c:/users/katon/appdata/local/arduino15/packages/esp32/tools/esp-xs3/2302/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: sketch\objs.a(screens.c.o):(.literal.event_handler_cb_main_btn1+0x4): undefined reference to `action_akcja'
c:/users/katon/appdata/local/arduino15/packages/esp32/tools/esp-xs3/2302/bin/../lib/gcc/xtensa-esp32s3-elf/12.2.0/../../../../xtensa-esp32s3-elf/bin/ld.exe: sketch\objs.a(screens.c.o): in function `event_handler_cb_main_btn1':
C:\Users\katon\OneDrive\Pulpit\Szkice\02_LVGL_Porting_YES/screens.c:17: undefined reference to `action_akcja'
collect2.exe: error: ld returned 1 exit status
exit status 1
Błąd kompilacji dla płytki ESP32S3 Dev Module.

Nie wiem co z tym zrobić...

Zrzut ekranu 2024-12-24 104506.png

Zrzut ekranu 2024-12-24 104723.png

Błąd Ci mówi dokładnie w czym problem : undefined reference - > odwołujesz się do czegoś co nie istnieje, zrobiłeś deklaracje, brak definicji ten funkcji.

5 minut temu, SOYER napisał:

To jest w plikach z eez, dlaczego eez tego nie zrobił? 

Jak to poprawić?

Bo to Ty chcesz jakoś zareagować na to zdarzenie a nie framework ?

Zaczął bym od porządnego kursu C++ aby zrozumieć różnicę pomiędzy deklaracją a definicją.

  • Lubię! 1
  • Pomogłeś! 1
(edytowany)

Tak, wiem, ale cały czas się uczę. Co najlepsze już ten problem rozwiązywałem tydzień temu przy okazji nauki eez, ale w całym zamieszniu zapomniałem o tym;). W pliku actions.h mamy deklarację funkcji, ale musimy jeszcze mieć napisane co w tej funkcji ma siedzieć. Więc najlepiej w pliku asction.c dodać choćby

void action_akcja(lv_event_t * e){}

ale ja dodałem:

void action_akcja(lv_event_t * e){
  static uint8_t licznik = 0;
 
    lv_label_set_text_fmt(objects.lbl1,"Num click: %d", licznik++);
}

i działa:

 

IMG_2934.JPG

Edytowano przez SOYER
  • Lubię! 1

@SOYER pamiętaj jeszcze o jednym: arduino cli/builder przetwarzają pliki .ino dorabiając brakujące deklaracje jeśli definicja funkcji jest w tym smym pliku. W C/C++ (pliki .c i .cpp) takiego ułatwienia dla leniwych już nie ma 😞

  • Lubię! 1
  • Pomogłeś! 1
(edytowany)
21 minut temu, SOYER napisał:

i działa:

No widzisz, kapke cię opieprzyć i już inaczej gadasz. 

 

44 minuty temu, SOYER napisał:

To jest w plikach z eez, dlaczego eez tego nie zrobił? 

Da się to zrobić z automatu, musisz przejść na tryb eez-flow, wtedy można z poziomu aplikacji dodać wszystkie zdarzenia. Ja tego akurat nie używam bo niestety generuje to trochę nadmiarowego kodu, tobie też radzę wpierw zapoznać się z biblioteką i jej możliwościami a później dla trudniejszych/rozbudowanych projektów zastosować pełną automatykę. 

Edytowano przez _LM_
  • Pomogłeś! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...