Go Down

Topic: BV4218 I2C LCD controller (Read 1 time) previous topic - next topic

z3us

Ho da poco ricevuto questo modulo, il BV4218 prodotto da ByVac.

come spesso mi accade, compro la roba prima di accertarmi accuratamente che esista documentazione e librerie usabili da arduino! Avevo visto qualcosa e credevo fosse sufficiente, ma così non è stato!

ecco il modulo: BV4218

nella pagina è presente un link ad una libreria che non funziona

in rete ho trovato altre librerie, che non funzionano!
sto provando esempi stupidi, ma non vanno!

qualcuno di voi conosce o ha usato questi moduli e può darmi una mano?

grazie!!!

Brunello

Non sara' un problema di Address ?

Hai provato a fare una scansione del bus I2C

http://todbot.com/blog/2009/11/29/i2cscanner-pde-arduino-as-i2c-bus-scanner/

uwefed

z3us, per favore dacci la possibilitá di aiutarti.

1) che versione di IDE usi? La libreria non funziona con la versione 1,0 ma funziona con la versione 023?
2) quale sketch usi
3) quali mesaggi di errore escono oppure descrivi nei particolari i sintomi.

Ciao Uwe

uwefed

Se usi IDE1.0 ho trovato il problema.

Nel file ByVacLCD_h si trova
#include <WProgram.h>

quello deve essere cambiato con

#include "Arduino.h"

vedi http://arduino.cc/en/Main/ReleaseNotes

Ciao Uwe

z3us

scusa Uwe,
dovevo stare davanti al pc ieri ma poi sono andato via.

allora, aggiungiamo informazioni!

il modulo è nuovo, non sono ancora riuscito a farlo funzionare!
uso 023 come IDE, ma ho anche a disposizione 1.0!
compilando un programma di esempio preso su internet mi dà il seguente errore:

Code: [Select]
#include <Wire .h>
#include <ByVacLCD .h>
// declare the object - address in the data sheet is 0×42 but you
// need to divide this by two to get the 'normal' 7 bit I2C address
// - the low order bit is added on by Wire.
// this declaration is for 4 rows of 20 characters.
ByVacLCD bv = ByVacLCD(0×21,4,20);

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

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


errore:

Code: [Select]
sketch_apr29a.cpp:1:19: error: Wire .h: No such file or directory
sketch_apr29a.cpp:2:23: error: ByVacLCD .h: No such file or directory
sketch_apr29a:6: error: stray '\' in program
sketch_apr29a:11: error: stray '\' in program
sketch_apr29a:11: error: stray '\' in program
sketch_apr29a:6: error: 'ByVacLCD' does not name a type
sketch_apr29a.cpp: In function 'void setup()':
sketch_apr29a:10: error: 'bv' was not declared in this scope
sketch_apr29a:11: error: 'u201cHello' was not declared in this scope
sketch_apr29a.cpp: In function 'void loop()':
sketch_apr29a:16: error: 'bv' was not declared in this scope


rilascia lo stesso errore sia con IDE 023 che con 1.

la libreria aggiunta proviene da qui: Link

nel pdf risulta l'indirizzo I2C 0x42!!!



leo72

L'IDE ti sta dicendo che non trova la libreria.
Dove l'hai scompattata?

z3us

ho aggiunto la libreria in

..\Arduino\libraries\ByVacLCD

ho un sacco di librerie, di solito copiando la cartella funziona.

in più, ho anche provato a richiamarla tramite:

sketch => import library => ByVacLCD e spunta regolarmente:

#include <ByVacLCD.h>

dici che nonostante ciò non la riconosce?

uwefed

Lo so che sono rompiballe, cattivo a farti vedere il problema in questo modo cosí brutale senza dirlo con una certa gentilezza e empatia:

Togli i spazi prima del punto in:
Code: [Select]
#include <Wire .h>
#include <ByVacLCD .h>


Ciao Uwe

leo72


Lo so che sono rompiballe, cattivo a farti vedere il problema in questo modo cosí brutale senza dirlo con una certa gentilezza e empatia:

Togli i spazi prima del punto in:
Code: [Select]
#include <Wire .h>
#include <ByVacLCD .h>


Ciao Uwe

+1

Michele Menniti



Lo so che sono rompiballe, cattivo a farti vedere il problema in questo modo cosí brutale senza dirlo con una certa gentilezza e empatia:

Togli i spazi prima del punto in:
Code: [Select]
#include <Wire .h>
#include <ByVacLCD .h>


Ciao Uwe

+1

+1 al suggerimento, ma mi dissocio da Leo riguardo il:
Quote
Lo so che sono rompiballe, cattivo a farti vedere il problema in questo modo cosí brutale
, ma quando mai!
-1 (così azzero Leo) :smiley-mr-green:
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

leo72

Ora a fare gli occhi alle pulci...  :smiley-sweat: il "+1" era per lo spazio nel nome, non certo per l'autodefinizione "rompiballe"....  :smiley-sweat: :smiley-sweat:

z3us

Grande Uwe! non mi ero accorto degli spazi!

MA.......Continua a dare l'errore anche senza!

e a questo punto che faccio?

uwefed

#12
Apr 30, 2012, 09:52 am Last Edit: Apr 30, 2012, 07:24 pm by UweFederer Reason: 1
Se hai una sfera di cristallo in alternativa al codice e la lista dei errori puoi mandarmi anche quella.
Ciao Uwe

Michele Menniti


Se hai una sfera d cristallo in alternativa al codice e la lista dei errori puoi mandarmi anche quella.
Ciao Uwe

:smiley-yell:
Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

z3us

ahahaha vi farò diventare matti io, lo so! e Uwe mi odierà fino al 21/12/2012!!!

non ho scritto dettagli perche la situazione non era cambiata, cioè:

Codice:

Code: [Select]
#include <Wire.h>
#include <ByVacLCD.h>
// declare the object - address in the data sheet is 0×42 but you
// need to divide this by two to get the 'normal' 7 bit I2C address
// - the low order bit is added on by Wire.
// this declaration is for 4 rows of 20 characters.
ByVacLCD bv = ByVacLCD(0×21,4,20);

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

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


ed errore:

Code: [Select]
sketch_apr30a:6: error: stray '\' in program
sketch_apr30a:11: error: stray '\' in program
sketch_apr30a:11: error: stray '\' in program
sketch_apr30a:6: error: expected primary-expression before '(' token
sketch_apr30a:6: error: expected `)' before 'u00d721'
sketch_apr30a.cpp: In function 'void setup()':
sketch_apr30a:11: error: 'u201cHello' was not declared in this scope


la libreria usata ve l'ho segnalata prima. posta nella giusta cartella.vi faccio una foto!

sembra come se nella libreria mancasse qualcosa, un parametro o che! ho dato un'occhiata, ma non sono riuscito a vedere nulla di insolito!

e scusate ancora per prima!

Go Up