Bibliothèque technique gratuite ENCYCLOPÉDIE DE LA RADIOÉLECTRONIQUE ET DU GÉNIE ÉLECTRIQUE Sonde câble sur contrôleurs PIC. Encyclopédie de l'électronique radio et de l'électrotechnique Encyclopédie de l'électronique radio et de l'électrotechnique / microcontrôleurs Le dispositif décrit se compose d'un émetteur et d'un récepteur. Du côté du premier, les extrémités des fils sont insérées dans des pinces numérotées, et du côté du second, elles touchent leurs autres extrémités avec une sonde. Le numéro de la borne à laquelle tel ou tel fil est connecté s'affiche sur l'afficheur numérique du récepteur. Pour déterminer le nombre de conducteurs, il est nécessaire d'identifier l'un d'eux et de le connecter au fil commun du récepteur et de l'émetteur. L'émetteur fonctionne en mode distributeur d'impulsions pour dix broches du microcontrôleur (MK). Chacun d'eux a sa propre constante, à laquelle des dizaines s'ajoutent au moment de changer leur code. Pour que les 80 cycles de distribution d'impulsions soient tous exécutés dans le même temps, chacun d'eux est terminé dans le temps d'une interruption à la suivante. Des interruptions se produisent lorsque le temporisateur TMR0 déborde. Il a un préréglage de rapport de division, choisi pour s'adapter à 80 impulsions de sortie entre les interruptions. Considérez l'algorithme du programme de l'émetteur (Fig. 1). Après le démarrage du programme et l'initialisation des registres, le registre des dizaines est réinitialisé. Sa valeur est réécrite sur le port A pour commuter les multiplexeurs. Ensuite, les interruptions sont activées et le nombre binaire de dizaines est utilisé pour trouver sa valeur décimale, qui est ajoutée à la première constante de sortie. La constante de sortie (K) est déterminée par son nombre : pour la première elle est égale à 1, pour la seconde - 2, pour la dixième -10. Lorsque la valeur des dizaines est nulle, chaque sortie a un nombre d'impulsions égal au numéro de sortie. Ensuite, le programme vérifie le registre K pour zéro. S'il n'est pas présent, un est soustrait du registre, ce qui s'accompagne d'une commutation de la sortie sur un seul état. Ensuite, une pause de 24 µs est maintenue et la sortie est mise à zéro, ce qui dure 30 µs (c'est-à-dire que la période d'oscillation est de 54 µs). Après cela, le programme vérifie le registre pour zéro. Si le registre est vide, il passe en attente d'interruption, et si sa valeur n'est pas égale à zéro, tout le cycle de génération d'impulsions en sortie est répété. Ainsi, la sortie est le nombre d'impulsions écrites dans le registre K. Après l'initialisation des registres, un prédiviseur avec un facteur de division de 32 et une minuterie avec un facteur de division de 137 (256 - 119) sont activés. Avec un cristal de 4 MHz, l'interruption de dépassement de temporisateur devrait se produire en environ 4,38 ms (32-137 = 4384 µs), mais l'interruption revient de la commande sans activation d'interruption. A ce temps s'ajoute le temps de cycle jusqu'à l'activation de l'interruption et, en fait, le temps pour que l'interruption s'exécute (la durée moyenne totale de ce temps est de 16 cycles). De plus, le prédiviseur est réinitialisé à chaque fois que la minuterie est réglée, de sorte que la pause entre les interruptions est de 4,4 ms. Comme ce n'est pas difficile à calculer, 80 périodes d'oscillation dureront 4,32 ms (54 μs x 80 \u4320d XNUMX μs), c'est-à-dire que ce temps s'inscrit dans l'intervalle entre les interruptions. Après dépassement du temporisateur, la procédure habituelle de sauvegarde des valeurs des registres lors d'une interruption est effectuée et une est ajoutée (éventuellement soustraite) au compteur d'interruptions. Les valeurs de ce compteur ne sont pas utilisées par le programme et le compteur lui-même est nécessaire pour exécuter l'interruption. Mais il est pratique à utiliser lors du débogage d'un programme. Après restauration des valeurs des registres, une interruption est activée pour générer des impulsions à partir de la sortie suivante. Une fois les impulsions générées à la dixième sortie, le registre des dizaines est augmenté de un et le cycle entier est répété avec la commande d'écriture du code binaire des dizaines sur le port A. Dans le nouveau cycle, le nombre d'impulsions générées à chaque sortie augmente de dix. Lorsque la valeur des dizaines atteint huit, le cycle de mise en forme des impulsions commencera en réinitialisant le registre des dizaines à zéro. Ainsi, la valeur maximale des dizaines est de sept et le nombre maximal d'impulsions sera à la dixième sortie (10 + 70 = 80). Les 80 cycles d'interruption durent tous 0,352 s (4,4 ms x 80). Ce temps détermine la durée garantie de la pause entre l'émission des impulsions à chaque sortie. Pour une seule impulsion à la première sortie, la durée de la pause sera augmentée d'un temps presque égal au temps entre les interruptions, et pour 80 impulsions à la dixième sortie, la pause entre les impulsions sera égale à 0,352 s. Ceci doit être noté afin de mieux comprendre le fonctionnement de la partie réceptrice de la sonde. Le schéma de principe de l'émetteur est illustré à la fig. 2. Tous les bits du port In MK DD1 sont configurés pour la sortie et ont des coefficients de un à huit. Les bits RAO-RA2 sont utilisés pour sortir les valeurs du registre des dizaines en code binaire, RA3 et RA4 - en tant que sorties avec des coefficients de 9 et 10, respectivement. La sortie RA4 étant à drain ouvert, elle est chargée par une résistance R1. Les entrées Y (broche 3) des multiplexeurs DD2-DD11 sont connectées aux bits du port B, les entrées d'adresse (A, B, C) sont connectées en parallèle et connectées aux sorties de dizaines de MK. Ainsi, avec une valeur nulle du registre des dizaines, une adresse zéro sera sélectionnée sur tous les multiplexeurs, et un nombre d'impulsions apparaîtra sur leurs sorties XO (broche 13), égal au coefficient de sortie du MK, qui est connecté à l'entrée Y du multiplexeur. Une seule impulsion sera constamment présente à la sortie XO du microcircuit DD2, et 11 impulsions à la sortie DD10 du même nom. Lorsque l'adresse du multiplexeur est augmentée de un, sa sortie suivante (X1) s'allume et le nombre d'impulsions dessus augmente de dix. Ainsi, seul son propre nombre d'impulsions apparaîtra séquentiellement à chaque sortie des multiplexeurs. La sortie inférieure (selon le schéma) de l'émetteur (commun) est connectée, comme indiqué, à un fil connu, qui sera commun à l'émetteur et au récepteur. Le récepteur sonde câble fonctionne sur le principe d'un compteur à deux chiffres. L'algorithme de son programme est montré dans la Fig. 3, et le diagramme schématique - sur la fig. 4. Après le démarrage et l'initialisation, le programme procède à l'indication dynamique de deux indicateurs numériques à LED avec une cathode commune. Le temps d'indication d'un indicateur est de 5 ms, c'est-à-dire que tout le cycle d'indication est répété à une fréquence de 100 Hz. Le récepteur utilise deux types d'interruptions : sur débordement du temporisateur TMR0 et sur changement du signal à l'entrée RB0. Lorsqu'une impulsion arrive sur cette entrée, les valeurs des registres de courant sont sauvegardées. Ensuite, le programme vérifie la source de l'interruption. S'il ne s'est pas produit en raison d'un débordement du temporisateur, le compteur d'impulsions est incrémenté, le temporisateur est réinitialisé (256 - 120 = 136) et le compteur du prédiviseur est réinitialisé. Le programme restaure les valeurs des registres, et l'affichage continue. Ainsi, lorsque des impulsions sont reçues de l'entrée RBO, le temporisateur est constamment réinitialisé, de sorte que l'interruption de débordement du temporisateur n'est pas possible tant que des impulsions sont présentes sur cette entrée. S'il n'y a pas d'impulsions à l'entrée pendant une longue période, une interruption de débordement de temporisateur se produit. Pour la fiabilité du récepteur, le temps entre les interruptions est légèrement réduit par rapport à l'émetteur et est égal à 4,38 ms. Les interruptions de débordement du temporisateur sont comptées par le compteur d'interruptions. La pause entre les impulsions à chaque sortie de l'émetteur est de 80 interruptions, de sorte que le compteur d'interruptions du récepteur peut compter jusqu'à 80. S'il n'y a pas eu d'impulsions d'entrée pendant ce temps, le programme réécrit les valeurs des registres du compteur d'impulsions dans les registres d'indication et les lectures sont mises à jour. Cela se produit toutes les 0,35 s. Les codes "firmware" de l'émetteur et du récepteur MC sont indiqués dans le tableau. 1 et 2, respectivement. Sorties RB1-RB7 MK DD1 éléments de commutation (segments) des indicateurs LED HG1, HG2, sorties RA0, RA1 - leurs cathodes. Les impulsions de la sonde sont envoyées à l'entrée RB0. La borne X1 est connectée à une âme de câble connue, qui sert de fil commun pour le récepteur et l'émetteur. Si la sortie du multiplexeur de l'émetteur n'est pas sélectionnée par l'adresse, elle aura un niveau indéfini et, lorsque des impulsions apparaîtront sur le compteur du récepteur, il y aura un faux positif (quel que soit le seuil défini de l'opération du compteur : il peut s'agir soit d'une transition de zéro à un, soit de un à zéro). Pour éviter les fausses impulsions, l'entrée est shuntée par la résistance R1. Le récepteur et l'émetteur sont alimentés par des piles composées chacune de trois piles AA ou AAA. Si vous avez l'intention de travailler avec le récepteur pendant une longue période, il est conseillé d'utiliser une batterie 3R12X. Le récepteur et l'émetteur utilisaient des résonateurs à quartz à une fréquence de 4 MHz. Sans aucun changement dans les circuits et les programmes, vous pouvez utiliser des résonateurs avec une fréquence inférieure, jusqu'à 1 MHz. Dans ce cas, le taux de rafraîchissement des lectures des indicateurs diminuera en conséquence, mais il restera à une valeur acceptable pour les yeux - jusqu'à 25 Hz. L'émetteur est monté sur deux cartes de circuits imprimés, chacune étant conçue pour 40 sorties (la seconde diffère de la première en ce qu'elle ne possède pas de puce DD1 et qu'il y a un emplacement pour installer une résistance R1). Les cartes sont placées les unes sous les autres, reliées par des vis et des tiges filetées, et un boîtier pour trois cellules de batterie est installé entre les cartes (dans la zone où se trouve la puce DD1). Les pinces pour connecter les fils sur la carte émetteur sont fabriquées par nos soins (Fig. 5). Ils se composent de deux supports identiques 2, pliés en forme de lettre "L" à partir de bandes de tôle de bronze ou de laiton à ressort de 0,4 ... 0,5 d'épaisseur et de 2,5 mm de large. L'une des extrémités des flans est sciée sur une largeur d'environ 1 mm (sur une longueur de 1,5 ... 2 mm, en fonction de l'épaisseur du matériau des planches 1), dans l'autre, un trou d'un diamètre de 1,2 mm est percé, après quoi les extrémités sont pliées. Les parties sciées des supports sont soudées dans les planches, comme illustré à la Fig. 5. Pour connecter le fil 3, les extrémités inférieure et supérieure (selon la figure) des supports sont comprimées jusqu'à ce que les trous correspondent. Après l'installation, les pinces sont numérotées de telle sorte qu'en tournant l'émetteur (lorsque le bas devient le haut, et inversement), leurs numéros peuvent être vus. Auteur : N.Zaets, village de Veidenevka, région de Belgorod. Voir d'autres articles section microcontrôleurs. Lire et écrire utile commentaires sur cet article. Dernières nouvelles de la science et de la technologie, nouvelle électronique : Machine pour éclaircir les fleurs dans les jardins
02.05.2024 Microscope infrarouge avancé
02.05.2024 Piège à air pour insectes
01.05.2024
Autres nouvelles intéressantes : ▪ Camion minier électrique 793 ▪ Commande vocale des climatiseurs LG ▪ Carburant d'aviation à base d'huile de soja ▪ Cultiver des fruits de mer dans des bioréacteurs ▪ La nanotechnologie au cirque Fil d'actualité de la science et de la technologie, nouvelle électronique
Matériaux intéressants de la bibliothèque technique gratuite : ▪ section du site Documents de référence. Sélection d'articles ▪ article Quand je n'ai pas bu de larmes à la coupe de l'être. Expression populaire ▪ D'où viennent les superstitions ? Réponse détaillée ▪ article Création et mise en place d'un OSMS ▪ article Expérience avec la limaille de fer. expérience physique
Laissez votre commentaire sur cet article : Toutes les langues de cette page Page principale | bibliothèque | Articles | Plan du site | Avis sur le site www.diagramme.com.ua |