Présentation du numéro d'appelant sur afficheur LCD ou sur PC




Le montage de base utilise un circuit spécialisé de la société Mitel, un MT8843, qui fonctionne parfaitement et nous a permis de mettre au point, à l’aide d’un microcontrôleur, des circuits fiables et précis destinés à des utilisations domestiques ou professionnelles.
Ce produit permet, entre autres, de visualiser sur un afficheur à cristaux liquides, et sans l’aide d’aucun autre appareil (lire un ordinateur), le numéro de la personne qui nous appelle, nous donnant ainsi la possibilité de décider de répondre ou de ne pas répondre.
Le projet décrit dans cet article fait suite au système présenté dans le numéro 10 d’ELM auquel il est relié.
Ainsi est né le présent circuit, simple et fonctionnel, qui sera inséré dans le socle réservé au MAX232 (duquel il prélève l’alimentation). Ce circuit permet non seulement de continuer (si on le souhaite) à utiliser l’identificateur d’appels avec l’ordinateur, mais également de visualiser immédiatement sur l’afficheur le numéro de l’appelant ainsi que la date, l’heure et les éventuelles informations d’indisponibilité dudit numéro (numéro désactivé par France Télécom ou par l’utilisateur).
Le circuit imprimé, de par sa conception, permet de transférer les donnés directement du support du MAX232 de la carte de base sur la carte afficheur grâce à deux rangées de broches s’y connectant.
Grâce à ce système de connexion, nous conservons la possibilité d’utiliser l’interface RS232-C.
En jetant un coup d’oeil au schéma électrique de la figure 6, page 17 d’ELM numéro 10, nous pouvons voir, de manière plutôt claire, comment fonctionnent les choses.
Pour faire une synthèse, disons que la platine de visualisation LCD lit les mêmes données prélevées du MT8843 et converties par le microcontrôleur U4, pour être envoyées à travers le convertisseur TTL/RS232-C MAX232 (U3) au port série de l’ordinateur, éventuellement relié au connecteur 25 broches.
Nous obtenons les informations sans aucune modification de la carte de base car nous sommes connectés directement au support du MAX232.
Cela permet de transmettre le signal de la broche 10 de ce dernier, remonté sur la carte de visualisation et renommé U1 sur le schéma de la figure 1, directement à la broche 13 d’un second microcontrôleur U2.
Celui-ci est un PIC16F84 programmé pour interpréter les données et les envoyer au format ASCII à l’afficheur LCD avec les temporisations nécessaires.
L’afficheur utilisé est le classique 2 lignes 16 caractères type CDL4162, ou compatible. Il permet la visualisation du numéro de l’appelant et des données reçues par la carte de base.
Avant de passer aux détails concernant l’afficheur, résumons brièvement le fonctionnement de l’identificateur proposé dans le numéro précédent d’ELM.

Figure 1 : Schéma électrique de la carte fille du décodeur de numéro d’appelant.

Figure 2 : Schéma d’implantation des composants.

Figure 3 : Dessin du circuit imprimé à l’échelle 1.

Liste des composants
R1 = 10 kΩ
C1 = 22 pF céramique
C2 = 22 pF céramique
C3 = 100 nF multicouche
C4 = 100 μF 25 V électrolytique
U1 = Intégré MAX232
U2 = μcontrôleur PIC16F84 (MF306)
DISPLAY = Afficheur LCD 16x2 CDL4162
Q1 = Quartz 8 MHz

Divers :
1 Support 2 x 8 à broches longues
1 Support 2 x 9 broches
1 Connecteur 16 broches
1 Circuit imprimé (S306)


Figure 4 : Brochage du MT8843.

La carte de base
L’interface vers la ligne téléphonique est pourvue d’une section isolée galvaniquement de façon à séparer convenablement la paire téléphonique de la masse du circuit, évitant ainsi le transfert d’interférences qui ne seraient pas bénéfiques au fonctionnement du microcontrôleur !
Pour prélever la phonie, nous avons employé un transformateur de couplage téléphonique ayant un rapport de transformation de 1/1. Le secondaire de ce transformateur porte le signal digital FSK vers les broches 1 et 2 (IN+ et IN–) du MT8843, passant par le réseau de protection. Ce dernier sert à éviter que, durant les appels, la tension alternative (de 80 volts efficaces) passant à travers le transformateur (de rapport 1/1) n’atteigne le circuit intégré et ne l’endommage.
Pour cela, les diodes D2, D3, D4 et D5 coupent les tensions supérieures à 0,6 volt aidées en cela par les résistances R1, R2, R3 et R4 qui assurent, dans chaque situation, la limitation de courant nécessaire.
L’isolement en courant continu pour TF1 est garanti par C4 sur le primaire (côté ligne) et par C11 et C12 sur le secondaire.
Comme nous n’utilisons pas la détection de sonnerie, nous avons positionné au niveau logique zéro la broche 9 (mode asynchrone) et la 14 (“power down”). Par contre, la broche 15 (validation du démodulateur FSK) est au niveau logique 1. Ainsi, le MT8843 fonctionne en permanence sans nécessiter de déclenchement, étant prêt à chaque instant indépendamment des conditions de la ligne ou de l’arrivée ou non d’une tension alternative d’appel.
Par l’intermédiaire des broches 1 et 2 et de l’interface appropriée, la trame des données rejoint le circuit intégré MT8843. Cette trame contient les 3 trains d’impulsions : “réveil” (fonction de “tone alert”, que nous n’utilisons pas dans ce montage), synchronisme et informations indicatives réelles.
Pour le format et le contenu du train d’impulsions envoyé par le central téléphonique, nous vous renvoyons à l’article publié dans le numéro 10 d’ELM.
Nous nous limiterons ici à l’examen des différentes phases du fonctionnement en supposant que vous connaissez le protocole.


Un montage particulier, à l’aide des broches d’un support de circuit intégré à wrapper, permet le transfert des données du support de U3 de la carte de base au support de U1 (le même MAX232) de la carte de visualisation. Nous gardons ainsi la possibilité d’utiliser l’inter face série RS232-C tout en prélevant les signaux digitaux élaborés par le microcontrôleur de la carte de base pour faire fonctionner l’affichage LCD.

Le décodeur de la société Mitel
Le signal parvient sous la forme d’une note modulée en fréquence (FSK) au standard CCITT V23 (pour l’Europe et la France, aux U.S.A. le standard adopté est le Bell 202). Le MT8843 dispose, en interne, d’un filtre et d’un démodulateur de fréquence capable d’extraire les impulsions digitales, qu’il envoie ensuite à la broche 17 (data).
De celle-ci, les informations rejoignent le microcontrôleur à la broche 7, positionnée comme entrée des données.
Le logiciel procède à leur gestion et à leur conversion après les avoir analysées.
Du microcontrôleur les données sont envoyées à l’interface RS232-C au format N, 8, 1, mais à 9600 bauds pour profiter de la vitesse relativement élevée du port COM implanté dans l’ordinateur.
A l’arrivée des données démodulées par le MT8843, le microcontrôleur U4 les acquiert et note leur structure en identifiant la date, l’heure et le numéro de téléphone. En premier lieu, il va vérifier si le numéro est effectivement présent, car s’il n’est pas transmis, il doit créer le caractère à envoyer sur la sortie (broche 6).
Donc, suivons dans l’ordre les différentes phases. Après la première donnée arrivée, une vérification assure que c’est bien 80 hexadécimal (code correspondant au message “Identifiant”) puis on attend la seconde partie indiquant, toujours en format hexadécimal, la longueur de la trame en caractères qui peut être 16 hex. (22 caractères) ou 17 hex (23 caractères). Tout cela est maintenu en RAM pour la vérification finale nécessaire pour certifier l’intégrité et le déchiffrage correct des données.
Vient ensuite le tour des 2 caractères suivants indiquant la disponibilité (01) de la date et de l’heure et la longueur de ces informations (normalement 08 = 8 caractères).
Ensuite, arrivent deux autres caractères, dont le premier nous indique si le numéro téléphonique de l’appelant est disponible (02 hex) ou s’il est absent (04 hex) et le second, la longueur.
En vérité, les chiffres qui le composent, y compris le préfixe. Ceux-ci vont également en RAM.
Clairement, si le numéro n’est pas disponible, la longueur est 01, parce qu’à sa place, le protocole prévoit un unique chiffre (70 hex) qui correspond au 112 décimal et qui, dans la table des caractères ASCII, équivaut à la lettre “P” (private).
La dernière donnée de la trame est le “checksum” qui permet au circuit de l’identificateur de vérifier si les données sont arrivées correctement.



Le circuit de visualisation
Le microcontrôleur utilisé (U2, un PIC16F14) est programmé pour déchiffrer les codes présents sur le canal série et pour commander un afficheur LCD pour les visualiser.
Pour cela, un logiciel adapté procède à l’acquisition des caractères au format ASCII, puis lance la routine basée sur la commande “LCDOUT” du “Pic-Basic Compiler” disponible pour les composants Microchip. Cette routine permet de commander des afficheurs équipés du driver Hitachi 44780 (pratiquement tous ceux disponibles dans TÉLÉPHONE ELECTRONIQUE 49 magazine - n° 11 le commerce et destinés aux applications générales).
Pour ce qui concerne l’afficheur LCD, nous savons que la broche 6 est celle qui indique au 44780 le type d’information qui arrivent (0 = donnés, 1 = commandes) la 8 est la broche “enable” du buffer et la 7, “R/W”, est mise au zéro logique car nous utilisons le dispositif comme élément passif, uniquement apte à recevoir les données.
A la lumière de ceci, nous pouvons voir que pour opérer sur le curseur, effacer le tampon de la mémoire et remettre à zéro l’afficheur, le microcontrôleur U2 génère les données au format 4 bits (broches 6, 7, 8, 9 de U2) ainsi que, pour un court instant, un niveau logique haut sur la broche 11 (mode commandes) et un zéro sur la broche 10 (broche 8 de l’afficheur).
Pour écrire un caractère, la séquence est similaire, l’unique différence se situe dans le fait que la broche 11 (6 de l’afficheur) est forcée au zéro logique (mode données).
Cela dit, nous pouvons conclure la description du circuit en disant qu’à l’arrivée de chaque appel téléphonique, et donc d’une trame valide, le circuit de visualisation nous en montre le contenu, indépendamment du fait que soit disponible ou non le numéro de téléphone de l’appelant.
Dans la ligne supérieure nous avons la date et l’heure, respectivement dans le format jj-mm (jour-mois) et hh:mm (heure:minute).
Dans la ligne inférieure doit apparaître le numéro (ID) avec un maximum de 16 caractères.
Si l’appelant a occulté son numéro avant d’appeler (en France, cela se fait en composant *31*, avant le numéro que l’on désire appeler) ou si le central ne l’envoie pas car il ne peut encore le faire, ou encore s’il y a une panne, ou simplement parce le numéro est réservé (liste rouge), le message qui apparaît sur l’afficheur est : “NON DISPONIBLE”, élaboré par le programme contenu dans le microcontrôleur PIC16F84 lorsque, sur l’entrée des données, il reçoit le caractère ASCII correspondant à la lettre “P” envoyé par le MT8843.
Notez enfin que nous utilisons le support de U3 de la carte de base pour connecter la carte de visualisation, le MAX232 est déporté sur cette dernière La liaison série, et donc la conversion des niveaux en RS232-C, est toutefois assurée.
Clairement, les signaux passent de la broche 6 du microcontrôleur, situé sur la carte de base, au support U3 puis au circuit intégré U1 (MAX232) de la carte fille. De ce dernier, ils retournent vers le connecteur DB25 par l’intermédiaire des contacts de liaisons des deux platines.


Notre circuit de visualisation à été étudié pour être connecté au système de présentation du numéro d’appelant sur PC présenté sur la revue numéro 10.
La carte de base utilise un circuit intégré MT8843 pour décoder les informations contenues dans l’identification.
Un microcontrôleur procède à l’analyse du protocole et envoie au port série les données relatives à la date, l’heure et au numéro de téléphone.


En ajoutant la carte de visualisation à l’unité de base présentée sur le numéro 10, nous pouvons voir immédiatement sur un afficheur LCD le numéro de l’appelant, la date, l’heure et, éventuellement, l’information d’indisponibilité.
Le montage, tel qu’il est réalisé, préserve la possibilité d’utiliser le système en le Figure 4 : Brochage du MT8843. reliant au PC.


Le PIC16F84, monté sur la carte fille, permet de visualiser les informations de l’appel en partant de la trame des données prélevées sur la ligne téléphonique par l’intermédiaire du MT8843 présent sur la carte de base.
Le programme qui permet cela est schématisé par l’organigramme représenté ici.
Après l’initialisation des entrées et des sorties, le message “SYSTEME STARTUP” est affiché sur l’écran.
Ceci fait, le PIC16F84 attend le bit de départ sur le canal d’entrée, il convertit les données reçues en un format compatible avec l’afficheur et pilote ce dernier afin d’afficher les informations voulues.
Après chaque opération, le circuit retourne en attente d’un autre appel.
Les informations reçues de la carte d’identification restent affichées à l’écran.

Réalisation pratique
Passons à la construction de la carte de visualisation en partant du circuit imprimé que nous vous conseillons de préparer suivant la méthode habituelle ou d’acquérir déjà percé et sérigraphié.
Votre circuit imprimé en main, vous allez pouvoir commencer le montage des composants.
Montez en premier lieu, l’unique résistance et les condensateurs céramiques et polyester. Le condensateur électrolytique C4 sera monté en prenant soins de positionner correctement ses deux pattes (patte longue au positif) et de le monter couché contre le circuit imprimé.
Montez également le quartz en position couchée. Installez les deux supports des circuits intégrés en orientant l’encoche-détrompeur vers l’extérieur du circuit imprimé.
Pour l’afficheur, il faut installer une barrette sécable de 16 broches au pas de 2,54 mm. L’afficheur sera inséré dans ce support.
Pour compléter la carte fille, il faut se procurer un support de circuit intégré à wrapper de 16 broches et le souder, côté cuivre, sur les pastilles de U1.
Une fois soudées, il faut couper les broches du support à wrapper au raz du plastique du support afin d’obtenir 16 pointes droites d’égales longueurs.
Vous avez réalisé un connecteur mâle, qui servira à insérer le module afficheur sur la carte de base à l’emplacement du MAX232.
Pour la connexion entre les deux platines, nous vous conseillons de regarder les dessins et les photos de l’article afin de mieux comprendre le système.
Pratiquement, vous devrez insérer les pointes soudées sous U1, dans le support du circuit intégré MAX232 de la carte de base en faisant en sorte que les deux trous situés de part et d’autre du connecteur de l’afficheur coïncident avec les deux trous du circuit imprimé de la carte de base.
Dans ces deux trous, montez deux petites entretoises hexagonales et fixezles à l’aide de vis et d’écrous de 3 mm.
Les deux platines seront ainsi unies solidement.
Mettez en place le microcontrôleur PIC16F84 (U2) pour terminer le montage.

Utilisation du décodeur de numéro d’appelant
Le système est maintenant prêt à l’emploi, soit de manière autonome, soit relié au PC comme cela a été décrit dans la revue numéro 10.
Dès la mise sous tension du montage, vous devez voir apparaître le message “SYSTEM STARTUP” avec une lueur ténue de fond d’écran, due au rétroéclairage à LED.
Après quelques instants, le message disparaît.
Le système étant relié à la ligne téléphonique, à la réception de chaque appel, vous devez voir apparaître dans l’ordre, la date et l’heure, ainsi que le numéro de téléphone identifiant l’appelant, ou bien le message “NON DISPONIBLE” dès lors que le numéro est absent ou occulté.
Dans tous les cas, la ligne doit être habilitée à recevoir les numéros d’identification. Soit parce que cette possibilité est incluse dans votre contrat soit parce que vous en avez fait la demande auprès des services de France Télécom.
A l’heure actuelle, ce service est facturé 10 francs par mois. Si vous décidez, pour faire de la gestion de numéros par exemple, de vous raccorder également à votre PC, le système fournira simultanément le numéro de l’appelant sur l’afficheur LCD incorporé et sur l’écran du PC.

Aucun commentaire:

Enregistrer un commentaire