Pages: [1]   Go Down
Author Topic: Arduino Leonardo y Graphic LCD Backpack  (Read 1269 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 2
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola.

Acabo de llegar a Arduino, ya he realizado algún proyecto y no tuve muchos problemas, hasta que queria integrar una pantalla en un proyecto en concreto.

La cuestión es que no consigo escribir nada en ella, he leido mucho, y no consigo arrancar, les cuento.

He configurado.

Arduino Leonardo  Pin +5v    ----->    Pin Vin          Graphic LCD Backpack
Arduino Leonardo  Pin GND   ----->    Pin GND        Graphic LCD Backpack
Arduino Leonardo  Pin 1 TX1 ----->    Ping RX         Graphic LCD Backpack

Abro este código en el entorno de programación de Arduino (version 1.0.2)

Code:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Sketch realizado por Alex TC (TCRobotics) //
// web: http://tcrobotics.blogspot.com      //
// twitter: @TCRobotics                      //
// email: alex.tc.robotics-AT-gmail.com      //
// //
// Publicado en BricoGeek.com //
// http://blog.bricogeek.com/noticias/tutoriales/tutorial-arduino-pantalla-serial-lcd-128x64/ //
//////////////////////////////////////////////////////////////////////////////////////////////////////////////

void setup() {
    pinMode(13, OUTPUT);
  Serial.begin(115200); //por defecto el LCD trabaja a estos bps
  Serial.print(0x00,BYTE);// para setear el LCD a 115200 (da igual como se encuentre configurado)
}

void loop() {
  delay(4000);
  logo();
  //cambiar_baudrate();
  luz_fondo(100);
  cambiar_fondo();
  while(1)
  {
  escribir_LCD("  CONFIGURACION LCD  ");
  escribir_LCD("    BRICOGEEK.COM    ");
  escribir_LCD("                     ");
  escribir_LCD(" AJUSTA EL CONTRASTE ");
  escribir_LCD("                     ");
  escribir_LCD("Apaga el LCD con el  ");
  escribir_LCD("fondo que quieras    ");
  escribir_LCD("                     ");
  delay(10000);
  digitalWrite(13, HIGH);
  cambiar_fondo();
  }
}



//////////////////////FUNCIONES LCD SERIAL//////////////////////////////////////////////


//escribe caracteres en la pantalla
void escribir_LCD(char *data){
 Serial.print(data);
 delay(20);
}

//invierte el fondo del LCD de claro a oscuro o viceversa
void cambiar_fondo(){
  Serial.print(0x7C,BYTE);
  Serial.print(0x12,BYTE);
  delay(20);
}

//activa o desactiva el logo preprogramado en el backpack
void logo(){
  Serial.print(0x7C,BYTE);
  Serial.print(0x13,BYTE);
  delay(20);
}

//permite ajustar la retroiluminacion
void luz_fondo(int luz){ // de 0 a 100
  Serial.print(0x7C,BYTE);
  Serial.print(0x02,BYTE);
  Serial.print(luz,BYTE);
  delay(20);
}

//cambia el baudrate. Si no conseguimos comunicarnos con el display
//podemos solucionarlo mandandole cualquier dato a 115200bps durante el arranque,
//mostrara en la pantalla 115200 y se autoajustara a esa velocidad
void cambiar_baudrate(char frec){  //"1" =  4.800bps "2" =  96,00bps
  Serial.print(0x7C,BYTE);         //"3" = 19,200bps "4" =  38,400bps
  Serial.print(0x07,BYTE);         //"5" = 57,600bps "6" = 115,200bps
  Serial.print(frec,BYTE);
  delay(20);
}

Le doy a verificar y me suelta este error.

Code:
LCD_serial_128x64_configuracion.pde: In function 'void setup()':
LCD_serial_128x64_configuracion:11: error: redefinition of 'void setup()'
sketch_nov27b:11: error: 'void setup()' previously defined here
LCD_serial_128x64_configuracion:14: error: 'BYTE' was not declared in this scope

Desde Arduino 1.0, la palabra clave 'BYTE' ya no está soportada en
Serial.print(var, BYTE). Por favor utiliza Serial.write() en su lugar.

LCD_serial_128x64_configuracion.pde: In function 'void loop()':
LCD_serial_128x64_configuracion:17: error: redefinition of 'void loop()'
sketch_nov27b:19: error: 'void loop()' previously defined here
LCD_serial_128x64_configuracion.pde: In function 'void escribir_LCD(char*)':
LCD_serial_128x64_configuracion:45: error: redefinition of 'void escribir_LCD(char*)'
sketch_nov27b:47: error: 'void escribir_LCD(char*)' previously defined here
LCD_serial_128x64_configuracion.pde: In function 'void cambiar_fondo()':
LCD_serial_128x64_configuracion:51: error: redefinition of 'void cambiar_fondo()'
sketch_nov27b:53: error: 'void cambiar_fondo()' previously defined here
LCD_serial_128x64_configuracion:52: error: 'BYTE' was not declared in this scope

Desde Arduino 1.0, la palabra clave 'BYTE' ya no está soportada en
Serial.print(var, BYTE). Por favor utiliza Serial.write() en su lugar.

LCD_serial_128x64_configuracion.pde: In function 'void logo()':
LCD_serial_128x64_configuracion:58: error: redefinition of 'void logo()'
sketch_nov27b:60: error: 'void logo()' previously defined here
LCD_serial_128x64_configuracion:59: error: 'BYTE' was not declared in this scope

Desde Arduino 1.0, la palabra clave 'BYTE' ya no está soportada en
Serial.print(var, BYTE). Por favor utiliza Serial.write() en su lugar.

LCD_serial_128x64_configuracion.pde: In function 'void luz_fondo(int)':
LCD_serial_128x64_configuracion:65: error: redefinition of 'void luz_fondo(int)'
sketch_nov27b:67: error: 'void luz_fondo(int)' previously defined here
LCD_serial_128x64_configuracion:66: error: 'BYTE' was not declared in this scope

Desde Arduino 1.0, la palabra clave 'BYTE' ya no está soportada en
Serial.print(var, BYTE). Por favor utiliza Serial.write() en su lugar.

LCD_serial_128x64_configuracion.pde: In function 'void cambiar_baudrate(char)':
LCD_serial_128x64_configuracion:75: error: redefinition of 'void cambiar_baudrate(char)'
sketch_nov27b:77: error: 'void cambiar_baudrate(char)' previously defined here
LCD_serial_128x64_configuracion:76: error: 'BYTE' was not declared in this scope

Desde Arduino 1.0, la palabra clave 'BYTE' ya no está soportada en
Serial.print(var, BYTE). Por favor utiliza Serial.write() en su lugar.

He leido muchas cosas, que cambie la instrucción print por write, que tengo que actualizar el Backpack.

Alguien me puede ayudar?. Gracias.
Logged

0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1407
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

porque no pruebas una versión de tu codigo mas reducida y luego la vas ampliando?

lo de cambiar print por write, ya es parte de la ayuda que pides, porque no lo haces?
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

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

Gracias por contestar, probare la proxima semana con lo que dices aunque ya he probado muchas cosas, pero lo voy a intentar.

Te contare lo que voy haciendo.

Muchas gracias.
Logged

Pages: [1]   Go Up
Jump to: