Répondre à la discussion
Page 1 sur 2 1 DernièreDernière
Affichage des résultats 1 à 30 sur 55

[programmation C]-Afficheur 128x64 - Librairie GLCD



  1. #1
    jorg1n

    [programmation C]-Afficheur 128x64 - Librairie GLCD


    ------

    Bonjour,

    je viens de recevoir mon afficheur graphique avec comme référence: WG12864B, avec controlleur KS0108.
    Mon PIC est un 18F4525, et je programme en language C, compilateur C18.

    J'ai fais pas mal de recherches sur le net, et j'ai trouvé la bibliothèque glcd, dont une version pour le compilateur C18:
    http://www.piclist.com/techref/micro...e/c/ks0107.htm

    Mais je n'arrive pas à la mettre en fonctionnement...alors si quelqu'un peut me donner un petit coup de pouce...

    Pour le moment, j'ai créer un projet sous MPLAB,avec le glcd.h adapté à ma configuration matérielle, le glcd.c, et un main..utilisant une fonction, mais lors de la compilation il me met une erreur dans le .h
    voici le glcd.h:
    Code:
    #include <p18f4525.h>
    #include <delays.h>
    
    #define LCD_TRIS TRISD
    #define LCD_DATA PORTD
    #define ENABLE PORTCbits.RC5
    #define RW PORTCbits.RC2
    #define DI PORTCbits.RC1
    #define RESET PORTBbits.RB5
    
    #define CS1 PORTCbits.RC
    #define CS2 PORTDbits.RC7
    
     
    
    #define LEFT 0b01
    #define RIGHT 0b10
    #define BOTH 0b11
    #define NONE 0b00
    
    // internal function prototypes
    // you would not normally call these directly. but you can
    // if you like.
    
    
    void _lcd_enable(void);
    unsigned char _lcd_status(void);
    void _lcd_reset(void);
    void _lcd_waitbusy(void);
    
    // public function prototypes call these all you want !
    
    void lcd_screenon(unsigned char on);
    void lcd_cls(void);
    void lcd_setpage(unsigned char page);
    void lcd_setyaddr(unsigned char y);
    void lcd_selectside(unsigned char sides);
    void lcd_write (unsigned char data);
    unsigned char lcd_read (void);
    void lcd_plotpixel(unsigned char rx, unsigned char ry);
    void lcd_putchar(char c);
    void lcd_puts(char *string);
    void lcd_putrs(const rom char *string);
    mais il me met une erreur de synthaxe en dernière ligne...
    Alors si vous voyez d'où ça pouvait venir...c'est avec grand plaisir!!
    Merci d'avance
    Bonne fin de journée..

    -----

  2. Publicité
  3. #2
    cherwam07

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Salut

    Tu pourrais copier-coller ici le resultat de la compilation s'il te plait ?

    Sinon essaye déja de sauter quelque lignes à la fin du fichier, on sait jamais...

  4. #3
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Clean: Deleting intermediary and output files.
    Clean: Done.
    Executing: "C:\MCC18\bin\mcc18.exe" -p=18F4525 "main_TestLCD128x64.C" -fo="main_TestLCD128x64.o" -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
    C:\Documents and Settings\NGEORGIN\Bureau\Progr ammation\TestLCD128x64\glcd.h: 44:Error: syntax error
    Halting build on first failure as requested.
    BUILD FAILED: Mon Mar 10 17:37:14 2008
    Voila le resultat de la compilation

    Merci

  5. #4
    cherwam07

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Etrange ! J'ai pris betement les codes sur ton site et ca compile direct.

    Tu as bien mis le .c dans Source files et le .h dans Header files ?

  6. A voir en vidéo sur Futura
  7. Comparatifs

    Gagnez du temps et de l'argent grâce à nos comparatifs de produits. Parmi nos sujets :
  8. #5
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Place tes sources ( le dossier "TestLCD128x64" ) à la racine de ton c: et ne mets aucun char bizarre dans le path ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  9. #6
    katmai

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Salut,

    J'ai déjà eu un problème avec MPLAB. Une erreur de compil à la dernière ligne finalement j'ai fait un saut de ligne (tt à la fin) et plus de problème. Je sais pas si ça va résoudre ton problème.

    A++

  10. Publicité
  11. #7
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Bonjour,

    je vous remercie pour votre aide..
    je refait un projet, avec le glcd.c et glcd.h
    J'ai rajouté les fonts en début de glcd.c...
    mais là j'ai une autre erreur..

    Clean: Deleting intermediary and output files.
    Clean: Deleted file "C:\Documents and Settings\NGEORGIN\Bureau\Progr ammation\128x64Test2\glcd.o".
    Clean: Done.
    Executing: "C:\MCC18\bin\mcc18.exe" -p=18F4525 "glcd.C" -fo="glcd.o" -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
    Executing: "C:\MCC18\bin\mplink.exe" /l"C:\MCC18\lib" "C:\MCC18\lkr\18f4525.lkr" "C:\Documents and Settings\NGEORGIN\Bureau\Progr ammation\128x64Test2\glcd.o" /o"test128x64.cof" /M"test128x64.map" /W
    MPLINK 4.14, Linker
    Copyright (c) 2007 Microchip Technology Inc.
    Error - could not find definition of symbol 'main' in file 'C:\MCC18\lib/c018i.o'.
    Errors : 1

    Link step failed.
    BUILD FAILED: Tue Mar 11 08:59:29 2008
    Bizarre...
    Merci encore
    et bonne journée

  12. #8
    lil-vince

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Salut,

    C´est pas la peine de te demander si t´as bien déclaré un (et un seul!) main()?
    J´ai déjà eu ce genre d´erreur (mais avec Dev-C++) et en changeant les fichiers de répertoire ca marchait...
    J´ai jamais vraiment compris pourquoi (à part peut-être quand mes prog sont sur réseau)ou comment mais du coup je faisait un dossier dans mes documents, je mettais tous mes fichiers sources, j´enregistrais un nouveau projet (car nouveau répertoire) et ca marchais...
    (Je ne me rappel plus de l´erreur exacte mais c´était avec le fichier.o aussi)

  13. #9
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Bon, j'ai refais un test avec mon "ancien projet"(qui date d'hier) dans le quel j'ai rajouté des sauts de lignes en fin de programme, et corrigé certaines erreurs, mais la je rencontre un autre problème..j'ai ce message ci a la fin de ma compilation:
    MPLINK 4.14, Linker
    Copyright (c) 2007 Microchip Technology Inc.
    Error - symbol 'font' has multiple definitions.
    Errors : 1

    Link step failed.
    BUILD FAILED: Tue Mar 11 09:18:25 2008
    ...d'où cela viens, de la déclaration des caractères dans le glcd.c??
    je vais approfondir tout ça..
    Merci pour vaut conseils...

    PS:Je pense travailler à partir de ce projet, donc ne pas prendre en compte le message précédent.

  14. #10
    lil-vince

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Bah comme ca, difficile à dire mais le message d´erreur signifie que tu as déclaré plusieurs fois "font" (différement) donc cherche les déclarations de "font"...

  15. #11
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    C'est clair qu'avec les infos que tu nous donne, pas evident de t'aider ...

    Comme ça, au pifomètre, je dirais que font.h contient un tableau de byte ( ta font en binaire ) ... et que tu dois l'inclure dans un .h lui même inclu dans plusieurs .c ... et que donc ça foire ...

    Alors inclus font.h seulement dans le fichier .c de ton LCD, et fait un extern dessus ...

    Ou alors donne plus d'infos ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  16. #12
    lil-vince

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    J´avais pas pensé au fait que ca pouvait etre un ficchier et pas une variable, il existe un facon simple d´éviter ces erreurs: Dans chaque header:
    #ifndef toto
    #define toto
    .......
    contenu di fichier d´en-tête
    .......
    #endif

    Comme ca si il a deja compilé ce fichier, toto est déjà défini et il ne le recompilera pas une deuxieme fois... (Attention si tu mets ca dans tout tes fichiers, il faut faire attention de ne jamais utiliser le même nom de variable, perso (bon je le fait plus maintenant) je mettais le nom du fichier donc à la place de "toto", j´aurais mit "fonth" comme ca t´es sur de ne pas réutiliser le même nom...)

    ou alors fait atention et :
    Alors inclus font.h seulement dans le fichier .c de ton LCD

  17. Publicité
  18. #13
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    le 'font' est une variable, qui est déclaré dans le glcd.c
    const rom char font[]= {

    /* add your own font data each char is 3x8 pixels. 3 bytes per char. left column, middle column, right column
    }
    */
    J'y ai donc ajouté les choses suivantesje ne mets pas tout car il y en a pas mal):

    0x00, 0x07, 0x00, 0x07, 0x00,// "
    0x14, 0x7F, 0x14, 0x7F, 0x14,// #
    0x24, 0x2A, 0x7F, 0x2A, 0x12,// $
    0x23, 0x13, 0x08, 0x64, 0x62,// %
    0x36, 0x49, 0x55, 0x22, 0x50,// &
    0x00, 0x05, 0x03, 0x00, 0x00,// '
    0x00, 0x1C, 0x22, 0x41, 0x00,// (
    Et font est utilisé dans le .c comme ceux ci:
    void lcd_putchar(char c)
    {
    int base;
    base = c - 32;
    base *= 3;
    lcd_write(font[base]);

    lcd_write(font[base + 1]);

    lcd_write(font[base + 2]);

    lcd_write(0);
    }
    Voila ce que je peu donner comme infos...
    Merci encore

  19. #14
    lil-vince

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    const rom char font[]
    T´aurais pas oublié d´indiquer la taille du tableau(je ne sais plus si ca le fait tout seul autrement)?

    /* add your own font data each char is 3x8 pixels. 3 bytes per char. left column, middle column, right column
    }
    */
    Lá, ta derniere accolade est mise en commentaire! (peut-être l´as tu mises ailleurs?)

  20. #15
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Citation Envoyé par jorg1n Voir le message
    le 'font' est une variable, qui est déclaré dans le glcd.c
    Ok, alors fait une recherche de 'font' dans ton projet, tu dois avoir une autre variable 'font' dans un coin AMA ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  21. #16
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    J'ai fait la recherche de la variable 'font' et elle se situe seulement dans mon glcd.c, au endroit cité dans mon dernier message, et pas ailleurs!!
    const rom char font[]
    En ce qui concerne si je n'ai pas oublié de le compléter, j'ai vu des exemples ou c'était vide..
    mais je vais essayé...
    encore merci

  22. #17
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Citation Envoyé par jorg1n Voir le message
    En ce qui concerne si je n'ai pas oublié de le compléter, j'ai vu des exemples ou c'était vide..
    mais je vais essayé...
    AMA le prepro t'aurait envoyé ch.er si c'était ça ...

    ...

    Essaye de te faire un projet vide, et d'y mettre ton tableau font dedans pour voir ce que ça donne ...

    PS: donne nous le haut et le bas de ton tableau font ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  23. #18
    lil-vince

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    En ce qui concerne si je n'ai pas oublié de le compléter, j'ai vu des exemples ou c'était vide..
    J´était plus tres sur, il me semble bien aussi qu´en fonction du nombre de caracteres que tu lui met, il définit tout seul la taille du tableau(c´était au cas où)!

    Et ton accolade, tu l´avais remise à la fin de ta déclaration?

    Sinon, question de moi: ca signifie quoi "rom" dans "const rom char" ?

  24. Publicité
  25. #19
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Citation Envoyé par lil-vince Voir le message
    Sinon, question de moi: ca signifie quoi "rom" dans "const rom char" ?
    Pour que le tableau aille en flash/rom et pas en ram ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  26. #20
    lil-vince

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    OK, merci, je m´en doutais mais je ne connaissais pas!
    C´est pas comme un #define alors?

  27. #21
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Code:
    const rom char font[5]= {
    
    /* add your own font data each char is 3x8 pixels. 3 bytes per char. left column, middle column, right column*/
    
    	0x00, 0x00, 0x00, 0x00, 0x00,// (space)
    	0x00, 0x00, 0x5F, 0x00, 0x00,// !
    	0x00, 0x07, 0x00, 0x07, 0x00,// "
    	0x14, 0x7F, 0x14, 0x7F, 0x14,// #
    	0x24, 0x2A, 0x7F, 0x2A, 0x12,// $
    	0x23, 0x13, 0x08, 0x64, 0x62,// %
    	0x36, 0x49, 0x55, 0x22, 0x50,// &
    	0x00, 0x05, 0x03, 0x00, 0x00,// '
    	0x00, 0x1C, 0x22, 0x41, 0x00,// (
    	0x00, 0x41, 0x22, 0x1C, 0x00,// )
    	0x08, 0x2A, 0x1C, 0x2A, 0x08,// *
    	0x08, 0x08, 0x3E, 0x08, 0x08,// +
    	0x00, 0x50, 0x30, 0x00, 0x00,// ,
    	0x08, 0x08, 0x08, 0x08, 0x08,// -
    	0x00, 0x60, 0x60, 0x00, 0x00,// .
    	0x20, 0x10, 0x08, 0x04, 0x02,// /
    	0x3E, 0x51, 0x49, 0x45, 0x3E,// 0
    	0x00, 0x42, 0x7F, 0x40, 0x00,// 1 ligne 55h 85d
    	0x42, 0x61, 0x51, 0x49, 0x46,// 2
    	0x21, 0x41, 0x45, 0x4B, 0x31,// 3
    	0x18, 0x14, 0x12, 0x7F, 0x10,// 4
    	0x27, 0x45, 0x45, 0x45, 0x39,// 5
    	0x3C, 0x4A, 0x49, 0x49, 0x30,// 6
    	0x01, 0x71, 0x09, 0x05, 0x03,// 7
    	0x36, 0x49, 0x49, 0x49, 0x36,// 8
    	0x06, 0x49, 0x49, 0x29, 0x1E,// 9
    	0x00, 0x36, 0x36, 0x00, 0x00,// :
    	0x00, 0x56, 0x36, 0x00, 0x00,// ;
    	0x00, 0x08, 0x14, 0x22, 0x41,// <
    	0x14, 0x14, 0x14, 0x14, 0x14,// =
    	0x41, 0x22, 0x14, 0x08, 0x00,// >
    	0x02, 0x01, 0x51, 0x09, 0x06,// ?
    	0x32, 0x49, 0x79, 0x41, 0x3E,// @
    	0x7E, 0x11, 0x11, 0x11, 0x7E,// A
    	0x7F, 0x49, 0x49, 0x49, 0x36,// B
    	0x3E, 0x41, 0x41, 0x41, 0x22,// C
    	0x7F, 0x41, 0x41, 0x22, 0x1C,// D
    	0x7F, 0x49, 0x49, 0x49, 0x41,// E
    	0x7F, 0x09, 0x09, 0x01, 0x01,// F
    	0x3E, 0x41, 0x41, 0x51, 0x32,// G
    	0x7F, 0x08, 0x08, 0x08, 0x7F,// H
    	0x00, 0x41, 0x7F, 0x41, 0x00,// I
    	0x20, 0x40, 0x41, 0x3F, 0x01,// J
    	0x7F, 0x08, 0x14, 0x22, 0x41,// K
    	0x7F, 0x40, 0x40, 0x40, 0x40,// L
    	0x7F, 0x02, 0x04, 0x02, 0x7F,// M
    	0x7F, 0x04, 0x08, 0x10, 0x7F,// N
    	0x3E, 0x41, 0x41, 0x41, 0x3E,// O
    	0x7F, 0x09, 0x09, 0x09, 0x06,// P
    	0x3E, 0x41, 0x51, 0x21, 0x5E,// Q
    	0x7F, 0x09, 0x19, 0x29, 0x46,// R
    	0x46, 0x49, 0x49, 0x49, 0x31,// S
    	0x01, 0x01, 0x7F, 0x01, 0x01,// T
    	0x3F, 0x40, 0x40, 0x40, 0x3F,// U
    	0x1F, 0x20, 0x40, 0x20, 0x1F,// V
    	0x7F, 0x20, 0x18, 0x20, 0x7F,// W
    	0x63, 0x14, 0x08, 0x14, 0x63,// X
    	0x03, 0x04, 0x78, 0x04, 0x03,// Y
    	0x61, 0x51, 0x49, 0x45, 0x43,// Z
    	0x00, 0x00, 0x7F, 0x41, 0x41,// [
    	0x02, 0x04, 0x08, 0x10, 0x20,// \ 
    
     	0x41, 0x41, 0x7F, 0x00, 0x00,// ]
    	0x04, 0x02, 0x01, 0x02, 0x04,// ^
    	0x40, 0x40, 0x40, 0x40, 0x40,// _
    	0x00, 0x01, 0x02, 0x04, 0x00,// `
    	0x20, 0x54, 0x54, 0x54, 0x78,// a
    	0x7F, 0x48, 0x44, 0x44, 0x38,// b
    	0x38, 0x44, 0x44, 0x44, 0x20,// c
    	0x38, 0x44, 0x44, 0x48, 0x7F,// d
    	0x38, 0x54, 0x54, 0x54, 0x18,// e
    	0x08, 0x7E, 0x09, 0x01, 0x02,// f
    	0x08, 0x14, 0x54, 0x54, 0x3C,// g
    	0x7F, 0x08, 0x04, 0x04, 0x78,// h
    	0x00, 0x44, 0x7D, 0x40, 0x00,// i
    	0x20, 0x40, 0x44, 0x3D, 0x00,// j
    	0x00, 0x7F, 0x10, 0x28, 0x44,// k
    	0x00, 0x41, 0x7F, 0x40, 0x00,// l
    	0x7C, 0x04, 0x18, 0x04, 0x78,// m
    	0x7C, 0x08, 0x04, 0x04, 0x78,// n
    	0x38, 0x44, 0x44, 0x44, 0x38,// o
    	0x7C, 0x14, 0x14, 0x14, 0x08,// p
    	0x08, 0x14, 0x14, 0x18, 0x7C,// q
    	0x7C, 0x08, 0x04, 0x04, 0x08,// r
    	0x48, 0x54, 0x54, 0x54, 0x20,// s
    	0x04, 0x3F, 0x44, 0x40, 0x20,// t
    	0x3C, 0x40, 0x40, 0x20, 0x7C,// u
    	0x1C, 0x20, 0x40, 0x20, 0x1C,// v
    	0x3C, 0x40, 0x30, 0x40, 0x3C,// w
    	0x44, 0x28, 0x10, 0x28, 0x44,// x
    	0x0C, 0x50, 0x50, 0x50, 0x3C,// y
    	0x44, 0x64, 0x54, 0x4C, 0x44,// z
    	0x00, 0x08, 0x36, 0x41, 0x00,// {
    	0x00, 0x00, 0x7F, 0x00, 0x00,// |
    	0x00, 0x41, 0x36, 0x08, 0x00,// }
    	0x08, 0x08, 0x2A, 0x1C, 0x08,// ->
    	0x08, 0x1C, 0x2A, 0x08, 0x08 // <-
    };
    Voici donc comme convenu tout le font []...

  28. #22
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    const rom char font[5]= {....
    Ne pas prendre en compte le 5, dans font[5], c'est une erreur de ma part...
    merci encore

  29. #23
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Citation Envoyé par lil-vince Voir le message
    C´est pas comme un #define alors?
    Heu non, en effet rien à voir : un #define n'est pas une donnée ( c'est une directive du prepro, donc une "action" ), un "const rom" lui représente des données ( donc des octets ).
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  30. #24
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    const rom char font[]= {

    /* add your own font data each char is 3x8 pixels. 3 bytes per char. left column, middle column, right column*/
    il y a marqué, 3 bytes (3 octets)par caractètes, et la moi ils sont en 5 octets..
    cela ne viendrai pas de la..??

  31. Publicité
  32. #25
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Citation Envoyé par jorg1n Voir le message
    il y a marqué, 3 bytes (3 octets)par caractètes, et la moi ils sont en 5 octets..
    cela ne viendrai pas de la..??
    Je ne pense pas, ta font n'est pas correcte, mais au pire tu auras des caractères pourris, mas ça devrait fonctionner ...

    Par contre du coup, quelle taille fait ton tableau ? ... juste pour être sûr, essaye de mettre en commentaire 90% de ton tableau ( pour que sa taille devienne toute petite ... )
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  33. #26
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Je l'avai déja fais, mais c'est toujours pareil!!! c'est bizarre quand meme...de plus, j'ai fais un autre test, j'ai mis tout ce qui utilisait 'font' en commentaire, et la c'est une autre fonction qui était définie plusieurs fois...
    MPLINK 4.14, Linker
    Copyright (c) 2007 Microchip Technology Inc.
    Error - symbol '_lcd_enable' has multiple definitions.
    Errors : 1

    Link step failed.
    BUILD FAILED: Tue Mar 11 15:03:10 2008


    [je viens de modifier son emplacemen...meme erreur, donc ça ne vient pas de la!]
    Dernière modification par jorg1n ; 11/03/2008 à 14h15.

  34. #27
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Regarde bien tes ; et autres { } ... on sait jamais, mais l'erreur est étrange !

    Tu as bidouillé le .lkr ?

    Dans ton projet, tu n'as que le .c et le .h que tu nous as montré ?
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  35. #28
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    PS: tu as essayé comme je te l'avais dit au tout début du post de mettre ton projet à la racine de ton c: ?

    Post nous tout ton projet peut être ... au moins je pourrais essayer de le compiler ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

  36. #29
    jorg1n

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    tu as essayé comme je te l'avais dit au tout début du post de mettre ton projet à la racine de ton c: ?
    Oui je l'ai mis en racine sur c:
    Alors, j'ai deux fichier .c, et un .h..

    Bon, j'ai cherché un peu sur internet...
    et justement, je pense que c'est dans les entètes que je me suis trompé..
    il doit me manqué un #if...par ci par la!!

    Voici l'entète du fichier glcd.c
    Code:
    #include <p18f4525.h>
    #include "glcd.h"
    
    //add your own font data each char is 3x8 pixels. 3 bytes per char. left column, middle column, right column
    const rom char font[]= {
    			0x0,0x0,0x0,0x0,0x0,  			//  32 -esp- 20					
    			0x0,0x0,0x4F,0x0,0x0, 			//	33 - ! - 21
    Dedans il y a donc toutes les fonctions: void....(void)...

    Voici le fichier glcd.h complet avec des saut de ligne a la fin...
    Code:
    #include <p18f4525.h>
    #include <delays.h>
    
    #define LCD_TRIS TRISD
    #define LCD_DATA PORTD
    #define ENABLE PORTCbits.RC5
    #define RW PORTCbits.RC2
    #define DI PORTCbits.RC1
    #define RESET PORTBbits.RB5
    
    #define CS1 PORTCbits.RC6
    #define CS2 PORTCbits.RC7
    
     
    
    #define LEFT 0b01
    #define RIGHT 0b10
    #define BOTH 0b11
    #define NONE 0b00
    
    
    //Fonctions à usage interne pour la librairie
    void _lcd_enable(void);
    unsigned char _lcd_status(void);
    void _lcd_reset(void);
    void _lcd_waitbusy(void);
    
    
    //Fonctions pour l'utilisateur
    void lcd_screenon(unsigned char on);
    void lcd_cls(void);
    void lcd_setpage(unsigned char page);
    void lcd_setyaddr(unsigned char y);
    void lcd_selectside(unsigned char sides);
    void lcd_write (unsigned char data);
    unsigned char lcd_read (void);
    void lcd_plotpixel(unsigned char rx, unsigned char ry);
    void lcd_putchar(char c);
    void lcd_puts(char *string);
    void lcd_putrs(const rom char *string);
    et l'entete de mon main.c
    Code:
    #include <p18f4525.h>
    #include <delays.h>
    #include <adc.h>
    #include <stdlib.h>
    #include "glcd.c"
    si vous voyez des erreurs...je suis preneur!!
    Merci encore

  37. #30
    Seb.26

    Re : [programmation C]-Afficheur 128x64 - Librairie GLCD

    Citation Envoyé par jorg1n Voir le message
    et l'entete de mon main.c
    Code:
    #include <p18f4525.h>
    #include <delays.h>
    #include <adc.h>
    #include <stdlib.h>
    #include "glcd.c"
    Arrrghhhhh .... complètement interdit dans 99% des cas de faire un #include d'un .c !!!

    un .h c'est fait pour ça ...
    << L'histoire nous apprend que l'on apprend rien de l'histoire. >>

Sur le même sujet


Page 1 sur 2 1 DernièreDernière

Discussions similaires

  1. Outil pour Afficheurs LCD graphiques GLCD
    Par Bernaco dans le forum Logiciel - Software - Open Source
    Réponses: 18
    Dernier message: 18/02/2016, 07h18
  2. Afficheur Graphique 128x64 - Infos
    Par jorg1n dans le forum Électronique
    Réponses: 1
    Dernier message: 20/02/2008, 12h42
  3. LCD 128x64 T6963C sur PIC16F876
    Par nk36 dans le forum Électronique
    Réponses: 1
    Dernier message: 17/10/2007, 08h25
  4. [lcd 128x64] Besoin d'informations
    Par Lethargy dans le forum Électronique
    Réponses: 5
    Dernier message: 22/05/2007, 19h07
  5. Copie d'ecran GLCD vers SDcard station easypic 3
    Par joss dans le forum Électronique
    Réponses: 8
    Dernier message: 18/06/2006, 17h25
Découvrez nos comparatifs produits sur l'informatique et les technologies.