Podłączenie LCD2004 do Creality 4.2.7

Czyli co i jak podłączyć żeby działało
Benetons
Konto z ograniczeniami
Postów w temacie: 1
Posty: 31
Rejestracja: 10 lut 2021, 19:15

Podłączenie LCD2004 do Creality 4.2.7

Post autor: Benetons »

Witam ;)
Zakupiłem drukarkę z uszkodzoną płytą główną (Geeetech a20). Zainstalowałem w niej w zamian creality 4.2.7, wszystko działa i drukuje. Tylko mam problem w tym, że nie ma w niej wyświetlacza. Znalazłem gdzieś w częściach od starych drukarek wyświetlacz z jakiejś starej ANET'y opisany jako LCD2004. Znalazłem w marlinie prawdopodobnie ten wyświetlacz:

Kod: Zaznacz cały

#define ZONESTAR_LCD            // Requires ADC_KEYPAD_PIN to be assigned to an analog pin.
                                  // This LCD is known to be susceptible to electrical interference
                                  // which scrambles the display.  Pressing any button clears it up.
                                  // This is a LCD2004 display with 5 analog buttons.
Po kompilacji wyskakuję mi błąd:

Kod: Zaznacz cały

Marlin\src\lcd\HD44780\marlinui_HD44780.cpp:107:17: error: 'LCD_PINS_RS' was not declared in this scope; did you mean 'LCD_PINS_D4'?
  107 |   LCD_CLASS lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5, LCD_PINS_D6, LCD_PINS_D7);
      |                 ^~~~~~~~~~~
      |                 LCD_PINS_D4
Marlin\src\lcd\HD44780\marlinui_HD44780.cpp:107:30: error: 'LCD_PINS_ENABLE' was not declared in this scope; did you mean 'DMA_PINC_ENABLE'?
  107 |   LCD_CLASS lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5, LCD_PINS_D6, LCD_PINS_D7);
      |                              ^~~~~~~~~~~~~~~
      |                              DMA_PINC_ENABLE
Compiling .pio\build\STM32F103RET6_creality\src\src\lcd\menu\menu_advanced.cpp.o
Compiling .pio\build\STM32F103RET6_creality\src\src\lcd\menu\menu_configuration.cpp.o
*** [.pio\build\STM32F103RET6_creality\src\src\lcd\HD44780\marlinui_HD44780.cpp.o] Error 1
============================================================================================ [FAILED] Took 29.27 seconds ============================================================================================
Environment             Status    Duration
----------------------  --------  ------------
STM32F103RET6_creality  FAILED    00:00:29.272
Z tego wnioskuję, że płyta nie obsługuję tego wyświetlacza? Czy może jest jakiś sposób na to? Z góry dziękuję ;)
Załączniki
34c61e6633a69045a53db596c4174d3d6740cb56_original.jpeg
Awatar użytkownika
rm-rf
Postów w temacie: 1
Posty: 13
Rejestracja: 15 sty 2023, 15:10
x 3

Re: Podłączenie LCD2004 do Creality 4.2.7

Post autor: rm-rf »

Masz brak deklaracji `LCD_PINS_RS` i `LCD_PINS_ENABLE`. Musisz dokładnie przejść przez kod bo pewnie w kodzie są różne `ifdef ZONESTAR_LCD`, które odblokowują kolejne kawałki kodu do kompilacji, a taki "kolejny kawałek" może wymagać kolejnej deklaracji - w Twoim przypadku `LCD_PINS_RS` oraz `LCD_PINS_ENABLE`.
Awatar użytkownika
JGFTW
Drukarz
Postów w temacie: 1
Posty: 1294
Rejestracja: 14 sie 2019, 05:19
Lokalizacja: Wrocław
Drukarka: DIY Prusa Bear
x 701

Re: Podłączenie LCD2004 do Creality 4.2.7

Post autor: JGFTW »

Przede wszystkim porównaj pinout tego wyświetlacza Zonestar z gniazdem V4.2.7

Plyta:
https://github.com/MarlinFirmware/Marli ... _V4.h#L164

Wyświetlacz:
https://github.com/MarlinFirmware/Marli ... _10.h#L245

Następnie jeżeli się różnią (nie sprawdzałem) to zmień fizycznie (żeby się płytka nie popaliłą ;) ) i uwzględnij te zmiany w pliku pins_CREALITY_V4.h

dodając sekcje " #if ENABLED(ZONESTAR_LCD)" oraz opisując te piny jak tu;
https://github.com/MarlinFirmware/Marlin/issues/11839
ODPOWIEDZ

Wróć do „Elektronika sterująca, wyświetlacze”