Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
LCD 16x1 se cudno ponasa
#1
Pozdrav svima.Rashodovao sam neki stari FAX i unutra je bio i displej 16X1 koji je na faksu radio pre nego sto sam ga rashodovao.Kad taj displej vezem na Arduino displej ispisuje samo na prva 7 mesta a ostalo ostaje prazno.Displej je ustvari 15x1 i nevidi prvu oznaku,na rimer ako je kod obicnog 16x1 "napon" za ovaj treba prvo razmak jedno mesto " napon".
Sve to je nebitno samo mi nije jasno zasto pise samo na prva 7 mesta ?
Oznak mu je PQUP577ZB a cip HD44780A00
Reply
#2
Najverovatnije se ponaša kao 2x8 karaktera. Sretao sam takve..
Reply
#3
Milane, inicijalizacija displeja je problem.
Reply
#4
Probaj da inicijalizuješ displej kao 2x8
Make no mistake between my personality and my attitude.
My personality is who I am.
My attitude depends on who you are.

塞爾維亞文
Reply
#5
I ja potvrđujem da je inicijalizacija problem. Kod tih HD44780 kompatibilnih izuzetno krucijalna stvar je inicijalizacija. Dešavalo se da rutine koje sam nekada pisao od 100 uključenja nekoliko puta loše inicijalizuju LCD. Najbilje ako možeš da uvedeš Read pin sa LCD-a pa po tome da se uradi sinhronizacija. Najveći broj rutina koje sam sretao koriste klasičan delay za statičko kašnjenje, a ne povratnu spregu sa displeja... tako da, tu se fokusiraj i rešićeš problem.
Reply
#6
Hvala svima,sad sam video poruke.Probacu kad dodjem sposla.Jednom je popunio ceo red ali ispisao dvaput isto,tj i nesto sto je trebalo da bude u drugom redu.
Reply
#7
Ako koristis Arduino i ovaj library :
Code:
#include<LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

onda za 16X2 koristi se
Code:
lcd.begin(16,2);

za taj tvoj 16x1 treba da stoji
Code:
lcd.begin(8,2);

Ja sam testirao takav jedan slican LCD 16x1 i radio je bez problema.

Jedino sto moras da vodis racuna o tome da si startovao lcd kao da je 8x2 ali to ne smeta jer ces imati ispis u jednom redu samo sto moras voditi racuna da taj ispis od 16 karektera delis u 2 po 8 karaktera i prvih 8 karaktera ispisujes tako sto setujes kursor
Code:
lcd.setCursor(0,0);

a za drugih 8 karektera ispisujes tako sto setujes kursor na poziciji :
Code:
lcd.setCursor(0,1);

Ako je neka druga biblioteka u pitanju onda ne znam ali moguce da je slicna logika..
Meni kad je trebalo ja sam nasao ovakvo resenje mozda se sad nesto promenilo. Setih se ovog mog iz 2016. Smile
Reply
#8
Sad jasno.Hvala svima.Evo nabrzinu ovako gde ispise na ceo displej 123456712345678

lcd.begin(8, 2);
lcd.setCursor(0,0);
lcd.print(" 1234567");

lcd.setCursor(0,1);
lcd.print("12345678");
delay(1500);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)