therion Napisano Wrzesień 13, 2022 Udostępnij Napisano Wrzesień 13, 2022 Witam Mam problem z stm32 bluepill i wyświetlaczem TFT ST7735 1,8″ z Arduino, za żadne skarby nie chce działać. Próbowałem na podstawie tutoriala z https://www.electronics-lab.com/project/programming-stm32-based-boards-arduino-ide/ Niestety biblioteki nie działają:( Czy ktoś mógłby mi pomóc zmusić ten wyświetlacz do działania? Czy ktoś ma sprawdzoną działającą bibliotekę z jakimkolwiek przykładem? Zwykłe "hello world" i dalej sobie poradzę.
Treker (Damian Szymański) Wrzesień 14, 2022 Udostępnij Wrzesień 14, 2022 @therion witam na forum Dla formalności: jak rozumiem problem dotyczy programu pisanego na STM32 w "języku" Arduino, tak? Co dokładnie oznacza, że biblioteki nie działają? Kod się nie kompiluje, są jakieś błędy lub ostrzeżenia?
therion Wrzesień 14, 2022 Autor tematu Udostępnij Wrzesień 14, 2022 Tak, jestem bardziej majsterkowiczem i modelarzem, arduino mnie zainteresowało przez prostotę i spore możliwości jakie daje dla majsterkowicza. Posługuję się arduino IDE do programowania. Kod się czasem kompiluje, zależy jakie biblioteki staram się użyć. Trochę ich już instalowałem i się zakręciłem:( Często mam błąd kompilacji dla płytki... Chciałbym użyć np takiego kodu: #include <Adafruit_GFX_AS.h> #include "Adafruit_ST7735.h" #define cs PA2 #define rst PA4 #define dc PA3 Adafruit_ST7735 tft = Adafruit_ST7735(cs, dc, rst); void setup() { tft.setTextSize(1); tft.setCursor (1,1); tft.print("TEST SETUP"); delay(500); } void loop() { tft.setCursor (1,1); tft.print("TEST LOOP"); } Przy kodzie jak powyżej wyskakuje błąd : "Błąd kompilacji dla płytki Generic STM32F103C series." Szukam po prostu NAJPROSTSZEGO możliwego kodu do wyświetlenia tekstu. Dalej sobie poradzę, a przynajmniej mam nadzieję.
Gość Wrzesień 14, 2022 Udostępnij Wrzesień 14, 2022 Cały projekt działający wraz z opisem znajdziesz na https://controllerstech.com/st7735-1-8-tft-display-with-stm32/
Treker (Damian Szymański) Wrzesień 15, 2022 Udostępnij Wrzesień 15, 2022 13 godzin temu, therion napisał: Tak, jestem bardziej majsterkowiczem i modelarzem, arduino mnie zainteresowało przez prostotę i spore możliwości jakie daje dla majsterkowicza. @therion podpowiedź dostałeś wyżej, więc tylko się upewnię - jeśli tylko majsterkujesz i chcesz działać w języku Arduino to na pewno świadomie wybrałeś STM32? To raczej nie jest wybitnie popularne (STM-y programuje się jednak najczęściej "normalnie" bez Arduino). Jeśli przypadkiem trafiłeś na te płytki to możesz mieć przez to trochę problemów. Zdecydowanie więcej gotowych projektów i przykładów znajdziesz na różne popularne płytki Arduino (UNO, Nano itd).
therion Wrzesień 15, 2022 Autor tematu Udostępnij Wrzesień 15, 2022 (edytowany) Z arduino eksperymentuję od jakiegoś czasu i stm32 chcę wypróbować jako lepsza szybsza wersję, potrzebna mi właściwie do jednego projektu. Szymonnw przerobienie na arduino tego z https://controllerstech.com/st7735-1-8-tft-display-with-stm32/ jest dla mnie chyba za bardzo skomplikowane:(. Potrzebuję ekranu i modułu nrf24, drugi mikrokontroler wysyła pozycję gps i kilka innych danych. Kiedyś z arduino mi to wyszło, nawet na przycisk zapamiętywało pozycje gps, w eepromie, ale chciałbym to mieć na STM32. Udało mi się osiągnąć dziwną rzecz. Kompiluje się, wgrywa, ale ekran miga, jest czarny i mam białe krótkie błyski. Czas czarnego ekranu mogę regulować za pomocą delay na końcu kodu w pętli loop. Biały błysk jest zawsze krótki. Coś nie tak z tym kodem? bo już zaczynam się zastanawiać czy ekran jest ok:( // ST7735 128x160 1.8" LCD pinout (header at the top, from left): // #1 LED -> 3.3V // #2 SCK -> SCL/D13/PA5 //#3 SDA -> MOSI/D11/PA7 // #4 A0/DC -> D8/PA1 or any digital // #5 RESET -> D9/PA0 or any digital // #6 CS -> D10/PA2 or any digital // #7 GND -> GND // #8 VCC -> 3.3V #include <SPI.h> #include <Adafruit_GFX.h> #include <Arduino_ST7789_STM.h> #define TFT_SCK PA5 #define TFT_SDA PA7 #define TFT_DC PA1 #define TFT_RST PA0 #define TFT_CS PA2 Arduino_ST7789 lcd = Arduino_ST7789(TFT_DC, TFT_RST); #define SCR_WD 128 #define SCR_HT 160 void setup() { Serial.begin(9600); lcd.init(); lcd.fillScreen(BLUE); lcd.setCursor(1, 1); lcd.setTextColor(WHITE); lcd.setTextSize(3); lcd.println("HELLO WORLD"); delay(1000); } void loop() { lcd.setTextColor(WHITE,BLUE); lcd.setTextSize(3);lcd.setCursor(3,3); lcd.print("txt"); delay(500); } Wgrałem kod z tego przykładu: Kompiluje się, wgrywa, ale ekran tylko miga, raz biały raz czarny i tyle:( Edytowano Wrzesień 15, 2022 przez therion bład posta
Pomocna odpowiedź
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ę »