Make your own free website on Tripod.com

Generador de Pulsos Binarios con PIC16F84.
Générateur de Pulses Binaires avec PIC16F84.
Binary Pulses Generator with PIC16F84.

Ing - Eng : Hugo Gutiérrez Salazar

Página en construcción - Page en Construction - Page Under Construction

Última Actualización : 25 de Enero de 2008

Dificultad - Difficulté - Difficulty :
4i_star_2_W.gif 4i_star_2_W.gif 4i_star_2_W.gif Black_sta.gif Black_sta.gif

GenBinario1.jpg
 
GenBinario2.jpg

Chile.gif Francia.gif Inglaterra.gif

Introducción

El circuíto que se describe aqui, es un generador de pulsos binarios utilizando un circuito integrado programable PIC16F84 , un miembro de la familia de Integrados Programables de Microchip. Además incorpora 8 Leds, a fin de visualizar la cuenta binaria y un enchufe DB-25 hembra, para recuperar los pulsos generados.

Este circuito está hecho con el circuito universal para PIC16F84 , en el link anterior, en este mismo sitio.

Cómo funciona

Una vez construído el círcuito universal, se conectan los leds y los botones externos para poder controlar algunos parámetros de funcionamiento. Luego debe programarse el PIC, usando una interfaz de programación, PIC-Starplus, por ejemplo.

Al aparato se le incorporaron 6 pulsadores miniatura, de los que normalmente se utilizan en los controles de los DVD, Videos, etc. Estos botones se encuentran conectados al canal de entrada/salida A del PIC16F84, el que tiene justamente 5 entradas/salidas y además uno de ellos se conecta al Reset del PIC.

Los botones tienen las siguientes funciones:

  • A0 : Incrementa el tiempo de barrido. (Más Lento)
  • A1 : Genera un tren de pulsos en Linea.
  • A2 : Genera un tren de pulsos en un patron de puntos.
  • A3 : Genera una cuenta hexadecimal de 2 digitos (4 bits cada uno).
  • A4 : Decrementa el tiempo de Barrido. (Más Rápido)
  • Introduction

    Le circuít décrit ici, est un générateur de pulses binaires utilisant un circuit intégré programmable PIC16F84 , un membre de la famille de Intégrés Programmables de Microchip. De plus on lui incorpore 8 Dels, afin de pouvoir visualiser la compte binaire et une branche DB-25 femelle, pour recuperer les pulses générés.

    Cet circuit est construit avec le circuit universel pour PIC16F84 , dans le linkage précédent, sur cet même site.

    Comment ça fonctione

    Une fois construit le circuit universel, vous dévez connecter les dels et les boutons externes pour pouvoir contrôler quelques paramètres de fonctionement. Après on doit programmer le PIC, utilisant une interface de programmation, le PIC-Starplus, par example.

    A l'appareil je lui ai incorporé 6 boutons miniature, de ceux qui normalement s' utilisent aux contrôles des DVD, Videos, etc. Ces boutons se trouvent connectés au canal d'entré/sortie A du PIC16F84, qui a justement 5 entrés/sorties et aussi un d'entre eux se connecte a la patte de Reset du PIC.

    Les boutons ont les fonctions suivantes:

  • A0 : Incremente le temps de balayage. (Plus Lent)
  • A1 : Génére un train de pulses en Ligne.
  • A2 : Génére un train de pulses de points.
  • A3 : Génére une compte hexadecimale de 2 chifres (4 bits chaqu'un).
  • A4 : Décrémente le temps de balayage. (Plus Rapide)
  • Preliminar

    The circuit shown here, is a binary pulse generator using a PIC16F84 Programmable Integrated Circuit, a family member of Microchip Programmable Integrated Circuits. In addition it incorporates 8 Leds, to visualise the binary count and a DB-25 female terminal to recuperate generated pulses.

    This circuit has been made with the PIC16F84 Universal Circuit , shown in a link in this same site.

    How its work

    Once made the universal circuit, we have to connect leds and the external buttons to control some working parametres. Then you have to program the PIC, using a programming interface, such as the PIC-Starplus, by example.

    I have incorporate 6 miniature momentary on switches, the same are used normaly in the DVD, Videos, etc. controls. This buttons are connected to the A input/output channel of the PIC16F84, which has 5 input/outputs and one of them is connected to the PIC Reset.

    Buttons have the following functions:

  • A0 : Increment swapping time. (Slower)
  • A1 : Generate a train of pulses in a line pattern.
  • A2 : Generate a train of pulses in a dot pattern.
  • A3 : Generate an hexadecimal count in 2 digits (4 bits each one).
  • A4 : Decrement swapping time. (Faster)
  • Haga Clic sobre el diagrama
    para ampliarlo
    - Clickez sur le diagramme
    pour l'agrandir
    - Click over the diagram
    to enlarge it
    GenHexa640x480.jpg
    Versión con red RC - Version avec réseau RC - RC net Version.

    Diagrama Electrónico
    Imprimir para ver bien
    - Schema Électronique
    Imprimer pour voir bien
    - Electronic Diagram
    - Print to see ok

    Versión RC

    Como esta aplicación no requiere de una precisión tan alta, es posible usar una red RC para crear el oscilador necesario para hacer funcionar el circuito integrado. Se utiliza una resistencia de 100 [KOhmios] y un condesador de cerámica de 22 [pF].

    Se debe advertir,eso si, que el programa cambiaría levemente, ya que debe indicarse que el oscilador sera con una red de tipo RC y probablemente habría que cambiar la rutina de tiempos de espera.

    Version RC

    Comme cette application n'a pas besoin d'une haute précision sur les temps, il est possible utiliser un réseau de type RC pour faire l'oscilateur nécésaire pour faire fonctioner le circuit intégré. Il utilise une resistance de 100 [KOhms] et un condenseur céramique de 22 [pF].

    Je dois vous prevenir, que le programme changera un tout petit peu, étant donné qu'on doit indiquer que l' oscilateur sera fait avec un réseau de type RC et probablement il faudra changer la routine de temps d'attente.

    RC Version

    As this application doesn't requiere times high precision, it's possible to use an RC net to create the necesary oscilator, to put working the integrated circuit. We will use a 100 [KOhms] resistor and a 22 [pF] ceramic capacitor for this.

    I have to advertise you that the program will change a few, since we have to indicate that the oscilator will be an RC net and probably you should change the waiting times routine.

    Haga Clic sobre el diagrama
    para ampliarlo
    - Clickez sur le diagramme
    pour l'agrandir
    - Click over the diagram
    to enlarge it
    GenPulBin640x480.jpg
    Versión con Cristal - Version avec Cristal - Xtal version.
    Diagrama Electrónico
    Imprimir para ver bien
    - Schema Électronique
    Imprimer pour voir bien
    - Electronic Diagram
    - Print to see ok

    Version con Cristal

    Esta es la versión del circuito que se realizó y aunque es un poco más cara, ya que requiere de un cristal de cuarzo de 4 [MHz], no es mucho más lo que se encarece el circuito total. Por otra parte, el programa se hizo para esta versión, de tal forma que no es necesario modificar el programa.

    La única diferencia con el circuito anterior, es que utiliza el cristal y dos condensadores de 22 [pf] conectados a tierra. Como la velocidad de proceso de cada microinstrucción es de 1/4 de la frecuencia del cristal, cada instrucción se ejecutará en 1 [uSeg] (o lo que es lo mismo 1 x 10-6 Seg.).

    Version avec cristal

    Celle-ci est la version du circuit qui cet realisé et bien quelle est un peu plus chère , dépuis elle a besoin d'un cristal de quartz de 4 [MHz], ce n'est pas trop ce qui augmente le prix du circuit total. D'autre part, le programme a été fait pour cette version, de forme que ce n'est pas nécésaire de modifier le programme.

    La seule difference avec le circuit anterieur, est que celui ci utilise le cristal et deux condenseurs de 22 [pf] connectés a la masse. Comme la vitesse du procès de chaque microinstruction est de 1/4 de la fréquence du cristal, chaque instruction se executera en 1 [uSeg] (ou ce qui est la même chose 1 x 10-6 Seg.).

    Xtal Version

    This is the version of the circuit made and althought this a little more expensive, since it require a 4 [MHz] quartz xtal , it's no much more the total cost of the whole circuit. By the way, the program was made for this version, so it's no necesary to modificy the program.

    The only difference with the previous circuit, is that it use a xtal an two 22 [pf] capacitors grounded. As the process speed of each microinstrucción is 1/4 of the xtal frequency, each instruction will execute in 1 [uSeg] (or what is the same 1 x 10-6 Seg.).

    GenBinario3.jpg

    El circuito cableado

    En la foto superior se muestra el circuíto totalmente cableado. Si lo desea, puede omitir los terminales azules atornillados y soldar los cables directamente al circuito impreso.

    Se recomienda utilizar el código de colores de las resistencias, para identificar los cables (cafe=1, rojo=2, naranjo=3, amarillo=4, verde=5, azul=6 , violeta=7 , gris=8 , blanco=9 y negro= tierra). Los cables de colores los obtuve de un cable coaxial para conexiones de PCs de 10 hebras.

    También puede verse un segundo circuito impreso más pequeño, que se hizo para sujetar los botones. Los leds se pegaron a la caja con pegamento de Cianocrilato ("La Gotita o similar").

    Le circuit cablé

    Sur la photo superieure, vous pouvez voir le circuit totalement cablé. Si vous le desirez, vous pouvez omettre les terminaux bleus vissés et souder les cables directement au circuit imprimé.

    Je vous récomende d'utiliser le code de couleurs des résistances, pour identifier les cables (café=1, rouge=2, orange=3, jaune=4, vert=5, bleu=6 , violet=7 , gris=8 , blanc=9 et noir= masse). Les cables de couleurs je les ai obtenu d'un cable coaxial pour conections de PCs de 10 fils.

    Aussi on peut voir un second circuit imprimé plus petit, qui a été fait pour attacher les boutons. Les dels ce sont collés a la boîte avec de la colle de Cyanocrilate.

    The wired circuit

    In the upper photo you can see the circuit totaly wired. If you want, you can ommit the blue screwed terminals and solder cables directly to the printed circuit.

    I recommends you to use de resistors color code, to identify the cables (Brown=1, red=2, orange=3, yellow=4, green=5, blue=6 , violet=7 , grey=8 , white=9 and black= ground). The color cables I had obtained from a 10 threads coaxial cable for PC's conections.

    You can see also a second printed circuit little than other, that I had made to fix the buttons. The leds where glued to the box with cyanocrilate glue.

    La salida DB-25

    La salida DB-25 es un enchufe hembra que esta normalizado con la salida de datos que entrega un puerto paralelo de un PC. Esto significa que un byte de datos puede obtenerse desde los pines 2 al 9, siendo el pin 2 el terminal correspondiente a la salida A0 o bit de menor peso y el pin 9 , el terminal correspondiente a la salida A7 o bit de mayor peso. El pin 20 se encuentra conectado a tierra. De manera, que este aparato puede utilizarse perfectamente para probar equipos que tienen una entrada de datos paralela.

    La sortie DB-25

    La sortie DB-25 est une branche femelle, qui est normalisé avec une sortie de donnés qui livre le port parallèle d'un PC. Ceci signifie, qu'un byte (un octet) de donnés peut s'obtenir dépuis les pins 2 au 9, étant le pin 2 le terminal correspondant a la sortie A0, ou le bit «plus leger» et le pin 9 , le terminal correspondant a la sortie A7, ou le bit le «plus lourd». Le pin 20 se trouve branché à la masse. De forme que cet appareil, peut s'utiliser parfaitement pour tester des équipes, qui ont une entrée de donnés parallèle.

    The DB-25 output

    The DB-25 output is a female plug, which is normalized with a data output which delivers a PC's parallel port. This means a data byte can be obtained from the 2 to 9 pins, being the 2 pin, the terminal corresponding to the A0 output or the minor weighted bit and the 9 pin, the terminal correspondant to the A7 output, or the mayor weighted bit. Pin 20 is ground connected . So this device can be used perfectly to test equipment, which have a parallel data entry.

    La Fuente

    La fuente de alimentación se ha omitido (el transformador), ya que a este aparato se le han agregado dos pinzas de tipo caiman, que le permiten tomar energia desde otro dispositivo. El integrado consume muy poca corriente y los leds, cuando todos se encuentran encendidos 90 [mA] (10 [mA] cada uno). De forma que, se pueden tomar 100 [mA] desde otro circuito o desde una fuente de Corriente Alterna o Continua de 7 a 17 [Voltios], dado que el circuito incluye un puente rectificador y un regulador de 5 [Voltios]. Las pinzas que usé, son de dos colores (Rojo y verde), eran las que tenia (No es una norma). Gracias al puente rectificador, se puede conectar la fuente de cualquier manera, siempre pasará internamente la polaridad correcta : positivo y negativo.

    El programa

    El programa aunque funciona bien, no está depurado. No necesito que esté perfecto, de tal forma que si desean mejorarlo, háganlo libremente. Después me envian una copia :).

    Sé que hay algunos pequeños problemas. Por ejemplo, en el manejo de los botones de incremento o decremento de tiempo de espera, hace falta agregar semáforos, para que la lectura de los botones sea mas pausada. O bien utilizar rutinas de manejo de interrupciones, que serían lo más adecuado en este caso.

    La Source

    J'ai suprimé la source d'alimentation (le transformateur) , puisque'à cet appareil je lui ai addicioné deux pinces de type caiman, qui lui permetten de soustraire l'énérgie d'un autre dispositif. L'integré consomme très peu de courrant et les dels, quand tous se trouvent allumés, 90 [mA] (10 [mA] chaqu'un). De forme, qu'on peut prendre 100 [mA] d'un autre circuit ou d'une source de Courrant Alterne ou Continue de 7 à 17 [Volts], dépuis le circuit inclus un pont rectificateur et un régulateur de 5 [Volts]. Les pinces que j'ai utilisé, sont de deux couleurs (Rouge et vert), ce sont celles que j'avais (ceci n'est pas une norme). Grâce au pont rectificateur, on peut conecter la source de la forme que vous voulais, toujours il passera internement, la polarité correcte : positif et negatif.

    Le programme

    Le programme quoiqu'il fonctione bien, il n'est pas dépuré. Je n'ai pas besoin qu'il soit perfect , de forme que si vous voulez l'améliorer, sentez-vous libres de le faire. Après vous m'envoyez une copie :).

    Je sais qu'il y a des petits problèmes. Par example, au traitement des bouttons l'increment et le décrement du temps d'atente, il faudrait additioner des sémaphores, pour que la lecture des boutons soit plus lente. Ou bien utiliser des routines d'interruptions, que je crois dévraient être la solution la plus proche, dans cet cas.

    The Power supply

    I had ommited the power supply (the transformer), since I had included two aligator type clips which allows to take energy from another device. The consume PIC's is only a few current and when all leds are on, 90 [mA] (10 [mA] each one). This way, we can take 100 [mA] from another circuit or from an Altern or continious current power source, between 7 to 17 [Volts], since the circuit includes a rectifier bridge and a 5 [Volts] regulator. The alligator clips I used, are of two colors (red and green), they were what I had in my shack (it isn't a normalisation). Thanks to the rectifier bridge you can connect the power supply in anyways, all the time you'll have internally the correct polarity : positive and negative.

    The program

    Althougth the program works well, it isn't depurated. I don't need to have it perfect, so if you want to depurate it, be free to modify it. After that, you can send me a new copy :).

    I know they are some bugs. By example, in the treatment of the increment and decrement wait time butons, it's necesary to add some semaphores, to allow a buton reading in a more paused way . Or to use interrupts routines, which will be the most adecuate in this case.

    Bajar Programa Telecharger le Programme Download Program

    .jpg
    Circuito Impreso - Circuit Imprimé - Printed Circuit.
    Escala 1:1 - Echelle 1:1 - 1:1 Scale.

    Lista de Componentes - Liste de Composants - Component List

    Cuantas
    Quantité
    How many
    ID Descripción - Description Imagen - Image - Picture
    1   Caja Plástica 11,0 x 5,7 x 2,1 [cms]
    Boite en Plastique 11,0 x 5,7 x 2,1 [cms]
    Plastic Box BX2 Type (4 3/8 x 2 1/4 x 0 7/8 [inches])
    BX2.jpg
    1 D2 Puente Rectificador
    Pont Rectificateur
    Rectifier Bridge 100 [V] - 1 [A])
    PteRectif.jpg
    1 C1 Condensador Electrolítico
    Condenseur Electrolitique
    Electrolitic Capacitor 47 [ufds]/25 [V]
    C470-25.jpg
    1 XTAL Cristal Cuarzo Opcional (* ver texto)
    Cristal de Quartz Optionel (* voir text)
    Quartz Xtal 4 [Mhz] Optional (* see text)
    cristal.jpg
    2   Caimanes de color Rojo y Negro
    Pinces type caiman de Couleur Rouge et Noir
    Aligator Clips Red & Black
    Caimanes.jpg
    1   Cables de Conexión de Diversos Colores
    Cables de Conection de Divers Couleurs
    Conection Cables Many Colours
    CColores.jpg
    8 D3 Leds Rojos
    DELs Rouge
    Red Leds
    LedRojos.jpg
    1 D1 Terminal DB-25 Hembra
    Branche DB-25 Femelle
    DB-25 Plug Female
    DB-25H.jpg
    1   Pegamento de Cianocrilato
    Colle de Cyanocrilate
    Cyanocrilate Glue[V]
    Loctite.jpg
    1   Pertinax Impreso Virgen 1 cara 5 x 10 [cms]
    Pertinax Vierge 1 face 5 x 10 [cms]
    Virgin Pertinax 1 face 2 x 4 [inches]
    Pertinax.jpg
    2 R8,R9 Resistencia de Carbón
    Résistance de Charbon
    Carbon Resistor 1[KOhm] 1/4 [W] 5[%]
    R1K.jpg
    6   Botones Pulsadores de conexión monetanea
    Boutons de presion momentanée
    Momentary Press Buttons
    Pulsadores.jpg
    5 R10 Resistencia de Carbón
    Résistance de Charbon
    Carbon Resistor 4.7[KOhm] 1/4 [W] 5[%]
    Resistencia.jpg
    8 R11 Resistencias de Carbón
    Résistances de Charbon
    Carbon Resistors 330 [Ohms] 1/4 [W] 5[%]
    Resistencia.jpg
    1   Terminal de Circuito Impreso Azul
    Terminal de Circuit Imprimé Bleu
    Printed Circuit Terminal - 3 blue screwed terminal
    TAzul3.jpg
    1 U2 Circuito Integrado Programable
    Circuit Intégré Programmable
    Programable Integrated Circuit PIC16F84-A/04P
    PIC16F84.jpg
    1   Bases de Integrados
    Bases d'intégrés
    Integrated Circuit 18 pins bases
    Base18.jpg
    1   Regulador de Voltaje
    Régulateur de Voltage
    Voltage Regulator 7805
    7818.jpg
    1 C2 Condensador Cerámica
    Condenseur Céramique
    Ceramic Capacitor 0.1 [ufd] / 50 [V]
    C100K.jpg