PIC 16F84 et LCD
Répondre à la discussion
Affichage des résultats 1 à 16 sur 16

PIC 16F84 et LCD



  1. #1
    invite713fbb16

    PIC 16F84 et LCD


    ------

    Bonjour,



    Je m'apprête a faire un exposé sur l'affichage LCD a l'aide d'un pic 16f84 programmé en microC, donc voila, j'ai fouillé partout, et ça ne donne que des programmes faits a l'aide de l'assembleur, ou alors, des programmes avec des fonctions toutes prêtes ou faut juste remplacer les variables -.-'.


    Je n'aime pas le travail maché, j'ai horreur de ça, donc si quelqu'un parmi vous aurait la gentillesse de me montrer comment programmer une fonction gérant un affichage lcd sur microC, ça me ferais vraiment plaisir, car le soucis, c'est que je ne vois pas, comment les sorties d'un PIC, peuvent influer sur l'affichage d'un LCD, on va dire que je ne vois pas le "pont" entre les deux.

    J'attends impatiemment vos réponses, Merci.

    -----

  2. #2
    invite5637435c

    Re : PIC 16F84 et LCD

    Bonsoir,

    Un 16F84 ne contient pas assez de memoire programme pour recevoir un code pour LCD ecrit en C.
    1K de programme c'est tres peu, je te suggere de migrer vers un PIC plus important genre 16F876.
    Si tu es oblige de garder un PIC16F84 alors opte pour l'assembleur.

  3. #3
    invite713fbb16

    Re : PIC 16F84 et LCD

    Y a pas de soucis, je devrais avoir le droit de changer de PIC pour pouvoir le programmer MicroC.

    Donc, comment fait-on ? car vraiment je ne vois pas comment les "relier" sur le programme :/

  4. #4
    invitefaaca50b

    Re : PIC 16F84 et LCD

    tu regardes sur google les projets existant avec un PIC et un LCD, il y en a des milliers...
    Ca te donnera deja la partie hardware, ensuite, tu trouveras des sources en C.

  5. A voir en vidéo sur Futura
  6. #5
    invite5637435c

    Re : PIC 16F84 et LCD

    Il faut raccorder les 4 bits de poids forts D8,D7,D6,D5 a 4 I/O d'un PORT du PIC, par exemple le port B.
    Ces 4 bits seront le bus de donnees de l'afficheur, on pourrait utiliser les 8 bits mais 4 suffisent, il faudra juste transmettre l'octet en 2 temps au lieu d'un seul, mais on gagne 4 I/O du PIC.

    Puis il faut cabler les lignes de commandes (E-> Enable,RS ->Register Select,RW-> Read/Write).

    Un peu de doc sur le sujet:
    http://www.aurel32.net/elec/lcd.php

    Ensuite il faut coder le protocole de communication entre le microcontroleur et l'afficheur (qui contient un controleur).
    Le jeu de commande standard est dans le document que je t'ai indique dans le lien.

    Sous MikroC, le travail est grandement simplifie, des fonctions toutes faites te sont proposees:
    Code:
    char *text = "Hello Samy T";
    void main() {
      Lcd_Config(&PORTB, 4, 5, 6, 3, 2, 1, 0); // initialisation
      LCD_Cmd(LCD_CLEAR);       // efface l'afficheur
      LCD_Cmd(LCD_CURSOR_OFF);  // curseur off
      LCD_Out(1,1, text);       // ecris sur la premiere ligne et premiere colonne
      }
    Que comptes-tu faire au juste avec ton LCD?

    @+

  7. #6
    invite713fbb16

    Re : PIC 16F84 et LCD

    Citation Envoyé par HULK28 Voir le message
    Il faut raccorder les 4 bits de poids forts D8,D7,D6,D5 a 4 I/O d'un PORT du PIC, par exemple le port B.
    Ces 4 bits seront le bus de donnees de l'afficheur, on pourrait utiliser les 8 bits mais 4 suffisent, il faudra juste transmettre l'octet en 2 temps au lieu d'un seul, mais on gagne 4 I/O du PIC.

    Puis il faut cabler les lignes de commandes (E-> Enable,RS ->Register Select,RW-> Read/Write).

    Un peu de doc sur le sujet:
    http://www.aurel32.net/elec/lcd.php

    Ensuite il faut coder le protocole de communication entre le microcontroleur et l'afficheur (qui contient un controleur).
    Le jeu de commande standard est dans le document que je t'ai indique dans le lien.

    Sous MikroC, le travail est grandement simplifie, des fonctions toutes faites te sont proposees:
    Code:
    char *text = "Hello Samy T";
    void main() {
      Lcd_Config(&PORTB, 4, 5, 6, 3, 2, 1, 0); // initialisation
      LCD_Cmd(LCD_CLEAR);       // efface l'afficheur
      LCD_Cmd(LCD_CURSOR_OFF);  // curseur off
      LCD_Out(1,1, text);       // ecris sur la premiere ligne et premiere colonne
      }
    Que comptes-tu faire au juste avec ton LCD?

    @+

    Justement, j'ai tout préparé en partie hardware, j'ai aussi le programme et c'est le même que tu viens de me link, seulement, j'ai besoin de comprendre LA FONCTION toute prête, c'est justement ça que je veux détailler et expliquer, vous me comprenez ?

    En gros, j'veux exposer la FONCTION LCD, donc si vous pouviez me fournir quelque chose qui l'explique en détail comme ton lien par exemple (qui au passage est excellent, Merci ), ça me plairait vraiment beaucoup.



    Cordialement, Samy.

  8. #7
    invite29971eb1

    Re : PIC 16F84 et LCD

    Dans ce cas, il faut éplucher la datasheet de ton contrôleur d'écran, la plupart du temps un HD44780.

    Tu dois y trouver le "protocole", autrement dit les séquences à lui envoyer pour afficher un caractère. Les fonctions de la librairie implémentent ce protocole

  9. #8
    invite339f2ace

    Re : PIC 16F84 et LCD

    Bonjour

    il faut écrire 4 programmes:

    Initialisation LCD en 4 bits.

    Clear LCD : vide l'écran.

    Positionnement ligne 1 ou ligne 2. POUR 2x16 caractères.

    Affichage d'un caractère que l'on répète 16 fois pour remplir la ligne.


    Les programme sont fait de la façon suivante.

    Positionnement des 4 bits en sortie sur le PIC en fonction des spécification de la doc LCD

    Envoie d'un pulse sur E pour validation et prise en compte par le LCD et ainsi de suite.

    Ce sont des programmes simples. Le tout est de ne pas se tromper dans les codes 4 bit a envoyer au LCD.

    Cordialement

    Laurent

  10. #9
    invite5637435c

    Re : PIC 16F84 et LCD

    Citation Envoyé par Samy.T Voir le message
    Justement, j'ai tout préparé en partie hardware, j'ai aussi le programme et c'est le même que tu viens de me link, seulement, j'ai besoin de comprendre LA FONCTION toute prête, c'est justement ça que je veux détailler et expliquer, vous me comprenez ?

    En gros, j'veux exposer la FONCTION LCD, donc si vous pouviez me fournir quelque chose qui l'explique en détail comme ton lien par exemple (qui au passage est excellent, Merci ), ça me plairait vraiment beaucoup.



    Cordialement, Samy.
    Attends, tu te fous de moi ou quoi?
    Relies ton post #1 et dis moi si tu m'as dit à un moment donné que tu avais déjà tout ça?

    J'en ai marre de perdre mon temps avec des gens qui ne savent pas expliquer CLAIREMENT où ils en sont! et ce qu'ils veulent vraiment.

  11. #10
    invitefaaca50b

    Re : PIC 16F84 et LCD

    On y vient.... Quand meme.... Un exposé c'est un devoir scolaire, et il veut qu'on lui fasse le travail en integral... Par petits bouts il va arriver a obtenir son exposé... Et ca marche !!!

  12. #11
    invite713fbb16

    Re : PIC 16F84 et LCD

    Merci pour ceux qui m'ont aidé mais les deux derniers vous y allez un peu fort quoi.

    Ce n'est pas un exposé d'un gamin de 12 ans que je veux faire la... je suis en 1ère année master d’électronique (option électronique et photonique appliquée) et je voudrais étudier les détails de chaque détail, d'ou mes questions sur le fait que je ne voyais pas la cohérence entre une fonction sur microC, et un affichage sur un écran LCD.

    Merci a Ftorama car il m'a montré le datasheet que je voulais (ben oui, jamais utilisé de LCD, normal que je sache pas quel model est le plus utilisé), et a Laurent de m'avoir expliqué le "pont" reliant la fonction, et l'affichage LCD.

    Hulk, tu as vraiment essayé de m'aider, non je ne me fous pas de toi, mais évite quand même de t'énerver car tu es modérateur, et tu n'a pas le droit d'en avoir marre, en revanche, moi j'ai le droit de pas savoir expliquer exactement ce que je veux, c'est naturel chez la majorité des gens qui sont un peu perdus dans un nouveau concept.


    Frank... comme je l'ai dis, j'ai pas 12ans hein ?

    Merci a tous pour votre aide, j'ai fini par comprendre le "principe" du PIC--> LCD dans tout ses détails, et non en apprenant bêtement une fonction.



    Cordialement, Mr Touzene.

  13. #12
    invitefaaca50b

    Re : PIC 16F84 et LCD

    Justement, pas assez fort . Si tu avais ete un scolaire en CAP, tu aurais eu des excuses. Là, a ton niveau d'etudes, tu n'en as aucune.
    Google est une formidable source d'infos sur ce genre d'applis, mais c'est tellement plus facile de faire sous traiter a un forum...
    J'ai deja aidé pas mal de scolaires dans des projets comme le tien, et EUX, savaient trouver sur le net quand ils en avaient besoin.

  14. #13
    invite713fbb16

    Re : PIC 16F84 et LCD

    Citation Envoyé par Franck-026 Voir le message
    Google est une formidable source d'infos sur ce genre d'applis, mais c'est tellement plus facile de faire sous traiter a un forum...
    J'avais cherché, et je n'avais pas trouvé, mais tu sais ce qui est encore plus facile que de "sous traiter" a un forum ?

    c'est ce que toi tu fais la, juger et faire le troll car il me semble, tu n'a été d'aucune utilisé sur ce topic.




    PS: Un forum est un endroit d'entraide ou on partage des informations, pas un endroit ou l'on se permet de juger les gens a tort et a travers, et avec les milliards de sites inscrits sur google, tout est trouvable, et si on pensais comme toi, un forum de ce genre n'a pas lieu d'être.


    Je remercie encore ceux qui m'ont aidé, car si on se mettais a réfléchir ainsi, je ferais des copier coller de "go google ...etc" sur la moitié des sujets ici.

  15. #14
    invite29971eb1

    Re : PIC 16F84 et LCD

    Citation Envoyé par Samy.T Voir le message
    PS: Un forum est un endroit d'entraide ou on partage des informations, pas un endroit ou l'on se permet de juger les gens a tort et a travers, et avec les milliards de sites inscrits sur google, tout est trouvable, et si on pensais comme toi, un forum de ce genre n'a pas lieu d'être.
    Il y a quelques années, il y avait une règle commune à pas mal de forums. Celui qui posait une question qui avait déjà été posée, qui se trouvait dans les FAQs, ou dont la réponse se trouvait facilement se trouvait immédiatement banni, compte supprimé, et interdiction de revenir (si tu ne sais pas ce qu'est un ban).

    Bref, je trouvais cette règle dure à l'époque, mais aujourd'hui que je la regrette....

    5 minutes de recherche sur les afficheurs du commerce t'auraient donné la référence des contrôleurs courants, dont le fameux HD44780. Une recherche de datasheet et tu avais toutes les billes. Avant d'apprendre l'électronique, il faut apprendre à être autonome, et n'utiliser le net que pour les datasheets.

  16. #15
    invite5637435c

    Re : PIC 16F84 et LCD

    Citation Envoyé par Samy.T Voir le message

    Hulk, tu as vraiment essayé de m'aider, non je ne me fous pas de toi, mais évite quand même de t'énerver car tu es modérateur, et tu n'a pas le droit d'en avoir marre, en revanche, moi j'ai le droit de pas savoir expliquer exactement ce que je veux, c'est naturel chez la majorité des gens qui sont un peu perdus dans un nouveau concept.
    Premier point: Je suis modérateur quand j'écris en vert, sinon je suis un forumeur lambda.
    deuxième point: relis toi bien et dis moi si ça ressemble à un gars qui est en master, sensé avoir un minimum de culture et de débrouillardise...

    Vu ton jeune âge il suffit de taper LCD pour trouver des milliers de pages web sur le sujet, j'espère pour toi que tu sais faire ça.
    Et quand on a un minimum de cerveau on l'utilise pour analyser les documents que l'on trouve, dans le pire des cas on pose les bonnes questions.
    Un LCD c'est pas non plus un composant compliqué, faut pas exagérer.

    Ce qui est exaspérant c'est que nous soyons obligés de poser nous même les bonnes questions et d'y répondre à la place des intéressés, un comble quand même !
    Alors si en plus tu me dis que tu es en master et que tu ne comprends pas une vulgaire doc de LCD tu t'enfonces encore plus.

  17. #16
    invite5637435c

    Re : PIC 16F84 et LCD

    Je n'avais pas lu les interventions précédentes, je vois que je ne suis pas seul à penser comme cela.
    Ce qu'il faut bien que tu comprennes c'est qu'un forum est là pour aider à condition que le demandeur fasse un minimum d'efforts.
    L'effort est simple, c'est venir après avoir tenté de trouvé, puis d'avoir le respect de ne pas faire perdre son temps à tout le monde, en l'occurrence en synthétisant le problème et l'exposant au mieux.

    Combien de gens qui posent une question font cela?
    Quasiment aucun.

    Pour ma part quand je décide d'aider un forumeur je m'investi à fond en essayant d'être le plus précis possible, en faisant des documents, en suivant tant que faire se peut la discussion jusqu'à sa conclusion.
    Donc pour une question c'est parfois des heures que je passe bénévolement, juste parceque j'ai envie de transmettre le peu que je sais.
    Découvrir en plein milieu d'une discussion que le gars n'a pas pris la peine lui de faire l'effort minimum d'exposer au mieux, me rend dingue.

    Je t'explique tout ça parceque visiblement non seulement tu pourrais faire profil bas mais en plus tu cherches à démontrer que c'est moi qui réagit mal et ça finit par être un peu gonflant.

Discussions similaires

  1. Pic 16F84 et LCD 2*16
    Par invite1cd8f19a dans le forum Électronique
    Réponses: 1
    Dernier message: 05/03/2011, 03h52
  2. Pic 16f84
    Par invite53f01fe4 dans le forum TPE / TIPE et autres travaux
    Réponses: 0
    Dernier message: 27/04/2010, 16h08
  3. affichage LCD avec pic 16F84
    Par invite32cc11f3 dans le forum Électronique
    Réponses: 3
    Dernier message: 26/01/2010, 19h37
  4. LCD et PIC 16F84 (je suis perdu)
    Par Fred-ql dans le forum Électronique
    Réponses: 27
    Dernier message: 09/06/2009, 14h24
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...