Nem írja ki a teljes szöveget

Hogyha sikeresen O/PLED illetve hagyományos alfanumerikus - esetleg tán grafikus kijelzővel gyűlik meg a baja valakinek:)
naglas
Újonc
Újonc
Hozzászólások: 2
Csatlakozott: 2016. augusztus 26. péntek, 18:35

Nem írja ki a teljes szöveget

HozzászólásSzerző: naglas » 2016. augusztus 26. péntek, 18:44

Sziasztok!

Mostanában kezdtem el foglalkozni az aduinoval és LCD programozással de sajnos egyből hibába futottam :( .
A probléma az volna, hogy megírtam a programot fel is megy de amikor lefut csak a ki írandó szöveg első karaktere jelenik meg. A pozicionálás jól működik, ha kiveszem a második sorba való pozicionálást akkor rögtön a következő karakterre írja ki a következő szöveg első karakterét.
A kód a következő:

Kód: Egész kijelölése

#include <Wire.h>
#include <LiquidCrystal_I2C.h>
int led=13;

LiquidCrystal_I2C lcd(0x3F,16,2); 
void setup()
{
 lcd.init();
 lcd.backlight();
 pinMode(led, OUTPUT);
}
void loop()
{
   lcd.begin(16,2);
   lcd.home();
   delay(1000);
   digitalWrite(led, HIGH);
   lcd.setCursor(5, 0);
   lcd.print("ez egy:!");
   delay(1000);
   lcd.setCursor(0, 1);
   lcd.print("Hello, world!");
   delay(1000);
   lcd.clear();
   digitalWrite(led, LOW);
   delay(1000);
}

Avatar
csegebiga
Pákabűvész
Hozzászólások: 225
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: csegebiga » 2016. augusztus 26. péntek, 21:22

ebbe én is belefutottam. az iic lcd kiiratásnál jön elő ez a probléma,
ha megnézed, a fordításko már hibát ad a lcd.print(szöveg) utasításnál.
volt már szó erről a jelenségről itt a frumon.

kétféle megoldást találtam a probléma kikerülésére:
1. régebbi ide használata (az 1.0.5r2 nálam még jól ment, az 1.6.7 már nem
vagy
2. karaktrenkénti kiírással megoldani az outputot (1 karaktert ki tudsz íratni, csinálsz egy függvényt, ami az inputját kirakja karakterenként, és ezt hívod meg az lcd.print() helyett)

ha egyéb működő megoldásra lelsz, osszad meg velünk is légyszíves!
Thx

Avatar
csegebiga
Pákabűvész
Hozzászólások: 225
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: csegebiga » 2016. augusztus 26. péntek, 21:33


Avatar
Robert
Elektronbűvölő
Hozzászólások: 9737
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: Robert » 2016. augusztus 27. szombat, 7:49

Mert ezt használod:
LiquidCrystal_I2C.h

E helyett ami nálam bevélt és csereszabatos:
https://bitbucket.org/fmalpartida/new-l ... /wiki/Home

1:1 működik, nincsen csonkolás. 1.6.5 alatt tesztelve.
http://www.tavir.hu - a gazda :)

naglas
Újonc
Újonc
Hozzászólások: 2
Csatlakozott: 2016. augusztus 26. péntek, 18:35

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: naglas » 2016. augusztus 27. szombat, 8:01

Sziasztok!
köszönöm a gyors válaszokat!
A megoldás legalábbis nálam az 1.6.9 -ről frissítettem 1.7.10 re így az eredeti progi működik.

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9737
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: Robert » 2016. augusztus 27. szombat, 8:31

Te akkor az Arduino.org -os Arduino keretrendszert használod....
Az tart 1.7.x-nél
http://www.tavir.hu - a gazda :)

Avatar
csegebiga
Pákabűvész
Hozzászólások: 225
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: csegebiga » 2016. augusztus 27. szombat, 18:26

fél napos kisérletezés után megy rendesen
a Robert által ajánlott NewliquidCrystal_1.3.4.zip letöltése után
futtattam a mintaprogramot, de egyik sem akart rendesen menni.
DE:
(most egy kicsit bajban vagyok, mert nem tudom, melyik volt a nyerő lépés?
két dolgot tettem egyszerre,
először is kitöröltem az ide saját LiquidCrystal libraryját, (lehet, hogy ő zavart be?)
és kipróbáltam ezen az oldalon található példaprogramot

a programban eléggé fura az iic lcd definíciója:

Kód: Egész kijelölése

#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C  lcd(0x27,2,1,0,4,5,6,7); // 0x27 is the I2C bus address for an unmodified backpack
 

ezek után megy az lcd.print('hello')

Avatar
Robert
Elektronbűvölő
Hozzászólások: 9737
Csatlakozott: 2005. december 9. péntek, 7:00
Tartózkodási hely: Budapest
Kapcsolat:

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: Robert » 2016. augusztus 27. szombat, 19:03

[quote="csegebiga"]először is kitöröltem az ide saját LiquidCrystal libraryját, (lehet, hogy ő zavart be?)quote]

Igen. Ugyanis az ajánlott ezt az eredeti liquidcrystral-t írja felül. Ha a library managerrel teszed fel (Arduino 1.6.4 után), akkor felülírja alapban.
http://www.tavir.hu - a gazda :)

Gerzson38
Újonc
Újonc
Hozzászólások: 3
Csatlakozott: 2015. január 20. kedd, 17:40

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: Gerzson38 » 2016. december 22. csütörtök, 19:48

Szia Robert!
Ugyan ez a problémám da sajnos nem értem ezt az ide oda pokolgatást. :roll:
Mit is kell másolni & hová?
Köszönöm

Avatar
csegebiga
Pákabűvész
Hozzászólások: 225
Csatlakozott: 2015. március 27. péntek, 21:27

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: csegebiga » 2016. december 23. péntek, 1:15

az ide= Arduino integrált fejlesztői környezet
az oda= egy távolabbra mutató szó
ez utóbbival nem sok dolgunk lesz.
az ide amikor települ(t), sok előre elkészített library-t (eszköz kezelő) könyvtárat is telepít(ett)
pl: c:\arduino-1.6.7\libraries\LiquidCrystal\
ezek közük kell kiszedni az ide saját LiquidCrystal libraryját, és helyette telepíteni a Robert által mutatottat.
https://bitbucket.org/fmalpartida/new-l ... _1.3.4.zip

Avatar
csabeszq
Bitfaragó
Hozzászólások: 654
Csatlakozott: 2012. szeptember 5. szerda, 6:00

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: csabeszq » 2016. december 23. péntek, 9:53

az IDE-t nagy betűkkel szokás írni és akkor nem lesz ide-oda pakolkatás. Ha nagybetűkkel lett volna leírva, senki sem gondolta volna, hogy beragadt a caps lock.

:)

Gerzson38
Újonc
Újonc
Hozzászólások: 3
Csatlakozott: 2015. január 20. kedd, 17:40

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: Gerzson38 » 2016. december 23. péntek, 14:26

csegebiga írta:az ide= Arduino integrált fejlesztői környezet
az oda= egy távolabbra mutató szó
ez utóbbival nem sok dolgunk lesz.
az ide amikor települ(t), sok előre elkészített library-t (eszköz kezelő) könyvtárat is telepít(ett)
pl: c:\arduino-1.6.7\libraries\LiquidCrystal\
ezek közük kell kiszedni az ide (= erre a helyre!) saját LiquidCrystal libraryját, és helyette telepíteni a Robert által mutatottat.
https://bitbucket.org/fmalpartida/new-l ... _1.3.4.zip

Lehet hogy megoldódott a propléma (Egyenlőre!)
Letöltöttem majd kicsomagolás LiquidCrystal_I2C-master-t után átneveztem lett LiquidCrystal_I2C.
Ezt a mappát beillesztettem ide. C\Users\Gerzson\Documents\Arduino\libraries .
Erre gondoltatok?

Gerzson38
Újonc
Újonc
Hozzászólások: 3
Csatlakozott: 2015. január 20. kedd, 17:40

Re: Nem írja ki a teljes szöveget

HozzászólásSzerző: Gerzson38 » 2016. december 23. péntek, 15:13

Így már működik!


Vissza: “LCD kezelése”

Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 3 vendég