Répondre à la discussion
Affichage des résultats 1 à 17 sur 17

comment réaliser un programme sous mplab pour un afficheur lcd



  1. #1
    mat7-6

    comment réaliser un programme sous mplab pour un afficheur lcd

    bonjour je doit éffectuer un programme sous mplab.
    j'utilise un pic 16f876.
    Je dois utiliser la fonction if car j'ai deux possibilité:
    afficher consigne (temperature désiré)
    afficher temperature (temperature actuel)
    jutilise un afficheur 16x2

    -----


  2. Publicité
  3. #2
    jorg1n

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    BOnjour,

    Quel est le type d'afficheur que tu utilises?
    Travailles tu sur une carte de développement?
    Tu programme en C? Quel compilateur utilise tu?
    As tu déja utilisé MPLAB? Si ce n'est pas le cas, rend toi sur le site de Microchip et télécharge l'environnement MPLAB:
    http://www.microchip.com/stellent/id...&part=SW007002

    Voila deja...

  4. #3
    mat7-6

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    jutilise un afficheur gdm1602a.
    Je travaille sur une carte en cours de developpement
    je programme en c
    jutilise mplab ide v7.00

  5. #4
    cherwam07

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Et quel est ton problème ?

    Tu ne sais pas comment fonctionne un afficheur LCD ?
    Tu ne sais pas programmer en C ?
    Tu n'as jamais programmé de PIC ?

  6. #5
    mat7-6

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    c'est un peu des 3 je narrive pa a faire mon programme en c

  7. A voir en vidéo sur Futura
  8. #6
    maxitec

    Re : comment réaliser un programme sous mplab pour un afficheur lcd


  9. Publicité
  10. #7
    cherwam07

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Et ca pour la façon d'utiliser un LCD.
    http://www.aurel32.net/elec/lcd.php

  11. #8
    mat7-6

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    jai modifié mon programme j'utilise toujours un afficheur lcd gdm 1602a 16x2 caracteres.
    j'utilise un pic 16f876.
    j'aimerai afficher une lettre sur l'afficheur.
    pourriez vous me montrer le programme en language c merci

  12. #9
    cherwam07

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Regarde ces quelques fonctions.
    C'est pour une écriture en mode 8 bits.

    Il y a une fonction d'affichage par caractère, et un autre d'affichage par ligne de texte (la seconde utilise la première bien entendu)

    Bon courage

    J'ai transformé le zip en txt (le zip avait un problème avec XP). Il suffit d'enlever l'extension txt.
    JPL, modérateur
    Fichiers attachés Fichiers attachés
    Dernière modification par JPL ; 05/03/2008 à 17h54.

  13. #10
    mat7-6

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    #include <16F876.H>
    #fuses XT,NOWDT,NOPROTECT
    #use delay(clock=4000000)

    #define ClkLcd PIN_A1
    #define RWLcd PIN_A2
    #define RSLcd PIN_A3
    int data;
    void main (void)


    {
    output_high(PIN_A1);
    output_low(PIN_A2);
    output_low(PIN_A3);

    output_C (data);

    }


    voila jai commencer mon programme pourrier me donner kelke indication pour continuer mon prog

  14. #11
    cherwam07

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Tu n'as pas regardé ce que j'ai posté juste au dessus ??

  15. #12
    mat7-6

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    si justement je me suis servi de ton programme maintenant j'éssaye de trouver les lignes de programme restante pour faire fonctionner mon programme.

  16. Publicité
  17. #13
    cherwam07

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Un truc comme :
    Code:
    void main(void)
    {
    	unsigned char mot[16];
    
    	open_lcd();
    
    	sprintf(mot,"Coucou !!!");
    	ecrire_lcd(mot, 0);
    }
    devrait marcher.

  18. #14
    mat7-6

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    bonjour j'aimerai connaitre les lignes de codes pour initialiser l'afficheur lcd en mode 4 bits.


    Voila la demarche a suivre mai je ne connais pa les lignes de commande en language c.


    Pour l'initialisation d'un afficheur en mode quatre bits, on commence par forcer celui-ci dans le mode huit bits, puis quand on est sûr que celui-ci est valide, on bascule en mode quatre bits. Comme on ne sait pas au début de l'initialisation si l'afficheur est positionné en quatre ou huit bits, il est nécessaire d'envoyer la commande de passage en mode huit bits plusieurs fois de façon à ce que celle-ci soit comprise, que le mode de départ soit quatre ou huit bits. Les données sont écrites ou lues en envoyant séquentiellement les quatres bits de poids fort suivi des quatres bits de poids faible, séparés par une impulsion positive d'au moins 450 ns sur la ligne E.

    En résumé, voici sur quatre bits, les commandes (RS=0) à envoyer à l'afficheur LCD. Entre chaque valeur, il faut envoyer une impulsion positive sur la ligne E.

    0h, 1h, 0h, 0h, 1h : on commence par effacer l'afficheur (01h)
    3h, 3h, 3h : on force le LCD en mode 8 bits (3xh)
    2h : on passe en mode 4 bits (20h)
    2h, 8h : mode 4 bits, 2 lignes, caractères 5x7 (28h)
    0h, Ch : affichage en fonction, pas de curseur (0Ch)
    0h, 6h : le curseur se déplace vers la gauche (06h)
    0h, 1h : on efface l'afficheur

    Merci pour votre aide

  19. #15
    cherwam07

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Dans le code que je t'ai donné, il y a la fonction 'ecrire_octet_lcd'.

    Tu n'as qu'à en faire une qui s'appellera 'ecrire_demi_octet_lcd'. C'est la même chose que la première sauf que tu ne t'interessera par exemple qu'aux 4 premiers bits.
    ...

    Aller je le fais :
    Code:
    void ecrire_demi_octet_lcd(char data, char type)
    {
    	// Placement des bits de données
    	if(data & 0x01)
    	{
    		D0 = 1;
    	} else D0 = 0;
    	if(data & 0x02)
    	{
    		D1 = 1;
    	} else D1 = 0;
    	if(data & 0x04)
    	{
    		D2 = 1;
    	} else D2 = 0;
    	if(data & 0x08)
    	{
    		D3 = 1;
    	} else D3 = 0;
    
    	RW = 0;
    
    	if(type) RS = 1;
    	else RS = 0;
    
    	ENABLE = 1;
    	tempo(50);
    	ENABLE = 0;
    }
    Voilà. (je ne sais plus si en 4 bits on utilise D0..3 ou D4...7)

    Maintenant tu modifie la fonction ouvrir_lcd() en la faisant appeler ta nouvelle fonction autant de fois qu'il y a de parametres.

    Il te reste une autre modification à faire : modifier la fonction 'ecrire_octet_lcd' pour qu'elle appel deux fois 'ecrire_demi_octet_lcd', une fois avec les 4 bits de poids fort, une fois avec les 4 bits de poids faible.

    Bon courage

  20. #16
    RISC

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    Salut,

    Une bonne source de programmes avec plein d'exemples pour les LCD ici : http://www.sxlist.com/techref/io/lcd/pic.htm

    a+

  21. #17
    N@RkO

    Re : comment réaliser un programme sous mplab pour un afficheur lcd

    salut à tous,
    Merci pour ton aide cherwam07 mais j'aurais une question,
    tu dis qu'un truc comme sa devrait marcher
    Code:
    void main(void)
    {
    	unsigned char mot[16];
    
    	open_lcd();
    
    	sprintf(mot,"Coucou !!!");
    	ecrire_lcd(mot, 0);
    }
    mais pourquoi utilisé la fonction sprintf? Ne peut t'ont pas simplement écrire
    Code:
    void main(void)
     {             open_lcd();
                    ecrire_lcd("Coucou !!!", 0);
     }
    Merci

Sur le même thème :

Discussions similaires

  1. aide pour brochage afficheur LCD
    Par juju60123 dans le forum Électronique
    Réponses: 3
    Dernier message: 28/10/2007, 17h03
  2. Comment fonctionne un afficheur LCD ( trame)
    Par paterson dans le forum Électronique
    Réponses: 6
    Dernier message: 09/03/2007, 21h52
  3. Branchement d'un potentiometre pour afficheur LCD 2x16
    Par altea dans le forum TPE / TIPE et autres travaux
    Réponses: 1
    Dernier message: 23/02/2007, 15h08
  4. Aide pour un programme MPLAB
    Par Grosso dans le forum Électronique
    Réponses: 5
    Dernier message: 20/12/2006, 19h34