• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Arduino Uno Wyświetlacz LCD 16x2 nie wyświetla napisów
#1
Cześć,
jak widać jestem nowy na tym forum jak i zaczynam przygodę z arduino więc witam serdecznie
Dla wielu z was pewnie będzie to odświeżany kotlet lecz osobiście nie znalazłem rozwiązania na mój problem

Mianowicie próbując odpalić przykładowy program do wyświetlenia napisów wyświetlacz pozostaje włączony lecz bez żadnego napisu. Kręcenie potencjometrem działa bo widać ze pokazują się kwadraciki więc napisy tez powinny.
W jednym z załączonych zdjęć je widać lecz ten dolny wiersz tylko w połowie nie wiem czy ma to jakieś znaczenie.

Wszystko jest nowe lecz zamówione z chin dlatego może jest to coś na tle oprogramowania.
Dodam ze arduino Uno jest od producenta WAVGAT który dla samego podłączenia pod komputer wymagał ściągnięcia ich driverów (plików libraries oraz hardware).

Problem wydaje się trywialny i omawiany wiele razy lecz przeglądając fora nie znalazłem dla siebie odpowiedzi.

Raz nie trafiłem pinem "K" w mase i przed odpaleniem był wpięty w 5V mogło to wyrządzić jakieś poważniejsze usterki??

program wygląda następująco:

#include <LiquidCrystal.h>

LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

void setup() {
lcd.begin (16, 2);
lcd.setCursor(0, 0);
lcd.print("Siemka");
lcd.setCursor(6, 1);
lcd.print("Gabi");

// put your setup code here, to run once:

}

void loop() {
// put your main code here, to run repeatedly:
}


Załączone pliki Miniatury
       
 
Odpowiedź
#2
Zacznij od normalnego UNO/NANO z AVR, masz w ogóle klona z klona Atmegi. Mam jedną płytkę z tym uC i na pewno nie jest to kopia 1:1, stąd inny core do tego uC. Ekran też tak wygląda jakby mógłby nie być sprawny technicznie - ta druga linia ma tylko połowę pikseli. Teraz jest problem, bo nie wiesz czy wina LCD czy uC, kodu czy połączeń. Trochę za dużo niewiadomych na początek zabawy.
Odpowiedzi łatwo nie znajdziesz, bo jeszcze nie widziałem w PL wątku z z tym uC, będę miał chwilę to podłączę swojego Wavegat do LCD i zobaczę czy są jakieś niespodzianki, bibliotekę używasz wbudowaną? Na razie sprawdziłem swojego (ja mam klon NANO) z UART i działa, ale za dużo nie miałem czasu się pobawić.
 
Odpowiedź
#3
połączenia są ok upewniałem się już kilkanaście razy oraz przejscia sprawdzane multimetrem
tak biblioteka liquidcrystal to ta domyślna

różne inne pierdoły którymi się bawiłem dotychczas na tej płytce działają i mają się dobrze
może masz jakąś bibliotekę na myśli żeby najmniej inwazyjnie sprawdzić czy to coś da??
szczerze mówiąc nie bardzo bym wiedział gdzie takową znaleźć

fajnie by było żebyś przetestował swoje chinduino Smile dzięki wielkie za chęci
 
Odpowiedź
#4
Nie kojarzę by było coś w LCD związanego ze sprzętem, to tylko baglowanie pinami i powinno działać jeśli działa miganie led. Ale jeszcze nie sprawdzałem, sprawdziłem UART bo nie musiałem lutować pinów do tego.
 
Odpowiedź
#5
Nie masz w menadżerze płytek tego procesora, a jako UNO to nie śmiga.
Tu masz paczkę: WAVGAT
Chyba dobrze udostępniłem, jeśli będą kłopoty, to pisz.
Zawartość z folderu hardware skopiuj do folderu o tej samej nazwie w katalogu z oprogramowaniem Arduino.
To samo zrób z folderem libraries.
Jak odpalisz Arduino IDE, to wybierz z menadżera płytek WAVGAT UNO R3 i powinno działać.
Jeśli masz problem z kodem lub sprzętem, zadaj pytanie na forum. Nie odpowiadam na PW, jeśli nie dotyczą one spraw forum lub innych tematów prywatnych.

[Obrazek: SsIndaG.jpg]
 
Odpowiedź
#6
paczki od wavgat na uno r3 juz posiadam chyba nie ma potrzeby robić to znowu chyba że jest to jakaś inna paczka
kolega chyba nie zrozumiał że tu nie chodzi o działanie arduino bo ono działa tylko o wyświetlacz LCD który jest podswietlony kontrast się zmienia ale nie pokazuje napisów
 
Odpowiedź
#7
Niestety potwierdzam, że LCD nie działa również na moim NANO z WaveGAT. Kompilowałem to na zmianę dla zwykłego NANO (działa) i potem po zamianie na płytkę z WAVEGAT - nie działa. Płytka normalnie funkcjonuje z tym kodem, dodałem wysyłanie danych na UART co 1s, ale LCD milczy. Dodałem jeszcze obsługę pinu RW, ale bez zmian. Na pociechę napiszę tylko, że działa po I2C z bibiloteką LiquidCrystal_PCF8574. Trzeba by zrobić swoją bibliotekę do bezpośredniej obsługi Liquid Crystal. W tych uC jest jeszcze coś nie halo z EEPROM, on go jakoś emuluje we flash. Gdyby chociaż był jakoś wyjątkowo tani, ale jak to kupowałem to płytka była w promocji za 1.7$, teraz jest z wysyłka za 2.4, czyli drożej niż NANO z Atmegą 328.
Przy okazji odpaliłem ADC, niby miał być 12bit, no i faktycznie odczyty prawie dochodzą do 4096, prawie bo kończą się na 3968 przy InternalReference, tu też niby 1.25V, a faktycznie dla tego odczytu jest podane na pin A0 0,941V.
Chyba na razie jednak pozostanie tylko ciekawostką. Tymczasem nie będę go dalej rozgryzał, są ciekawsze procki od tego dziwoląga. Właściwie przyleciał z Chin tylko dlatego, by płytce STM32F407VET6 nie było samej smutno w pudełku.
 
Odpowiedź
#8
(19-05-2019, 05:35)kaczakat napisał(a): Dodałem jeszcze obsługę pinu RW, ale bez zmian. Na pociechę napiszę tylko, że działa po I2C z bibiloteką LiquidCrystal_PCF8574.
Typowe dla sterowników LCD, które nie są w 100% zgodne oryginałem.
Wystarczy zmniejszyć taktowanie (dodać NOP-y), dla kilku tysięcy szt ma to sens, dla jednej bez sensu, chyba, że ce się czegoś nauczyć. Jeśli głównym celem jest wykonać projekt, polecam zmianę wyświetlacza, nie na "ryżowe" badziewie, ale na taki, którego parametry są gwarantowane.
 
Odpowiedź
#9
No zapewne, dla tych co dołączają do wątku - chodzi o klony Arduino z klonem Atmegi, uC o oznaczeniu AVGA328P,  a zgodnie z core jest to uC LGT8F328D.
W bibliotece liquide crystal jest używana funkcja delayMicros, a ta działa źle na dwa sposoby z uC LGT8F328D, raz że się przekręca przy ~16000, a dwa że rozjeżdża się o około 33%. Dlatego m.in. nie działa biblioteka LCD. Co jeszcze jest nie halo nie wiem, ale coś pewnie jest, bo sama korekta czasów nie wystarczyła by LCD ruszył. Co ciekawe funkcja micros() działa dobrze i się nie rozjeżdża.
 
Odpowiedź
#10
dzieki wielkie za przetestowanie na swoim chinskim badziewiu Smile tego mi było trzeba bo już dostawałem gorączki co z nim może być nie tak Smile za jakiś czas będę kupował oryginał ale wiecie jak to jest na początku coś podepnę nie tak lub oblicze źle i płytka do kosza Tongue nie ma tego złego co by na dobre nie wyszło bo dzięki temu problemowi nauczyłem się kilku rzeczy o których bym nie wiedział gdybym nie musiał szperać głębiej
jeszcze raz wam dziękuję
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości