Autor Tema: ayuda en comienzo con pic y lcd  (Leído 2122 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jooz

  • PIC10
  • *
  • Mensajes: 5
ayuda en comienzo con pic y lcd
« en: 27 de Julio de 2014, 18:31:20 »
hola buenas tardes a todos... los felicitos por la calidad y excelencia del foro..... ((:-)) ((:-)) ((:-))

soy de venezuela y estudio informatica y  soy amante de los acuarios y en funcion de eso quiero automitizar un poco el proceso de los acuarios para la luces y todo los demas, asi que me he aventurado a comenzar a indagar sobre este nuevo mundo, he leido e investigado por dos semanas y ya he estendido muchas cosas...para comenar con mi conocmiento queria hacer un reloj para ver en el lcd la hora  dia, pero por mas que he leido y tratado de enterder no logro mostrar nada en el lcd, lo he intentado con la llibreria por defecto y nada he intente configurar los pines y nada,

en el adjunto muestro conexion en proteus y a continuacion el codigo
Código: [Seleccionar]
#include <16F84A.h>
#FUSES NOWDT //No Watch Dog Timer
#use delay(clock=4M)
#define use_portb_lcd TRUE
#include <lcd.c>


void main(){
 
while(true)
{
set_tris_a(0b0);

lcd_init();

lcd_putc("hola");
output_high(PIN_A0);
}
}



y  como he tratado de configura los pines en la libreria LCD.C
   
Código: [Seleccionar]
                                                                   ////
////  Example of port access:                                              ////
////     #define LCD_DATA_PORT getenv("SFR:PORTD")                         ////
////                                                                       ////
////  To use pin access, the following pins must be defined:               ////
////     LCD_ENABLE_PIN                                                    ////
////     LCD_RS_PIN                                                        ////
////     LCD_RW_PIN                                                        ////
////     LCD_DATA4                                                         ////
////     LCD_DATA5                                                         ////
////     LCD_DATA6                                                         ////
////     LCD_DATA7                                                         ////
////                                                                       ////
////  Example of pin access:                                               ////
#define LCD_ENABLE_PIN  PIN_B0                                          ////
#define LCD_RS_PIN      PIN_B1                                         ////
#define LCD_RW_PIN      PIN_B2                                          ////
#define LCD_DATA4       PIN_B4                                        ////
#define LCD_DATA5       PIN_B5                                         ////
#define LCD_DATA6       PIN_B6                                          ////
#define LCD_DATA7       PIN_B7 



esperando contar con su ayuda, y agradeciendo desde ya ......   

Desconectado alev2477

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda en comienzo con pic y lcd
« Respuesta #1 en: 27 de Julio de 2014, 22:08:05 »
Saludos,

Bueno lo primero que observo, si compila correctamente.
Pero en la simulación en proteus arroja muchas advertencia de que "TRISB instrucction is deprecated for pic16f84"

Aun no se porque coloca ese mensaje, pero me imagino que es la biblioteca lcd.c reviso y te digo. :)
Al preguntar aprendo y al responder aprendo tambien

Desconectado AleSergi

  • PIC16
  • ***
  • Mensajes: 214
Re: ayuda en comienzo con pic y lcd
« Respuesta #2 en: 27 de Julio de 2014, 22:56:47 »
Conozco que onda los acuarios porque supe tener y por ahi andan esas cosas... asi que te digo, olvidate del pic16f84a, encara la cosa directamente con un pic16f876 o pic16f887, pasa que con estos últimos  tenes más pines (y no hace falta ese odioso cristal), y pues seguramente los terminarás empleando, pensa, acuario, hora, alimentar peces, controlar temperatura, mover bombas, luces, y demas demencia que se te ocurra...
Esto termina en que incorporás DS1307, para no perder la hora, LM35 (u otro chip) para la temperatura seguramente mas de uno, reles...  y demás yerbas.

Busca ejemplos en la web, usa el buscador hay cantidad,.. no hace falta que te desayunes con los pic tan fino.
Si estas empleando CCS, fijate en los ejemplos, son muy utiles, y hay de todo para solucionar/arrancar con lo que pretendes....

Desconectado jooz

  • PIC10
  • *
  • Mensajes: 5
Re: ayuda en comienzo con pic y lcd
« Respuesta #3 en: 27 de Julio de 2014, 23:05:50 »
gracias por las repuestas, AleSergi ese fue el consegui aqui, ademas como estoy comenzando no quice gastar tanto para ir experimentando y dañando cosas es mejor ir empezando poco a poco e ir avanzando hacia cosas mas grande.... lo que tenia en mente en un principio era por arduino pero aparte de que estan super caras, un amigo me dijo que con cualquier pic podia lograr cosas iguales y mas economicas que lo mas dificil era la programacion, pero como soy estudiante de informatica no lo vi tan complicado por eo me he aventurado en este mundo de cosas tan grandes que se pueden hacer con los pic... gracias nuevamente por sus comentarios.

Desconectado alev2477

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda en comienzo con pic y lcd
« Respuesta #4 en: 27 de Julio de 2014, 23:09:08 »
Saludos,

Bueno ya hice que presentara el mensaje en pantalla.
 
Lo primero que hice fue guardar una copia de lcd.c y lo llame lcdb.c
Descomenté lo relacionado utilizar el puerto B
es decir descomente:
#define use_portb_lcd TRUE
y
 #locate lcd = getenv("sfr:PORTB")    // This puts the entire structure over the port

Asi sólo inclui la libreria
#include "lcdb.c"

luego revisé la libreria lcdb.c y me dice como conectar el lcd, por lo que te faltaron 3 pines (ve la imagen)

Código: [Seleccionar]
// As defined in the following structure the pin connection is as follows:
//     D0  enable
//     D1  rs
//     D2  rw
//     D4  D4
//     D5  D5
//     D6  D6
//     D7  D7
//
//   LCD pins D0-D3 are not used and PIC D3 is not used.

Aun me sale el mensaje en proteus: "TRISB instrucction is deprecated for pic16f84"

El Pic 16f84A es muy básico, si se puede hacer muchisimas cosas pero es bueno que consideres otros chips


Espero ayudarte, sigo investigando y asi aprendo
Al preguntar aprendo y al responder aprendo tambien

Desconectado jooz

  • PIC10
  • *
  • Mensajes: 5
Re: ayuda en comienzo con pic y lcd
« Respuesta #5 en: 28 de Julio de 2014, 00:22:32 »
gracias alev2477  por tu ayuda.... uno de los problemas que dije al principio era que la libreria del ccs es dierente a la que explicaban en la red, por ende no tiene las lineas que tu comentas en el mensaje, y a mi no me arroja ningun mensaje acerca del "TRISB instrucction is deprecated for pic16f84" o por lo menos no lo logro ver.,,... te adjunto mi libreria lcd para que le eches una revisada,  gracias nuevamente :)

Desconectado jooz

  • PIC10
  • *
  • Mensajes: 5
Re: ayuda en comienzo con pic y lcd
« Respuesta #6 en: 28 de Julio de 2014, 00:31:22 »
ya me muestra el mensaje en pantalla, solo hacia falta la conexion del RW..... :-/ :-/ :-/ :-/   aunque seguire preguntando....  gracias  ((:-)) ((:-)) ((:-))

Desconectado alev2477

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda en comienzo con pic y lcd
« Respuesta #7 en: 28 de Julio de 2014, 00:35:01 »
Ok si tiene algunas diferencias, la probare.
Aqui te dejo la que he utilizado desde el CCS
Me funciono bien, solo que en  proteus se genera mensajes TRISB instrucction is deprecated for pic16f84
Al preguntar aprendo y al responder aprendo tambien


 

anything