Visiteurs :

 
 
.: http://kudelsko.free.fr :.
 

 

Google
 
Navigation :

 Page d'accueil


Programmateurs :
 Prog PIC / EEPROM Centronic
 Prog PIC / EEPROM RS232
 Prog PIC / EEPROM USB V2
 Prog 68HC11F1

Instruments de mesure :
 Oscilloscope pour PC  
 Testeur de composants  
 Inductancemètre USB 
 Isolateur optique oscilloscope
 Capacimètre USB 
 Analyseur logique 30MHz
 Loupe vidéo 
 Générateur de fonctions DDS
 Volt / Amp. Mètre LCD USB
 Oscillateur 1kHz - 68MHz

Projets Divers :
 Horloge / Calendrier
 Serrure à iButton
 Serrure à transpondeurs
 Décodage trame UM3750

 
Commutateur IR dual
 Gradateur IR dual
 Récepteur IR/PC 16 canaux 
 Déport IR à courant porteur  
 Décodeur 2 ou 4 canaux HF 
 Récepteur HF pour K6706B  
 Disjoncteur différentiel  

Interfaces Réseau WIFI :
 Module ESP8266

Domotique :
 Présentation des dispositifs
 Interface PC domotique
 Contrôleur Telis 4 Dual
 Contrôleur Velux Trio
 Emetteur HF - RS232
 Récepteur HF
 Contrôleur Ethernet

Ensemble domotique :
 Présentation des dispositifs
 Power Switch IR - 3 canaux
 CPL émetteur
 CPL récepteur
 Power Clock USB 

Interfaces Réseau Ethernet :
 ENC28J60, Config. et Delphi  Interface Ethernet 8 in 8 out
 Interface Ethernet 16 sorties
 Interface Ethernet LCD
 Interface Eth. n°1 multi IN-OUT
 Interface Eth. n°2 multi IN-OUT
 Interface Eth. LCD Graphique

Interfaces USB :
 Interface USB à 16 sorties
 Interface LCD USB
 Récepteur IR USB
 Interface Therm/Hygro USB
 Interface universelle USB
 Interface USB 16 out, 8 in
 Interface LCD graphique USB
 Timer USB programmable

Interfaces RS232 :
  LCD - RS232
      
Présentation
      
Réalisation
       Utilisation
       Registres
       LCD Version 2
       Datasheets
 CAN 12 bits - RS232 et //
 Clavier RS232 et //
 LCD 4 x 40 - RS232
 Interface universelle RS232 
 Afficheurs 7 segments RS232 
 Interface LCD graphique 
 Interface OSD - RS232 V2 

Applications Vidéo :
 Stabilisateur de recopie vidéo
 Générateur de mires
 Transcodeur PAL-RVB / SECAM
 Distributeur audio-vidéo 1-3  
 Commutateur Péritels 4 / 2  
 PiP Box

Applications Audio :
 Commutateur audio 4 voies

Téléphonie :
 Sélecteur lignes téléphoniques
 Sélecteur lignes téléphoniq. V2 
 Sélecteur lignes téléph. V3  

Mesures dans l'environnement :
 - température;
 - pression;
 - humidité relative;
 - orientation...
 Thermo-PC Dual
 Thermomètre
 Baromètre
 Météo OSD
 Thermomètre pour PC
 Boussole électronique 

Chargeurs/déchargeurs accus :
 Chargeur Accus R6 - 6F22

Logiciels :
 Atténuateurs HF
 Réseau d'adaptation résistif

Articles de la presse :
 Mipot HF
 Transformateur
 Radiateur
 Mosfet
 Alimentation
 AOP
 AOP2
 Applications des régulateurs
 Convertisseurs de tension
 Convertisseurs DC -DC
 Les filtres électroniques
 Le NE555
 Le triac
 Le réglage offset des AOP
 Les régulateurs
 
Les multiplieurs

L'indispensable :
 Code couleur résistances
 Valeurs normalisées résistances
 Code couleur condensateurs

Publicité :

 

 

Interface LCD - RS232 Version 2


Afficheur LCD
4x20 rouge tro-éclairé


Crédit photo : BMS Concept

 

Afficheur LCD 4x20 "ambre" tro-éclairé


Crédit photo : BMS Concept 



Afficheur LCD
4x20 bleu tro-éclairé (testé et approuvé !)



Les caractères affichés sont de couleur blanche.
Les conditions photographiques ci-dessus atténuent le contraste entre le fond bleu
et les caractères blancs, mais dans la réalité les caractères
sont très contrastés.

Le rétro-éclairage est composé de deux leds blanches à alimenter sous
5V
via les broches
15 (anode) et 16 (cathode).
Utilisez une résistance en série de
220 ohms pour limiter le courant dans les leds.

Face avant du LCD 4x20 bleu

Face arrière du LCD 4x20 bleu

 


Afficheur LCD
2x20 bleu rétro-éclairé (pas encore testé !)

Face avant du LCD 2x20 bleu

Face arrière du LCD 2x20 bleu

 

 

  Avant propos :

           A la suite de plusieurs demandes d'internautes, je vous propose la mise à jour de l'afficheur LCD permettant la prise en compte des chaînes de caractères. Cette mise à jour va nécessiter le remplacement de deux composants, à savoir le microcontrôleur et le quartz.

  Principales caractéristiques de l'interface LCD - RS232 Version 2 :

            Gestion des afficheurs LCD : 2x16, 2x20 et 4x20 caractères.  
            Communication série configurable : 2400, 4800, 9600 et 19200 bauds.
            Interface compatible avec les afficheurs au standard industriel : HD44780. 
 
           Protocole de transfert : chaîne de caractères ASCII couplée à quelques caractères réservés.

      
  Protocole de communication ASCII destiné à la gestion de l'afficheur LCD V2 :

           L'ensemble des lignes de l'afficheur se laisse très simplement piloter à condition de respecter quelques règles simples.

           Dans les exemples qui vont suivre, j'ai employé arbitrairement un afficheur LCD composé de
4 lignes / 20 caractères. Néanmoins, la démarche reste strictement identique pour un afficheur 2 lignes / 16 caractères, 2 lignes / 20 caractères, etc...
           

        Affichage sur la première ligne d'un LCD 4x20 :        

             Choisissons d'écrire sur la première ligne du LCD la chaîne suivante : Bonjour à tous.


              Pour ce faire, la chaîne de caractères envoyée en série à l'interface LCD devra comporter 3 caractères supplémentaires disposés ainsi :

1Bonjour a tous.#$

              - Le caractère 1 indique le numéro de la ligne du LCD. Ici la première ligne du LCD.
              - Les caractères
#$ indiquent la fin de la chaîne.

 

        Affichage sur la deuxième ligne d'un LCD 4x20 : 

             Choisissons d'écrire sur la deuxième ligne du LCD la chaîne suivante : Comment allez-vous ?


              Pour ce faire, la chaîne de caractères envoyée en série à l'interface LCD devra comporter 3 caractères supplémentaires disposés ainsi :

2Comment allez-vous ?#$

              - Le caractère 2 indique le numéro de la ligne du LCD. Ici la seconde ligne du LCD.
              - Les caractères
#$ indiquent la fin de la chaîne.

 

        Affichage sur la troisième ligne d'un LCD 4x20 :    

             Choisissons d'écrire sur la troisième ligne du LCD la chaîne suivante : Très bien merci.


              Pour ce faire, la chaîne de caractères envoyée en série à l'interface LCD devra comporter 3 caractères supplémentaires disposés ainsi :

3 Tres bien merci.#$

              - Le caractère 3 indique le numéro de la ligne du LCD. Ici la troisième ligne du LCD.
              - Les caractères
#$ indiquent la fin de la chaîne.

      Remarque: Notez la présence arbitraire d'un espace entre le caractère 3 et le début de la phrase. Une solution comme une autre vous permettant de centrer vos messages sur l'écran LCD.

 

        Affichage sur la quatrième ligne d'un LCD 4x20 :    

             Choisissons d'écrire sur la quatrième ligne du LCD la chaîne suivante : A la prochaine.


              Pour ce faire, la chaîne de caractères envoyée en série à l'interface LCD devra comporter 3 caractères supplémentaires disposés ainsi :

4A la prochaine.#$

              - Le caractère 4 indique le numéro de la ligne du LCD. Ici la quatrième ligne du LCD.
              - Les caractères
#$ indiquent la fin de la chaîne.

 

        Effacer le contenu de l'affichage LCD :

               La commande d'effacement de l'afficheur doit suivre la syntaxe suivante :

&$
 


 
Modifications hardwares à effectuer pour la mise à niveau de la Version 2 :

        Composants à remplacer :

           L'ensemble de la nomenclature disponible à la page [ Réalisation ] reste inchangée à l'exception de deux composants :

              Remplacez le microcontrôleur 16F84A (IC1)  par le modèle 16F628-20/P (cela fonctionne aussi avec un 16F628-04/P) programmé avec la nouvelle version du soft disponible en téléchargement un peu plus bas dans cette page.
              Remplacez le quartz de 4MHz par un modèle de 12MHz.



 
Gros plan sur le PIC16F628-20/P ( ou 16F628-04/P) et son quartz de 12MHz.
 

        Schéma structurel de l'interface LCD V2 :

           Le schéma structurel de la version 2 est strictement identique à la précédente version mis à part les deux références suivantes : le microcontrôleur 16F628-20/P (ou 16F628-04/P) et le quartz de 12MHz.
          Vous pouvez télécharger la mise à jour du schéma structurel
Version 2 ci-dessous :

Schéma structurel au format Adobe Acrobat de l'interface LCD - RS232 V2 :disquette.gif (14223 octets)   66,2 ko

 

        Programmation du PIC16F628 destiné à l'interface LCD V2 :

           Cliquez sur le bouton suivant afin de télécharger le soft SERLCD3.HEX destiné au microcontrôleur 16F628-20/P (ou 16F628-04/P) de l'interface LCD Version 2. 

Téléchargement du soft "SERLCD3.EXE" destiné au microcontrôleur IC1 :disquette.gif (14223 octets) 30 ko

AVIS : Le programme source ne sera pas diffusé



           La programmation du microcontrôleur 16F628 s'effectue comme toujours via l'excellent logiciel gratuit ICPROG conçu par Bonny GIJZEN.



              Lancez le logiciel de programmation ICPROG.EXE.
              Sélectionnez le microcontrôleur 16F628 dans la liste des microcontrôleurs.
              Ouvrez le fichier hexadécimal nommé SERLCD3.HEX.
 
             L'oscillateur de type XT doit être sélectionné.
              Le paramétrage automatique doit être le suivant :
                           -   "
WDT" est activé,
                           -   "
PWRT" est activé,
                           -   "
MCLR" est désactivé,
                           -   "
BODEN" est activé,
                           -   "
LVP" est désactivé,
                           -   "
CPD" est désactivé.

  Attention note du 10.2007 : Si vous utilisez un modèle 16F628A-I/P de nouvelle génération, sélectionnez un oscillateur en mode HS et non XT.

  Configuration de la vitesse de communication RS232 de l'interface LCD Version 2 :

           Dans cette nouvelle version software V2, seul deux des quatre switchs permettent de configurer l'afficheur LCD. Les switchs RB2 et RB5 n'ont plus aucun rôle.

 


      
Communication série à 2400 bauds :

2400 bauds

RB0 = 0

RB1 = 0

 

       Communication série à 4800 bauds :

4800 bauds

RB0 = 1

RB1 = 0

 

       Communication série à 9600 bauds :

9600 bauds

RB0 = 0

RB1 = 1

 

       Communication série à 19200 bauds :

19200 bauds

RB0 = 1

RB1 = 1

 


  Utilisation du l'interface LCD à partir d'un PC :


       Pour ceux désireux de tester l'interface
LCD V2 à partir de la liaison série d'un PC, je vous propose d'utiliser une petite application software tournant sous Windows.



     
  Installation du logiciel sous Windows :  

                 Systèmes d'exploitations compatibles :

         Je certifie avoir testé cette application sous Windows Seven, Vista, XP et 98 SE.
         En revanche, je n'ai pas pu tester cette application sous
NT4, 2000, Me et XP Familial.

                 Logiciel "Test LCD  Version 2" :
 
        Ecrit en Borland Delphi, ce programme utilise une bibliothèque freeware
Tcomport RS232 conçue par Dejan Crnila. Cette bibliothèque gère les ports séries du PC et peut être téléchargée à l'adresse suivante : [
COMPORT ].

 
      Toutefois, vous n'aurez pas besoin de cette bibliothèque pour faire fonctionner la version exécutable du logiciel téléchargeable ci-dessous...

Téléchargement du soft "SETUP.EXE" : disquette.gif (14223 octets) 514 ko

AVIS : Le programme source ne sera pas diffusé
 


                 Installation du logiciel :

       L'installation du logiciel est extrêmement simplifiée grâce à l'utilisation d'un SETUP WIZARD.        Laissez-vous guider au fil des pages...

     Après installation, vous trouverez un raccourci dans le menu démarrer...

 

       Exemple d'utilisation de l'interface LCD et du logiciel sous Windows :  

             Lancez votre système d'exploitation Windows.

             L'interface LCD hors tension, positionnez les DIP en fonction de la vitesse de communication série souhaitée. Choisissons arbitrairement une vitesse de communication à 19200 bauds.

19200 bauds

RB0 = 1

RB1 = 1



            
Le transfert des données par liaison série entre le PC et l'interface LCD doit s'effectuer impérativement via le circuit MAX232 (IC2). N'oubliez pas de retirer la résistance R7 (33k) dans le cas où cette dernière serait positionnée dans les picots tulipes qui lui sont destinés.
                La résistance
R7 est uniquement compatible avec la précédente version du programme du PIC16F84A (voir page [
Utilisation ] destinée à la Version 1).


Liaison série équipée du MAX232 (IC2)  sans la résistance R7



            
Reliez l'interface LCD à votre ordinateur via un cordon prolongateur RS232 conventionnel non croisé.

 

             Mettez l'interface LCD sous tension. Attendez la fin de l'affichage du titre et de l'adresse internet de l'auteur (2,5 secondes).

                Les polarités distales de l'alimentation doivent être les suivantes :

 

             Lancez le logiciel "Test LCD Version 2". Sélectionnez le port de communication série relié à l'interface LCD (COM1 ou COM2) ainsi que la vitesse de transmission, ici 19200 bauds :

 

             Dans la zone de saisie du logiciel, entrez la chaîne de caractères que vous souhaitez afficher sur le LCD en respectant la syntaxe décrite en haut de cette page.

               A titre d'exemple, nous allons afficher sur la
première ligne du LCD la chaîne suivante :

LCD 4x20 caracteres

           Soit concrètement nous écrivons dans la zone de saisie :  1LCD 4x20 caracteres#$

 

             Pour transférer en série la chaîne de caractères vers l'interface LCD, cliquez sur le bouton nommé LCD, comme ci-dessous :

 

             Vous obtenez instantanément sur l'écran du LCD le résultat suivant :


          Procédez de la même manière pour l'ensemble des lignes en respectant le protocole de communication ASCII décrit au début de cette page.

          Amusez-vous bien...

 

  Utilisation du l'interface LCD à partir d'un autre microcontrôleur :


          
Pensez à introduire dans votre programme (PICBasic ou autre) une pause de 10ms entre chaque transmission des chaînes de caractères. Cette pause est nécessaire à l'interface LCD et dans le cas contraire certaines chaînes risquent d'être ignorées...


     
  Le langage assembleur pour microcontrôleur serait-il condamné à disparaître ?

          Cette partie est avant tout destinée aux développeurs hardwares qui souhaitent piloter l'afficheur LCD en série via leur propre microcontrôleur (Microcohip, Intel, Motorola, etc...).

         De nos jours, de nouveaux produits tel que les PICBASIC [ www.lextronic.fr ],  les JAVAMOK
[
www.electronique-numerique.com/ ] permettent désormais à un plus large public de s'initier à la programmation sur microcontrôleurs au moyen d'un langage très accessible tel que le Basic ou le C.

        Ainsi, quelque soit vos habitudes de programmation (assembleur, Basic, C, etc...) il vous est désormais possible de piloter en série l'interface LCD en transmettant une chaîne de caractères répondant bien entendu au protocole ASCII décrit au début cette de page.

        Je vous renvoie à la notice de vos propres systèmes de développement sur microcontrôleur pour la mise en oeuvre logicielle de la liaison série pilotant l'afficheur.  


Aspect d'un PICBASIC PB-3B
(Crédits Photo : Electronique Pratique n°265 page 80)

 

       Exemple de raccordement électrique entre l'interface LCD et votre microcontrôleur : 

             Retirez le MAX232 (IC2) et remplacez la résistance R7 (33k) par un simple court-circuit.
 

 
             Après avoir configuré la vitesse de communication série de l'interface LCD (2400, 4800, 9600, 19200 bauds) en accord avec votre microcontrôleur, vous pouvez désormais envoyer en série votre chaîne de caractères via la broche n°3 du connecteur DB9 ou directement sur l'entrée PIN 13 (RB7) du PIC16F628-20/P.
 

 


 


 

 

 


 


 


 



Copyright © 2000 - 2016. F.KUDELSKO. Tous droits réservés.
Reproduction interdite sans autorisation.