#include <p18f452.h>
#include <delays.h>
#pragma config OSC = HS
#pragma config WDT = OFF
//Los include "propios" van despues de los FUSES.
#include "GLCDGeneric.h"
/*----------------DEFINE----------------*/
/*----------------DEFINE----------------*/
/*----------------PROTOTIPOS----------------*/
/*----------------PROTOTIPOS----------------*/
void main(void)
{
vGLCDInit(ON);
}
/*-----------------FUNCIONES----------------*/
/*-----------------FUNCIONES----------------*/
Y si quiero usar el #define GLCD_USE_MODE_FAST, donde tengo que poner el SECTION NAME=BUFFER_GLCD RAM=data?
Alguna guia para recomendar sobre linkers?
Ultima (por ahora :P). Para las imagenes habria que hacer lo mismo, verdad? Con que programa pasas de bmp a tabla en c de la imagen?Si lo mismo, ahora el programa para pasar el bmp a C quedo por la mitad, lo busco y te lo paso, pero tiene varios bugs! :D
Buenas, tambièn tengo problemas con la LCDGeneric de Suky (de antemano gracias por dicha libreria)
Estoy usando un PIC24F32KA304 y he adaptado dicha libreria para el uso de éste con la explorer 16 de Microchip. El problema que tengo es que solo se muestran caracteres hasta la mitad de la LCD, es decir, ya sea de la primera linea o la segunda, solo llegan a ocupar de cada una de éstas hasta la 8tava posición, si intento escribir en el eje 'x' numero 9, 10, 11, 12 etc... de la primera linea no aparece lo que imprimo; siendo de que forma análoga sucede lo mismo en la segunda linea.
Agradeceria que por favor me ayuden con esto. Gracias.
Gracias Suky por la atención prestada.Buenas, tambièn tengo problemas con la LCDGeneric de Suky (de antemano gracias por dicha libreria)
Estoy usando un PIC24F32KA304 y he adaptado dicha libreria para el uso de éste con la explorer 16 de Microchip. El problema que tengo es que solo se muestran caracteres hasta la mitad de la LCD, es decir, ya sea de la primera linea o la segunda, solo llegan a ocupar de cada una de éstas hasta la 8tava posición, si intento escribir en el eje 'x' numero 9, 10, 11, 12 etc... de la primera linea no aparece lo que imprimo; siendo de que forma análoga sucede lo mismo en la segunda linea.
Agradeceria que por favor me ayuden con esto. Gracias.
Que controlador utiliza el LCD? :?
Bueno, seguramente ese es el problema, la librería es para LCD con controlador Hitachi o similar. Vas a tener que buscar el datasheet y ver la diferencia, o viendo el código de alguna librería para ese LCD.Gracias Suky por la atención.
Saludos!
Para C30, no ni idea cual puede ser, a mi me ha funcionado en 2x16 y 4x20 :mrgreen:Suky Saludos
void vPuts_LCD(UINT8 *buffer){
while(*buffer != '\0') {
vWriteLCD(*buffer++,LCD_DATA);
}
}
Se podría hacer:Código: C
char Buffer[10]; vPuts_LCD(Buffer);
También se puede agregar en C30:Código: C
void vPutsr_LCD(const UINT8 *buffer){ while(*buffer != '\0') { vWriteLCD(*buffer++,LCD_DATA); } }
y llamarla:Código: C
vPutsr_LCD("Hola!!");
Saludos!
Saludos SukySe podría hacer:Código: C
char Buffer[10]; vPuts_LCD(Buffer);
También se puede agregar en C30:Código: C
void vPutsr_LCD(const UINT8 *buffer){ while(*buffer != '\0') { vWriteLCD(*buffer++,LCD_DATA); } }
y llamarla:Código: C
vPutsr_LCD("Hola!!");
Saludos!
Excelente Suky, perfecto!!!
Gracias nuevamente!!!