Está en la página 1de 8
PUNTA LOGICA Simplifique la prueba y la reparacién de sistemas digitales construyendo esta préctica punta légica. Detecta niveles alto, bajo y de alta impedancia; su elemento principal para el proceso es un micro- controlador PIC16F84. Caracteristicas * Punta logica de tres estados * Detecta estados de alto (1), bajo (0), alta impe- dancia (Hi-Z) y entrada de pulsos (P) Sefializacién a través de un diodo LED y un display de sieve segmentos Genera una sefial PWM para uno de los tipos de sefializacién Tamafio reducido Sefial audible de cada uno de los estados Curso prictio sobre Microcontoladores exir: @ at ie ‘Una punta légica es uno de los elementos més utilizados dentro de un laboratorio de elec- trdnica digital, microprocesado- reso microcontroladores. Ella fa- cilita el proceso de construccién, prueba, reparacién, manteni- miento e instalacién de toda cla- se de sistemas digitales. Utilizando una punta 1é- gica se puede dererminar fici mente el estado de una entra- da o salida digital y confirmar la presencia en ese punto de un nivel 6gico alto o bajo, un esta- do de alta impedancia (Hi-Z) 0 una entrada de pulsos a una alta frecuencia. Las puntas légicas para uso profesional son instrumentos relativamente costosos y, por la misma razén, no estén siempre accesibles a todos los presupues- tos. Esta punta Iégica es un ins- trumento portitil de buena ca- lidad y bajo costo. Funcionamiento general El circuito utiliza un diodo LED y un display de 7 segmen- tos para informar el estado 16- gico de la entrada digital. Si el LED estd encendido quiere de- cir que en la entrada existe un uno (1) légico o nivel alto (high), y si el LED esta apaga- do, significa que tenemos un cero (0) légico o nivel bajo (low) en la entrada. Si en la entrada existe un estado de alta impe- dancia, se mostrar en un dis- play de siete segmentos la letra H (Hi Z) y se generard una se- fal de PWM sobre el diodo LED para que se ilumine al 50% de su capacidad; esto gra- cias a una interrupcién por el temporizador interno (timer). Una interrupcién es un evento externo que obliga al microcontrolador a invocar 0 lamar una rutina denomina- da rutina 0 servicio de inte- rrupcidn, para lo cual, en este caso, se ha habilitado al tem- porizador interno del micro- controlador (simer0) para que cuente los pulsos internos de reloj de la maquina y genere una interrupcién cada vez que este registro se Ilene y provo- que un sobreflujo. Cuando se ha detectado un. estado lgico alto 0 bajo, se en- viard por el pin RB4 (pin 10) tuna sefal en una frecuencia de- terminada (el nivel l6gico bajo tendré una frecuencia ms baja) para que el usuario tenga una sefial audible del nivel que est detectando. Adicionalmente se ha dispuesto un display de siete segmentos en el cual se puede observar una letra o un niime- 10 por cada estado que se pre- sente. Cuando hay un nivel lé- gico bajo se visualizara un cero (0), cuando es nivel alto se vi- sualizaré un uno (1), cuando se encuentre en estado de alta ir pedancia se visualizard una H, y cuando entre una sefal de pul- sos se presentaré una P. Diagrama esquematico El diagrama esquemético de este proyecto lo puede apre- ciar en la figura 10.1, Cons- ta de una entrada de alimen- tacién, un diodo LED indi cador de estado, un transduc- tor piczocléctrico miniatura (buzzer), un display de siere segmentos y un microcontro- lador PIC 16F84. La entrada de alimenta- cién esta conformada por unos bornes de conexién (co- nector de entrada) destinados a recibir los cables de alimen- tacidn, el diodo rectificador de proteccién D1, y los conden- sadores Cl y C2 que se com- portan como filtros y cuya funcién es estabilizar la ten- sién de alimentaci6n aplicada al circuito y limirar la entrada de sefiales de alta frecuencia hasta el microcontrolador. Para garantizar la ejecucién. continua del programa por par- te del microcontrolador y el buen funcionamiento de todos sus circuitos internos de apoyo (cemporizadores, buffers, regis- tos, contadores y citcuitos de reset, entte otros), es necesario que la alimentacién que se le su- ministre, esté dentro de los li- mites permitidos por su tecno- logia de fabricacién en cuanto as magnicud CC y CA (riza- do), los cuales establecen que los microcontroladores PIC pueden ser alimentados por vol- tajes que van entre 3 y 6VCC y con un factor de rizado inferior © igual al 10% de su valor CC. Para suministrar la energia al cireuito de la punta légica, se usa la propia fuente de alimen- impedancia tacidn del circuito bajo prueba, y para ello se usa un cable de alimentacién con dos caimanes miniatura en uno de sus extre- ‘mos, que se conecta a los bor- nes de entrada del circuiro im- ppreso, Para evitar que se induz~ can sefiales eléctricas ruidosas y que la magnitud de la tensién de alimentacién sea atenuada, éte cable debe mantenerse con una longitud inferior a 1m. Por las caracteristicas de la tecnologia de fabricacién del PIC y debido a la caida de ten- sidn ocasionada por el diodo de proteccién D1 en polaridad di recta, el voltaje de alimentacién de la punta légica debe estar centre 3.5 y 6.5V, es decir, que puede utilizarse para probar el estado légico de circuitos digi- tales TTL y CMOS con bajo ni- vel de alimentacion. E] diodo rectificador de propésito general D1 que abre © cietra el paso de la corriente hacia el circuito, dependiendo de la polaridad entre sus ter- minales (Anodo y cétodo), se ha incluido en la entrada como una proceccién para el circuito ° ia im Figura 10.2 Diagrama de bloques del programa nen Mere aU em Cue er) comuTa BSF ESTADO, 5 A UA PAGINA 3 NOVLM B°oxe6G000" | Se CONFUGRA EL FUNCTONAMTENTO DE Los prnes A ome terse $e ACUERDO A'LO DISPUESTO EN EL DIAGRAMA 809009000"; ESQUEMA 3 PIN NUM ¥ coverau # BoRRO 8 # wewvo + EL PRD TCO. SOLO HAY UNA ENTRADA, EL ERO SETS DEL PUERTO B. RO EL TIMER COMD TEMPORIZAD0R ANOERA.DEINT. DEL THRO MABILITADOR GLOBAL DE INT. ALA PAGINA @ ER PASO ES DETERMINAR SI EXISTE 7} ON LA ENTRADA UNA FRECUENCIA DE PULSOS EL METOOO ES MUY SENCILLO, SOLO SE LEE {UC ENTRADA RBG, Y SE VERIFICA QUE ESE NIVEL PERMANEZCA OURANTE CTERTO.PERTODO DE THEWO, EL CUAL ES DETERNENADO POR } WA RUTIMA'RETAROO. CAMBTANDO EL VALOR DE |} ESA RUTINA, CAMBIAWOS LA FRECUENCIA DE oerecermn. puuso.2630 BL ESTA Clie estas LeveD O&O RBG ron SESRES oe tee Pat Cer QE SOE ss } farsriewo wr MIveL creo Ba. caro SEIN OUSTE SEAIFTCA QUE ND TAY Erte E PUL505 est puso $F PoOB10S CONTINUAL PROGR. ra rsa ocecrabo Bw EvTROA Be PUS05, ts Acriviios Los PINES OC LOS PUERTOS is } Givesonias ra Qe Se VSM ems > Sr } Paea INoIoue QUE cSTa EWTRONDO 4 LA 5 Pinta tocton Bois - } WW SeRTE De PuLsos a unk FRECUENCIA | Seteomaon. sce rore,3 BCE PORTA'3——; CUMGO SE_VISUALIZA LAP, REGRESAOS | tte cr PonTa,s | Loop PARA GASERVAR EX QUE MENTO NOS | Sithos oe scr ponre,s este esti. 510 Toop Figura 10.3 Cédigo que detecta la exstenca de entrada de pusos de la punta l6gicas su propési- to es evitar los dafios perma- nentes que se pueden ocasio- nar enel PIC como consecuen- cia de una inversién prolonga- da en la polaridad del voltaje de alimentacién, Para limitar y proteger el diodo del paso de corrientes excesivas a través de él y ade- mis evitar que los puertos del microcontrolador se daien, se han inscalado en serie con cada segmento del display y el LED una serie de resistencias (R2-R9) que limitan la co- rriente a menos de 10mA por cada uno. Descripcion del programa En la figura 10.2 puede observar el diagrama de bloques general con las funciones que hace el dis- positivo. Inicialmente detecta si existe una fre- ccuencia de pulsos alta en In entrada y visualiza una Psi se daese caso (nume- ral 1), Fl segundo paso es detectar la existencia de un estado de alta im dancia en la entrada, vi- sualiza una H yenvia una sefal de PWM al LED de salida (numeral 2). Sino haocurrido alguno delos @ CeKin: Curso préctico sobre Microcontroladores dos eventos anteriores se pasa al rercer paso, en el cual se derecta qué nivel ligico existe en la punta de prucha y envia una sefial en fre- cuencia para activar el zumbador ytener asi una indicacién audible dela medicién. El primer paso es verificar sien la entrada existe una sefial de pulsos, el eédigo de esta fun- cidn se observa en la figura 10.3 y-su diagrama de flujo en la fi- gura 10.4. Para resolver este problema se pensé en una solu- Gién muy sencilla: se lee la en- trada, se espera un tiempo de- terminado y de nuevo se vuelve a leer para verificar si el nivel leido inicialmente permanece allf o ha cambiado. Si el nivel ha cambiado se puede concluir que es una sefial que se mueve a una frecuencia considerable, pero siel nivel leido permanece se puede decir que se estd leyen- do un hivel que no cambia tan Figura 10.4 Diagrama de fvo de ‘a deteccion de puss ‘loop SCF PORTB, PAZ; RB7 AHORA ESTA EN 8430. STFSC PORTS, PPRUEB | PRUEBO SI ROG ES IGUAL A'RE7 GOTO note BSF PORTS, PAZ. Y LUEGO PONGO EN ALTO STFS PORTB, PPRUEB ; PRUEBO ST ROG ES IGUAL A RB? GOTO none he GSE BANDERA,1. ST LA ENTRADA ES MI 2 BSF PORTE,0. SE ACTIVA EL BIT 1 DEL REGISTRO Cc pee BANDERA PARA PODER RECONOCER BSE PORTB,2 ESTE ESTADO DENTRO DE LA. INTERRUPCION BSE PORTE, Y WANDAR LA FRECUENCEA ADECLADA.. BSE PORTA, ‘AL MISMO TIEMPO SE ACTIVA LA LETRA H BSE PORTA? EN EL DISPLAY DE SIETE.SEQMENTOS Bc PORTA’. FINAIMENTE ACTIVD LA INTERRUPCION: BCE ESTADO, 5 BSF INTCON, § ace ESTADO, § VOY A LA PAGINA 1 HABILITO INT. POR TARO WELVO A LA PaGrNa 0 aon eeiiee ay. eeaia aia Serine ee rane oer neu nniees D ! posrenaones ee Utama he near as Toy icroirgt spares PE aaa eee OUEG puso ae eet een eee re | Mate Pea pet eee eee eR ETRE us os ccs ee ae ae tet Pee gst eats oe eee meme ER ora ae Bei aan Eee eee ase SO ery ten es eee cinerea ims aeration Bs Bacon arena 3 era 3 Pee ront srescemes is pense | ener tae aaa pane | ey eet aes ee eee eggs me ROO ian: eee Soe, ERG i a : ‘Figura 10.5 Deteccién y operaciin ante un estado dealt impedancia ripidamente, En los blo- ques 4, 6 y 9 del diagrama de flujo y parte B del programa, se hace esta operacién. Observe que el tiempo de espera est dado por una rutina de tiempo denominada RETARDO y que si ha encontrado este estado, debe visualizar en el display de siete segmentos la letra P. En la porcién A del cédigo se configura el timer como tem- porizador (para queseincremente con los pulsos internos de la mé- quina) y no como contador, po- niendo en cero el bie 5 del regi tro OPCION. También se borra Ja bandera que indica una inte- srupcidn debido al timer (lo cual esobligacién del programador) y se activa el bit habilitador global de interrupciones (GIE), Abora el sistema debe deter- minar si en la punta de prueba existe una condicién de alea im- pedancia, Para determinar la exis- tencia de este estado siga un pro- cedimiento muy sencillo: remita- se al oddigo de la figura 10.5 y al dliagrama de flujo dela figura 10.6. El pin 7 del puerto B esta conec- tado a través de una resistencia de 100K a la entrada de prueba (RB6); sien el pin RB7 se coloca un cero (bloque 10 del diagrama de flujo, parte C del programa) inmediatamente se lee el pin RB6 (bloque 11) y all se detecta cero, «posible que hayan ocurrido dos cosas: la primera es que ka punta de prucba en ese momento esté Jeyendo un cero légico el cual no se afecta con el cero proveniente ‘>= si Figura 10.6 Diagrama de fio dela deteccion de alta impedancia orca Mit ® S oa e Figura 10.7 Operacién cuando se detecta ata impedancia del RBO; la segunda, es que esti enestado de alta impedancia yen realidad el cero que se lee en el puerto RBG sea exactamente el mismo que envié por RB7; es de- cir, que la sefal externa no afecté para nada laleceura del PIC, Ob- serve que si en este preciso mo- mento la punta lee una sefial l6gi- a alta, no habré ningin proble- ma de cortocircuito gracias a RU Para estar seguro de que en realidad ses un estado de alta impedancia, se procedea poner un estado alto en RB7 (bloque 12) ¢ inmediatamente se lee RBG para determinar si también se encuen- nohz ® hi {7 No ‘Figura 10.8 Operaciin cuando no se ‘etacta estado de afta impedanca PORTS, BSF ESTADO, 5 CF INTCON, 2 BcF ESTADO, 5 Movin 9x29 NOvAF THRO RETFIE vector de reset Jector de interrupcion IEQUED BANDERA DE QUE SE WA 'PRESENTADO UN ESTADO DE ALTA } IMPEDINCTA, ST ESE ES EL CASO, CADA QUE ‘OCURRA UNA TNTERRUPCTON, SE ORIGINA POR LOS PINES 4 Y 5 DEL PUERTO 8, ‘UNA SENAL DE piv, GENERADA. CAMBTANOO } AUTERVADIMENTE EL ESTADO DE ESTAS ‘00S LINEAS, LAS CUALES CORRESPONDEN . O1000 LED INDTCADOR Y"AL. ZLMEADO. (OY A LA PAGINA 2 } BORRO LA BANDERA DE INTER. DEL TARO WUELVO & LA PAGINA 0 CCONFTGURO EL PORCENTASE DE CCLO UTIL EN EL TEMPORIZADOR THRO. Figura 10.9 Cédlgo del nterrupotin para estado de alta impedancia tran alto (bloque 13). Si las dos pruebas son positivas, entonces se puede condluir que tie- neun estado dealtaim- pedancia, figura 10.7. En ese momento seponeun unoen el bit 1 del registro BANDE- RA (bloque 14), se po- ren en los puertos los bits necesarios para vi- sualizar la letra Hy se hrabilita al simerO para que genere suinterrup- Gién (bloque 16), esto se hace en el programa al activar el bir2 del re- gistro INTCON. Sialguna delas dos condiciones no se cum- ple, puede esperar un estado I6gico normal, figura 10.8, se pone en cero el bie | del registro BANDERA (bloque 17) y secoloca de nue- vo RB7 en cero para que el sistema funcio- ne normalmente. Mii mri inate utina de interrupcién Si_UNOCERO Bomar TIM or cette conta etd Figura 10.10 Diagrama de fyjo de a ‘tine de interupcién Ahora puede evaluar el esta- do de la punta de prueba (bloque 18) preguntando por l estado del pin RBG, esto se hace en la sec in D del programa; sein el es- tado de ese pin, el programa lo conduce a la rutina ALTO (si la ‘entrada esté en alto) o a la rutina BAJO silo que detecté fueun cero, logico, bloque 19. En cada una de cas rutinas e activa o desactiva el LED indicadory se genera una se- fal en frecuencia PWM que ac- ionael zumbador. Finalmente re- gest ala rutina loop para que se repita el proceso completo. Rutina de interrupcién La rutina de interrupcién se en- carga de generar la frecuencia de salida para el zumbador y el LED indicador. Ella se puede dividir cen tres partes: una para el estado legico alto, otra para el estado bajo y otra para el estado de alta impedancia, Cada una de estas partes debe generar una frecuen- cia distinta. La porcién para el estado de alta impedancia la pue- de apreciar en el cédigo de la fi- gura 10.9 y en el diagrama de flujo de la figura 10.10 se en- cuentra el esquema general de cesta rutina, La primera opera- cién que debe hacer es pregun- tar por el estado del bit 1 del re- gistro BANDERA (bloque 20) para determinar sise ha entrado a esta rutina después de haber cocurrido un estado de alta im- pedan se detecté el estado de alta im- pedancia este birse puso en uno). (recuerde que cuando Cuando seha deteetado un estado de alta impedancia se ac- (NOCER BTFSC BANDERA, TO UNO) SSF ESTADO, 5 SCF INTCON, 2 Scr ESTADO, 5 ST NO HAY ESTADO OE ALTA INPEDANCTA, SE VERIFICA EL BIT 0 DEL REGISTRO BANDERA PARA. DETERMINAR ST. SE HA LEIDO UN CERO UN UNO. SI_SE HA LEIOO UN. CERO (BIT ERO -> @), SE MANDA LNA SERAL DE PAM WaCIA !L_ZUMBADOR A UNA FRECUENCTA MENOR QUE LA DE 2. YOr A LA PAGINA 2 BORRO LA BANDERA DE INTER. DEL THRO WUELVO A LA PAGINA 0. CCONFTURD UN PORCENTIDE DE CICLO UTIL Figura 10.11 Iterrypcién pare estado lgico bajo tiva el timerO para que cuente los pulsos de reloj internos de Ja méquina; después de un tiem- po determinado, el timerO se lle- na y se desborda, originando el llamado a esta rutina y la acti- vacién de la bandera TOIF (bit 2 del registro INTCON). Cada que ocurre este llena- do el programa invoca esta rutie na en la cual se cambia el estado de la salida en los pines 4 y 5 del puerto B, y se limpia la bandera TOIF (bloque 22) para que la rutina de interrupcién pueda ser invocada de nuevo. Debido aque Ja interrupci6n se da tan répida- mente esta rutina se invoca a una rata muy alta, de esta manera se origina una seal cuadrada lama- wo SF pons, pLeD STFSS PORTS, 5 esr PORTE, BTFSS PORTE, BSF PORTE, G 4 4 BIFSC PORTS, 5 BCr PORTS, 5 BTFSC PORTE, 4 4 cr PORT, BSF ESTADO, 5 BCE INTCON, 2 Bcr ESTADO, 5 da PWM. Siel bit 1 del re tro BANDERA no esta en uno, el programa lo Hleva a la etiqueta UNOCERO en don- de se detecta sila interrupcién se provocé para un estado 1é- gico alto 0 para un estado 1é- gico bajo. Esto se hace pregun- tando por el bit cero del regis- tro BANDERA, el cual fue configurado previamente para cada estado ances de activar la interrupcién (bloque 23). Para cada uno de los dos casos debe enviar un PWM a distintas frecuencias, borrar la bandera TOIF y luego retor- nar al programa, bloques 23- 26 del diagrama de flujo y fi- guras 11 y 12. 4 SE SE Wa DETERUNADD UN ESTADO LOGICO ALTO, ‘SE MANDA UNA NUEVA SENAL DE PM HACIA EL ZIMBADOR, 8 UNK NUEVA. FRECUENCIA MAYOR A {Ut EWIADA PARA EL. ESTADO DE ALTA } IMPEDANCTA, | NOTE QUE ESTA RUTINA DE INTERRUPCION SE ( DIVIDTOD EN TRES SUERUTIMS, CADA UNA DE LAS ‘CUALES SE ENCARGA DE ENVIAR UNA FRECUENCTA 4} CONETGURO EL PORCENTAJE DE CICLO UTIL EN EL TEMPORIZADOR THRO Figura 10.12 Iterrupcién para e estado lego ato curso prictcosobr Mcncmnroaioes CIC: & PTC Ensamblaje del proyecto Figura 10.13 Conjunto de componentos Le Se ormnarrcer Gt Tamouroepet grea 20506 ‘cer Depyar se tpn cannon Of seorisyos | eegeeenem Z sccomrbe qurce | SO aE fametelecs 1} Gyor Sitemeter . | ensamoiaria pune |}? Graeme rie sig |g Mpeadeesteprecte, |B, Rommet my poste a ‘mates eka Este proyecto constiuye una valiosa herramventa para la reparacn _ desarrollo de proyectos electrénicos que debe tenese en el laoratoro de electrinica de cualquier persona. Para el ensamblae de a tarjeta tga en cuenta los siuientes pasos: Paso 1 Con unalamtre deigah, instal y suede ls puentes marcados en ‘2 circuit impeso, instal y suelde también fas resistencias, la base ‘61 cod rectficador. Figura 10.14 ego instal y suelde el transistor NPN de propésito general 01 Figura 10.15, Paso 3 Insta y svelde el dodo LED (02), el asply de siete segmentos catodo connin DISP1) ye ranscictorpiezoeléctrico (B21). Figura 10.16 Paso4 Instaley suelde os tes condensadores cerémicos C2, C3 y C4 Figura 10.17 Paso 9, Prusbas thales : Ebene Smo 2 ee 1 fn cmos 690 1 ‘min sto 1 (msn an oe ta nope yma A Paso 5 Insta y suede ef condensadorelectrolico (C2) y el cristal de cuarzo de 4 MHz (XT?) Figura 10.18 Paso 6 Instale y suede el bome de canenén para la entrad del cable ce almentacon. Figura 10.19 Paso 7 Por uitimo se debe soldarla punta de prueba metdlca por el ‘extrem con forma de punts de circuit moreso y por su ado de cobre, para ele, use pias y abundantesoldadura Figura 10.20 _ G “Aparencia fina de a punta lgica completamente ensamblada Figura 10.21 Para almentar cco debe usrse un fuente CC entre 3.56.5, una ver almentaco debe vsualzare la letra H ene splay indlcando el estado de ata mpedancia, yl LED iuminaré moduiado al 90% do sy brio total. Cuando la puna sea llevada aun rive lgico bal, el LED se apagard y el dspay wsualzad un 0, por el cotraro cuando a nivel desu punta sae alto (és de 2.5, el LED se fuminaréplenament ye tisplay restara un 1. Accionalmente el crcuto cuenta con un Buzzer que incca con dos tonas los estados alto y baja. © GIT: eps soe ert

También podría gustarte