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 Thermo/Hygro USB

 Interface universelle USB
 Interface USB 16 out, 8 in
 
Interface LCD graphique
      
Présentation
       Réalisation
       Programmation
       Utilisation
       Datasheets 
 Timer USB programmable 

Interfaces RS232 :
 LCD - RS232
 CAN 12 bits - RS232 et //
 Clavier RS232 et //
 LCD 4 x 40 - RS232
 OSD - RS232
 Interface universelle RS232
 Afficheurs 7 seg. 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é :

 

 

Utilisation de l'interface LCD Graph...


  Connexion de l'interface :

      L'interface est conçue pour s'interconnecter directement à l'un des ports USB présents sur votre ordinateur au moyen d'un cordon USB A mâle - USB B mâle.

Cordon USB A mâle - USB B mâle.


      
L'alimentation électrique de l'interface USB s'effectue au moyen d'un adaptateur secteur du commerce placé par exemple sur la position +12V.  Attention, le port USB n'alimente pas cette interface.


 

  Combinaison VID et PID :

       Dans le cadre de ce projet, nous utilisons un driver de type HID (Human Interface Device) utilisé dans tous les périphériques de type souris ou clavier USB du commerce. L'avantage est sa simplicité de mise en oeuvre car le périphérique de type HID est automatiquement reconnu par Windows et ne nécessite aucun driver exotique!

       Tous les périphériques USB sont pourvus d'une combinaison unique prenant la forme de deux nombres. Le premier nombre VID identifie le fabricant du produit, ici Microchip et le second PID représente l'identificateur du produit. Dans le cadre de ce projet nous avons utilisé le VID de Microchip librement disponible 1240 et comme PID nous avons pris arbitrairement la valeur 11. N'oubliez pas que le PIC et le logiciel sous Windows doivent utiliser la même combinaison VID/PID.



  Mise sous tension de l'interface :

       Dès la mise sous tension, le rétroéclairage du LCD est activé par défaut. Si celui-ci semble ne pas fonctionner, modifiez la valeur de la résistance R1 limitant le courant dans les leds du dispositif de rétro-éclairage du LCD. Attention toutefois à ne pas dépasser le courant maximal admissible par le transistor Mosfet Q1 (voir [ Datasheets ] du composant).

       A la mise sous tension, trois écrans successifs vous permettent de régler le contraste du LCD en agissant sur l'ajustable référencé P1. L'affichage successif des trois écrans demande environ 9 secondes à partir de la mise sous tension. Passé ce délai, l'écran est effacé et l'interface active la liaison USB.


       
 Patientez quelques secondes durant l'installation automatique des pilotes de votre interface graphique de catégorie HID.
      Après l'installation du pilote, l'interface est fonctionnelle et vous pouvez désormais utiliser
le logiciel sous Windows pour piloter votre interface...



  Utilisation sous Windows de l'interface LCD :

           Comme nous l'avons annoncé à la page [ Présentation ],  l'interface graphique est capable d'afficher des points, des droites, des cercles, etc... ou bien encore du texte sur 8 lignes. Bien entendu, il est possible de combiner texte et graphique simultanément.

           Les
coordonnées d'affichage graphique évoluent entre 0 et 127 sur l'axe des X et de 0 à 63 pour l'axe des Y comme sur le croquis ci-dessous :

          L'origine se situe dans le coin supérieur gauche de l'afficheur LCD.

          Le repère utilisé pour l'affichage alphanumérique à lui aussi la même origine avec la possibilité d'écrire jusqu'à 8 lignes. Ainsi, l'axe des X évoluent entre 0 et 127 et l'axe des Y entre 0 et 7 correspondant au numéro de la ligne considérée (appelée page dans la documentation du LCD) .

           Nous allons décrire la liste des commandes et des paramètres nécessaires au bon fonctionnement de l'interface.
         Afin de gérer les différentes lignes du LCD, nous envoyons à l'interface LCD USB une série d'octets.
       Le
premier est la commande et les autres octets correspondent aux paramètres.
      
      Si vous vous référez
au code source du programme écrit sous Borland Delphi 7 téléchargeable un peu plus bas,  le 1er octet correspondant à la commande est toujours affecté à la case mémoire
FBufferOut[1] et les octets suivants aux cases mémoires FBufferOut[n] avec n dépendant du nombre de paramètres à transmettre.

  
        Commande permettant d'afficher un point sur l'écran :

      Si vous souhaitez afficher un point, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =1

FBufferOut[2] = x : abscisse comprise entre 0 et 127
FBufferOut[3] = y : ordonnée comprise entre 0 et 63
FBufferOut[4] = c :  0 = effacement, 1=  affichage, 2 = inverse vidéo


       
Exemple n°1 :

       Affiche un point avec les coordonnées x = 7 en abscisse, y = 11 en ordonnée. Active l'affichage avec c = 1.

FBufferOut[1] = 1
FBufferOut[2] = 7

FBufferOut[3] = 11
FBufferOut[4] = 1

      Exemple n°2 :

       On souhaite effacer le précédent point. Les coordonnées restent inchangées avec x = 7 en abscisse et y = 11 en ordonnée. En revanche, on efface le point avec c = 0.

FBufferOut[1] = 1
FBufferOut[2] = 7

FBufferOut[3] = 11
FBufferOut[4] = 0

 


  
      Commande permettant d'afficher une droite sur l'écran :

      Si vous souhaitez afficher une droite, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =2

FBufferOut[2] = x1 : abscisse comprise entre 0 et 127
FBufferOut[3] = y1 : ordonnée comprise entre 0 et 63
FBufferOut[4] = x2: abscisse comprise entre 0 et 127
FBufferOut[5] = y2 : ordonnée comprise entre 0 et 63
FBufferOut[6] = c :  0 = effacement, 1=  affichage, 2 = inverse vidéo


       
Exemple :

        Affiche une droite avec les coordonnées de départ  x1 = 6 et y1=52.  Les coordonnées d'arrivée sont x2 = 60,  y2 = 10. Active l'affichage avec c = 1.

FBufferOut[1] = 2
FBufferOut[2] = 6

FBufferOut[3] = 52
FBufferOut[4] = 60
FBufferOut[5] = 10
FBufferOut[6] = 1

 


  
      Commande permettant d'afficher un rectangle sur l'écran :

      Si vous souhaitez afficher un rectangle, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =3

FBufferOut[2] = x1 : abscisse comprise entre 0 et 127
FBufferOut[3] = y1 : ordonnée comprise entre 0 et 63
FBufferOut[4] = x2: abscisse comprise entre 0 et 127
FBufferOut[5] = y2 : ordonnée comprise entre 0 et 63
FBufferOut[6] = c :  0 = effacement, 1=  affichage, 2 = inverse vidéo


       
Exemple :

        Affiche un rectangle avec les coordonnées de départ x1 = 33 et  y1 = 41.  Les coordonnées d'arrivée sont x2 = 69,  y2 = 54. Active l'affichage avec c = 1.

FBufferOut[1] = 3
FBufferOut[2] = 33

FBufferOut[3] = 41
FBufferOut[4] = 69
FBufferOut[5] = 54
FBufferOut[6] = 1

 


  
      Commande permettant d'afficher un rectangle plein sur l'écran :

      Si vous souhaitez afficher un rectangle plein, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =4

FBufferOut[2] = x1 : abscisse comprise entre 0 et 127
FBufferOut[3] = y1 : ordonnée comprise entre 0 et 63
FBufferOut[4] = x2: abscisse comprise entre 0 et 127
FBufferOut[5] = y2 : ordonnée comprise entre 0 et 63
FBufferOut[6] = c :  0 = effacement, 1=  affichage, 2 = inverse vidéo


       
Exemple :

        Affiche un rectangle plein avec les coordonnées de départ x1 = 91 et y1 = 9.  Les coordonnées d'arrivée sont x2 = 116,  y2 = 20. Active l'affichage avec c = 1.

FBufferOut[1] = 4
FBufferOut[2] = 91

FBufferOut[3] = 9
FBufferOut[4] = 116
FBufferOut[5] = 20
FBufferOut[6] = 1

 

      Note : cette commande demande un certain temps d'exécution selon la taille du rectangle à dessiner sur l'écran. Pour un rectangle plein prenant tout l'espace de l'écran, patientez environ 3 secondes pour terminer le processus d'affichage.

 


  
      Commande permettant d'afficher un cercle sur l'écran :

      Si vous souhaitez afficher un cercle, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =5

FBufferOut[2] = x0 : abscisse comprise entre 0 et 127
FBufferOut[3] = y0 : ordonnée comprise entre 0 et 63
FBufferOut[4] = r : rayon du cercle compris entre 1 et 1277
FBufferOut[5] = c :  0 = effacement, 1=  affichage, 2 = inverse vidéo


       
Exemple :

        Affiche un cercle avec les coordonnées du centre x0 = 71 et y0 = 35. Le rayon r = 12. Active l'affichage avec c = 1.

FBufferOut[1] = 5
FBufferOut[2] = 71

FBufferOut[3] = 35
FBufferOut[4] = 12
FBufferOut[5] = 1

 


  
      Commande permettant d'afficher un cercle plein sur l'écran :

     Si vous souhaitez afficher un cercle plein, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =6

FBufferOut[2] = x0 : abscisse comprise entre 0 et 127
FBufferOut[3] = y0 : ordonnée comprise entre 0 et 63
FBufferOut[4] = r : rayon du cercle compris entre 1 et 1277
FBufferOut[5] = c :  0 = effacement, 1=  affichage, 2 = inverse vidéo


       
Exemple :

        Affiche un cercle plein avec les coordonnées du centre x0 = 107 et y0 = 36. Le rayon r = 17. Active l'affichage avec c = 1.

FBufferOut[1] = 6
FBufferOut[2] = 107

FBufferOut[3] = 36
FBufferOut[4] = 17
FBufferOut[5] = 1

 

      Note : cette commande demande un certain temps d'exécution selon la taille du cercle à dessiner sur l'écran. Pour un cercle plein sur la quasi-totalité de l'écran, patientez environ 3 secondes pour terminer le processus d'affichage.

 


  
      Commande permettant d'effacer l'écran LCD :

      Si vous souhaitez effacer l'écran LCD, vous devez utiliser la commande suivante :

Commande

Paramètres

FBufferOut[1] =7

Pas de paramètres.

 


  
      Commande permettant d'allumer ou d'éteindre le rétro-éclairage du LCD :

      Si vous souhaitez allumer ou éteindre le rétro-éclairage du LCD, vous devez utiliser la commande suivante :

Commande

Paramètres

FBufferOut[1] =8

Pas de paramètres.

 


  
      Commandes permettant de positionner puis d'afficher une ligne de caractères :

      Si vous souhaitez positionner sur le LCD une ligne de caractères, vous devez utiliser la commande et  paramètres suivants :

Commande

Paramètres

FBufferOut[1] =9

FBufferOut[2] = x : position du premier caractère en abscisse compris
entre 0 et 127
FBufferOut[3] = n : numéro de la ligne compris entre 0 et 7
FBufferOut[4] = c :  0 = fond noir, 1= fond blanc, 2 = inverse vidéo



      Pour afficher une ligne de caractères, vous devez respecter la syntaxe suivante :

Commande

Paramètre

FBufferOut[1] =10

FBufferOut[2] = nombre de caractères de la chaîne
FBufferOut[3...n] = vos caractères au format ASCII 


       
Exemple n°1 :

       On positionne notre texte en commençant depuis le pixel 0 à la troisième ligne du LCD.
              Ainsi,  
x = 0, n =2  pour la troisième ligne et active l'affichage sur fond blanc avec c = 1.

FBufferOut[1] = 9
FBufferOut[2] = 0

FBufferOut[3] = 2
FBufferOut[4] = 1

       Les données précédentes sont transmises au LCD par liaison USB.

       On envoie ensuite la chaine de caractères à afficher "Bonjour" qui contient 7 caractères :

FBufferOut[1] = 10
FBufferOut[2] = 7

FBufferOut[3] = "B"
FBufferOut[4] = "o"
FBufferOut[5] = "n"
FBufferOut[6] = "j"
FBufferOut[7] = "o"
FBufferOut[8] = "u"
FBufferOut[8] = "r"

      Les données précédentes sont transmises au LCD par liaison USB.  On obtient le résultat ci-dessous :
 



       
Exemple n° 2:

         Afin de mieux cerner le fonctionnement des 3 modes d'affichage :  fond noir, fond blanc et inverse vidéo, nous avons affiché un rectangle plein sur une portion du LCD. On a superposé ensuite trois phrases les unes en dessous des autres avec les 3 modes d'affichage différents :

                    - La première ligne correspond à un affichage sur fond noir : c = 0,
                    - La
seconde ligne correspond à un affichage sur fond blanc : c = 1,
                    - La troisième ligne correspond à un affichage en inverse vidéo : c = 2.

     

    

 
Téléchargement du logiciel et du code source :

       Afin de piloter simplement l'interface via votre PC, un petit programme nommé "
Gestion LCD Graphique 128 x 64 USB" écrit sous Borland Delphi 7 est disponible en libre téléchargement.
       Ce dernier génère automatiquement
les différentes instructions présentées plus haut.



      Les logiciel est compatible avec   8, Seven, Vista et XP. ll n'a pas été testé sous 2000, Me et 98SE.

       L'ensemble code source du programme Delphi et le fichier exécutable sont librement téléchargeables ci-après. Le code source est commenté et vous n'aurez aucun mal à l'adapter selon vos besoins.

   
   Téléchargement des fichiers sources Borland Delphi et du fichier éxecutable : 528ko  


      Téléchargement du code source au format TEXTE :
7 ko

 

       Les commandes sont extrêmement simples à maitriser grâce à l'usage d'une
DLL (Dynamic Link Library) spécifiquement dédiée à la communication USB (mcHID.dll). N'oubliez pas de placer cette DLL dans le même répertoire que votre programme exécutable. Vous trouverez la DLL dans l'ensemble des fichiers sources téléchargeables précédemment.
 
 

    Bonne utilisation de l'interface graphique LCD USB...

 

 


 


 

 

 


 


 


 



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