Pages: [1]   Go Down
Author Topic: Errori di compilazione  (Read 816 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho un display LCD con controller BV4218.
Se provo a compilare questo sketch:

#include <Wire.h>
#include <ByVacLCD.h>

ByVacLCD bv=ByVacLCD(0x21,4,20);

void setup()
{
  bv.init();
  bv.print("Hello World");
}

void loop()
{
  bv.setCursor(1,0);
  bv.print(millis());
}

mi ritorna questi errori:

In file included from Prova_BV4218.cpp:2:
/Applications/Arduino.app/Contents/Resources/Java/libraries/ByVacLCD/ByVacLCD.h:73: error: conflicting return type specified for 'virtual void ByVacLCD::write(uint8_t)'
/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/arduino/Print.h:48: error:   overriding 'virtual size_t Print::write(uint8_t)'
/Applications/Arduino.app/Contents/Resources/Java/libraries/ByVacLCD/ByVacLCD.h:75: error: conflicting return type specified for 'virtual void ByVacLCD::write(const uint8_t*, size_t)'
/Applications/Arduino.app/Contents/Resources/Java/hardware/arduino/cores/arduino/Print.h:50: error:   overriding 'virtual size_t Print::write(const uint8_t*, size_t)'


Come rimedio? Grazie per l'attenzione
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 266
Posts: 21665
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Dove hai scaricato l' esempio e la libreria ByVacLCD.h?
Quale Arduino hai e quale versione IDE usi?
Ciao Uwe
Logged

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Code:
/Applications/Arduino.app/Contents/Resources/Java/libraries/ByVacLCD

This doesn't look right to me. Normally, libraries go into sketchbook/libraries, in the user folder.

(edit: scusate, pensavo di essere nel forum internazionale smiley-razz )
« Last Edit: October 17, 2012, 10:55:12 am by tuxduino » Logged

0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10474
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

il problema è che la Witre della libreiria LCD va in conflitto con la Write della libreria Print

probabilmente stai overridando la funzione write della print originale, ma la print originale ritorna size_t, mentre la tua libreria void.

Cambia i retutn della libreria LDC in size_t (probabilmente dovreai aggiungere anche il return, dagli un valore farlocco, per esempio sembra che il secondo parametro di LCD.write faccia proprio al caso tuo smiley

probabilmente è un errore dato da un update delle librerie arduino... che versione usi?

@tuxduino: are you the creator of the lib? if so the problem is that your lib return value is null, but you are overriding a function that return size_t. Maybe this is because the IDE version that LeopoldGrufus is using has the Print library updated, but you should double check.
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@lesto: no, no, è che stavo rispondendo in un altro thread nel forum internazionale, poi sono stato interrotto e sono tornato qui a terminare la risposta lasciata a metà... dimenticandomi che l'OP era in italiano! smiley
Logged

Offline Offline
Edison Member
*
Karma: 26
Posts: 1339
You do some programming to solve a problem, and some to solve it in a particular language. (CC2)
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@lesto: la tua diagnosi mi sembra corretta. Forse il problema della cartella in cui ha salvato la libreria non c'entra.
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 112
Posts: 7126
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Qui trovi la wiki del BV4208 (http://doc.byvac.com/index.php5?title=Article_BV4208) e qui la libreria aggiornata alla 1.0.1 --> http://www.byvac.com/downloads/BV4208/BV4208.zip

Comunque sul sito (http://doc.byvac.com/index.php5?title=Product_BV4208) rimanda anche alla LiquidCrystal --> https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads

PS: Usa i tag CODE per inglobare il codice. Li richiami col tasto # sopra le faccine. Grazie.
« Last Edit: October 17, 2012, 11:10:19 am by PaoloP » Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Offline Offline
Newbie
*
Karma: 0
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset


Per Uwe:
Sinceramente non ricordo dove ho trovato la libreria BV4218 anche se ho dovuto fare molte ricerche. Credo in una delle pagine di ByVac…
Lo sketch 'ho trovato a questo indirizzo:
http://john.crouchley.com/blog/archives/264

Per tuxduino:
Non ho precisato che uso un Macintosh e le librerie vengono poste in fase di installazione in: Arduino -> Contents -> Resources -> Java -> Libraries ed è li che ho inserito la libreria bv4218.

Per lesto:
Mi hai fatto venire il mal di testa  smiley-wink
Sono alle primissime armi! …

Grazie a tutti per i vostri interventi… credo che accantonerò questo display!   
Logged

0
Offline Offline
Shannon Member
****
Karma: 131
Posts: 10474
:(){:|:&};:
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

perchè non usi semplicemente l'ultima versione della libreria come proposto da paolop? funziona sicuro!
Logged

sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Offline Offline
Newbie
*
Karma: 0
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie lesto... l'avevo già provata a suo tempo e quando avevo visto ancora errori l'avevo scartata senza cercare di capire smiley-confuse
Ora ho riprovato ed è bastato estrarre la cartella della libreria I2C_bv dalla cartella bv4208 e metterla cartella Libraries.

Grazie a tutti per i vostri interventi

Logged

Pages: [1]   Go Up
Jump to: