Displej Nokia 5110 - string to char

Wiring, C++, C, Java, ...
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
Odpovědět
vit_janos
Příspěvky: 3
Registrován: 19 pro 2018, 08:31
Reputation: 0

Displej Nokia 5110 - string to char

Příspěvek od vit_janos » 20 úno 2019, 09:23

Zdravím, v programování arduina jsem nováček a narazil jsem při mém projektu na problém s displejem Nokia 5110. Při zkoušce funkčnosti přiloženým ukázkovým kódem mi po kompilaci vyskakuje hláška: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
lcd.LcdWriteString("Nokia 5110");

Po nahrání programu se na displej vykreslí černý obdelník. Víte jak tento problém s konverzí vyřešit? Předem děkuji za odpovědi.

Kód: Vybrat vše

// AUTHOR: Nitin Sharma
// PURPOSE: Example to showcase the use of Nokia5110 lcd library
//
#include <Nokia5110.h>
#include <SoftwareSerial.h>

// LCD object
Nokia5110 lcd;

void setup() {
  //
  // Initialize LCD with your custom pin configurations
  // initLCD(CLK,DIN,DC,CE,RST)
  // CLK needs to be PWM enabled
  //
  lcd.initLCD(13,12,11,10,9);
  
  // Alternatively use the default lcd.initLCD(). In that
  // case default arduino configuration would be used which
  // is as follows:
  //
  // RST -> pin 6 arduino
  // CE -> pin 5 arduino 
  // DC -> pin 4 arduino
  // DIN -> pin 3 arduino
  // CLK -> pin 2 arduino
  // 
  // lcd.initLCD();

  // Mover cursor to X,Y and print a string. If the string is too
  // long it would extend to further rows automatically
  lcd.LcdXY(0,0);
  lcd.LcdWriteString("Nokia 5110");
  lcd.LcdXY(0,1);
  lcd.LcdWriteString("is a pretty");
  lcd.LcdXY(0,2);
  lcd.LcdWriteString("cool LCD");
  lcd.LcdXY(0,3);
  lcd.LcdWriteString("to use :)");

  // Clear LCD after 30 seconds
  delay(30000);
  lcd.clearLCD();
}

void loop() {
  
}

Uživatelský avatar
pavel1tu
Příspěvky: 2054
Registrován: 26 říj 2017, 08:28
Reputation: 0
Bydliště: Trutnov
Kontaktovat uživatele:

Re: Displej Nokia 5110 - string to char

Příspěvek od pavel1tu » 20 úno 2019, 09:51

Já používám jen

Kód: Vybrat vše

 
   lcd.setCursor(0, 5);
  // Write something on the specific row
lcd.print("Hello world!");
pozor, ta knihovna pro tento displej má spoustu různě upravených kopií (neduh Arduina komunity)
já tuším používal od https://www.arduinolibraries.info/libra ... cd-library
UNO, NANO, Mikro, PRO mini, DUE, ESP32S2, RPi PICO
Pavel1TU
"Správně napsaný kod lze číst jako knihu"

vit_janos
Příspěvky: 3
Registrován: 19 pro 2018, 08:31
Reputation: 0

Re: Displej Nokia 5110 - string to char

Příspěvek od vit_janos » 20 úno 2019, 10:32

Děkuji, hned jak se k tomu dostanu tak vyzkouším.

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Displej Nokia 5110 - string to char

Příspěvek od jankop » 20 úno 2019, 12:05

Pokud jsem použil knihovnu uvedenou ve sketchi

Kód: Vybrat vše

// AUTHOR: Nitin Sharma
// PURPOSE: Example to showcase the use of Nokia5110 lcd library
tak jsem to přeložil bez problémů. Verzi Arduino IDE mám 1.8.8.
Z toho bych soudil, že buď jsi překládal něco jiného, než jsi tady vložil, nebo máš nainstalovanou ještě další knihovnu pro LCD Nokia stejného jména, která se uplatní a ta není slučitelná s použitými příkazy.

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Displej Nokia 5110 - string to char

Příspěvek od jankop » 20 úno 2019, 13:04

Tak jsem se mýlil, to varování mi to vypisuje také. Zřejmě je v té knihovně chybná konverze.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 16 hostů