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 univer. USB/RS232 
       Présentation
       Réalisation
       Programmation
       Utilisation en USB
       Utilisation en RS232
       Datasheets
 Interface USB 16 out, 8 in
 Interface LCD graphique USB 
 Timer USB programmable 

Interfaces RS232 :
 LCD - RS232
 CAN 12 bits - RS232 et //
 Clavier RS232 et //
 LCD 4 x 40 - RS232
 OSD - RS232
 
Interface univer. USB/RS232
       Présentation
       Réalisation
       Programmation
       Utilisation en USB
       Utilisation en RS232
       Datasheets
 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é :

 

 

Utilisation de l'interface en mode RS232


  Interface en mode de communication RS232 :

    Hors tension, placez le cavalier SW2 de manière à court-circuiter les deux picots. Le mode de communication RS232 est ainsi initialisé dès la mise sous tension de la platine.
   
   N'oubliez pas, la
vitesse de communication série est fixée à 19200 bauds et ne peut être modifiée.



    Après avoir connecté un câble de liaison RS232 câblé fil à fil (seuls RX et TX et la masse sont nécessaires) entre l'interface et votre PC, mettez cette dernière sous tension.

 
  Protocole de communication ASCII permettant de dialoguer avec l'interface en mode RS232 :

      Afin de piloter sélectivement les entrées et sorties de l'interface, différentes commandes composées d'une suite de caractères ASCII ont été définis. Si l'on souhaite piloter correctement l'interface, il faudra veiller à respecter scrupuleusement la syntaxe de ces suites ASCII.

        Dès sa mise sous tension, l'interface transmet au PC les données correspondantes aux différents états logiques présents sur les 16 entrées J1 et J2.  L'interface envoie également les données issues du convertisseur analogique - numérique 12 bits (CAN)  des entrées J5 et J6. A titre indicatif, si le convertisseur 12 bits n'a pas été placé sur sont support de circuit intégré, les valeurs reçues par le PC sont systématiquement 4096.

     Nous allons expliciter ci-dessous l'ensemble des commandes à utiliser pour piloter l'interface en mode RS232.

 

    Transfert de données de l'interface (PIC) vers le PC (transfert toutes les 500ms) :

        8 entrées numériques J1 :

        Vous recevez une chaîne de caractères en provenance de l'interface sous la forme : !Axxxx#
        avec :
            -
! : le caractère d'entête.
            -
A : le caractère indiquant que l'on réceptionne l'octet présent sur l'entrée J1.
            -
xxxx : les 4 caractères représentatifs de la valeur de l'octet présent sur l'entrée J1 est compris entre 0000 et 0255.
            -
# : le caractère de fin de chaîne ASCII.

 

         8 entrées numériques J2 :

       Vous recevez une chaîne de caractères en provenance de l'interface sous la forme : !Bxxxx#
        avec :
            -
! : le caractère d'entête.
            -
B : le caractère indiquant que l'on réceptionne l'octet présent sur l'entrée J2.
            -
xxxx : les 4 caractères représentatifs de la valeur de l'octet présent sur l'entrée J2 est compris entre 0000 et 0255.
            -
# : le caractère de fin de chaîne ASCII.

 

        Entrée analogique J5 codée sur 12 bits :

        Vous recevez une chaîne de caractères en provenance de l'interface sous la forme : !Cxxxx#
        avec :
            -
! : le caractère d'entête.
            -
C : le caractère indiquant que l'on réceptionne la valeur sur 12 bits du CAN présente sur l'entrée J5.
            -
xxxx : les 4 caractères représentatifs de la valeur présente sur l'entrée J5, comprise entre 0000 et 4096.
            -
# : le caractère de fin de chaîne ASCII.
 

 

        Entrée analogique J6 codée sur 12 bits :

        Vous recevez une chaîne de caractères en provenance de l'interface sous la forme : !Dxxxx#
        avec :
            -
! : le caractère d'entête.
            -
D : le caractère indiquant que l'on réceptionne la valeur sur 12 bits du CAN présente sur l'entrée J6.
            -
xxxx : les 4 caractères représentatifs de la valeur présente sur l'entrée J6, comprise entre 0000 et 4096.
            -
# : le caractère de fin de chaîne ASCII.
 

 

    Transfert de données du PC vers l'interface (PIC) :

        Afficheur LCD :

        1ère ligne du LCD : La transmission série doit s'effectuer sous la forme : $1yyyyyyy|#
        avec :
       -
$ : le caractère d'entête.
       -
1 : le caractère indiquant le numéro de ligne du LCD, ici la ligne 1.
       -
yyyyyy : les différents caractères de la chaîne à afficher sur l'écran du LCD.
       -
| : le caractère de fin de chaîne de votre message (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

       Exemple : $1Bonjour a tous|#

        


        
2ème ligne du LCD : La transmission série doit s'effectuer sous la forme : $2yyyyyyy|#
        avec :
       -
$ : le caractère d'entête.
       -
2 : le caractère indiquant le numéro de ligne du LCD, ici la ligne 2.
       -
yyyyyy : les différents caractères de la chaîne à afficher sur l'écran du LCD.
       -
| : le caractère de fin de chaîne de votre message (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

      Exemple : $2Comment allez-vous ?|#

        


        
3ème ligne du LCD : La transmission série doit s'effectuer sous la forme : $3yyyyyyy|#
        avec :
       -
$ : le caractère d'entête.
       -
3 : le caractère indiquant le numéro de ligne du LCD, ici la ligne 3.
       -
yyyyyy : les différents caractères de la chaîne à afficher sur l'écran du LCD.
       -
| : le caractère de fin de chaîne de votre message (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

       Exemple : $3Formidablement bien.|#

       


        
4ème ligne du LCD : La transmission série doit s'effectuer sous la forme : $4yyyyyyy|#
        avec :
       -
$ : le caractère d'entête.
       -
4 : le caractère indiquant le numéro de ligne du LCD, ici la ligne 4.
       -
yyyyyy : les différents caractères de la chaîne à afficher sur l'écran du LCD.
       -
| : le caractère de fin de chaîne de votre message (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

       Exemple : $4Et vous...|#

      


        
Effacement du LCD : La transmission série doit s'effectuer sous la forme : $5#
        avec :
       -
$ : le caractère d'entête.
       -
5 : le caractère indiquant l'effacement du LCD.
       -
# : le caractère de fin de chaîne ASCII.

 

       Sorties PWM sur J7 :

        La transmission série doit s'effectuer sous la forme : !$6x|#
        avec :
       -
$ : le caractère d'entête.
       -
6 : le caractère indiquant que l'on pilote la sortie J7.
       -
x : compris entre 0 et 255 selon le rapport cyclique désiré, soit de 0 à 100%
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $60|# pour un rapport cyclique de 0% sur la sortie J7.        
                           $6255|# pour un rapport cyclique de 100% sur la sortie J7.

 


 
      Sorties PWM sur J8 :

        La transmission série doit s'effectuer sous la forme : !$7x|#
        avec :
       -
$ : le caractère d'entête.
       -
7 : le caractère indiquant que l'on pilote la sortie J8.
       -
x : compris entre 0 et 255 selon le rapport cyclique désiré, soit de 0 à 100%
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $70|# pour un rapport cyclique de 0% sur la sortie J8.
                           $7255|# pour un rapport cyclique de 100% sur la sortie J8.

 


 
      Sortie numérique J3 :

        La transmission série doit s'effectuer sous la forme : !$8x|#
        avec :
       -
$ : le caractère d'entête.
       -
8 : le caractère indiquant que l'on pilote la sortie J3.
       -
x : compris entre 0 et 255 selon la valeur à appliquer sur les 8 sorties de J3.
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $80|# les 8 sorties de J3 sont à l'état bas.
                           $8255|# les 8 sorties de J3 sont à l'état haut.

 

 
 
      Sortie numérique J4 :

        La transmission série doit s'effectuer sous la forme : !$9x|#
        avec :
       -
$ : le caractère d'entête.
       -
9 : le caractère indiquant que l'on pilote la sortie J4.
       -
x : compris entre 0 et 255 selon la valeur à appliquer sur les 8 sorties de J4.
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $90|# les 8 sorties de J4 sont à l'état bas.
                           $9255|# les 8 sorties de J4 sont à l'état haut.

 


 
      Sortie numérique J9 :

        La transmission série doit s'effectuer sous la forme : !$Ax|#
        avec :
       -
$ : le caractère d'entête.
       -
A : le caractère indiquant que l'on pilote la sortie J9.
       -
x : compris entre 0 et 255 selon la valeur à appliquer sur les 8 sorties de J9.
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $A0|# les 8 sorties de J9 sont à l'état bas.
                           $A255|# les 8 sorties de J9 sont à l'état haut.

 


 
      Sortie numérique J10 :

        La transmission série doit s'effectuer sous la forme : !$Bx|#
        avec :
       -
$ : le caractère d'entête.
       -
B : le caractère indiquant que l'on pilote la sortie J10.
       -
x : compris entre 0 et 255 selon la valeur à appliquer sur les 8 sorties de J10.
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $B0|# les 8 sorties de J10 sont à l'état bas.
                           $B255|# les 8 sorties de J10 sont à l'état haut.

 


 
      Sortie numérique J11 :

        La transmission série doit s'effectuer sous la forme : !$Cx|#
        avec :
       -
$ : le caractère d'entête.
       -
C : le caractère indiquant que l'on pilote la sortie J11.
       -
x : compris entre 0 et 255 selon la valeur à appliquer sur les 8 sorties de J11.
       -
| : le caractère de fin de chaîne (faire Alt gr + touche 6 du clavier pour obtenir |)
       -
# : le caractère de fin de chaîne ASCII.

     Exemple :   $C0|# les 8 sorties de J11 sont à l'état bas.
                           $C255|# les 8 sorties de J11 sont à l'état haut.

 


 
      Sorties numériques optionnelles complémentaires :

       Le connecteur K4 de l'interface permet d'ajouter trois autres PCF8574P supplémentaires à l'interface. Pour ce faire, vous devrez réaliser une carte fille vous permettant l'ajout de ces 3 nouveaux composants. Vous n'aurez aucune difficulté à câbler ces 3 nouveaux circuits en vous aidant du schéma électrique de l'interface.
       Le câblage des entrées A0, A1 et A2 des PCF8574P et la commande de ces 3 nouveaux circuits s'effectuent en utilisant les informations ci-après.

 


       Le
premier PCF8574P est câblé avec les broches A2 = +5V et A1 = A0 = GND.
       Le contrôle de ce dernier par la liaison série s'effectue comme précédemment mais en utilisant la suite de caractères suivantes :
!$Dx|#

       Le second PCF8574P est câblé avec les broches A2 = +5V, A1= GND et A0 = +5V.
       Le contrôle de ce dernier par la liaison série s'effectue en utilisant la suite de caractères
suivantes :
!$Ex|#

       Le troisième PCF8574P est câblé avec les broches A2 = +5V, A1= +5V et A0 = GND.
       Le contrôle de ce dernier par la liaison série s'effectue en utilisant la suite de caractères
suivantes :
!$Fx|#

       Désormais l'interface universelle permet de gérer un total de 64 sorties numériques au lieu des 40 proposées par défaut.




 
Logiciel et son code source dédié à la gestion de l'interface en mode RS232 :

       Afin de piloter simplement l'interface en mode
RS232 (19200 bauds) via votre PC, un petit programme écrit sous Borland Delphi (compatible avec les versions 5, 6 et 7 de Delphi) est disponible en libre téléchargement. Ce dernier génère automatiquement les différentes instructions présentées ci-dessus.

       La communication série RS232 du programme Delphi est assurée via un
composant freeware additionnel conçu pour Borland Delphi et Borland C++.  Ce composant se nomme COMPORT et vous pouvez le télécharger à l'adresse suivante [ COMPORT ]. Il faudra préalablement l'installer sous Borland Delphi avant d'ouvrir les fichiers sources.

       Pour ceux utilisant le Visual Basic ou le Visual C++, ils auront recours aux composants de communication série équivalents adaptés à ces systèmes de développement.

      Les SE compatibles avec ce programme sont :   8, Seven, Vista et XP.
      ll n'a pas été testé sous 2000, Me et 98SE.


 

         Téléchargement du soft compilé EXE : 333ko    
 



       L'ensemble du
code source de ce programme est librement téléchargeable ci-après. Le code source est commenté et vous n'aurez aucun mal à l'adapter selon vos besoins.

   
   Téléchargement de l'ensemble des fichiers sources au format Borland Delphi : 312ko  


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

 

 


 


 

 

 


 


 


 



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