Título: PIC16F877A Y LCD Publicado por: H3lltronik en 22 Mayo 2018, 06:56 am Saludos, de nuevo yo.
Esta vez intento que realizar un programa que muestre un texto cualquiera en el LCD usando C embebido, el problema es que no muestra lo que debe mostrar. Este es mi codigo: Código: #define LCD_ENABLE_PIN PIN_D7 Y este es el circuito de la simulacion: (https://i.imgur.com/VNeGSMN.png) Se supone deberia mostrar "NO FUNCIONA ESTA COSA" pero en lugar de eso me da esos simbolos extraños y cosas raras. No comprendo que es lo que estoy haciendo mal! Nunca habia usado realmente C y ahora tengo problemas con el LCD, espero que alguien pueda ayudarme :C Título: Re: PIC16F877A Y LCD Publicado por: srWhiteSkull en 22 Mayo 2018, 11:17 am http://www.zilogic.com/releases/current/zdev-user-manual/_lcd.html
Título: Re: PIC16F877A Y LCD Publicado por: PalitroqueZ en 22 Mayo 2018, 16:09 pm varias consideraciones,
- necesitas preformatear a la funcion lcd_putc dentro de printf, como limpiar o indicarle la fila donde se mostraran los caracteres alfanumericos, printf(lcd_putc,"\fNO FUNCIONA ESTA COSA"); - la pantalla lcd puede mostrar 16 caracteres, por lo que se truncará el texto que pretendes mostrar. - en proteus no hace falta colocar cristales, elimina e cristal con los condensadores, asi como tambien el potenciometro de contraste de la pantalla lcd - en proteus hay que configurar la frecuencia del cristal en las propiedades del micro, asi como tambien la word configurations o fuses de programación. - por alguna extraña razón, la libreria lcd.c que viene con el compilador CCS no funciona bien con el proteus, no siendo asi, probando el montaje en físico. hay otra libreria que es mucho mejor (mas flexible y funciona en simulación y en fisico) se llama flex_lcd_c.c esta libreria la puedes buscar en google, asi como las instrucciones de utilizarla. Título: Re: PIC16F877A Y LCD Publicado por: H3lltronik en 22 Mayo 2018, 19:04 pm PalitroqueZ de verdad te lo agradezco mucho! lo unico que hice fue cambiar la libreria que estaba usando por la que mencionaste y parece estar funcionando correctamente ahora :D
|