Electronica.pdf

March 30, 2018 | Author: emerson | Category: Rectifier, Logic Gate, Computer Hardware, Digital Technology, Digital & Social Media


Comments



Description

interactivoen esta edición Rito Mijarez Castro ELECTRÓNICA ELECTRÓNICA RITO MIJAREZ CASTRO PRIMERA EDICIÓN EBOOK MÉXICO, 2014 GRUPO EDITORIAL PATRIA info editorialpatria.com.mx www.editorialpatria.com.mx Dirección editorial: Javier Enrique Callejas Coordinadora editorial: Estela Delfín Ramírez Supervisor de prepensa: Gerardo Briones González Diseño de portada: Juan Bernardo Rosado Solís Diseño de interiores: Visión tipografíca editores Ilustraciones: Mosto diseño & Seditograf Fotografías: © Thinkstockphoto Revisión técnica: Alex Polo Velázquez Universidad Autónoma Metropolitana-Azcapotzalco Electrónica Derechos reservados: © 2014, Rito Mijarez Castro © 2014, GRUPO EDITORIAL PATRIA, S.A. DE C.V. Renacimiento 180, Colonia San Juan Tlihuaca, Delegación Azcapotzalco, Código Postal 02400, México, D.F. Miembro de la Cámara Nacional de la Industria Editorial Mexicana Registro núm. 43 ISBN ebook: 978-607-438-910-4 Queda prohibida la reproducción o transmisión total o parcial del contenido de la presente obra en cualesquiera formas, sean electrónicas o mecánicas, sin el consentimiento previo y por escrito del editor. Impreso en México Printed in Mexico Primera edición ebook: 2014 Contenido 0 Introducción 1 Por qué este capítulo es el número cero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Qué tiene de atractivo y “cool” este libro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Electricidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Conductores, aislantes y semiconductores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Sistemas eléctricos y analogías con otros sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 Visualización de componentes eléctricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 La resistencia es análoga a la fricción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 El inductor es análogo a la masa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 El capacitor es análogo al resorte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Combinación de elementos, circuitos más complejos . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Es la ley: la ley de Ohm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Potencia eléctrica. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Divisor de voltaje. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 El capacitor se opone a los cambios de voltaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 El inductor se opone a los cambios de corriente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Circuitos en serie y en paralelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Cómo es que la corriente es la misma en todas las partes de un circuito en serie . . . . . . . 18 DATOS IMPORTANTES DEL CAPÍTULO 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 PROBLEMAS DEL CAPÍTULO 0. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1 Dispositivo semiconductor básico: el diodo 23 Semiconductores intrínsecos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Semiconductores extrínsecos o dopados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Semiconductores tipo n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Semiconductores tipo p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 Construcción del diodo semiconductor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Polarización directa del diodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 V CONTENIDO Polarización inversa del diodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Corriente de fuga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Curva característica voltaje-corriente de los diodos . . . . . . . . . . . . . . . . . . . . . . . . . . 30 Voltaje de ruptura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Resistencia de CD de un diodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Aproximaciones de los diodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Circuitos rectificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Rectificador de media onda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Rectificación filtrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 Reguladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Diodos de propósito específico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Diodos emisores de luz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 Diodo Zener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 PROBLEMAS DEL CAPÍTULO 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 DATOS IMPORTANTES DEL CAPÍTULO 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 2 El activo transistor 53 Construcción del transistor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Polarización del transistor BJT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 Regiones de operación de los transistores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 Región de saturación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Región de corte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Región activa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Región de ruptura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Valores máximos de operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Potencia de disipación Pd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Factor de reducción de Pd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Voltajes de ruptura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Verificación del transistor con un óhmetro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Transistor como interruptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Transistor Darlington . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Transistores FET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Tipos de FET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Construcción del transistor JFET. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 Operación y características principales del transistor JFET . . . . . . . . . . . . . . . . . . . . . . . 74 Transistor FET como interruptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 Transistores como amplificadores lineales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 DATOS IMPORTANTES DEL CAPÍTULO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 PROBLEMAS DEL CAPÍTULO 2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 VI ELECTRÓNICA • MIJAREZ CONTENIDO 3 El mágico amplificador operacional 81 Concepto de retroalimentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 Teoría importante de los OP AMPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 Amplificadores diferenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 Análisis de CD/CA y ganancias del amplificador diferencial . . . . . . . . . . . . . . . . . . . . . 89 Análisis de CD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 Análisis de CA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Ganancia de voltaje diferencial, A d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 Ganancia de voltaje de modo común, ACM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 Razón de rechazo de modo común (CMRR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 El amplificador operacional y sus características principales . . . . . . . . . . . . . . . . . . . . . 94 Ganancia de voltaje de lazo abierto, AVOL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 Corrientes de polarización de las entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Voltajes de entrada de offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Impedancia de entrada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Impedancia de salida: oscilación de salida vs. resistencia de carga . . . . . . . . . . . . . . . . . . . 99 Respuesta a la frecuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 Slew rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Settling time. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Corriente de corto circuito . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 Razón de rechazo de modo común (CMRR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 Razón de rechazo de la fuente de alimentación (PSRR) . . . . . . . . . . . . . . . . . . . . . . . . . 104 Ruido. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 OP AMP reales y su selección . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107 Circuito básicos del OP AMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 El amplificador inversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 Ganancia de voltaje de lazo cerrado ACL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Impedancia de entrada, ZENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 Impedancia de salida, ZSAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 El amplificador no-inversor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Impedancia de entrada, ZENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Impedancia de salida, ZSAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Seguidor de voltaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Ancho de banda del OP AMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 Producto ganancia-ancho de banda de lazo cerrado . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 Circuitos populares con OP AMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 El amplificador sumador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Amplificador diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116 Amplificador de instrumentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 Filtros activos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Filtro pasa-bajas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 Filtro activo pasa-altas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 Convertidores de voltaje a corriente y de corriente a voltaje . . . . . . . . . . . . . . . . . . . . . 125 Convertidores de voltaje a corriente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 grupo editorial patria® VII . . . . 181 VIII ELECTRÓNICA • MIJAREZ . . . 175 Restas usando circuitos sumadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Circuito comparador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CONTENIDO Convertidor de corriente a voltaje . . . 173 Minitérminos y maxitérminos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Compuerta inversor (NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 Contar en decimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Cargas conmutadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Decodificadores . . . . . . . . . . . . . . . . . . . semillas… y los sistemas numéricos” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . sumadores y decodificadores . . . . . . . . 171 Compuerta NOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Circuito Schmitt trigger no simétrico. . . . . 172 Compuertas XOR y XNOR . . . . . . . . . . . 166 Combinación de dígitos y peso de columnas en hexadecimal . . . . . . . . . . . . . . . 160 Sistemas numéricos de posición . . . . . . . . . . . . . . . . . . . . . . . . 129 Circuito comparador Schmitt trigger. . . . . . . 154 4 La maravillosa electrónica digital 159 “Contando con dedos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Lógica de la electrónica digital . . . . . . . . 132 ADC y DAC las interfaces entre el mundo digital y el mundo analógico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163 El sistema númerico binario. . . . . . . . . . . . . . . . . 151 DATOS IMPORTANTES DEL CAPÍTULO . . . . 172 Simplificación de circuitos. . . . . . . . . 165 Contar en hexadecimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Convertidor digital a analógico (DAC) . . . . . . . . . 163 Contando en binario . . . . . . . . 170 Compuerta NAND. . . . . . . . . 135 Convertidor analógico a digital (ADC) . . . . . . . . . . . . . . . . . . . . . . . 167 Conversión entre números hexadecimales y binarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 Sumadores. . . . . . . . . . . . . . . . . 168 La compuerta AND . . . . . . . . . . . . . 169 La compuerta OR . . . . piedras. . . . . . . . . . . . . . . . 141 Las misteriosas tierras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Términos técnicos de la interface analógica-digital-analógica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146 Tierras digitales y analógicas . . 165 El sistema numérico hexadecimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 PROBLEMAS DEL CAPÍTULO 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 Corrimiento del voltaje de referencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 Aprendiendo las tablas de multiplicar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Consideraciones y recomendaciones generales . . 177 Multiplicaciones usando sumadores . . . . . . . . . . . 181 Celdas de memoria. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 Suma y resta en complemento a 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . memorias y máquinas de estado . . 126 Circuitos OP AMP con diodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 Principales tecnologías digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Margen de ruido en familias TTL . . . . . 216 Microprocesadores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Usar alambres para representar números . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 Memorias no volátiles . . . . . . . . . . . . . direcciones y control . . . . . . . . . . . . . . 206 Niveles de voltaje de entrada y salida y margen de ruido en la familia 74 AC CMOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Recapitulando. . . . . 190 Dispositivos de tercer estado . . . . . . . . . . . . . . . . . . . . . . . . . 222 Buses de datos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 Ciclo de instrucción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 Latches tipo D . . . . . . . . . . . . . . . . . . . . . 223 Desmitificando a la CPU . . . . . . . . . . . . 189 Dispositivos de tercer estado y latches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 Flipflops . . . . . . . . . . . . . . 203 Configuraciones de salida en las familias TTL . . . . . . . . . . . . . . . . . . . 209 Retardo de propagación . . . . . . . . . 217 Frenéticos por las computadoras digitales. . . . . . . . . . . . . . . . . . . . . . . . . 226 Calculadora lógica . . . . . . . . . . . . . 215 Esbozo histórico de los microprocesadores y microcontroladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Niveles de entrada y de salida de las familias TTL . . . . . . . 203 Tecnologías CMOS . . . . . . . . . . . . . . . . . . . 200 Tecnologías TTL . . . . . . . . . . . . . . . . . . 208 Disipación de potencia. . . . . . . . . . . . . . . . . abanico de salida. . . . . . . . . . 195 Máquinas de estado y dispositivos lógicos programables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212 DATOS IMPORTANTES DEL CAPÍTULO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207 Parámetros relevantes para las familias TTL y CMOS . . . . . . . . . . . . . . 214 5 El popular microcontrolador 215 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 Otras tecnologías . . . 217 Microcontroladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Dispositivos lógicos programables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Máquinas de estado . . CONTENIDO Celdas de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Señales de reset y de reloj . . . . . . . 208 Consumo . . 185 Memorias SRAM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 Memorias volátiles . . . . . 213 PROBLEMAS DEL CAPÍTULO 4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 La magia del tercer estado de los buffers . 209 Abanico de entrada. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 grupo editorial patria® IX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . cargas e interconexión de familias lógicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 Dispositivos de memorias y puertos de entrada y salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241 Programación simple de una CPU o μP . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Acumulador . . . . . . . . . . EA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Registros con funciones especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 Interfaz con dispositivos periféricos . . . . . . . 285 Acceso a la memoria externa de código . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 Lógica para complementar bits individuales . . . . 266 Arquitectura Princeton o Von Neumann . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 ALU . . . . . . 318 Etiquetas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . símbolos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 Mercado en movimiento: microcontroladores de 8 bits . . . . . . . . . . . . 302 Directivas. . . . 316 Directivas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . software y firmware . . . . . . 318 X ELECTRÓNICA • MIJAREZ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 Desarrollo de programas sencillos en lenguaje ensamblador . . . . . . . . . . . . . 231 Organización de memoria y decodificación de direcciones . . . . 281 Puertos del MCS-51 . . . . . . . . . . . . . . . . . . . . 265 ¿Qué es un microcontrolador? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Organización de memoria de datos interna . . . . . . . . . . . . . . . . . 285 Señal para acceso externo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291 Arquitectura de software del 8051 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 Modos de direccionamiento del MCS-51 . . . . . . . 268 Microcontroladores de 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Otros registros de la CPU . . . . . . . . . . . . . . . . . . . 259 Hardware. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Acceso a la memoria externa de datos . . . . . . . . . . . 257 Programa o software . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Organización de memoria del 8051 . . . . . . . . . . . . . . . 316 Símbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 Corrimiento de bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Arquitecturas de procesadores . . . . . . . . . . . . . . . . 265 Microcontroladores de 8 bits . . . . . . . . . . . . . . . . . . . . 271 CPU del 8051 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CONTENIDO Lógica para establecer bits individuales en 0 lógico . . etiquetas y comentarios . . . . . . . . . . . . . 279 Descripción de terminales o pines . . . . . . . . . . . . . . . . . . 16 y 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 257 Lenguajes de máquina y lenguaje ensamblador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229 Lógica para establecer bits individuales en 1 lógico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 Arquitectura Harvard . . . . . . . . . . . . . . . . . . . . . 274 Ciclos de máquina . . . . . . . . . . . . . . . . . . . . . . . . . 233 Decodificación parcial o total . 270 El popular microcontrolador 8051 . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 Clasificación de instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . 283 ALE y PSEN . . . . 278 Organización de memoria de programa externa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285 Expansión de memoria y dispositivos de E/S . . . . 276 Registro PSW . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287 Acceso a periféricos (puertos de E/S) mapeados a memoria . . . . . . . . . . . . . . . . 271 Arquitectura de hardware del microcontrolador 8051 . . . 270 Criterios para seleccionar un microcontrolador . . . . . . . . . . . . . . . . . . . . . . 389 Futuro del 8051 y los microcontroladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359 Puerto serie . . . . . . . 370 Ejemplos de programación del puerto serie . 375 Modos de ahorro de energía . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 Activación del modo idle . . . 342 Particularidades de las interrupciones del 8051. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339 Periféricos internos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CONTENIDO Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358 Inicialización y ABPRA con los temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361 Registro SBUF y registro SCON . . . . . . . . . . . 343 Interrupciones externas . . . . . . . . . . . . . . 328 Estrategia de construcción y pruebas de un dispositivo electrónico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Formato de un programa en lenguaje ensamblador del 8051 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Más sobre los archivos LST y HEX. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327 Ejecución de programas usando un sistema mínimo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319 Programación en lenguaje ensamblador. . . . . . 385 Interfaces de E/S seriales . . . . . . . . . . . . . . . . . . . . . . . . . . 358 Cálculo y lectura de los registros TLx/THx . 381 Activación modo power down . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324 Ejecución de programas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . símbolos y llamadas a subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384 Interfaces sencillas de hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368 Temporizador 1 como reloj de velocidad en bauds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 Suma. 337 Operaciones de control y transferencia de datos . . . . . . . . . . . . . . 391 DATOS IMPORTANTES DEL CAPÍTULO . . 382 ABPRA para hacer uso del comparador . . . . . . . . . . . . 325 Ejecución de programas usando el simulador TS Controls . . . 356 Fuentes de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348 Contadores/temporizadores . . . . . . . . . . . . . . . . . . . . . . . . . . 368 Selección de velocidades en bauds del puerto serie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 Comunicación multiproceso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 Interfaz RS232 . . . . . . . . . . . . 353 Modos de operación . . . . . . . multiplicación y división . 382 Arquitectura del AT89C2051 . . . . 330 Ejemplos sencillos de procesamiento y control . . . . . . . . . . . . . . . . . . . . . . . . . . . . ajuste a decimal. . . . . . . . . . . . . . . 361 Modos de operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . resta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388 Interfaces de hardware para E/S digitales y analógicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396 grupo editorial patria® XI . . . . . . . . . . . . . . . . . . . 392 PROBLEMAS DEL CAPÍTULO 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371 ABPRA para el puerto serie . . . . . . . . . . . . . . . 331 Uso de directivas. . . . . . . . 386 Interfaz USB . . . . . . . . . El capítulo 0. solo se estudia para pasar el examen. La electrónica es un campo que cambia vertiginosamente. El OP AMP es uno de los bloques fundamentales en el diseño electrónico con el cual se pueden realizar numerosas aplicaciones. en el capítulo 3 se estu- dian con detalle las características teóricas y prácticas de los CI denominados amplificadores opera- cionales (OP AMP). debido a que puede configurarse en una gran XIII . Como consecuencia. debido al espacio asignado a este libro se incluyeron en el CD-ROM que acompaña a este libro. de los arreglos de transistores Darlington y de los transistores tipo FET. muchas veces se sacrifican los fundamentos de A y B haciéndo- los más breves o menos claros. acompañado de grandes dosis de café. los contenidos de las universidades cada vez son más ambiciosos e incluyen herramientas computacio- nales. con una tendencia a participar en múltiples actividades deportivas. in- geniería mecatrónica y diversas variaciones de carreras de electrónica en diferentes universidades del país. Por otro lado. Se aborda la construcción básica de este dispositivo y sus características de conducción unidireccional y sus principales aplica- ciones. sus principios fundamentales persisten. algunos temas permanecen confusos y farragosos. principalmente operando como interruptores. culturales. y una gran cantidad de tópicos que los maestros tratan de cubrir. sin embargo. Cabe mencionar que si un personaje como yo. sin embargo. Muchas veces me he encontrado con in- genieros graduados o con estudiantes cursando los últimos semestres de la carrera con una falta de entendimiento de los principios básicos de electrónica o con un olvido casi completo de temas pri- mordiales. significa que muchos estudiantes pue- den hacerlo. Tratando de mantener el paso de una industria globalizada y en cambio constante. y capaz de distraerse con el paso de una mosca. Prefacio Las intenciones de este libro son proporcionar los fundamentos de electrónica. con componentes cada vez más rápidos. de menor tamaño y menor consumo de potencia. El objetivo de este libro no es revolucionar el sistema educativo. En este capítulo se analizan las características de construcción y de operación de los transistores bipolares. se dan casos en los que la carga de materias es tan grande que. sociales. Procurando llegar al tema Z. Para realizar funciones de amplificación. como programas de simulación. El capítulo 1 versa sobre el dispositivo semiconductor básico: el diodo. etc. más que como amplificadores. La razón de lo anterior es que en la actualidad rara vez se utilizan los transistores como amplificadores. la introducción. BJT. lo cual ofrece nuevos retos y oportunida- des. pudo entender los bloques de construcción fundamentales de la electrónica. los cuales se encuen- tran en los programas de estudio de electrónica básica en las carreras de ingeniería electrónica. El capítulo 2 trata del ingredien- te principal de todo circuito electrónico: el activo transistor. No hay nada como ver la cara de un estudiante cuando entiende un concepto o construye un circuito del cual tiene cabal control. La teoría básica de los circuitos eléctricos y del análisis de los circuitos eléctricos. recordando el tiempo en que fui estudiante. aun cuando se asume un escaso. se incluyen porque son pilares del estudio de la electrónica. responder lo que el maestro quiere ver y terminar el tema sin una pizca de conocimiento útil. incluyendo la descripción de los diodos LED y diodos Zener. lo cual permita tener un entendimiento de los cir- cuitos a construir y de las posibles aplicaciones de los mismos. describe qué tiene de atractivo y “cool” este libro y proporciona los conocimientos de circuitos eléctricos y principios básicos de los semiconductores.. sino tratar los temas básicos y pro- vechosos de la electrónica de una manera clara. pero mínimo conocimiento de esos temas. principalmente como antesala de los sistemas basados en micro- procesadores y microcontroladores. Además. Por último. restar. XIV ELECTRÓNICA • MIJAREZ . com- paración de señales y funciones de transferencia. En el capítulo 5 se hace uso de una calculadora con operaciones lógicas e instrucciones de transferencia de datos básicas. Los conceptos aprendidos sirven como preparación para entrar al mundo de los microcontroladores. sería. además de arrogante. Además. este capítulo estudia los conceptos y teoría del mágico Amplificador Operacional. en este capítulo se presenta un enfoque práctico llamado el ABpra. como una caja mágica. orientado para aprender basándonos en prácticas de laboratorio. por no decir lenta. para llevar a cabo muchas operaciones tales como amplificación. El propósito es proveer al lector las ha- bilidades claves de la electrónica. y después se abordan los conceptos fundamentales de los microprocesadores por medio de un microprocesador modelo. pero también incluiremos prácticas (ver el CD-ROM) usando un simulador comercial. Como mi cerebro trabaja de manera escalonada. Sí. PREFACIO variedad de formas. El capítulo 4 esclarece los fundamentos de cómo se lleva a cabo la maravillosa electrónica digital. cada tema va de etapa en etapa. con el OP AMP se puede sumar. Espero disfruten el libro y jue- guen bien. en forma similar a los bloques de construcción tipo Lego. el capítulo 5 desmitifica al popular microcontrola- dor. que posteriormente le permitirá realizar maravillosos instrumentos. el cual contiene los elementos principales de la mayoría de los microprocesadores. Este texto no tiene la intención de ser una guía del estado actual de la electrónica. Por último. así como algunas de sus aplicaciones cardinales considerándolo como una caja negra o mejor dicho. recomendando no pasar a la siguiente sin entender la previa. En este capítulo se presenta un esbozo histórico de los microprocesadores y de los microcontroladores. la cual se incluye en el CD que acompaña este libro. para mí. ninguno de mis estudiantes se ha que- jado de esta metodología. A fin de cuentas la palabra Lego proviene de la expresión Danesa Leg godt. integrar o diferenciar señales. imposible. que una vez compren- didas se pueden aplicar a cualquier microcontrolador consultando su manual de usuario y hojas técnicas. que significa “jugar bien”. filtrado. en este capítulo se describen las características más importantes de hardware y software de los microcontroladores de la familia MCS-51 de Intel. Estas prácti- cas enfatizan conceptos simples pero importantes del microcontrolador 8051. Con más de quince años dando clase en las materias de electrónica y de microcontroladores. La maestría en Instrument Design and applications por el Instituto de Ciencia y Tecnología de la Universidad de Manchester (UMIST) y el grado de doctor por la Escuela de Ingeniería Eléctrica y Electrónica de la Universidad de Manchester. México. ambas en el Reino Unido. Tiene en colaboración una treintena de artículos en conferencias. revistas científicas y capítulos de libros. y dos patentes pendientes: una en México y otra en Estados Unidos. cuenta con cuatro patentes otorgadas: tres en México y una en el Reino Unido. Es investigador de tiempo completo del Instituto de Investigaciones Eléctricas (IIE) en Cuer- navaca. Acerca del autor Rito Mijarez Castro recibió el grado de ingeniero en electrónica y comunicaciones de la Universidad Autónoma de Zacatecas (UAZ). Es miembro del Sistema Nacional de Investigadores. y maestro de cátedra del Instituto Tecnológico y de Estudios Superiores de Monte- rrey (ITESM) campus Cuernavaca. XV . México. . por ayudarme a mejorar como maestro. Arturo Pérez y Ricardo Cojuc. Mención especial para Javier Antunez Estrada. XVII . editora de ingeniería de una editorial con mucha tradición en México como es la Editorial Patria. Gracias a mis colegas del ITESM campus Cuernavaca. ahora empresa del grupo Hachette Livre. sin su apoyo. mi más profun- do agradecimiento para Eva. y al Lic. Estela Delf ín. Joaquín Rodríguez Rodríguez y Javier An- tunez Estrada por compartir su conocimiento a lo largo de todos estos años. Fernando Ramírez Garduño. por su motivación y paciencia durante todos estos meses. Carlos Lara por la elaboración del CD-ROM que acompaña a este libro. José Martín Gómez López. Agradecimientos Mis más sinceras gracias para la Ing. simplemente este libro no hubiera sido posible. y por su tole- rancia durante los innumerables momentos que deje de compartir con la familia mientras escribía acompañado de mis pensamientos y mi café. David Pascacio Maldonado. Roberto Castán Luna. Por último. Mónica Larre. Deseo expresar mi gratitud a mis colegas del Instituto de In- vestigaciones Eléctricas: Gilberto Vidrio López. que siendo del área de informática implementó mis ideas de la calculadora digital y fórmulas que se incluyen en el CD-ROM del libro. por su entusiasmo y paciencia durante la redacción del libro. Gracias también a los revisores por sus comentarios y consejos expertos. . Dedicatoria Para Eva que envuelve todos mis días y mis noches. XIX . porque a sus once años sabe que las historias hechas tinta tienen olor y sabor. que es mi sed y mi agua en esta aventura mara- villosa que es la vida. y para Marlon. Para Marvel que huele los libros nuevos y sonríe. que a sus tres años. deja alegría y color por todos los rincones de la casa. . los cuales nutren los sistemas y circuitos electrónicos y que se asume que la mayoría de los estudiantes de electrónica conoce. de manera general. X Qué es la electricidad. o leer el presente capítulo para descubrir si la explicación de lo que es electri- cidad se expresa de manera novedosa. POR QUÉ ESTE CAPÍTULO ES EL NÚMERO CERO La idea de iniciar este libro con el capítulo cero es doble. 0 Introducción Las materias de electrónica asumen un conocimiento previo de circuitos eléctricos. no obstante. los principios básicos de la electricidad. X Serie y paralelo. X Es la ley. al- gunos conceptos pueden no estar muy claros o estar por completo enterrados en el baúl del olvido. X Conductores. La segunda. La primera es mostrar. Si usted es de este grupo. X Qué tiene de atractivo y “cool” este libro. puede brincarse esta sección e iniciar en la sección Análisis de circuitos eléctricos que se encuen- tra en el CD-ROM. X El divisor de voltaje. En este capítulo vamos a aprender: X Por qué este capítulo es el número cero. X Sistemas eléctricos y analogía con otros sistemas. se debe a que en sistemas electrónicos digitales 1 . aislantes y semiconductores. la ley de Ohm. muevan motores y energicen computadoras. A través de la historia se han encontrado formas para utilizar estos electrones y hacerlos que enciendan lámparas. sencilla y fácil de seguir. QUÉ TIENE DE ATRACTIVO Y “COOL” ESTE LIBRO Se puede encontrar una gran cantidad de libros con contenidos particulares de electricidad. formado por protones y neutrones. con un enfoque práctico y con palabras que permitan hacer más entendi- bles los conceptos. el movimiento de cargas. como yo todavía no pertenezco a este grupo de personas. Una de las técnicas conocidas es el ABPro. tienen relación unos con otros. electrónica. nos abocaremos al ABPra sugiriendo prácticas a realizar y haciendo uso del CD-ROM que acompaña este libro. diseño lógico. en aplicaciones reales. teléfonos celulares y cientos de dispositivos de los que disfrutamos hoy en día. se tiene que estudiar dónde se encuentran. pero importantes de la electró- nica. los aspectos prácticos no se cubren en un compendio de una manera integral. Los expertos consideran que una de las mejores formas de aprender y de que el conocimiento perdure. decidimos seguir la misma convención en la numeración de los capítulos. se expresan de acuerdo con el sentido que tienen para mí. pero existen equipos para ver grupos de ellos. televisores. todo reunido con una gran cantidad de información útil relacionada con la forma en que la electrónica efectúa su magia. posteriormente. privativo. por tanto. jugosos pedacitos de datos y preguntas y respuestas como entremeses o botanas. el cual he modificado y llamado Aprendizaje Basado en Prácticas (ABPra). electrónica digital. Hasta ahora. la pregunta es interesante y existen personas inteligentes alrededor del mundo debatiendo la definición correcta. todos estos conceptos están relacionados entre sí. entre otros. desafortunadamente. Cambiar el balance de es- tas fuerzas produce evidencia de electricidad. etc. es dif ícil ver un electrón. 0 Introducción y arquitectura de computadoras. Por tanto. y temno. para lo cual llegamos a los áto- mos. permiten construir proyectos interesantes y retadores. basta preguntarle a cualquier estudiante de ingeniería para obtener frases sueltas y palabras masculladas con significados clave. Ahora. estos siguen siendo considerados como partículas muy pequeñas de las cuales se compone la materia y el universo. arquitectura de microcomputadoras. constituyen los bloques que equivalen a las piezas de Lego que. que empiece la diversión y a leer… ELECTRICIDAD La definición de electricidad es una cuestión complicada. no hay evidencia de electricidad debido a que el número de electrones y protones es el mismo. movimiento de cargas. Por ejemplo. La teoría aceptada hoy en día es que el átomo es una partícula constituida por un cuerpo simple compuesto por un núcleo de carga positiva. Espero que las explicaciones faci- liten su entendimiento. las descripciones que se harán a este respecto y a otros temas en este libro. Por tanto. Aprendizaje Basado en Problemas o Proyectos. normalmente se inicia contando. estas principalmente de laboratorio. Un átomo normalmente tiene cantidades iguales de carga eléctrica positiva y negativa. para lo cual se requiere de cierto trabajo o energía para separar los 2 ELECTRÓNICA • MIJAREZ . el movimiento de electrones. arquitectura de microprocesadores y arquitectura de mi- crocontroladores. como les llamamos en México. no tengo intensiones de unirme a este debate. Este texto es bastante atractivo porque juntos descubrimos toda clase de interesantes trozos de conocimiento. sin embar- go. y significa aquello que no se puede dividir o cortar. Algunos de ellos se han convertido en clásicos en las universidades y otros tienen una profundidad y rigor en la f ísica y las matemáticas que parecen haber sido escritos por personas de otro planeta. electrones. Corriente. como veremos más adelante. osciloscopios y otros dispositivos sofisticados que detectan su movimiento y lo que hacen. cancelándose las fuerzas eléctricas y haciendo al papel eléctricamente neutro o exactamente balanceado. En realidad. Estas prácticas enfatizan conceptos simples. Ésta es la razón que motiva a escribir este modesto intento de introducir los aspectos útiles y aplicables de la electrónica básica de una manera integral. indexando y haciendo referencia desde el número cero. rodeado de electrones de carga nega- tiva en distintas capas. Todos los temas son importantes y. el papel de este libro tiene electrones y protones dentro de él. la corriente producida en ciertos materiales. cortar o divi- dir. Aunque los avances científicos han demostrado que los átomos sí pueden dividirse. como multímetros. Siguiendo en este tenor. es por medio de la práctica. Desde la escuela primaria sabemos que la palabra átomo proviene del griego a. es eléctricamente neutro. pero también se incluyen prácticas usando simuladores. Si los electrones son tan importantes. el átomo aún es de hidrógeno. los electrones que residen en las capas se relacionan con niveles o estados de energía. Los círculos mostrados en la figura 0. y se encuentra de manera abundante en la naturaleza. cuando le aplicamos energía a un átomo. Si se añade un neutrón al núcleo. los astrónomos piensan que la única fuente importante de deuterio fue el mismísimo Big Bang.1 muestra los diagramas de un átomo de hidrógeno y uno de cobre. Por ejemplo. Curiosamente. aunque en realidad sus movimientos alrededor del núcleo son en tres dimensiones. Cada combinación estable de electrones y protones hace posible un tipo particular de áto- mo. pero la explicación de sus detalles va más allá del alcance de este libro. Por ejemplo. se puede dar un vistazo a Google o Wikipedia para obtener información complementaria al respecto. Hay capas de diferentes tipos y formas. pero. El deute- rio también se conoce como hidrógeno pesado. el efecto neto de corriente es cero debido al movimiento aleatorio de los electrones. como en el caso de un alambre de cobre.1 Para el caso de los átomos con múltiples electrones. Por tanto. la figura 0. como se muestra en la figura 0. demostrando la estabilidad eléctrica.2. <c\Zkife\jj\dl\m\eXcXiY`kXmXZXek\ MfckXa\ :fe[lZkfi =`^liX'%) Dfm`d`\ekf[\\c\Zkife\jc`Yi\j\eleZfe[lZkfi% 1 Hay otros elementos que tienen isótopos. por sí solo. como el cobre. lo cual es la corriente eléctrica. podemos decir que a los átomos no les gusta perder electrones. Cabe remarcar que en un alambre. pero tiene un peso atómico diferente y se le llama isótopo de hidrógeno.`X^iXdX[\le}kfdf[\_`[i^\efple}kfdf[\ZfYi\% electrones de los protones. a los que los f ísicos han denomi- nado shells u capas. 0 Introducción Ýkfdf[\_`[i^\ef Ýkfdf[\ZfYi\ (\c\Zkie )0\c\Zkife\j (G )0G *. Si se desea. Esta cualidad le permite al cobre conducir electricidad con facilidad.1 son una representación simplificada de la trayectoria de los electrones. Adicionalmente. solo se muestra un electrón alrededor del núcleo. de modo que tan pronto un electrón se libera otro se desliza en su capa. solo un protón es contenido en el núcleo. En el caso del átomo de hidrógeno. El electrón más sencillo de mover de un átomo es el que se encuentra en el estado superior de energía. La cantidad de energía o trabajo necesarios para desprender un electrón depende del tipo de átomo. Cuan- do muchos átomos se encuentran juntos. pero el isótopo de hidrógeno es tan importante que ha recibido su propio nombre: deuterio. cuando se aplica un voltaje a un alambre de cobre.E =`^liX'%( . un electrón libre puede desprenderse. podemos concluir que es el movimiento de los electrones libres el que proporciona la corriente eléctrica en un conductor. grupo editorial patria® 3 . por lo cual se les denomina electrones libres. los electrones de la capa exterior migran fácilmente de un átomo a otro de una manera aleatoria. este fuerza a los electrones libres a moverse en la misma dirección para producir un flujo de corriente. es decir. además de 6 electrones en dos capas. la capa supe- rior de los átomos de carbono puede tener un número máximo de 8 electrones.4a). el cobre es más usado que la plata debido a que es más barato. pero más que un aislante.2 2 Todo el carbono en el universo se produjo dentro de las estrellas. 2 en la capa más cercana al núcleo y 4 en la segunda capa. estos son los casi con- ductores o semiconductores. La figura 0. En general. Sin embargo. Un ejemplo de estos materiales es el átomo de carbono. La diferencia no es el número de cargas. los metales son buenos conductores. Hay materiales que conducen menos que un metal conductor. como lo ilustra la figura 0. etc. El objetivo principal al usar un conductor es que permita que el flujo de corriente eléctrica tenga la mínima oposición. en especial la plata y el cobre. Los mate- riales con electrones que tienden a permanecer en sus capas se denominan aislantes. debido a que no permiten el movimiento fácil de electrones. a ese material se le deno- mina conductor. no está llena. sin embargo. -\c\Zkife\j (+\c\Zkife\j -G (+G -E (+E  X Y =`^liX'%+ I\gi\j\ekXZ`e[\}kfdfj1X ZXiYfef2Y j`c`Z`f% La distribución de electrones en las capas determina la estabilidad eléctrica del átomo. Todos los seres vivos en la Tierra están constituidos principalmente por hidro-carbono (moléculas de hidrógeno y carbono) y agua (moléculas de hidrógeno y oxígeno).3 muestra una representación visual de un material aislante y de un mate- rial conductor. comenzó a convertir los átomos de helio en átomos de carbono y átomos de oxígeno. dióxido de carbono. el cual tiene 6 protones y 6 neutrones en el núcleo. Asimismo. lo cual le da facilidad para combinarse con otros átomos y formar moléculas más grandes. en ese orden. sí. Cuando una estrella cambió todos los átomos de hidrógeno en helio. por ejemplo monóxido de carbono. sino la facilidad con la cual se pue- dan mover. 8`jcXek\ :fe[lZkfi =`^liX'%* <e\cdXk\i`XcX`jcXek\#cfj\c\Zkife\j\jk}e]l\ik\d\ek\X[_\i`[fjXjljfiY`kXc\j2 \e\cZfe[lZkfi#cfj\c\Zkife\j\jk}ed}jc`Yi\j% Es importante hacer notar que tanto en los materiales conductores como en los aislantes existe el mismo número de cargas positivas y de cargas negativas. grandes cantidades de carbono se combinan con oxígeno. que son considerados de los mejores. aislantes y semiconductores Cuando los electrones de un material se pueden desplazar con facilidad de un átomo a otro. debido a sus propiedades. ¡somos producto de las estrellas! 4 ELECTRÓNICA • MIJAREZ . 0 Introducción Conductores. cuarzo y arcilla. por el movimiento de los electrones hacia los potenciales positivos y por el movimiento de los huecos hacia los potenciales negativos. Pero nos estamos adelantando. El mismo fenómeno sucede con un circuito eléctrico. como el diamante y el grafito. se presenta como arena. 0 Introducción Los átomos de carbono pueden tener varias formas estables. esto lo veremos en las uniones P-N que forman los diodos. Entre más grande es el voltaje. en su estado natural. esto quiere decir que cada átomo de silicio comparte los cuatro electrones de su capa superior con otros cuatro átomos de silicio. se permite que un voltaje fuer- ce o empuje los electrones a través de un alambre conductor y genere la luz que ilumina. Cuando se abre el grifo. con lo cual se facilita ganar o perder un electrón. no obs- tante. SISTEMAS ELÉCTRICOS Y ANALOGÍAS CON OTROS SISTEMAS En un circuito eléctrico. lo importante del carbono es que se encuentra en el mismo grupo que los átomos del germanio y el silicio. El átomo de silicio presenta enlaces covalentes. como lo ilustra la figura 0. Algunos libros de texto usan el término fuerza electromotriz para referirse al voltaje. luz o voltaje. dejando un hueco (el espacio que ocupaba el electrón). Una analogía bastante ilustrativa es lo que sucede con el agua en una tubería. por supuesto. se rompen los enlaces y se libera un electrón por cada enlace roto. tiene una resistencia que se mide en ohms y se considera como un peso o carga eléctrica. la fuerza disponible para mover los electrones es mayor.5. Cada dispositivo conectado a un circuito eléctrico ofrece una oposición al flujo de electrones. los cuales se utilizan ampliamente para el diseño y la fabricación de transistores y otros componentes semiconductores. entre otros. cierta cantidad de presión de agua fuerza al agua de la tubería a salir. Sin embargo. Esta representación se mues- tra en la figura 0.6. la mayoría de los dispositivos semiconductores se hacen con base en el silicio. como calor. se colocan ciertas impurezas en los enlaces. :fii`\ek\^\e\iX[X\ecfjj\d`Zfe[lZkfi\j`ekiˆej\Zfj% De esta manera se genera la corriente eléctrica en los semiconductores. considerando que no esté congelada. pero a últimas fechas se descubrió otra forma llamada fulereno o fullereno. Cuando se usa el silicio como semiconductor extrínseco. A los fulerenos esféricos se les llama buckyesferas y a los cilíndricos buckytubos o nanotubos. El silicio existe de manera abun- dante en la corteza terrestre. esto es. es decir. cuando se enciende la luz de una lámpara. Cuando se utiliza el silicio como semiconductor intrínseco. grupo editorial patria® 5 . que se ha hecho muy popular en investigaciones químicas por su versatilidad para la obtención de nuevos compuestos con forma de esfera. nos estamos desviando. J` J` J` ?l\Zf J` J` J` <c\Zkie J` J` J` =`^liX'%. al aplicarse cierta forma de energía ex- terna. para encontrar su estabilidad o balance. elipsoide o cilíndrica. la fuerza que hace que los electrones se muevan es el voltaje. La figura 0.7 muestra esta relación de semejanzas. que provee la trayectoria para que el agua fluya. la batería. tienen un entendimiento intuitivo que han desarrollado con el paso del tiempo. la fuente de agua y la lámpara. a fin de crear un entendimiento intuitivo de un circuito.3 La razón principal 3 He conocido ingenieros que son buenos para detectar fallas en los circuitos.7. y el agua en la fuente. un circuito simple de fluidos. =l\ek\[\X^lX C}dgXiX =claf :fii`\ek\ Gi\j`e MfckXa\ 9fdYX 9Xk\iˆX " Æ X Y =`^liX'%. Por otra parte. la persona que lo usó era mi jefe de proyecto. Un término apropiado sería intuición educada. y la primera vez que lo escuché no tenía mucho de haber egresado de la universidad. 0 Introducción Gi\j`e[\X^lX 8^lXXkiXm„j[\leklYf MfckXa\ <c\Zkife\jXkiXm„j[\leZXYc\ =`^liX'%- 8eXcf^ˆX\eki\\c]claf[\X^lX\eleXklY\iˆXp\c]claf[\\c\Zkife\j\eleZfe[lZkfi% Por ejemplo. un circuito eléctrico simple consiste en un suministro de electrones. como una fuente de agua. la energía proviene de la bomba y la batería. una tubería. Como se observa en la figura 0. 6 ELECTRÓNICA • MIJAREZ . X :`iZl`kfj`dgc\[\]cl`[fj#Y Z`iZl`kf\c„Zki`Zfj`dgc\% VISUALIZACIÓN DE COMPONENTES ELÉCTRICOS En ingeniería eléctrica y electrónica no es fácil de visualizar el comportamiento de un circuito eléctrico. Inconscientemente. que a su vez la escuchó de un jefe suyo. aunque también provee cierta re- sistencia al flujo. la cual consiste en una bomba de agua. Ya en la carga. por tanto. Esta energía viaja hasta la carga. La intuición se puede educar si usamos los elementos clave para ello. Para esto vamos a llevar a cabo unas comparaciones usando cosas del mundo f ísico o tangible que son familiares para nosotros. se tiene que imaginar qué está pasando con el movimiento de estos inquietos electrones. en especial cuando un circuito no funciona correctamente. que representa la carga. que a su vez… nos estamos desviando. que suministra la presión. la energía se manifiesta como la fuente de agua y la luz de la lámpara. los alambres conductores y una carga como podría ser una lámpara. 0 Introducción para realizar esta perspectiva es porque nosotros interactuamos con el mundo f ísico usando nuestros sentidos, mien- tras que en el mundo eléctrico mucho de lo que sucede dentro de los circuitos no puede ser visto, olido o escuchado. El mundo eléctrico tiene todavía su grado de magia, aun para ingenieros educados. Sin embargo, si se tiene una sen- sación o corazonada de qué es lo que está pasando en un circuito, se pueden resolver problemas de una manera muy exacta. El cerebro humano es el mejor instrumento para simular, incluso para llegar a conclusiones correctas con in- formación incompleta, lo cual no es el caso con los simuladores en las computadoras. Siendo así, con este enfoque vamos a estimular la mente para visualizar o simular circuitos eléctricos.4 La analogía que vamos a realizar es del mundo de los ingenieros eléctricos al mundo de los ingenieros mecánicos. Pero, para iniciar este enfoque intuitivo debemos entender qué es voltaje, corriente y potencia: tVoltaje es el potencial de cargas en un circuito. tCorriente es la cantidad de carga fluyendo en un circuito. Si realizamos la analogía con una pistola de agua, el voltaje es la presión que hacemos a la pistola; la presión la cuantificamos por lo lejos que llega el chorro de agua. No es lo mismo tener la presión de una pistolita, que la presión de una llave de agua de media pulgada de diámetro en la tubería. La corriente, en tanto, es el chorro de agua de la pistola. En términos eléctricos, el voltaje, la corriente y la potencia se relacionan por la siguiente ecuación: Potencia  voltaje r corriente (0.1) La potencia es la combinación de voltaje y corriente. Si uno de estos dos elementos es cero, tendríamos una potencia cero. Ahora, vamos a ver la analogía de tres componentes básicos de circuitos eléctricos que se relacionan con el vol- taje y la corriente.5 La resistencia es análoga a la fricción Consideremos que se quiere mover una caja pesada que se encuentra en el piso, como lo ilustra la figura 0.8. Una fuerza llamada fricción ofrece resistencia al movimiento de la caja. Esta fricción también está relacionada con la velo- cidad con que queremos mover la caja. Entre más rápido intentemos mover la caja, la magnitud de la fricción se incre- mentará, ofreciendo una resistencia mayor al movimiento. Esta relación puede describirse con la siguiente ecuación: fuerza Fricción  (0.2) velocidad =`^liX'%/ CX]i`ZZ`ej\fgfe\Xcdfm`d`\ekf[\cXZXaX% 4 Un libro que menciona esta visualización de componentes de manera clara se llama Ingeniería eléctrica de Darren Ashby, el cual es muy reco- mendable. 5 Los tres componentes básicos de los circuitos eléctricos son el resistor, el capacitor y el inductor, y sus propiedades características son la resis- tencia, la capacitancia y la inductancia; sin embargo, en español es muy común utilizar el término resistencia, tanto para el componente como para sus propiedades eléctricas. grupo editorial patria® 7 0 Introducción La fricción disipa la energía en forma de calor. Esto es, la fricción hace que los elementos involucrados se calienten. Este efecto sucede, por ejemplo, cuando frotamos nuestras manos, la fricción hace que nuestras manos se calienten. La función de una resistencia en un circuito eléctrico es igual a la fricción. La resistencia se opone al flujo de electricidad, de la misma forma que la fricción se opone a la velocidad de la caja. Por supuesto, la resistencia en el circuito eléctrico también se calienta. La ecuación denominada ley de Ohm describe esta relación: voltaje Resistencia  (0.3) corriente La resistencia en un circuito eléctrico representa la cantidad de fuerza que se requiere para mover los electrones. Res- pecto de los sistemas mecánicos, la única diferencia entre fricción y resistencia son las unidades. El inductor es análogo a la masa Continuamos con el ejemplo de la caja. Ahora, eliminaremos la fricción para hacer la analogía más fácil de entender. La figura 0.9 muestra una caja con llantas, las cuales virtualmente eliminan la fricción con el piso. Se puede observar que aunque se requiere cierto trabajo para mover la caja, una vez que empieza a moverse, su desplazamiento es senci- llo; incluso cuesta trabajo detener la caja. Cuánto trabajo se requiere, depende del peso de la caja. Esto se conoce como ley de la inercia,6 y se aplica muy bien a la inductancia, como se aprecia en las ecuaciones 0.4 y 0.5. =`^liX'%0 CXjccXekXj\c`d`eXecX]i`ZZ`e#g\ifj\i\hl`\i\Z`\ikfkiXYXafkXekfgXiX`e`Z`Xi\cdfm`d`\ekf [\cXZXaX#ZfdfgXiX[\k\e\icf% fuerza r tiempo Masa  (0.4) velocidad voltaje r tiempo Inductancia  (0.5) corriente En estas ecuaciones se observa que la masa se opone a la velocidad, de la misma manera que la inductancia se opone a la corriente. El capacitor es análogo al resorte Si se estira un resorte, luego se mantiene en esa posición por un momento y después se suelta; sucede que el resorte regresa a su posición, como se muestra en la figura 0.10. Esto significa que el resorte tiene capacidad de almacenar 6 Newton formuló esta ley en 1687, mucho antes que fuera descubierta la electricidad, y estableció las bases de la f ísica en el siglo xvii. Aunque en realidad es un replanteamiento de lo que Galileo postuló unos ochenta años antes, y difiere del punto de vista de Aristóteles que consideraba que todos los objetos tenían un lugar natural, fijo, en el Universo. 8 ELECTRÓNICA • MIJAREZ 0 Introducción energía; cuando se le aplica una fuerza al estirar el resorte, este mantendrá la energía hasta que se suelta. La constante del resorte es el recíproco de la elasticidad y la capacitancia, en un capacitor, es similar a la elasticidad del resorte. Un capacitor tiene capacidad de almacenar energía si se le aplica un voltaje a sus placas.7 Adicionalmente, como lo muestran las ecuaciones 0.6 y 0.7, el resorte se opone a la fuerza, de la misma manera que la capacitancia se opone al voltaje. velocidad r tiempo Resorte  (0.6) fuerza corriente r tiempo Capacitancia  (0.7) voltaje =`^liX'%(' J\Xgc`ZXleX]l\iqXXci\jfik\\jk`i}e[fcf#XcjfckXij\cXZXaXfjZ`cXi}_XjkXhl\cX]i`ZZ`ecX[\k\e^X% Combinación de elementos, circuitos más complejos La combinación de elementos puede traer consigo circuitos más complejos, uno de ellos se denomina circuito tanque o circuito LC. ¿Qué es o qué hace este tipo de circuitos? La respuesta es oscilar; y su oscilación podría durar para siempre en un circuito ideal. La equivalencia a L y C, sería la masa y el resorte en un circuito mecánico, respectiva- mente. Ahora, si se realiza un experimento mental, como harían los f ísicos,8 y se ata la caja del dibujo anterior a un resorte y se le da una fuerza inicial, el sistema mecánico oscilaría permanentemente. Siguiendo la misma analogía, si a nuestro circuito mecánico se le añade cierta fricción, apretando o frenando las llantas de la caja, al circuito eléctrico le estaríamos añadiendo una resistencia, con lo cual tendríamos un circuito LCR. En tanto, si le aplicamos un empujón a la caja con el resorte, esta empezaría a oscilar, pero eventualmente la fricción en las llantas haría que se detuviera. Tanto la fricción como la resistencia amortiguan la oscilación. En este sentido, los elementos fundamentales del mundo de la electricidad se pueden mapear al mundo mecánico, el cual es más fácil de visualizar y con el que estamos en contacto todos los días. Son los bloques de Lego que forman el mundo eléctrico; si se entienden a la perfección, se tendrán las bases bien cimentadas. Por ende, si se tienen buenas bases de cualquier disciplina se puede sobresalir en ella. ES LA LEY: LA LEY DE OHM La ley de Ohm es uno de los principios de electricidad básicos para técnicos o ingenieros eléctricos, electrónicos y mecatrónicos, y es la base para todos los análisis de circuitos eléctricos y electrónicos. Se puede tener un dominio de 7 En el capacitor, la energía se almacena en forma del campo eléctrico que se genera en el mismo capacitor. Sin embargo, también en el inductor se almacena energía, solo que la energía se almacena en forma del campo magnético que se genera en la bobina. 8 En alemán, la palabra para este tipo de experimentos es gedachtenexperiment; la cual encierra todo el concepto: experimento planeado, proyec- tado o pensado; por supuesto, un experimento sin gastar recursos materiales. grupo editorial patria® 9 0 Introducción ecuaciones cuadráticas, ecuaciones diferenciales, cálculo, etc., pero si no se tienen las bases, se corre el riesgo de que- darse estancado buscando la solución de problemas que pueden ser elementales. Esta ley es parte de los fundamentos básicos con que se debe contar, y aunque la mayoría de los estudiantes y egresados de las carreras antes mencionadas saben esta ley de memoria, en ocasiones su aplicación práctica es ignorada. La ley de Ohm, descubierta en 1827 por el científico Georg Simon Ohm, establece la relación matemática entre voltaje, corriente y resistencia, tal como lo muestra la ecuación 0.8. V I (0.8) R Esta ecuación hace constar que la corriente, I, es directamente proporcional al voltaje, V, e inversamente proporcional a la resistencia, R. El circuito de la figura 0.11a demuestra este concepto. Si se aplica un voltaje a una resistencia de valor fijo, podemos calcular la corriente. Si se varía el voltaje, tendremos un cambio proporcional en la corriente, como se aprecia en la figura 0.11b. La línea recta de la figura 0.11b indica que la curva entre V-I (Volt-Ampere) es lineal, siempre y cuando la resis- tencia sea lineal; es decir, que tenga un valor constante en ohms.9 El valor de R no cambia al variar el voltaje aplicado; si se duplica el voltaje de 4 a 8 Volts, la corriente se incrementará de 2 a 4 Amperes.10 Sin embargo, existen componentes que muestran curvas V-I no lineales. Por ejemplo, la resistencia del filamento de tungsteno que se encuentra en las lámparas incandescentes o focos es no lineal. Al incrementarse la corriente, el filamento se calienta e incrementa su resistencia. Si se incrementa el voltaje aplicado al filamento, producirá más co- rriente, pero la corriente no se incrementará en la misma proporción que el voltaje.11 Otro ejemplo son los termisto- res, los cuales varían su resistencia en función de la temperatura y son usados ampliamente para medir cambios en la temperatura. Un aspecto fundamental de esta ley es que la resistencia impide el paso de corriente. Se podría pensar en la resis- tencia como un elemento que convierte corriente en voltaje. Esto es, la cantidad de trabajo realizado para que la co- rriente eléctrica se mueva desde un punto A hasta un punto B es igual a la caída de energía eléctrica entre los puntos 8dg\i\j I4)Ω:fejkXek\ - @4M&I , 9 + 8dg\i\j =l\ek\ Mfckj [\mfckXa\ I4)Ω * '$()M M4@!I 8 ) ( ' ) + - / (' () X mfckj Y =`^liX'%(( <og\i`d\ekfhl\dl\jkiXhl\cXZfii`\ek\j\`eZi\d\ekX\eleXgifgfiZ`e[`i\ZkXZfe\cmfckXa\# j`\cmXcfi[\cXi\j`jk\eZ`X\j\cd`jdf% 9 En la Exposición Internacional de Electricidad efectuada en París, en 1881, se adoptó el “ohm” y su símbolo (Ω) (letra griega “omega”) como unidad de medida de la resistencia eléctrica, en honor a la memoria de Georg Simon Ohm, veintisiete años después de su muerte. 10 Al contrario de los símbolos, los nombres de las unidades de medida eléctrica no están normalizados internacionalmente, sino que dependen del idioma. En México se usan comúnmente en inglés, aunque la mayoría de la literatura en español tiende a castellanizar los términos con denomi- naciones reconocidas por la Real Academia Española. Por tanto, en este texto usaremos los términos en inglés: volt en lugar de voltio, ohm en vez de ohmio, ampere en lugar amperio, watt en vez de vatio, coulomb en lugar de colombios, farad en vez de faradio y henry en lugar de henrio, etcétera. 11 De manera espectacular se ha encontrado un efecto opuesto en la mayoría de los metales cuando se enfrían a un punto crítico, ¡reducen su re- sistencia a cero! Son los llamados superconductores. Desafortunadamente, las temperaturas de enfriamiento resultan ser muy bajas, lo cual requiere refrigeraciones extremas que los hace antieconómicos, con excepción de algunas aplicaciones especializadas como, los aceleradores de partículas en centros de investigación de f ísica. En fechas recientes, científicos han descubierto que ciertas cerámicas presentan características de superconductores con temperaturas menos extremas, el reto es cómo hacer cables con estos frágiles materiales. 10 ELECTRÓNICA • MIJAREZ 0 Introducción A y B, o como comúnmente se le llama, diferencia de voltaje entre estos puntos. Esta energía eléctrica se convierte a otras formas de energía como luz, o en calor, como en el ejemplo de la figura 0.11. A la proporción de energía que es transformada por el flujo de electricidad se le conoce como disipación de potencia. Esto nos lleva a definir la potencia eléctrica. Potencia eléctrica La unidad de potencia eléctrica, P, es el watt (W), nombrado así en honor a James Watt (1736-1819). Un watt de po- tencia equivale al trabajo realizado en un segundo por una diferencia de voltaje de un volt para mover una carga de un coulomb.12 Por esta razón, la potencia eléctrica es definida por el producto entre la diferencia de voltaje y la corriente, como lo indica la ecuación 0.9. P  ΔV r I (0.9) En el ejemplo de la figura 0.11a, si la fuente de voltaje es de 6 V y produce 3 A, se estará generando una potencia de 18 W de potencia. La fórmula de la potencia se puede usar de tres formas como lo muestra de manera gráfica la figu- ra 0.12. G M @ =`^liX'%() =idlcXhl\i\cXZ`feXgfk\eZ`X#mfckXa\pZfii`\ek\% La fórmula depende de qué se quiera calcular P, I o V. A golpe de vista, la figura 0.12 muestra que P  V r I, I  P/V y V  P/I. Volviendo al ejemplo de la figura 0.11a, la cantidad de energía eléctrica convertida en calor por la resis- tencia se disipa, es decir, una vez que ha sido usada, ya no regresa al circuito eléctrico como energía eléctrica. Debido a que esta potencia se disipa en la resistencia de un circuito, es conveniente expresar la potencia en términos de la resistencia, como se expresa en las ecuaciones 0.10 y 0.11: V V2 P V r I V r <P  (0.10) R R P  V r I  IR r I < P  I 2 R (0.11) Considerando un voltaje de 6 V, en el ejemplo de la figura 0.11a, y usando como ejemplo la ecuación 0.11, obtenemos la disipación de potencia en la resistencia. Esto es: P  32 r 2  18 W Por esta razón, la resistencia de este circuito debe ser mayor a 18 W, si no queremos que el calentamiento excesivo de la resistencia comience a sacar el humo mágico y se produzca un daño considerable. 12 La unidad del SI de la corriente, el Ampere, se define como un coulomb por segundo (C/S), y la del voltaje se define como un joule por coulomb (J/C). grupo editorial patria® 11 0 Introducción DIVISOR DE VOLTAJE Un divisor de voltaje, en su forma más simple, se crea conectando dos resistencias en serie, como se muestra en la fi- gura 0.13, o una resistencia variable, como un potenciómetro. A este se le aplica un voltaje de entrada a través de las dos resistencias y el voltaje de salida se toma entre las resistencias. I<EK M<EK MJ8C IK@<II8 @ =`^liX'%(* ;`m`jfi[\mfckXa\i\j`jk`mf% Aplicando la ley de Ohm, se encuentra la relación entre el voltaje de salida y el voltaje de entrada, como se mues- tra en la ecuación 0.12. A esta relación también se le llama función de transferencia.13 RT VSAL  V ENT r (0.12) RT RE Muchos libros de texto utilizan R1 y R2 para referirse a las resistencias que conforman el divisor de voltaje; sin embar- go, para hacer énfasis en su posición aquí se les denomina resistencia de tierra, RT, y resistencia de entrada, RE, para evitar el error de intercambiar la posición de la resistencia y obtener un voltaje de salida diferente del esperado. Este simple circuito lineal produce un voltaje de salida que es una fracción o un porcentaje del voltaje de entrada. Si se piensa en términos de porcentaje, al hacer las resistencias RT y RE del mismo valor, se obtendría 50% del voltaje de entrada y 50% de voltaje de salida. Se puede apreciar que si RE es cero, el voltaje de salida es igual al voltaje de en- trada. De manera intuitiva, si RT es 2 kΩ y RE es 8 kΩ, tendremos a la salida 20% del voltaje de entrada. Aunque el di- visor de voltaje se deriva de la ley de Ohm, vale la pena memorizarlo, ya que se utiliza con frecuencia para realizar referencias de voltaje y como atenuador de señales cuando se involucran elementos capacitivos e inductivos, como veremos a continuación. El capacitor se opone a los cambios de voltaje Los valores de RT y RE del divisor de voltaje pueden estar compuestos por una combinación de elementos, como capa- citores, inductores y resistencias. Los inductores y capacitores actúan como otra resistencia, la diferencia es que esta resistencia es función de la frecuencia, a lo cual se le llama reactancia. Si en el divisor de voltaje cambiamos RT por un capacitor, aún sigue siendo un divisor de voltaje; pero, por obvias razones, ahora se le denomina circuito RC. La figu- ra 0.14 muestra este circuito. La reactancia del capacitor se especifica por el símbolo XC y su unidad es el Ohm. El cálculo de la reactancia se realiza usando la ley de Ohm, XC  I/V; sin embargo, también puede obtenerse considerando los efectos de la frecuen- cia, f, y la capacitancia, C, como lo indica la ecuación 0.13: 1 XC  (0.13) 2π f C VSAL RT 13 A la función de transferencia, por lo general, se le denomina H; esta determina la ganancia del circuito H  ; en este ejemplo, H  . VENT R T RE Esta función es muy útil en sistemas de control y para analizar por etapas un circuito muy grande. 12 ELECTRÓNICA • MIJAREZ 0 Introducción ,M 'M I<EK <ekiX[X M<EK MJ8C \jZXce : @ =`^liX'%(+ <ekiX[X\jZXceXleZ`iZl`kfI:% Las unidades de f y C son los hertz y los farads, respectivamente, y el factor constante 2π es siempre 2 r 3.14  6.28, el cual indica el movimiento circular derivado de una onda sinusoidal.14 Para analizar este circuito, aplicaremos a la entrada un voltaje tipo escalón,15 posteriormente haremos uso del conocimiento intuitivo de resistencias y capacitores. La entrada escalón es por definición un cambio muy rápido en voltaje. ¿Cómo se comporta el circuito ante esta entrada? Bien, a la resistencia no le importa en absoluto el cam- bio de voltaje, pero al capacitor sí. Se puede considerar que un cambio rápido de voltaje presenta un contenido grande de señales de altas frecuencias.16 De acuerdo con la ecuación 0.13, el valor de la reactancia del capacitor disminuye al incrementarse la frecuencia. Al momento inicial del pulso de entrada, la resistencia a tierra, en este caso XC, es muy baja comparada con la resistencia RE; por tanto, el voltaje de salida será un valor bajo. Conforme la frecuencia empieza a disminuir, la reactancia en el capacitor empieza a aumentar, de tal manera que el voltaje de salida en el divisor de voltaje se incrementará gradualmente. ¿En qué valor se detendrá? Para recordar lo aprendido acerca del capacitor en la visualización de componentes: el capacitor se opone a los cambios de voltaje, pero no de corriente, como se explicó en la ecuación 0.7. De manera formal, matemáticamente esta ecuación se expresa de la siguiente manera: ΔV i r Δt i C ;l C  (0.14) Δt ΔV Si se observa el voltaje de entrada tipo escalón, se puede apreciar que inicialmente sucede un cambio o variación rápi- da del voltaje, a lo cual se opone el capacitor. Luego, la entrada escalón ya no cambia y permanece en 5V, lo cual indi- ca que el capacitor eventualmente se cargó a 5V. A este periodo de transición se le conoce como régimen transitorio de un circuito RC, mientras que al estado final se le conoce como régimen permanente. La variación de voltaje, a la salida del divisor de voltaje, presenta una curva característica descrita por la ecuación 0.15. t ¤ ³ VSAL  V ENT ¥1 e RC ´ (0.15) ¦ µ A la multiplicación de R y C se le conoce como la constante de tiempo o tau, también descrita por la letra griega del mismo nombre (τ), como lo muestra la ecuación 0.16. τ  RC (0.16) 14 En realidad, el término 2π es 2π radianes o 360º por un círculo o ciclo completo de una onda sinusoidal; por tanto, la fórmula 0.13 se aplica solo a circuitos con señales con forma de onda sinusoidal. Las señales sinusoidales adquieren importancia no solo porque los voltajes proporcionados por las compañías de electricidad (generadores) son, aproximadamente, señales sinusoidales, sino también porque cualquier forma de onda periódica se puede sustituir por un término constante y una serie de términos senos y cosenos, algo que un brillante personaje llamado Joseph Fourier (1768-1830) formuló hace ya algunos años. 15 La función escalón es muy usada en las matemáticas de teoría de control y en el procesamiento de señales, para representar una señal que se activa en un tiempo específico y permanece activada de manera indefinida. Esta función se obtiene como la integral de la función impulso, la cual a su vez tiene un valor de cero en cualquier parte, a excepción de un punto específico, donde tiene un valor muy grande, infinito. 16 Entre más rápido cambie la entrada de la señal escalón, un mayor número de frecuencias denominadas armónicas, funciones seno y coseno, se sumarán para representar esta señal de entrada. También es parte del análisis de Fourier. grupo editorial patria® 13 0 Introducción La razón por la que tau es igual al tiempo puede ilustrarse de la siguiente manera: de acuerdo con la ecuación 0.14, C  (I r t) /V. Multiplicando por R ambos términos de la igualdad, obtenemos que IR es igual a V, con lo cual se can- cela el V del denominador y el tiempo se iguala a RC. La gráfica de la variación del voltaje de salida se aprecia en la figura 0.15. τ4I: - ()' , ('' MfckXa\efidXc`qX[f + /' MfckXa\ * -' ) +' ( )' '  ( ) * + , - . k`\dgf =`^liX'%(, MXi`XZ`e[\mfckXa\#\emfckj#i\jg\Zkf[\ck`\dgf#pmXi`XZ`e[\mfckXa\efidXc`qX[f#i\jg\Zkf[\ck&τ% La forma de esta curva de salida es siempre la misma para un circuito RC, como respuesta a una entrada tipo es- calón. Lo único que cambia es el tiempo que toma en llegar a su valor final, régimen permanente, el cual depende de la constante de tiempo tau. La figura 0.15 muestra la variación del voltaje de salida respecto del tiempo, pero también muestra esta curva normalizada17 en función de tau y el valor final del voltaje en porcentaje. Considerando la curva normalizada, se puede observar que a 1τ el voltaje de salida alcanzado es 63%; a 2τ es 86%; a 3τ es 95%; asimismo, cuando llega a 4τ, el porcentaje es 98% y cuando alcanza 5τ el voltaje de salida es prácticamente 100%. Esta curva de respuesta describe un principio básico en electrónica. En las materias básicas de ingeniería eléctrica y electrónica he visto a los alumnos realizar prácticas de laboratorio para obtener este tipo de curvas, pero cuando llegan a los últimos semestres no recuerdan este concepto fundamental; lo que es peor, no lo entienden. De modo que vale la pena memorizarlo de una vez por todas, ya que si se entiende este concepto se entenderá el comportamiento de las bobinas o inductores, que veremos en la siguiente sección, pero antes vamos a analizar qué pasa con la corriente en este circuito RC. Usando la ley de Ohm sabemos que I  V/R. Para obtener el voltaje a través de la resistencia o, dicho de otro modo, para obtener la diferencia de voltaje en la resistencia, es necesario conseguir la diferencia entre el voltaje de salida y el voltaje de entrada como lo muestra la ecuación 0.17: VR  VENT − VSAL (0.17) Analizando la corriente en términos de tau, observamos que a 0τ, el voltaje de salida es cero volts, de tal forma que los 5 V se encuentran en la resistencia, y, por ende, en ese instante fluye la corriente máxima. En este momento, el capa- citor tiene una resistencia prácticamente de cero ohms haciendo un corto circuito a tierra. En t  τ, el voltaje de salida es 63% del voltaje de entrada, lo cual significa que la resistencia tiene 37% del voltaje de entrada. Siguiendo este proce- so para todos los valores de tau, obtendremos una curva decreciente a diferencia de la curva creciente de voltaje como lo muestra la figura 0.16. Aquí se puede observar que al momento que cambia el voltaje de entrada de la señal escalón, cuando t  0, la corriente cambia muy rápido; fluye por el circuito la máxima corriente. En contraste, en ese mismo momento el vol- 17 La normalización en este contexto se refiere al procesamiento de información para que dos conjuntos de datos diferentes sean comparables, tomando valores entre 0 y 1. Para esto se requiere dividir todos los datos entre el valor final, que en este caso es 5 volts. Muy a menudo ese valor se multiplica por 100 para obtener el porcentaje. 14 ELECTRÓNICA • MIJAREZ La naturaleza nos ha mostrado que tiene sus opuestos.18 y el capacitor no es la excepción. De manera formal. <ekiX[X\jZXceXleZ`iZl`kfIC% La reactancia del inductor se representa a través del símbolo XL y su unidad. que se encuentran en todas las cosas. en ese instante es cero. esta misma ecuación se expresa mate- máticamente de la siguiente forma: 18 El concepto de dualidad. de modo que vamos a continuar con los inductores o bobinas. L. masculino/femenino. de manera opuesta a la reactancia capacitiva.18) La unidad de la inductancia. de acuerdo con la ecuación 0. como lo muestra la ecuación 0. 0 Introducción ()' ('' :fii`\ek\efidXc`qX[X /' -' +' )' '  ( ) * + . y la inductancia.M 'M I<EK <ekiX[X \jZXce M<EK MJ8C @ C =`^liX'%(. al igual que con el capacitor. . pero también puede calcularse tomando en cuenta los efectos de la frecuencia. siguiendo con el divisor de voltaje. f. en apariencia opuestas y complementarias. Por ejemplo: luz/oscuridad. Lo anterior corrobora la regla de que el capacitor se opone a los cambios de voltaje y no le afectan los cambios de corriente.17. que tiene su origen en la filosof ía oriental del yin y el yang. es el henry. El inductor se opone a los cambios de corriente Ahora. XL  I/V. Conforme lo aprendido en la visualización de componentes. calor/ frío. es el Ohm. establece que todo lo existente en el universo es descrito por dos fuerzas fundamentales. τ4I: =`^liX'%(- MXi`XZ`e[\Zfii`\ek\Zfei\jg\ZkfXcXZfejkXek\[\k`\dgfkXl% taje de salida no cambia tan rápido. vamos a considerar un circuito RL como se muestra en la figura 0. grupo editorial patria® 15 . pero no de voltaje. - . L. sonido/silencio… y por supuesto capacitor/inductor. En esta ecuación se puede apreciar que la reactancia inductiva se incremen- ta para altas frecuencias y altos valores de L. el inductor o bobina se opone a los cambios de co- rriente.18: XL  2π f L (0.5. El cálculo de la reactancia se realiza usando la ley de Ohm. la reactancia XL es muy alta a causa de los armónicos de frecuencias altas. cuando hay un cambio rápido de voltaje. 16 ELECTRÓNICA • MIJAREZ . Sin embargo. τ4I: =`^liX'%(/ MXi`XZ`e[\Zfii`\ek\i\jg\Zkf[\k&τ\e\cZ`iZl`kfIC% La respuesta en corriente del circuito RL es exactamente igual que la respuesta en voltaje en el circuito RC. Cuando el tiempo empieza a pasar. gradualmente empieza a aparecer una caída de voltaje en L. el voltaje en el inductor (V SAL) será igual al voltaje de entrada. - . bien. se preguntará qué pasa con la variación de voltaje respecto de t/τ. El comportamiento en corriente del inductor es el mismo comportamiento para el voltaje en el capacitor. Si se entiende el análisis para el circuito RC. analizando por intervalos y haciéndonos un par de preguntas acerca del comportamiento del circuito. también el voltaje comienza a disminuir hasta llegar a cero.l L  (0. al momento inicial. por consiguiente. entonces. no se tendrá problema para entender el circuito RL. ()' ('' :fii`\ek\efidXc`qX[X /' -' +' )'  ( ) * + . τ4C&I =`^liX'%(0 MXi`XZ`e[\mfckXa\Zfei\jg\ZkfXk&τ\e\cZ`iZl`kfIC% El inductor es el complemento exacto del capacitor. ()' ('' MfckXa\efidXc`qX[f /' -' +' )' '  ( ) * + . tratándose como si fuera un circuito abierto. la resistencia tiene que ser muy alta. - . en el instante cero. para que la corriente sea muy baja. por tanto. la inductancia adquiere un valor muy grande que actúa como un circuito abierto.19) $t $i Considerando la misma entrada escalón. de modo que la corriente empieza a elevarse como se muestra en la figura 0. la reactancia en el inductor empieza a bajar hasta que se pro- duce un cortocircuito y. La figura 0. y la corriente en L es prácticamente cero. ¿Cómo será el valor de la corriente en el instante cero o en 0τ? ¿Qué pasará con la corriente un tiempo después? Con base en la ley de Ohm. y viceversa.18. y vi- ceversa.19 muestra la respuesta en voltaje para el circuito RL. 0 Introducción $i v r $t vL . podemos deducir cómo será esta gráfica. Pero. pequeños y fáciles de adquirir. 21 En el CD-ROM que acompaña este libro se encuentra una aplicación para calcular resistencias en serie y en paralelo.20 para las resistencias. RT  R1 + R2 + R3 (0.20 y la ecuación 0.000. Los circuitos en serie son sencillos. entre otras cosas. Un circuito en serie es aquel que provee solo una trayectoria para que la misma corriente fluya por todos los com- ponentes.21. el inductor se hace con un material conductor. antecesor del sistema métrico decimal.000. debido. un farad y un henry son unidades muy grandes y un ohm puede ser una unidad muy pequeña. basta sumar todos los componen- tes.1 muestra algunos prefijos y valores de conversión que se utilizan con frecuencia. respectivamente. el cual. los in- ductores y las resistencias.20)  I( I) I* IK =`^liX'%)' :fe]`^liXZ`e[\i\j`jk\eZ`Xj\ej\i`\% En el caso de los inductores. son más comunes que los circuitos RL. grupo editorial patria® 17 . Peta (1015) y Hexa(1018). femto (10−15) y atto (10−18) pertenecientes al Sistema Internacional de medidas.21 y la ecua- ción 0. por lo general. como se muestra en la figura 0. ya que no involucran ninguna multiplicación. 0 Introducción Los circuitos RC. y de manera descendente como pico (10−12). como lo muestra la figura 0. estos se suman al igual que las resistencias. De manera ascendente se pueden emplear prefijos como Tera (1012).001 o 1 r10-3 25 mA (milihenrys)  25 r 10-3 micro μ 0.000 o 1 r 109 2 GΩ (Gigaohms)  2 r 109 Mega M 1. para fines prácticos.20 Prefijo Símbolo Relación a la unidad Ejemplo Giga G 1. Mientras que un circuito en paralelo es cualquiera que provea el mismo voltaje a través de todos los componentes y en donde cada componente proporciona una trayectoria diferente para que fluya la corriente. 19 Recientemente estos submúltiplos han incrementado su valor ya sea ascendente o descendente en aplicaciones como procesamiento de datos y nanotecnología.000 o 1 r 103 20 kV (kilovolts)  10 r 103 milli m 0. C y L no son perfectos y en la realidad cada uno de ellos puede contener partes de los otros. Por ejemplo. por lo que se suele emplear submúltiplos. también presenta una resistencia. 20 El elemento que genera más dificultad para determinar su valor es el capacitor.000. a que los capa- citores son más económicos. las unidades de los capacitores. los henrys y los ohms. Cabe mencionar que los elementos básicos R.000.000 o 1 r 106 5 MΩ (Megaohms)  5 r 106 kilo K 1. son los farads. Como ya mencionamos.000 001 o 1 r10-6 10 μF (microvolts) 10 r 10-6 -9 nano η 0.19 La tabla 0.21 Vamos a iniciar con las fórmulas para los circuitos en serie y a relacionar estos con el arreglo de sus componentes.000. por lo que en el CD-ROM que acompaña este libro se encuentra un convertidor de código de capacitores y un convertidor de unidades. respectivamente. aunque en ciertas condicio- nes su comportamiento predominante es inductivo. sin embargo.001 o 1 r10 33 ηF (nanofarads) 33 r 10-9 KXYcX'%( Gi\]`afjpmXcfi\j[\Zfem\ij`eZfdle\j% Circuitos en serie y en paralelo Dos formas de conexión de componentes eléctricos en un circuito son de particular importancia: en serie y en para- lelo. 22. su carga negativa. 18 ELECTRÓNICA • MIJAREZ . Cada electrón libre repelido. esta proporcionará el voltaje que fuerza a los electrones libres a moverse desde la terminal negativa. hasta la terminal positiva. a su vez. 0 Introducción  C( C) C* CK =`^liX'%)( :fe]`^liXZ`e[\`e[lZkfi\j\ej\i`\% LT  L1 + L2 + L3 (0. I( I) I* =`^liX'%)* 8cXdYiX[f^i}]`Zf[\leZ`iZl`kfj\i`\% La terminal negativa de la batería. los electrones libres del alambre que conecta el borne negativo son repelidos. Si conectamos una batería entre la terminal de R1 y la terminal de R3. :( :)  :* :K =`^liX'%)) :fe]`^liXZ`e[\ZXgXZ`kfi\j\ej\i`\% CT  C1 + C2 + C3 (0. como se ilustra en la figura 0. Sabemos que la corriente eléctrica es el movimiento de cargas entre dos puntos. generado cuando se aplica un voltaje.23.21) Para el caso de los capacitores.22) Cómo es que la corriente es la misma en todas las partes de un circuito en serie ¿Por qué la corriente es la misma en todas las partes de un circuito en serie? La respuesta es más fácil de visualizar usando resistencias. como se muestra en la figura 0. repele los electrones. produciendo un movimiento de electrones hasta llegar a la conexión con la resistencia R3. es preciso recordar que estos son el dual de los inductores. es decir. también repele al elec- trón adyacente.22 y la ecuación 0. a través de los alambres de conexión y las resistencias. Por tanto. Por tanto. los capacitores deben conectarse en paralelo si se quieren sumar como los inductores y las resistencias en los circuitos en serie. R2 y R3 son forzados a moverse hacia la terminal positiva. se resuelve cada dos componentes y se repite sucesiva- mente. de tal manera que el voltaje es el mis- mo en cada componente. Los circuitos en paralelo son un poco más truculentos que los circuitos en serie. la carga positiva del borne positivo de la batería atrae los electrones libres del alambre que está conectado a él. esa es la razón por la cual la corriente es la misma en todas las partes del circuito. Dicho de otra forma. 0 Introducción Simultáneamente. del circuito en paralelo es igual al voltaje aplicado dividido entre la corriente total. A la fórmula para obtener la REQ se le conoce como la fórmula del inverso o recíproco y se deriva de que IT es la suma de todas las corrientes. V/IT . 1 REQ  (0. el voltaje es el mismo para cada componente y cada componente provee una trayectoria independiente para el flujo de corriente. IT. la REQ es determinada por el producto de sus valores dividido por la suma de sus valores. Los electrones libres que se mueven de un punto a otro son reemplazados en forma continua por electrones libres moviéndose de puntos adyacentes. En tanto que en los circuitos en paralelo. debe ser igual a la suma de todas las corrientes como se aprecia en la figura 0. 8cXdYiX[f^i}]`Zf[\leZ`iZl`kfgXiXc\cf% La resistencia total o resistencia equivalente. La corriente de cada trayectoria se calcula con V/R. La corriente total.25. Como resultado. La figura 0. la corriente es la misma para todos los componentes. el término equivalente se refiere al valor que tendría una sola resistencia para sacar la misma cantidad de corriente que todas las resistencias en paralelo.24 ilustra un circuito en paralelo para el caso de que los componentes sean re- sistencias.24. donde V es el voltaje aplicado y R es la resis- tencia de esa trayectoria. I( I) I* IK =`^liX'%)+ :fe]`^liXZ`e[\i\j`jk\eZ`Xj\egXiXc\cf% En los circuitos en serie. el movimiento de electrones en el circuito inicia al mismo tiempo y a la misma velocidad en todas las partes del circuito. por consiguiente. como se muestra en la ecuación 0. R1 R2 R3 Para el caso particular en que sean dos componentes. En caso de tres resistencias o más. I( I) I* " M M M M  I( I) I* @K =`^liX'%). los electrones libres de las resistencias R1.23) 1 1 1 ! etc. Aquí. La terminal positiva de la batería atrae electrones tanto como la terminal negativa los repele. grupo editorial patria® 19 . REQ . un número igual de electrones se mueve a un tiempo y con la misma velocidad. Un circuito en paralelo se forma cuando dos o más componentes se conectan a través de una fuente de voltaje. :( :) :* :K =`^liX'%).25) L1 L2 L1 | L2 L3 Para los capacitores aplican las misma ecuaciones.26) C1 C2 C1 | C2 C3 Al tratar con circuitos en serie y en paralelo se resume que sólo hay dos ecuaciones: la simple suma y el producto sobre la suma (o suma de recíprocos). por lo que su resistencia REQ se puede deducir de la misma manera como se muestra en la figura 0. los electrones libres están bien como negativas.24) R1 R2 R1 | R2 R3 Los inductores en paralelo se comportan como las resistencias. los electrones libres se mue. ± Los semiconductores en estado natural. contrarios se atraen. C( C) C* CK =`^liX'%)- :fe]`^liXZ`e[\`e[lZkfi\j\egXiXc\cf% L1 r L2 L1 | L2 r L3 L1 | L2  l LEQ  (0.25. pero solo si se conectan en serie como se ilustra en la figura 0. :fe]`^liXZ`e[\ZXgXZ`kfi\j\egXiXc\cf% C1 r C2 C1 | C2 r C3 C1 | C2  lC  (0. como el sili- ± Tanto en un conductor como en un aislante existe el cio.26. al aplicárseles cierta energía liberan electrones y mismo número de cargas positivas y negativas. forman huecos. como el agua en las tuberías. cargas de signos bería. 20 ELECTRÓNICA • MIJAREZ . 0 Introducción R1 r R2 R1 | R2 r R3 R1 | R2  l REQ  (0. adheridos. eléctrica.26 y la ecuación 0. con lo cual se produce la corriente ± En un buen conductor. ven con facilidad.27 y la ecuación 0. como si fuera agua congelada en una tu- ± Cargas del mismo signo se repelen. DATOS IMPORTANTES ± La electricidad es básicamente cargas tanto positivas ± En un buen aislante. 0 Introducción ± Se requiere del voltaje y de la corriente para producir puede ser puramente resistiva. (Z es la impedancia. 5V 9V R=2 RENT 0V VENT VSAL Entrada C escalón I =`^liX'%)/ =`^liX'%*' 0. VSAL  ENT T . pero no de corriente.28. grafique el voltaje de salida para un divisor de voltaje RC. una R  1 000 Ω y L  0. RENT 2. el inductor o bobina es como la V R masa y el capacitor es como un resorte.29) se requiere un voltaje de salida de 5 V. una frecuencia específica. grafique la corriente de salida trada es de 12 V. PSpice o Multisim. 0.3 Usando un paquete comercial de simulación tipo el siguiente circuito de la figura 0.1 μF. ± El capacitor se opone a las variaciones de voltaje. ± Las resistencias en paralelo. los inductores en parale- ± La ley de Ohm aplica tanto para resistencia como lo y los capacitores en serie usan la regla de la suma para reactancia I  V/Z.5 V.4 Usando un paquete comercial de simulación tipo Calcule las resistencias necesarias si el voltaje de en.2 En el siguiente circuito divisor de tensión (véase fi- gura 0. ± Los conocimientos básicos son los más importantes. PROBLEMAS DEL CAPÍTULO 0 0. Verifique la constante de tiempo. o una combinación de estas. ¡entenderlas! ± Las resistencias en serie. PSpice o Multisim. hay que aprenderse algunas fórmulas de memoria y pero no de voltaje. teniendo como voltaje de entrada una batería de 2. la cual de los inversos o recíprocos. va. Verifique la constante de tiempo.1 Calcule la disipación de potencia de la resistencia en 0.1 μH. pacitor.) ± En el equivalente mundo mecánico: la resistencia es ± La regla del divisor de voltaje está dada por: como la fricción.5 V 12 V 5V RENT RTierra 0V VENT VSAL I L Entrada escalón I =`^liX'%)0 =`^liX'%*( g r u p og reud pi too er di ai tl oprai ta r lip aa® tria® 21 .5 V. los inductores en serie y los ± La reactancia es similar a la resistencia considerando capacitores en paralelo se suman. capacitiva o inducti- potencia. una R  1 000 Ω y C  0. ± El inductor se opone a las variaciones de corriente. RT RE ± El inductor tiene el comportamiento dual del ca. para un divisor de voltaje RL. teniendo como voltaje de entrada una batería de 2. 0.7 En el siguiente circuito (véase figura 0. 0. para un circuito RC.13 Usando la analogía entre sistemas eléctricos y me- 0.6 Deduzca cómo se obtiene la fórmula de la resistencia L equivalente para dos resistencias conectadas en pa- ralelo. Calcule la reactancia capacitiva y la corriente que pasa por el =`^liX'%** circuito. C 0. 20 V CA 0.33) se tiene cánicos.1 μF. la constante de tiempo es τ  RC.8 En el siguiente circuito (véase figura 0. Compare el resultado si la fuente de ali- mentación trabaja a 540 Hz. 22 ELECTRÓNICA • MIJAREZ . =`^liX'%*) 0.1 μH. 0 Introducción 0. 0. el inductor es análogo a la masa y el operando a 180 Hz y un inductor de 0.16. 0.14 Explique por qué la ley de Ohm es lineal. circuito. Calcule capacitor es análogo al resorte. describa por qué la resistencia es análoga una fuente de alimentación sinusoidal de 20 V de CA a la fricción.9 Defina cuáles son los electrones libres en un sólido. para un circuito RL.5 De acuerdo con la ecuación 0.32) se tiene una fuente de alimentación sinusoidal de 20 V de CA operando a 180 Hz y un capacitor de 0.11 Describa cómo es la distribución de electrones en 20 V CA la capa externa de un material semiconductor y su relación con los enlaces covalentes. la reactancia inductiva y la corriente que pasa por el 0.10 Describa la diferencia principal entre un material conductor y un material aislante.12 Describa la analogía entre un circuito de fluidos simple y un circuito eléctrico simple. Deduzca cómo se obtiene la constante de tiempo τ  R/L. 1 Dispositivo semiconductor básico: el diodo Existen textos que explican de manera detallada qué son los semiconductores. En los dispositivos semiconductores. incluso abordan los principios de la teoría cuántica. lo cual posibilita realizar instrumentos maravillosos. en este capítulo abordamos la construcción básica del dispositivo semiconductor más simple: el diodo. cabe mencionar que muchos de los dispositivos electrónicos que usamos son útiles hasta que las características intrínsecas de los semiconductores se alteran mediante un proceso llamado dopaje. Entonces. para indicar que los atletas han usado. aunque también explicamos algunos diodos de propósito específico. siguiendo el contexto de este libro. de manera legal. en inglés “doping”. aquí solo se provee el en- tendimiento básico intuitivo de cómo funcionan los dispositivos semiconductores. sin embargo. el doping permite realizar los bloques básicos de la electrónica. en esta forma no tienen muchas aplicaciones. eso sí. En este capítulo apren- deremos acerca de: 1 El término “doping” o dopaje se utiliza con frecuencia en el ámbito deportivo. posibilitándoles hacer proezas de súper humanos. 23 . medicamentos o sustancias que les permiten aumentar de manera no natural el rendimiento general en una competencia. En el capítulo 0 se estudia la constitución atómica de los semiconductores en su forma pura o intrínseca. Para comprenderlo. de manera ilegal. En este capítulo también se analizan sus características de conducción unidireccional y sus apli- caciones como convertidores de CA a CD. como los diodos LED y los diodos Zener. empecemos. Pero. Por esta razón.1 que consiste en mezclar los semiconductores puros con otros materiales. por otro lado. SEMICONDUCTORES INTRÍNSECOS Primero que nada. De hecho. y determina la manera de combinarse con otros átomos. incluyendo sus enlaces covalentes y sus electrones de valencia. por lo que se les denomina tetravalentes. entre más corriente hagamos pasar por ellos más se calentarán. átomos que han perdido o ganado electrones. vamos a definir qué es un semiconductor de electricidad. no tienen la misma libertad para moverse como sucede con los metales. La figura 1. para un aislador. Como vimos en el capítulo 0. X Polarización directa del diodo. formando una estructu- ra de cristal. X Aproximaciones de los diodos. estos electro- nes se encuentran unidos a otros iones adyacentes. Cada átomo de estos materiales contribuye con cuatro electrones de valencia. y para un semiconductor. X Semiconductores extrínsecos o dopados. Algunos de los materiales semiconductores in- trínsecos más comunes son el silicio. X Curva característica voltaje-corriente de los diodos.2 Como las resistencias. como las resisten- cias. por medio de enlaces. los electrones de valencia. en dos dimensiones. X Construcción del diodo semiconductor. es muy pequeña.1 ilustra simbólicamente. dicha concentración de electrones es muy grande. 1 Dispositivo semiconductor básico: el diodo X Semiconductores intrínsecos. X Diodos de propósito específico. el germanio y el carbono. Por tanto. X Polarización inversa del diodo. aproximadamente 107electrones/m3. los electrones de la capa externa del átomo. en cam- bio. pero no fácilmente. conocidos como enlaces covalentes. X Circuitos rectificadores. en un semiconductor. los semiconductores conducen electricidad. Para un buen conductor. conduce menos electricidad que un conductor. Aunque el silicio es el más utilizado por la industria electrónica para la construcción de dispositivos electrónicos. se puede pensar que un semiconductor es un material “semibueno” conduciendo la electricidad. <c\Zkife\j <ecXZ\ [\mXc\eZ`X ZfmXc\ek\ J` J` J` J` J` J` J` J` J` =`^liX(%( <jkilZkliX[\leZi`jkXc[\j`c`Z`fZfejlj\c\Zkife\j[\mXc\eZ`Xp\ecXZ\jZfmXc\ek\j% 2 Como vimos en el capítulo 0. X Rectificación filtrada. es proporcional a la concentración de electrones libres en el material en cuestión. en su lugar. pero más electricidad que un aislador. es decir. aproximadamente 1028 electrones/m3. Su nombre indica que es un elemento que conduce parcialmente la electricidad. la estructura de un cristal de silicio. esta concentración se encuentra en un punto intermedio entre estos dos valores. 24 ELECTRÓNICA • MIJAREZ . y por ende la conductividad. el flujo de corriente. 6 r 10 19 Joules. todos los electrones de valencia en un cristal de silicio permanecen adheridos a sus respectivos enlaces de valencia. dejar su enlace para llenar dicho hueco. convirtiéndose en electrones libres que se pueden mover libremente en el material. su valor aproximado es de 1.4 El hueco contribuye como portador de electricidad de la misma manera que un electrón libre.3 A temperatura ambiente (25 ºC). pero de polaridad opuesta. algunos de los enlaces covalentes se rompen. en un átomo vecino. para romper sus enlaces covalen- tes y escapar de su átomo. La energía térmica es considerada la causa principal que produce el denominado par electrón-hueco. por ejemplo.1 eV para el silicio.1. grupo editorial patria® 25 . Al moverse. ( ) * + . . la radiación u otras fuentes. y por consiguiente. aproximándose a la estructura ideal de la figura 1. de 1 volt. produciendo pares electrón-hueco que hacen posible la conducción de electricidad.3. generando un flujo de corriente. El electronvolt. por tanto. tal como el cero absoluto ( 273 ºC). debido a que al aparecer un enlace covalente incompleto. 1 Dispositivo semiconductor básico: el diodo A una temperatura muy baja. el electrón deja. el cristal se comporta como un aislante. El hueco actúa como si fuera una carga positiva atra- yendo electrones libres. el hueco se mueve en dirección opuesta a la del electrón. es relativamente fácil para un electrón de valencia. un hueco en su posi- ción inicial.72 eV para el germanio y de 1. la generación de pares electrón-hueco se incrementa debido a la energía tér- mica. como se muestra en la figura 1. J` J` <c\Zkie c`Yi\ ?l\Zf J` J` =`^liX(%) GXi\c\Zkie$_l\Zfgif[lZ`[fgfi\e\i^ˆXk„id`ZX% Conforme se eleva la temperatura. es de 0. De esta forma. arriba del cero absoluto algunos electrones de valencia pueden obtener suficiente energía proveniente del calor. / X Y Z =`^liX(%* D\ZXe`jdfd\[`Xek\\cZlXcle_l\ZfZfeki`Ylp\XcXZfe[lZZ`e[\\c\Zki`Z`[X[% 3 La energía para romper un enlace covalente. en el vacío. originando un hueco. eV.6 r 10 19 coulombs. a temperatura ambiente. a su vez. Este mecanismo de conducción de electricidad no involucra electrones libres como se ilustra esquemáticamente en la figura 1. Sin embargo. Esto trae consigo el hecho de que no habrá electrones libres disponibles moviéndose en el semiconductor de silicio y. 4 Cada hueco o electrón posee una carga de 1.2. es una unidad de energía usada en sistemas atómicos equivalente a la energía cinética adquirida por un electrón al ser acelerado por una di- ferencia de potencial. . Estos electrones libres dejan un vacío o hueco en el enlace covalente. se mueve al hueco 3. con un enlace roto o hueco en el ión 3.4. si un electrón del ión 5 se mueve al hueco 4. se producirá la configuración de la figu- ra 1. 1 Dispositivo semiconductor básico: el diodo En la figura 1. Además. es necesario llevar a cabo el proceso de dopaje o doping que mencionamos al inicio de este capítulo. J` J` J` J` 8j J` J` J` J` <c\Zkiec`Yi\ =`^liX(%+ :i`jkXc[\j`c`Z`f[fgX[fZfeleX`dgli\qXg\ekXmXc\ek\% 26 ELECTRÓNICA • MIJAREZ . se puede observar que el hueco se mueve hacia la derecha. es decir átomos de mayor o menor número de electrones de valencia que los de un semiconductor intrínseco. mientras que los círculos vacíos simbolizan los huecos. Dicho de otra forma. se considera que los huecos son entidades f ísicas cuyo movimiento constituye un flujo de corriente.3 los círculos con un punto representan enlaces covalentes completos. transistores y circuitos integrados. De la misma manera. Para incrementar el número de pares electrón-hueco.3 c). es importante hacer notar que a temperatura ambiente los semiconductores intrínsecos generan térmi- camente muy pocos pares electrón-hueco.3 a) se muestra una fila de ocho iones. Sin embargo. la configuración resultante será la de la fi- gura 1. Los materiales semiconductores de silicio y de germa- nio. Así. por ejemplo el del ión 4. Si un electrón de valencia. no es requerido en los enlaces covalentes de la estructura y puede flotar por el material como electrón libre. por lo general. Lo anterior ocurre porque en la ubicación de cada átomo pentavalente hay un electrón libre que no es usado en los enlaces covalentes de la estructura del material. en sentido inverso al movimiento de los electrones de valencia. Por esta razón. SEMICONDUCTORES EXTRÍNSECOS O DOPADOS El proceso de dopaje o doping involucra añadir átomos de impureza. por lo que estos relativamente aún se comportan como buenos aislantes. Semiconductores tipo n Un átomo pentavalente es aquel que tiene cinco electrones de valencia. no debemos perder de vista que un cristal semiconductor de silicio térmicamente genera menos pares electrón-hueco que uno de germanio a la misma temperatura. un material semiconductor extrínseco es aquel que ha sido mezclado con átomos no tetravalentes. En la figura 1. funcionando como impureza. el arsénico (As) y el fósforo (P). uno de los electrones en cada átomo pentavalente. Esto implica que el cristal de silicio es más estable a altas temperaturas que el material de germanio. Un cristal de silicio dopado por un número grande de átomos pen- tavalentes genera muchos electrones libres en el material. Algunos ejemplos de este tipo de átomos son el antimonio (Sb).3 b). son dopados con átomos trivalentes o pentavalentes para incrementar su conductividad. Recordemos que solo ocho electrones pueden existir en la capa de valencia de cada átomo de silicio. Esto se ilustra en la figura 1. Esta estabilidad es la razón principal por la cual el silicio es usado primordialmente como material semiconductor en la construcción de diodos. por tanto. En este caso. el número total de electrones es igual al número total de protones.4 pertenece a un átomo de arsénico. Debido a que los huecos exhiben una carga positiva. como se muestra en la figura 1. ya que si un electrón libre pasa alrededor del hueco. Sin embargo. como sucede con el material tipo n. a causa de la energía térmica. para obtener la máxima estabilidad eléctrica con ocho electrones de valencia. a los materiales dopados de esta forma se les llama semiconductores tipo n. Esto sucede porque. Algunos ejemplos de esta clase de átomos son el aluminio (Al). La carga neta del material semiconductor tipo p es neutra porque. quedando un electrón extra que no se necesita. se requiere un electrón de valencia en cada localización de un átomo trivalente. Estos iones positivos son cargas fijas en el semiconductor incapaces de moverse. el boro (B) y el galio (Ga). habrá millones de electrones libres flotando en el material. si se añaden millones de impurezas pentavalentes a un cristal de silicio intrínseco. la carga neta del semiconductor tipo n aún es neutra. No obstante. puesto que en cada átomo penta- valente el quinto electrón de valencia deja su átomo. ya que el número de cargas positivas y negativas no es el mismo en el átomo o ión.5. a los electrones se les llama portadores de corriente mayoritarios y a los huecos portadores de corriente minoritarios. a estos se les denomina materiales semi- conductores tipo p. mientras que los huecos son los portadores mayori- tarios de corriente. Debido a que el electrón es la partícula básica de carga negativa. En este caso. Los pocos electrones de valencia que logran ab- sorber suficiente energía para romper sus respectivos enlaces covalentes. Semiconductores tipo p Un átomo trivalente es aquel que contiene solo tres átomos de valencia. puesto que el número total de electrones es igual al número de protones. se crean millones de huecos en el cristal. incrementan aún más el número de electrones libres en el cristal. el núcleo del átomo pentavalente tendrá un protón más que el número de electrones orbitando. 1 Dispositivo semiconductor básico: el diodo El electrón libre ilustrado en la figura 1. En el material semiconductor tipo n existe un gran número de iones positivos. J` J` J` J` >X J` J` J` J` ?l\Zf =`^liX(%. El semiconductor tipo p también contiene unos cuantos electrones libres a causa de la energía térmica. en el que sus enlaces covalentes se completan con ocho electrones de valencia. en un semiconduc- tor tipo-n también se crean algunos huecos o pares electrón-hueco. Además. creando un desbalance. Un cristal de silicio dopado con una gran cantidad de átomos trivalentes producirá muchos huecos en los enlaces covalentes de la estructura del material. la cual produce algunos pares electrón-hueco. grupo editorial patria® 27 . este será atraído para llenar ese vacío. :i`jkXc[\j`c`Z`f[fgX[fZfeleX`dgli\qXki`mXc\ek\% Cuando millones de impurezas trivalentes se añaden a un material semiconductor intrínseco. Debido a que hay mucho más electrones libres que huecos en un material semiconductor tipo n. los electrones son los portadores minoritarios de corriente. Los huecos actúan como cargas positivas. 6 b). pero no fue sino hasta 1919 que el f ísico británico William Henry Eccles. 1 Dispositivo semiconductor básico: el diodo En el material semiconductor tipo p existe un gran número de iones negativos. De igual manera que con el material n. como se muestra en la figura 1. los iones negativos en el material p son cargas fijas en el semicon- ductor incapaces de moverse. en 1899.5 X g e Ýef[f :}kf[f Y =`^liX(%- CXle`eG$E%X :fejkilZZ`eY}j`ZX[\le[`f[f#\e\cZlXcj\`cljkiXecXji\^`fe\j[fgX[XjGpE2 Y jˆdYfcf\jhl\d}k`Zf[\c[`f[fj\d`Zfe[lZkfi#\e\cZlXcj\dl\jkiXecXjk\id`eXc\j Zfii\jgfe[`\ek\jgXiX\c}ef[fp\cZ}kf[f% La unión p-n tiene electrones libres en el lado n y huecos en el lado p. con Thomas Alva Edison a la cabeza. como se muestra en la figura 1. es decir permiten el flu- jo de corriente a través de ellos en una sola dirección. ahora portadores minoritarios. como se muestra en la figura 1. acuñó el término diodo. se obtiene de la unión de dos materiales semiconductores. la im- pureza trivalente tendrá un electrón más orbitando que el número de protones en su núcleo. 28 ELECTRÓNICA • MIJAREZ . X Y g e g e Æ " M9 =`^liX(%. los electrones libres del lado n migran o se difunden a través de la unión hacia el lado p. CONSTRUCCIÓN DEL DIODO SEMICONDUCTOR Un dispositivo semiconductor muy popular. Una vez en el lado p. no permanecen como tales por mucho tiempo. De esta manera. en cada átomo trivalente. pionero en el desarrollo de las radiocomunicaciones. En esta figura. dando como resultado el ión negativo. uno tipo p y otro tipo n. Los diodos son dispositivos unidireccionales. los electrones libres se representan por el símbolo de guión (–) y los huecos se representan por círculos (O). estos electrones libres. llamado diodo. que significa “a través”. estos dispositivos fueron llamados: rectificadores.7 a). Sin embargo. mientras que el lado n se conoce como cátodo.6 a). Le`eg$e%X <c\Zkife\jc`Yi\j\e\ccX[fep_l\Zfj\e\ccX[fg2Y ]fidXZ`e[\cXqfeX[\X^fkXd`\ekf# \ecXZlXcj\]fidXe`fe\jgfj`k`mfj\e\ccX[fepe\^Xk`mfj\e\ccX[fg% 5 La primera patente para un cristal semiconductor fue otorgada al f ísico alemán Karl Ferdinand Braun. proveyéndoles propiedades de rectificación. y ode que significa “trayectoria”. proveniente de la palabra griega dia. La interacción de las regiones dopadas forma la denomi- nada unión P-N. ya que tan pronto como cruzan la unión empiezan a llenar los huecos. En sus ini- cios. Lo anterior trae como resultado que cuando los electrones libres dejan el lado n y llenan los huecos del lado p.7 b). otros trabajos con indicios de este comportamiento de conducción unidireccional se remontan veinte años atrás. pueden llenar los huecos de los enlaces covalentes. debido a que los electrones libres que pasan cerca. El lado p se conoce como ánodo. se crean dos tipos de iones: positivos en el lado n y negativos en el lado p. Al momento en que se forma la unión p-n. El símbolo esquemático para el diodo semiconductor se ilustra en la figura 1. normalmente se utiliza una resistencia en serie con el diodo para limitar su corriente. la flecha del símbolo del diodo apunta en sentido del flujo convencional de corriente. la figura 1.9 a). Es importante destacar que la fuente de voltaje tiene que ser lo suficientemente grande para su- perar la barrera de potencial VB. existe y es la que detiene el proceso de propagación de portadores de corriente. Por su parte.7 En esta figura. ocurre del material n hacia el material p. detectan un potencial positivo en el lado n que los repele de regreso al lado p.8 b) muestra el símbolo esquemático del diodo polarizado directamente por una fuente de voltaje. Para el silicio.7 V para contrarrestar la barrera de potencial VB y producir el flujo de corriente. En consecuencia. En tanto. El efecto es que los portadores de carga. atraídos por la terminal po- sitiva de la fuente de voltaje V. y la migración de electrones del lado n al lado p se detiene. un electrón libre sale del lado p. Ambos sentidos funcionan correctamente cuando se analizan circuitos con dio- dos. en ambas secciones n y p.8 a). V.7 V y para el germanio 0. como se muestra en la figura 1. De la misma forma. al material semiconductor tipo p y la terminal positiva al material semiconductor tipo n. los iones forman una diferencia de potencial denominada barrera de potencial.6 La terminal negativa de la fuente de voltaje repele los electrones libres del material n. se crea una barrera de potencial.8a) muestra un diodo con polarización directa. =clafZfem\eZ`feXc[\\c\Zkife\j 8 : @ X g e I Y M @ =clafi\Xc[\\c\Zkife\j M =`^liX(%/ Le`eg$egfcXi`qX[X[`i\ZkXd\ek\%X =l\iqXj\ok\ieXjfYc`^XeXcfj\c\Zkife\jc`Yi\j[\ccX[feXZilqXicXqfeX[\X^fkXd`\ekf_XZ`X \ccX[fg#[fe[\cfj\c\Zkife\jcc\eXecfj_l\Zfj%LeXm\q\e\ccX[fg#cfj\c\Zkife\jYi`eZXe[\_l\Zf\e_l\Zf\ecXjYXe[Xj[\mXc\eZ`X%Y  . El área donde se localizan los iones positivos y nega- tivos se conoce como región o zona de agotamiento. 1 Dispositivo semiconductor básico: el diodo Conforme continúa el proceso de difusión. grupo editorial patria® 29 . respectivamente. Una vez en el lado p. la polarización directa de un diodo permite el flujo con facilidad de corriente a través del diodo. por tanto. los huecos que se mueven del lado p al lado n.`f[fgfcXi`qX[f[`i\ZkXd\ek\#[fe[\j\\jg\Z`]`ZX\c]claf[\Zfii`\ek\i\Xcp\cZfem\eZ`feXc% POLARIZACIÓN INVERSA DEL DIODO La polarización inversa de una unión p-n se lleva a cabo conectando la terminal negativa de una fuente de voltaje. son 6 Recordemos que si la unión p-n es de silicio. podemos observar que el material semiconductor n se conecta a la terminal negativa de la fuente de voltaje. no se pueden mover. En este caso. la fuente de voltaje debe ser igual o mayor de 0. V.3 V. VB. VB. los electrones llenan los huecos de los enlaces covalentes incompletos y se mueven de hueco en hueco. electrones y huecos. en este libro se utiliza el flujo real cuando analicemos circuitos con diodos. también se observa que el flujo real de electrones. 7 En la práctica.7 b). sin embargo. Por cada electrón libre que entra en el lado n. La figura 1. sin embargo. en contra del sentido de la flecha del símbolo del diodo. recibe este nombre debido a que está desprovista de todos los portadores de carga. V. En la figura 1. forzándolos a cruzar la zona de agotamiento hasta el material semiconductor p. Los iones positivos y negativos de esta área están fijos a la estructura del cristal y. Los electrones moviéndose del lado n al lado p detectan un potencial negativo en el lado p que los repele de regreso al lado n. como se muestra en la figura 1. Es importante hacer notar que la barrera de potencial no se puede medir externamente con un voltímetro. la barrera de potencial es aproximadamente 0. POLARIZACIÓN DIRECTA DEL DIODO La polarización especifica el voltaje o corriente que puede ser utilizado como control de un dispositivo. 3 V. el voltaje de polarización directa disminuye con el aumento de la temperatura. los huecos en el lado p son apartados de la unión y atraídos hacia la terminal negativa de la fuente de voltaje. La figura 1. El cuadrante superior derecho de la figura 1. IR. si la gráfica de la figura 1.9 b) muestra el símbolo esquemático de un diodo polarizado inversamente por una fuente de voltaje externa. 8 Para cualquier diodo. la corriente IF se incrementaría con rapidez aproximadamente a 0. de manera ideal.6 V.8 Para un diodo de silicio. Los huecos son los portadores minoritarios en el lado n. podemos observar que la corriente que pasa por el diodo es muy pequeña cuando el voltaje de polarización es menor de 0.7 V es el valor aproximado que se asume en la barrera de potencial. mientras que los electrones libres son los portadores minori- tarios en el lado p. Los electrones en el lado n son alejados de la unión y atraídos hacia la terminal positiva de la fuente de voltaje V. 30 ELECTRÓNICA • MIJAREZ . por tanto.10 corresponde a los voltajes y las corrientes cuando el diodo es po- larizado directamente. En esta. 8 : @4'8 X g e Y M M =`^liX(%0 Le`eg$egfcXi`qX[X`em\ijXd\ek\%X <cmfckXa\[\cX]l\ek\\ok\ieXXc\aXXcfjgfikX[fi\jdXpfi`kXi`fj[\ZX[XdXk\i`Xc j\d`Zfe[lZkfi#`eZi\d\ekXe[f\cXeZ_f[\cXqfeX[\X^fkXd`\ekf%Y JˆdYfcf\jhl\d}k`Zf [\le[`f[fgfcXi`qX[f`em\ijXd\ek\ZfeleX]l\ek\[\mfckXa\\ok\ieX% Corriente de fuga La figura 1. un voltaje de 0. También es importante hacer notar que la caída de vol- taje. Como se puede observar. La corriente de fuga se debe a los portadores minoritarios de corriente en ambas partes del diodo semiconductor. se incrementa. Debido a que la temperatura determina el número de pares electrón-hueco generado. Como la corriente de fuga es determinada por los portadores de carga minoritarios. sin embargo. Lo anterior incrementa el ancho de la región de agotamiento. la figura 1. la corriente del diodo se incrementa en forma abrupta. ya sea directa o inversa. existe una pequeña corriente en el diodo. aproximadamente 2 mV por grado centí- grado. V. Sin embargo.10 muestra la curva característica de un diodo de silicio en cuatro cuadrantes.9 b) muestra.10 fuera para un diodo de germanio. V. la cual es aproxi- madamente 0. Los portadores minoritarios de corriente existen como resultado de la energía térmica.3 V para un diodo de germanio. de polarización directa permanece relativamente constante aun cuando la corriente. su dirección es opuesta a la dirección de corriente efectuada cuando el diodo se polariza de manera directa. por lo que cualquier incremento en la tempe- ratura del diodo también incrementará esta corriente. la cual produce algunos pares electrón-hueco. VF . CURVA CARACTERÍSTICA VOLTAJE-CORRIENTE DE LOS DIODOS La curva característica de los diodos involucra el comportamiento de voltaje y corriente con respecto a su polarización. llamada corriente de fuga. aun con esta polarización. la corriente de fuga también es afectada por la temperatura. IF. al momento de incrementar su polarización directa arriba de 0.6 V. De la misma manera. que el flujo de corriente en un circuito con un diodo polarizado inversamente es cero. 1 Dispositivo semiconductor básico: el diodo apartados de la unión. El resultado de esta polarización es que el diodo entra en su estado de no conduc- ción y actúa de manera ideal como un circuito abierto con una resistencia infinita. grupo editorial patria® 31 . se vuelve muy grande. la corriente fluirá por el diodo.5 A. Se dice que la corriente de fuga superficial existe porque hay muchos huecos en los bordes o superficies del cristal de silicio debido a enlaces covalen- tes incompletos. La pregunta sería: ¿Qué diodo se seleccionaría para cumplir el requerimiento especificado? La solución fácil 9 Aun cuando el diodo ideal podría bloquear toda la corriente cuando se polariza inversamente. podemos observar que una corriente. por la fuente de voltaje al momento de moverse a través del diodo. La corriente de fuga se incrementa principalmente con el aumento de la temperatura y es relativamente independiente de los cambios en el voltaje de polarización inverso. la corriente que fluye por el diodo es resultado de los portadores minoritarios de carga producidos debido a la energía térmica. IO  1 A). de polarización directa. a gran velocidad. es resultado de la corriente de fuga superficial. b) 1N4002 (PIV  100 V. Se recomienda no operar los diodos en la región de ruptura. VR. el diodo podría dañarse. %- %. donde el costo del diodo se incremen- ta con su voltaje inverso de pico (PIV. la corriente IR se incrementa abruptamente como se observa en la figura 1. Estos huecos proveen la trayectoria para algunos electrones libres en la superficie del cristal. ya que si también se sobrepasa la corriente IR máxima. por lo que se genera este efecto avalancha. es decir permitir pasar solo los semiciclos positivos. más electrones de valencia.10 representa al diodo de silicio polarizado inversamente. IR. VR. la realidad es que no es así. Antes de llegar al voltaje de ruptura. Cuando se alcanza el voltaje de ruptura. conforme se incrementa el voltaje de polarización inverso. es decir. VBR. la corriente IR tiene sentido opuesto a la IF . su potencia. si se tiene una aplicación donde se requiere rectificar. MImfckj MGmfckj %( %) %* %+ %. Y como le sucede a todos los seres humanos. IO  1 A). los cuales a su vez son liberados y acelerados a gran velocidad. que tienen su precio. por sus siglas en inglés). si el voltaje de polarización inversa es lo suficientemente grande. El punto en que esto sucede es el precio del diodo y es llamado voltaje de ruptura o voltaje inverso de pico (PIV. como se mencionó antes. por consiguiente. mientras que en la curva caracterís- tica del diodo se representa como una corriente en el cuadrante inferior izquierdo. ocurre un proceso denominado avalancha. 9 )' (.10. %/ %0 GfcXi`qXZ`e `em\ijX @Iμ8 =`^liX(%(' :limXZXiXZk\iˆjk`ZX[\mfckXa\$Zfii`\ek\[\le[`f[f[\j`c`Z`f% Voltaje de ruptura El cuadrante inferior izquierdo de la figura 1. IO  1 A) y c) 1N4005 (PIV  600 V. de valor muy pequeño fluye por la unión p-n. Este proceso es acumulativo. en conse- cuencia. hasta que se alcanza el voltaje de ruptura VBR. VR. el cual sucede porque los electrones libres producidos térmicamente en el lado p son acelerados. cada diodo también tiene su precio. de una onda sinusoidal de 130 VPP a 0. la cual es llamada corriente de fuga IR.9 Por ejemplo. 1 Dispositivo semiconductor básico: el diodo @=d8 ). e IO es la corriente promedio máxima en polarización directa. Estos electrones libres chocan con los electrones de valencia de las otras órbitas. Aquí. desprendiendo. IR. GfcXi`qXZ`e MfckXa\[\ilgkliX 8 [`i\ZkX (' M9I . El incremento ligero que se aprecia en la corriente de fuga. Cuando el voltaje de polarización inverso. y se tienen tres opciones de diodos: a) 1N4001 (PIV  50 V. por sus siglas en inglés). 12 El estado de un diodo semiconductor puede determinarse verificando su resistencia usando un óhmetro. La gráfica de la figura 1. En este caso V T representa los electronvolts equivalentes de la temperatura y se obtienen por V T  KT/e. Para el diodo existen otros parámetros que indica el fabricante. Aún así.7 V/22. VB . llamada aproxima- ción ideal. pode- mos calcular la resistencia de CD en los puntos A y B. 2.11 Lo anterior se debe a que la corriente IF no se incrementa en la misma proporción que el voltaje VF . el término exponencial se hace muy pequeño y la corriente I es aproximadamente la corriente inversa IR. Del mismo modo. Cuando el voltaje V es positi- vo y varias veces mayor que V T . ya que no será un cir- cuito lineal activo. sin embargo. estos despliegan la caída de voltaje del diodo en lugar de su resistencia. T es la temperatura absoluta y e es la carga del electrón. Si existen diodos en un circuito. por su parte. En polarización inversa. la cual es la máxima corriente instantánea que puede manejar un diodo en un solo pulso. si el valor de resistencia medido es muy alto en ambas polarizaciones.11 a). como se muestra en la figura 1.12 Por ejemplo. a menor costo. V T es aproximadamente 25 mV.12 a). si usamos la curva característica del diodo de la figura 1. Sobrepasar la corriente IFSM también puede destruir el diodo. es importante puntualizar dos cosas: 1. esta batería es de 0.10. Si el valor de resistencia medido es muy bajo en ambas polarizaciones. dicho circuito no tendrá un equivalente de Thévenin. podemos observar que la curva VF vs. la resistencia de CD de un diodo polarizado directamente se obtiene por medio de la fórmula RF  VF/IF . como un circuito abierto. Si el diodo se encuentra en buen estado. Pero. esta aproximación considera al diodo en polarización inversa. Es importante remarcar que algunos multímetros digita- les muestran el símbolo del diodo para probar el estado de los mismos. esta aproximación considera al diodo como un 10 Es importante hacernos amigos y que nos familiaricemos con las hojas de datos de los dispositivos. la resistencia RF en polarización directa será muy baja y la resistencia de polarización inversa RR será muy alta. ya que el voltaje de pico es o 65 VP que es menor al PIV de 100 V. 11 La curva característica ideal volts-amperes del diodo está definida por la ecuación I  IR(eV/VT 1). Punto A: RF  VF/IF  0. Cuando el diodo se polariza inversamente y V es negativo y algunas veces mayor que VT . la co- rriente se incrementa exponencialmente con el voltaje. por lo que el diodo se denomina dispositivo semiconductor no lineal. RF . y el término exponencial de la ecuación excede por mucho la unidad por lo que el valor de 1 del paréntesis puede ser despreciado. es más pequeña.11 c). A temperatura ambiente. Para el diodo de silicio. el diodo se encuentra en cortocircuito. En consecuencia. el diodo se encuentra polarizado directamente.65 V/11 mA  59 Ω Punto B: RF  VF/IF  0. 32 ELECTRÓNICA • MIJAREZ . 1 Dispositivo semiconductor básico: el diodo sería seleccionar la opción c). La segunda aproximación del diodo considera al diodo polarizado directamente como un diodo ideal en serie con una batería.5 mA  31 Ω Como se puede ver. muestra la curva característica del diodo en su aproximación ideal. ya que el PIV es 600 V y el IO es 1 A.11 b). donde K es la constante de Boltzmann. el mismo valor de la barrera de potencial. IF tiene un com- portamiento no lineal.7 V.10. entre más corriente conduce el diodo. el diodo se encuentra abierto. su resistencia. La opción que se seleccione de- penderá de la exactitud deseada en los cálculos del circuito. la proporción RR/RF será de orden de 1 000 o mayor. con una corriente cero. El diodo no obedece la ley de Ohm porque no es lineal. La primera aproximación del diodo es útil cuando se requiere una idea general de lo que sucede en un circuito respecto a voltajes y corrientes. La primera aproximación de un diodo. a excepción de un rango pequeño en el origen. la opción b) podría realizar el trabajo muy bien. APROXIMACIONES DE LOS DIODOS Existen tres aproximaciones para analizar circuitos con diodos semiconductores. Sin embargo. considera al diodo polarizado directamente como un interruptor cerrado y una caída de voltaje de cero volts. como la corriente IFSM.10 Resistencia de CD de un diodo Al examinar la región de polarización directa de la figura 1. Donde V es la caída de voltaje de la unión p-n. en la unión p-n. sin embargo. el voltaje VF no tiene que triplicarse para triplicar la corriente IF . como se muestra en la figura 1. Por ejemplo. como se muestra en la figura 1. además de la resistencia rB . El valor de rB depende del nivel de doping y del tamaño de los materiales.`f[fgfcXi`qX[f[`i\ZkXd\ek\#Zfej`[\iX[fZfdfle`ek\iilgkfiZ\iiX[f%Y . grupo editorial patria® 33 .1) De la ecuación 1. el voltaje de la barrera de potencial VB . @= M9 X MI M= M9 Y EfkX1M94'%. En polarización direc- ta. por su parte.13 a). en polarización directa se calcula con la ecuación 1. La tercera aproximación contiene la resistencia de los materiales p y n. como se muestra en la figura 1. esta aproximación incluye.1 podemos observar que.`f[fgfcXi`qX[f `em\ijXd\ek\#Zfej`[\iX[fZfdfle`ek\iilgkfiXY`\ikf%Z >i}]`ZXZfecXjZXiXZk\iˆjk`ZXj`[\Xc\j[\c[`f[f\egfcXi`qXZ`e[`i\ZkX\`em\ijX% interruptor abierto.1.12 b). En esta aproximación. VF . VF  VB IF rB (1. en polarización directa. la caída de voltaje.12 c). y se le denomina rB.MgXiXJ` :fii`\ek\[\ p'%*MgXiX>\ gfcXi`qXZ`e`em\ijX# Z\ifXdg\i\j#@I @I Z =`^liX(%() J\^le[XXgifo`dXZ`e[\c[`f[f%X GfcXi`qXZ`e[`i\ZkXZfej`[\iX[XZfdfle[`f[f`[\XcZfeleXYXk\iˆX\ej\i`\%Y GfcXi`qXZ`e `em\ijXZfej`[\iX[XZfdfle`ek\iilgkfiXY`\ikf%Z :limXZXiXZk\iˆjk`ZX[\gfcXi`qXZ`e`em\ijXp[`i\ZkX% La segunda aproximación se usa cuando se necesitan cálculos más exactos en el circuito en cuestión. la resistencia rB causa un pequeño incremento en el voltaje VF cuando se incrementa la corriente IF . 1 Dispositivo semiconductor básico: el diodo @= MfckXa\[\gfcXi`qXZ`e @ek\iilgkfiZ\iiX[f [`i\ZkX#Z\ifmfckj#M= GfcXi`qXZ`e[`i\ZkX Z\ifmfckj X MI M= @ek\iilgkfiXY`\ikf GfcXi`qXZ`e`em\ijX Z\ifXdg\i\j Y :fii`\ek\[\ gfcXi`qXZ`e`em\ijX# Z\ifXdg\i\j#@I @I Z =`^liX(%(( Gi`d\iXXgifo`dXZ`e[\c[`f[f%X . indica la curva característica de polarización directa e inversa de esta aproximación. La figura 1. como se observa en la figura 1. como se muestra en la figura 1. resolveremos el circuito de la figura 1.13 b) muestra la tercera aproximación del diodo en polarización inversa.14 b) muestra el circuito para la primera aproximación.7 V)/(1 A 0 A)  0. primero se asume que la corriente IF del diodo es cero cuando el voltaje de polarización directa VF es exactamente 0.7 V)/(100 Ω 2.1 V 0.14 a) para obtener el voltaje y la corriente de carga.14 c).14 d) muestra el circuito para la tercera aproximación.3) Para ilustrar el uso de las tres aproximaciones del diodo.13 c). donde: VL  VENT  10 V. con una resistencia de un valor muy grande.2 y los parámetros del diodo: rB  ΔV/ΔI  (1.3 V/100 Ω  93 mA (1. (1. La figura 1. rB  ΔV/ΔI (1. por tanto IL  VL/RL  10 V/100 Ω  100 mA (1. Posteriormente. donde: VL  VENT VB  10 V 0.73 mA (1.2. 1 Dispositivo semiconductor básico: el diodo @= GfcXi`qXZ`e[`i\ZkX M9  i9 X MI GfcXi`qXZ`e`em\ijX M9 I\j`jk\eZ`X[\gfcXi`qXZ`e`em\ijX Y :fii`\ek\[\]l^X \egfcXi`qXZ`e @I `em\ijX#@I Z =`^liX(%(* K\iZ\iXXgifo`dXZ`e[\c[`f[f%X GfcXi`qXZ`e[`i\ZkX#`eZclp\\cmfckXa\[\cXYXii\iX[\gfk\eZ`Xc# M9 #pcXi\j`jk\eZ`Xi9%Y GfcXi`qXZ`e`em\ijX#dl\jkiXleXi\j`jk\eZ`Xdlp^iXe[\#Xlehl\ef`e]`e`kX% Z :limXZXiXZk\iˆjk`ZX[\gfcXi`qXZ`e`em\ijXp[`i\ZkX% La figura 1.7 V.13 c) podemos observar que la pendiente de la curva. en la cual se observa un in- terruptor abierto en paralelo.7) 34 ELECTRÓNICA • MIJAREZ .4 Ω (1.4) Para la segunda aproximación.6) La figura 1. IL  (Vin VB)/(RL RB)  (10 V 0. en consecuencia.3 V.1 V y una corriente IF de 1 A.2) Donde ΔV representa el cambio en el voltaje del diodo a causa del cambio en su corriente ΔI. se tiene el circuito de la figura 1. usamos la ecuación 1.7 V  9. IR. se requiere calcu- lar la resistencia rB. en polarización directa. puede usarse para calcular la resistencia rB con la ecuación 1. muy pequeña. permite el paso de una corriente de fuga. la cual. Por ejemplo.5 Ω)  90. Para obtener rB . para un diodo 1N4001 que tiene un voltaje de polarización directo VF de 1. En la figura 1.5) Por tanto: IL  VL/RL  9. la red de CA de las compañías de electricidad es de 240 VCA. Los clientes residenciales en México. utilizan 120 VCA. Sin embargo. y para transformadores trifásicos es de 127 VCA y 220 VCA. 1 Dispositivo semiconductor básico: el diodo i94)%. como mencionamos al inicio de esta sección. Esta aplicación de los diodos es una de las más simples e importantes en el diseño de equipos elec- trónicos. la opción elegida dependerá de la exacti- tud deseada en los cálculos del circuito. Por tanto.07 V (1. la red eléctrica que proporciona electricidad a los hogares y las industrias es de CA. a los diodos se les llama rectificadores. se le conoce como fuente de alimentación. el voltaje es de 120 VCA y 240 VCA. pero ayuda a tener un entendimiento intuitivo de este impor- tante dispositivo.( 'M IC4(''Ω M<EK4('M IC4(''Ω M<EK4('M MC4('Ω X Y M94'%.14 a la cual se conectan la mayoría de los equi- pos electrónicos.Ω IC4(''Ω IC4(''Ω M`e4('M M<EK4('M MC40%*M MC4'%. como se observa en el capítulo 1 que se encuentra en el CD-ROM. 14 El voltaje nominal depende del transformador utilizado. Los componentes más importantes en las fuentes de alimentación son los diodos rectificadores.M i94)%. En México. para transformadores monofásicos. En esta sección estudiamos algunos de los circuitos rectificadores más comunes. los cuales convierten el voltaje de línea de CA a un voltaje de CD.M Z [ =`^liX(%(+ :`iZl`kfljX[fgXiX`cljkiXicXjXgifo`dXZ`fe\j[\c[`f[f#ZXcZlcXe[fjljmfckXa\jpZfii`\ek\j% X :`iZl`kffi`^`eXc%Y Gi`d\iXXgifo`dXZ`e%Z J\^le[XXgifo`dXZ`e%[ K\iZ\iXXgifo`dXZ`e% VL  IL r RL  90.73 mA r 100 Ω  9. no obstante.Ω . algunas veces. pero puede ser una cantidad muy grande si se está trabajando en el rango de μA (10 6) o ηA (10 9). Australia y otros países. para el caso de los clientes residenciales en Europa. grupo editorial patria® 35 .M M94'%. la línea de alimentación de 120 VCA. por esta razón. 13 Una corriente de 3 mA (10 3) podría ser una cantidad despreciable cuando manejamos cientos o miles de mA. asumiendo que todos los diodos son de silicio. A un circuito que convierte el voltaje de la línea de ali- mentación de CA a un voltaje requerido de CD.13 CIRCUITOS RECTIFICADORES La mayoría de los equipos electrónicos requiere voltajes de CD para operar de forma adecuada. por lo general. sin embar- go. debe ser convertida de alguna manera a CD.8) La primera aproximación puede no ser muy exacta. como se muestra en la figura 1. Cabe remarcar que el voltaje medido es el denominado voltaje eficaz o rms (root mean square. cuando el voltaje del secundario del transformador es negativo. En consecuencia.15 b). D1 se polariza directamente y permite el flujo de co- rriente hacia la carga RL.:4'%*(/MJ8C4(*%).15 a). podemos calcular el voltaje en el circuito secundario del transformador usando la relación NP:NS de la siguiente manera: VS  NSVP/NP  (1)(120 VCA)/4  30 VCA (1. como el que se muestra en la figura 1.414). T1. Por otro lado. por sus siglas en inglés).d K Y MJ8C "+(%.M K`\dgf#k (-%-. NP:NS.15 c). :`iZl`kfi\Zk`]`ZX[fi[\d\[`Xfe[X%X :`iZl`kf%Y MfckXa\\e\cj\Zle[Xi`f#MJ2mfckXa\[\jXc`[X#MJ8C% Z =fidX[\fe[X[\jXc`[X[\cZ`iZl`kfi\Zk`]`ZX[fi[\d\[`Xfe[X% Esto significa que si medimos con un voltímetro de CA el voltaje en el secundario del transformador. no permitiendo el flujo de corriente hacia la carga RL.( ()'M:8 IC4(''Ω *'M:8 -'?q K( X MJ "+)%+)M K`\dgf#k (-%-.414 (VP/1. Por tanto. Por su parte.)M 'M M. Por ejemplo. si el voltaje de entrada en el circuito primario del transformador es de 120 VCA.9) EG1EJ +1( MJ8C . El transformador de la figura 1. D1 se polariza inversamente y se comporta como un interruptor abierto. si queremos saber el voltaje de pico máximo del secundario de T1 pro- cedemos de la siguiente forma: 36 ELECTRÓNICA • MIJAREZ . VSAL. el voltaje de salida. es una serie de pulsos positivos.15 a) tiene una relación de vueltas. 1 Dispositivo semiconductor básico: el diodo Rectificador de media onda El circuito rectificador más simple es el rectificador de media onda. VS. T1 es el transformador de bajada que provee el voltaje en el secundario.d K Z =`^liX(%(. como los que se muestran en la figura 1. Cuando el voltaje del secundario del transformador es positivo. el volta- je que mediríamos sería de 30 VCA. el cual se obtiene dividiendo el voltaje de pico máximo de la onda sinusoidal entre raíz de 2 o 1. de 4:1. Esto se puede expresar por la ecuación 1. Por tanto. es decir tiene 60 ciclos en un segundo.11) Al usar la segunda aproximación del diodo. de la figura 1. en este caso VPP  2 r 42.27 V (1.7 V  41. el diodo D1 conduce. lo cual puede ser expresado por la ecuación 1. como se muestra en el voltaje secundario. Cuando el voltaje del secundario es negativo. NP : NS 4:1 – D1 – + VD = Vs = 42. como se muestra en la figura 1. VSAL.(k`\e\hl\j\iZXgXq[\jfgfikXi\cmfckXa\[\g`ZfMG[\+)%+)M% grupo editorial patria® 37 . VS.(#gfcXi`qX[f`em\ijXd\ek\[liXek\\c j\d`Z`Zcfe\^Xk`mf[\cmfckXa\j\Zle[Xi`f[\ckiXej]fidX[fi%<e\jk\ZXjf.14: IDIODO  IL(CD) (1.14) La frecuencia de la línea de alimentación de CA es de 60 Hz.318. ICD.72 V  13.15 c).12) Este es el valor que hubiéramos medido a través de la carga RL usando un voltímetro de CD.67 ms. 1 Dispositivo semiconductor básico: el diodo VP  VS (rms) r 1. Cuando el voltaje en el secun- dario de T1 es positivo.67 ms. el voltaje de salida en el secundario.42  84. el diodo se polariza inversamente y no fluirá corriente por el diodo D1 ni por la resistencia de carga RL . por tanto T  16. como se muestra en la figura 1. en este caso 60 Hz.11: VCD  0.10) Por tanto.15.42 V 1 120 VCA Vs(rms) = 42.15 b). El voltaje promedio o de CD en la carga RL se obtiene multiplicando el voltaje pico VP por 0. Recordemos que el voltaje de circuito abierto a través de un circuito serie simple es el mismo que el voltaje de entrada. el cual en este caso es el voltaje del secundario del transformador. la segunda aproximación. entonces la corriente fluye por RL y se produce la serie de pulsos positivos. el voltaje de salida es cero. la frecuencia de la forma de onda del voltaje de salida del rectificador de media onda es igual a la fre- cuencia aplicada a la entrada del rectificador.15: fSAL  fENT (1.15) Cuando el voltaje de CA de la línea de alimentación se encuentra en su semiciclo negativo.42 V (1. En tanto.15 c) podemos observar que un ciclo del voltaje de salida. La figura 1. en la figura 1. Considerando la caída de voltaje del diodo D1.7 mA (1. En consecuencia.15 c) muestra la forma de onda de salida del rectificador de media onda. la ICD en la carga es la misma que la corriente en el diodo.16.318 r 41. el circuito equivalente en este es- tado se muestra en la figura 1. la corriente de CD en la carga. sería 42. esto es 2 r VP.27 V/100 Ω  132.13) Para el rectificador de media onda. podemos calcular el voltaje de CD en la carga RL del circuito de la fi- gura 1. el voltaje pico a pico (VPP) del secundario del transformador se obtiene multiplicando por dos el VP . El periodo de un ciclo se calcula como T  1/f. de la siguiente manera: VCD  0. como se muestra en la ecuación 1.318 r VSAL(P) (1.414  30 V r 1. se repite cada 16.15 b).42 V 0.72 V. puede calcularse así: ICD  VCD/RL  13.42 V RL = 100  60 Hz + T1 =`^liX(%(- :`iZl`kfi\Zk`]`ZX[fi[\d\[`Xfe[X#\e\cZlXcj\dl\jkiX\cZ`iZl`kf\hl`mXc\ek\[\c[`f[f#.84 V.414  42. De la misma forma. En cambio.19 b).76 V La corriente en la carga. del mismo modo.16.11: VCD  0. el cual utiliza dos diodos en lugar de uno.42 V. si usamos la segunda aproximación del diodo. Otro tipo de rectificador es el de onda completa. de esta manera. por lo que VS  30 VCA. Cuando la polaridad del voltaje VS es positiva. como se muestra en la figura 1. Es importante hacer notar que el sentido de corriente en la carga RL es la misma para los dos semiciclos de VS. valor eficaz. entonces el voltaje de pico será 56.414  40 r 1.318 r 55. D1 y D4 conducen. Sin embargo. primero obtenemos el voltaje de CD. Para calcular la corriente en la carga IL.86 V  17.17. 38 ELECTRÓNICA • MIJAREZ . el voltaje VS del transformador se obtiene por la relación de vuel- tas NP :NS .19 a). donde la relación de vueltas NP:NS. con corrientes de hasta 50 A o más. entonces. el cual es 42. los diodos D2 y D3 se polarizan inversamente y no conducen corriente hacia la carga. cuando la polaridad de VS es negativa. Algunos puen- tes rectificadores son gigantes en cuanto a su capacidad. y finalmente el PIV para D1 es el voltaje de pico del transformador 56.15 Como se observa. Cuando la polaridad de VS es positiva. T1 es el transformador de bajada que proporciona un voltaje secundario VS menor al de la línea de alimentación de CA.56 V. es 3:1. lo único que tendríamos que hacer es invertir el diodo en el circuito de la figura 1.86 V. generando la forma 15 En el mercado existe una gran variedad de rectificadores tipo puente disponibles como módulos pre-empaquetados. Para las conexiones de diodos de la figura 1. :`iZl`kfi\Zk`]`ZX[fi[\d\[`Xfe[XZfeleXi\cXZ`eEG1EJ4*1(\e\ckiXej]fidX[fiK(% En este caso.6 mA. primero calculamos el voltaje rms en el secundario del transformador VS  (NS/NP)VP  120 V/3  40 V de CA.42 V.414  56. IL. una versión más usada es la del rectificador tipo puente. permitiendo el flujo de corriente en la carga RL. el voltaje de salida es positivo.18. Cuando la polaridad del voltaje VS es negativa. los diodos D1 y D4 se polarizan inver- samente y no conducen corriente hacia la carga. permitiendo el flujo de corriente en la carga RL. los diodos D2 y D3 se polarizan directamente. La frecuencia en la forma de onda del voltaje de salida es 60 Hz. En esta misma polaridad de VS . tal como se muestra en la figura 1.17. IDIODO. y se requiere calcu- lar el voltaje en el secundario del transformador VS (voltaje eficaz y voltaje de pico). Como en el caso del rectificador de media onda. el voltaje de pico es VS(P)  42.76 V/100 Ω  177. se calcula como IL  VCD/RL  17. si se tiene el circuito de la figura 1. la especificación del voltaje inverso de pico (PIV) del diodo debe ser mayor que el valor del voltaje pico del secundario del transformador o el diodo entrará a la región de ruptura y se dañará. los diodos D2 y D3 conducen.7 V. Los más pequeños vienen con corrientes promedio máximas de 1 A y voltajes de ruptura que van desde los 100 hasta los 600 V.318 r VSAL(P)  0. NP : NS 3:1 VSAL D1 120 VCA VCA RL = 100  60 Hz T1 =`^liX(%(. Por esta razón.56 V. los diodos D1 y D4 se polarizan directamente. El valor de pico es VS(P)  VS r 1. se produce la forma de onda de la figura 1. como el que se muestra en la figura 1. 1 Dispositivo semiconductor básico: el diodo El diodo D1 debe ser capaz de soportar el voltaje de pico del secundario del transformador. Si quisiéramos un voltaje de salida negativo. Por ejemplo.56 V menos 0. que se consigue usando la ecuación 1. o incluso hasta los 1000 V. lo cual nos da un voltaje de 55.18. fSAL y el PIV para el diodo. En esta misma polaridad de VS. 19 d).16. VCD  0. La corriente de CD en la carga RL puede calcularse usando ICD  VCD/RL  26.)p. D4 + 41 V D1. VS VSAL +42.33 m c) d) =`^liX(%(0 I\Zk`]`ZX[fi[\fe[XZfdgc\kXk`gfgl\ek\%X MfckXa\#MJ #\e\cj\Zle[Xi`f[\K( %Y MfckXa\[\jXc`[XZlXe[fcfj[`f[fj. t T 8. Cada par de diodos realiza la rectificación de media onda para la carga RL.9 mA.42 V–1. lo cual puede expresarse usando la ecuación 1.03 V  26. para un rectificador de onda completa.(p. 1 Dispositivo semiconductor básico: el diodo NP : NS 4:1 – D1 D2 120 V CA Vs = 30 V CA VSAL 60 Hz + D3 D4 + RL = 100  T1 – =`^liX(%(/ I\Zk`]`ZX[fi[\fe[XZfdgc\kXk`gfgl\ek\% de onda de la figura 1.636 r VSAL(P) (1.16) En este ejemplo. se obtiene mediante la ecuación 1.09 V/100 Ω  260.17. El efecto com- binado de estos pares de diodos se muestra en la figura 1. Los pares de diodos D2-D3 y D1-D4 conducen en semiciclos opuestos de VS. la corriente en cada diodo es la mitad de la corriente de CD en la carga. D2. + 41 V D3.+Zfe[lZ\e%[ MfckXa\[\jXc`[XZfdY`eX[f% Usando la segunda aproximación del diodo. el voltaje de pico en la resistencia de carga RL es 42.* Zfe[lZ\e%Z MfckXa\[\jXc`[XZlXe[fcfj[`f[fj.19 c). t Tiempo. se resta 1. D4 0V 0V Tiempo. En este caso.4 V  41. Sin embargo.02 V. VCD  0.636 r 41. t 0V 0V T 16. IDIODO  IL/2 (1.17) grupo editorial patria® 39 .4 V debido a la caída de voltaje de los diodos en conducción.42 V D2. El voltaje promedio o de CD en la salida de un rectificador de onda completa.09 V.67 m a) b) VSAL VSAL D1. sin filtros. D3 + 41 V Tiempo. t Tiempo. En la figura 1. Esto es: VA-C(D1)  VB VS(P)  0. También se puede ver que.7 V A RL = 100  T1 – =`^liX(%)' :`iZl`kf\hl`mXc\ek\[\legl\ek\i\Zk`]`ZX[fi[liXek\\cj\d`Z`Zcfgfj`k`mf[\cmfckXa\j\Zle[Xi`fMJ[\ckiXej]fidX[fi% Por tanto. entonces es necesario invertir los diodos D1-D4. IDIODO  260. la frecuencia de la forma de onda de salida se obtiene mediante la ecuación 3. hasta su cátodo. fSAL  2fENT (1.18.42 V 0. hasta su cátodo. la frecuencia a la salida del puente rectificador sería fSAL  2fENT  2 r 60 Hz  120 Hz. al cual se someten los diodos D1-D4 del puente rectificador.20 se puede observar que los diodos D2 y D3 se encuentran polarizados directamente y que son re- emplazados por la segunda aproximación del circuito equivalente del diodo.72 V De igual forma. RECTIFICACIÓN FILTRADA El proceso para convertir de CA a CD no es suficientemente bueno con solo rectificar la forma de onda de CA con diodos. Esto es: VA-C (D4)  VS(P) VB  42. vamos a usar el circuito equivalente de la figura 1.18.9 mA/2  130. usamos la ley de Kirchhoff para los voltajes.7 V 42. Si se requiere tener un voltaje de salida negativo en el circuito de la figura 1. para D4 iniciamos en el ánodo y continuamos la malla en sentido horario. los diodos D1 y D4 se polarizan inversamente y son sustituidos por dos interruptores en estado abierto. En realidad.20 durante el semiciclo positivo del voltaje secundario VS del trans- formador.72 V Entonces. podemos observar que el PIV para cada diodo del puente rectificador es el voltaje del secundario VS máximo menos 0. La forma de onda rectificada tiene un componente de CD.18) Para la línea de alimentación que tiene una frecuencia de 60 Hz.42 V  41.7 V. Con el fin de obtener el voltaje inverso de pico (PIV).7 V  41. para calcular el PIV de cada diodo del puente rectificador. Esta corriente es la mitad de la corriente de carga porque cada par de diodos en el rectificador puente provee la mitad de la forma de onda rectificada en la carga RL.7 V A – 120 VCA VS (CA) = 42.42 V 60 Hz + K + D3 – D4 – VB = 0. esta 40 ELECTRÓNICA • MIJAREZ .4 mA. ya que no cambia de polaridad. 1 Dispositivo semiconductor básico: el diodo En este ejemplo. NP : NS 4:1 + K D1 + D2 VB = 0. en esta pola- ridad del voltaje de secundario del transformador. iniciamos en el ánodo y continuamos la malla en sentido horario. Para D1. Debido a que el puente rectificador proporciona una salida de onda completa. 1 Dispositivo semiconductor básico: el diodo señal muestra muchas variaciones periódicas de voltaje, conocidas como voltaje de rizo, Vr , en lugar de tener un vol- taje constante. Estas variaciones tienen que ser suavizadas a fin de obtener una señal de CD genuina, o como la mayo- ría de las aplicaciones requiere. Una forma de suavizar o filtrar estas variaciones de voltaje es conectar un capacitor a la salida del rectificador, como se muestra en la figura 1.21. CA Rectificador C Carga =`^liX(%)( :XgXZ`kfiZfe\ZkX[fXcXjXc`[X[\leZ`iZl`kfi\Zk`]`ZX[fiZfe]`e\j[\]`ckiX[f% Cuando los diodos del circuito rectificador conducen, se carga el capacitor, C; en este sentido, el capacitor funcio- na como un dispositivo de almacenamiento de energía. La energía almacenada en el capacitor está dada por U  ½CV 2, para C en farads, para V en volts y para U en joules. Como los diodos no permiten flujo de corriente de regreso al circuito rectificador, la descarga de C es hacia la carga. Con el fin de obtener un voltaje de rizo pequeño y de que la constante de tiempo de la descarga sea mayor que el de recarga, el valor del capacitor se escoge de tal forma que la resistencia de carga, RL, multiplicada por el valor de C, sea mucho mayor que el recíproco de la frecuencia del voltaje de rizo;16 esto es: RLC >> 1/f (1.19) Los capacitores usados para este propósito son del tipo electrolítico, con valores arriba de los 100 μF. Con el fin de aclarar el comportamiento de C, vamos a analizar el circuito rectificador de media onda de la figura 1.22 a). Cuando el voltaje del secundario de T1 es positivo, el diodo D1 conduce y el capacitor C se carga. Antes del tiem- po t0, como se muestra en la figura 1.22 b), el voltaje en la carga es igual al voltaje positivo del secundario. En el tiempo t0, el voltaje en C alcanza su valor máximo de pico, VP . Cuando el voltaje en el secundario de T1 cae abajo del va- lor máximo, D1 se polariza inversamente y el capacitor empieza a descargarse a través de la carga RL. El intervalo de descarga comprende desde t0 hasta t1. En el tiempo t1, el diodo se polariza directamente otra vez debido al semiciclo positivo del transformador T1, lo cual permite que el capacitor se recargue a su valor pico en el tiempo t2. De aquí, EG1EJ +1( MJ8C M=4)'%,(M ;( ()'M:8 IC4(''Ω 'M -'?q Mj4(,M:8 :4('''μ= kf kj k] K`\dgf#k (-%-.d K K( X Y =`^liX(%)) I\Zk`]`ZX[fi[\d\[`Xfe[XZfeleZXgXZ`kfiZfdf]`ckif%X :`iZl`kf%Y =fidX[\fe[X[\cmfckXa\[\jXc`[X% 16 La frecuencia del voltaje de rizo está relacionada con la frecuencia de la forma de onda de salida del circuito rectificador, la cual es de 60 Hz para el rectificador de media onda y de 120 Hz para el rectificador de onda completa. grupo editorial patria® 41 1 Dispositivo semiconductor básico: el diodo observamos que el capacitor se carga por un tiempo corto, de t1 a t2, y que el capacitor se descarga aproximadamente por 16.67 ms, en este circuito rectificador de media onda. Estos 16.67 m corresponden al periodo de un ciclo de la frecuencia de entrada de 60 Hz. A la componente de CA de la forma de onda de la figura 1.22 b) se le denomina vol- taje de rizo, Vr. Resulta relativamente fácil calcular el valor aproximado del voltaje de rizo, principalmente si este valor es peque- ño comparado con el nivel de CD, como se muestra en la forma de onda de la figura 1.23 b), el cual corresponde a un rectificador de onda completa tipo puente mostrado en la figura 1.23 a). Voltaje de rizo pico a pico VSAL del filtro, 120 VCA con carga 60 Hz VSAL sin capacitor t a) b) =`^liX(%)* MfckXa\[\i`qfgXiXlei\Zk`]`ZX[fi[\fe[XZfdgc\kX%X :`iZl`kf%Y =fidX[\fe[X% Como vimos en el análisis del rectificador de media onda, la carga causa que el capacitor se descargue entre ciclos, o semiciclos para una rectificación de onda completa. Si se asume que la corriente permanece constante, la variación del voltaje de rizo se calcula usando la ecuación 1.20. ΔVr  I Δt/C (1.20) Esta ecuación se deriva de I  C dV/dt, que vimos en el capítulo 0. Si usamos 1/f para el rectificador de media onda o 1/2f para el rectificador de onda completa, podemos calcular el voltaje de rizo de la siguiente manera: ΔVr  ICARGA/f C (media onda) (1.21) ΔVr  ICARGA/2f C (onda completa) (1.22) Las ecuaciones 1.21 y 1.22 nos proporcionan una muy buena aproximación del valor esperado del voltaje de rizo. Sin embargo, si se desea obtener el valor exacto, se requiere utilizar la ecuación que considere la descarga de manera exponencial.17 No obstante, calcular el valor exacto del voltaje de rizo puede ser engañoso por dos razones: 1. La descarga es exponencial siempre y cuando la carga sea resistiva, y muchas cargas no lo son; en realidad, la carga más utilizada es el regulador de voltaje, el cual se comporta más como una carga de corriente constante. 2. Las fuentes de alimentación normalmente se construyen con capacitores electrolíticos polarizados, es decir, que no se les permite cargarse con polaridad opuesta a la indicada. Estos capacitores, por lo general, tienen una tolerancia de 20% o mayor. Por tanto, en su peor caso se diseña considerando la variación del capacitor. En este caso, considerar la descarga del capacitor como una rampa es bastante exacto, en especial si el voltaje de rizo es muy pequeño y si además tomamos en cuenta el diseño con variaciones de 20% del capacitor, el voltaje de rizo se podría sobreestimar. Existe una variación del rectificador de onda completa el cual utiliza un transformador con una derivación cen- tral, dos devanados, como se muestra en la figura 1.24. 17 El cálculo del voltaje de rizo exacto considera un valor exponencial de la descarga, el cual está dado por la fórmula Vr  VSAL(P)(1 – e t / RLC ). Don- de t es el tiempo de descarga de C y RLC es la constante de tiempo del filtro. 42 ELECTRÓNICA • MIJAREZ 1 Dispositivo semiconductor básico: el diodo +V Entrada CA Tierra –V =`^liX(%)+ I\Zk`]`ZX[fi[\fe[XZfdgc\kXZfe[\i`mXZ`eZ\ekiXc% El circuito de la figura 1.24 provee dos voltaje de CD, uno positivo y otro negativo, que muchos componentes electrónicos, como los amplificadores operacionales, pueden necesitar. Pero nos estamos desviando, estos amplifica- dores los estudiamos en el siguiente capítulo. Este circuito es muy eficiente porque ambos semiciclos de la forma de onda de entrada del rectificador son usados en cada sección de devanado. Reguladores Como vimos en la sección anterior, si seleccionamos el capacitor conectado al circuito rectificador con un valor muy grande, se puede reducir el voltaje de rizo a niveles muy bajos; sin embargo, esta solución, que coloquialmente es lla- mada “fuerza bruta” por los ingenieros, tiene algunas desventajas: 1. El capacitor requerido puede ser prohibitivamente muy grande y muy caro. 2. Aun cuando el voltaje de rizo se reduzca a niveles muy pequeños, todavía se tendrán variaciones en el voltaje de salida, debido a variaciones en el voltaje de línea, cambios en la corriente de carga, etcétera. Una mejor alternativa para el diseño de una fuente de alimentación es usar capacitores lo suficientemente grandes como para reducir el voltaje de rizo a niveles bajos, aproximadamente 10% del voltaje de CD; después, usar un circui- to activo con retroalimentación, que elimine el voltaje de rizo que pudiera permanecer. Dicho circuito está hecho de componentes activos (transistores) que mantienen el voltaje de salida constante. A este dispositivo electrónico se le llama regulador de voltaje y constituye una parte integral en el diseño de fuentes de alimentación para proveer el vol- taje de CD a muchos equipos electrónicos. La figura 1.25 muestra un regulador de voltaje conectado a un circuito rectificador de onda completa tipo puente. Regulador Entrada Salida Tierra =`^liX(%), =l\ek\[\Xc`d\ekXZ`e[\:;i\^lcX[X% grupo editorial patria® 43 1 Dispositivo semiconductor básico: el diodo Los reguladores reductores permiten disminuir un voltaje de CD, usualmente no regulado, a otro de menor mag- nitud, regulado. Hay dos diseños básicos para los reguladores: regulador lineal y regulador conmutado.18 Los regula- dores más simples, y en los cuales nos centraremos, son los reguladores lineales. En la actualidad, este tipo de reguladores de voltaje se encuentra disponible como circuitos integrados de muy bajo costo y con diferentes voltajes de salida y corriente, es decir potencia; además, poseen protección contra corto circuito, protección térmica de sobre- carga, etcétera. Un regulador muy popular en el diseño de circuitos electrónicos es el LM7085, que proporciona 5 V CD y una corriente de hasta 1000 mA, ideal para muchas aplicaciones basadas en microprocesadores o microcontro- ladores. Pero, nos estamos adelantando, estas aplicaciones las veremos posteriormente. DIODOS DE PROPÓSITO ESPECÍFICO Adicionalmente a la rectificación, los diodos tienen otras aplicaciones muy útiles. Por ejemplo, ciertos diodos pueden utilizarse como reguladores de voltaje o para emitir luz de diferentes colores. En esta sección estudiamos dos diodos de propósito específico: los diodos emisores de luz (LED) y los diodos Zener. Diodos emisores de luz Los compuestos ternarios de galio, arsénico y fósforo se usan en el proceso de dopaje o doping durante la fabricación de diodos que emiten luz de diferentes colores, a los cuales se les llama diodos emisores de luz (LED, por sus siglas en inglés). Algunos de los colores de LED más comunes son el rojo, el verde, el amarillo, el naranja y hasta el invisible (infrarrojo). Los LED han alcanzado mucha popularidad debido a sus características semiconductoras, por lo que son amplia- mente usados en muchas aplicaciones, donde operan en lugar de las lámparas incandescentes. El material usado en la construcción de su envolvente es semitransparente, de tal modo que la luz que emiten puede escapar y hacerse visible. Recordemos el proceso de polarización directa de los diodos, en el cual los electrones del material tipo n cruzan hacia el material tipo p y llenan sus huecos; es importante remarcar aquí que cuando los electrones libres se combinan lle- nando los huecos, liberan energía, la cual se emite principalmente en forma de calor o luz. En el caso de los diodos de silicio, la recombinación produce calor mientras que en los LED produce luz. Para el diodo de silicio, la luz no pue- de escapar porque el material no es transparente. Sin embargo, como el material del LED es semitransparente, la luz sí puede emitirse al ambiente circundante. El color de la luz emitida por el LED depende del tipo de compuesto usado en su construcción. El circuito esquemático que representa al LED es un diodo con flechas apuntando hacia afuera de la unión, indi- cando la luz emitida cuando se polariza directamente, como se muestra en la figura 1.26. =`^liX(%)- JˆdYfcf\jhl\d}k`Zf[\leC<;% La barrera de potencial, VB, para un LED es considerablemente mayor que en un diodo de silicio; los valores típi- cos van de 1.5 V a 2.5 V, aproximadamente. La cantidad exacta de la caída de voltaje en polarización directa varía de- pendiendo del color del LED y de la corriente que pasa a través de él. Sin embrago, en la mayoría de los casos se asume una caída de potencial de 2 V para todos los colores y valores de corriente. No obstante, hay que poner atención a las hojas de datos del fabricante, ya que en la actualidad existen LED de baja potencia, de alta intensidad, etcétera. Por ejemplo, en la figura 1.27 a) se muestra un circuito típico con LED, donde se requiere calcular la corriente del LED en polarización directa. 18 El funcionamiento de los reguladores lineales es similar a una resistencia variable que mantiene el voltaje de carga constante gracias a la retroa- limentación proveniente de la carga misma. Por otro lado, en un regulador conmutado se emplean principalmente elementos de conmutación e inductores para lograr obtener el voltaje de carga deseado. 44 ELECTRÓNICA • MIJAREZ 1 Dispositivo semiconductor básico: el diodo Rs = 2.2 k VENT = +24 V Rs = 2.2 k + + VENT = 24 V LED + – – VLED  2.0 V LED – a) b) =`^liX(%). :`iZl`kfZfeleC<;gfcXi`qX[f[`i\ZkXd\ek\%X :`iZl`kf[\C<;%Y :`iZl`kf[\C<;dfjkiXe[fcXZXˆ[X[\gfk\eZ`Xc \egfcXi`qXZ`e[`i\ZkX% Para este circuito, primero se asume una caída de potencial en polarización directa de 2 V, como se muestra en la figura 1.27 b), a menos que los datos del fabricante indiquen otro valor. Posteriormente, se lleva a cabo la ley de Kirchhoff para los voltajes VENT  ILEDRS VF(LED). De esta ecuación obtenemos que: ILED  (VENT VF(LED))/RS  (24 V 2 V)/2.2 kΩ  10 mA Una diligencia común es determinar la resistencia limitadora de corriente, RS, para un circuito con LED, que pro- porcione una corriente de 20 mA. Para el circuito de la figura 1.27 b), tendríamos que: RS  (VENT VF(LED))/ILED  (24 V 2V)/ 20 mA  1 100 Ω Un valor frecuente sería 1 kΩ, con lo cual tendríamos una corriente de 22 mA. Los LED presentan un voltaje de ruptura, VBR, muy bajo, con valores típicos que van desde los 3 V hasta los 15 V. Debido a estos valores tan bajos de VBR, accidentalmente se pueden aplicar voltajes inversos que pueden dañar los LED o degradar su desempeño. Una forma de proteger a los diodos de polarizaciones de voltaje inversas, aunque también aplica para otros circuitos, es usar un diodo de silicio en paralelo con el LED, como se muestra en la figura 1.28. VENT = –24 V – Rs = 2.2 k + – + D1 Si 0.7 V LED + – =`^liX(%)/ ;`f[f[\j`c`Z`f\egXiXc\cfZfeleC<;ljX[fZfdfgifk\ZZ`e[\gfcXi`qXZ`fe\jXZZ`[\ekXc\j`em\ijXj% grupo editorial patria® 45 1 Dispositivo semiconductor básico: el diodo En caso de que ocurra una polarización inversa accidental para el LED, como conexión inversa o fallas causadas en la fuente de alimentación, el diodo de silicio se polarizará directamente, proporcionando una trayectoria adicional de flujo de corriente hacia el diodo D1, protegiendo al LED, como se muestra en la figura 1.28. Diodo Zener El diodo Zener es un tipo de diodo que ha sido optimizado para operar en la región de ruptura.19 Estos diodos no son como los diodos rectificadores, los cuales se diseñan para operar lejos de esta región. Uno de los usos más importantes de los diodos Zener es como referencia de voltaje o reguladores de voltaje en aplicaciones de baja corriente. El diodo Zener se conecta en paralelo con la carga de la fuente de alimentación, donde el voltaje Zener permanece constante a pesar de las variaciones de corriente en la carga. La figura 1.29a muestra el símbolo esquemático para el diodo Zener. La figura 1.29 b) muestra la curva característica típica de un diodo Zener de silicio. En la región de polarización directa, el diodo Zener actúa como un diodo rectificador común y corriente, con una caída de potencial, VF, de 0.7 V, cuando está conduciendo. Por otro lado, en la región de polarización inversa, una pequeña corriente de fuga fluye hasta que se alcanza el voltaje de ruptura, VBR. En este punto, la corriente inversa se incrementa abruptamente; a dicha corriente se le conoce como corriente Zener y se le denomina IZ. En la figura también podemos observar que al volta- je de ruptura se le designa, en este dispositivo, como voltaje Zener, VZ. Este voltaje permanece constante aun cuando la corriente IZ se incrementa. Debido a esta característica, el diodo Zener puede ser usado en circuitos de regulación de voltaje, ya que el voltaje VZ continúa constante aun cuando la corriente IZ varía en un rango amplio.20 IF Región de polarización –VZ VF IZT Región de polarización inversa IZM a) b) =`^liX(%)0 ;`f[fQ\e\i%X JˆdYfcf\jhl\d}k`Zf%Y :limXZXiXZk\iˆjk`ZX#mfckj$Xdg\i\j#gXiXle[`f[fQ\e\i[\j`c`Z`f% Los diodos Zener son normalmente especificados por los fabricantes por su voltaje Zener, VZ, de acuerdo con una corriente de prueba IZT. Por ejemplo, el diodo Zener 1N4742A tiene un voltaje, VZ, de 12 V, para una corriente de prueba, IZT, de 21 mA. El sufijo A indica una tolerancia en el voltaje Zener de 5%. 19 El diodo Zener lleva su nombre en honor del f ísico norteamericano Clarence Melvin Zener (1905-1993), quien describió sus propiedades eléc- tricas. 20 En realidad, el voltaje VZ no es perfecto, ya que no permanecerá exactamente constante cuando la corriente IZ cambie. Existen ciertas variaciones causadas por una pequeña impedancia Zener, RZ, que todos los diodos Zener presentan. Esta RZ actúa como una resistencia en serie con el dio- do Zener. El efecto de RZ es que aparecerán pequeños cambios en VZ cuando IZ varíe. 46 ELECTRÓNICA • MIJAREZ 1 Dispositivo semiconductor básico: el diodo Otro parámetro importante de los diodos Zener es la potencia que disipa, PZ, la cual es determinada por la ecua- ción PZ  IZ VZ. Por ejemplo, si un diodo Zener de 5.6 V tiene una corriente de 40 mA, su disipación de potencia será PZ  IZ VZ  40 mA r 5.6 V  224 mW. Se debe tener cuidado que la disipación de potencia en un diodo Zener sea menor que la máxima disipación de potencia, PZM, especificada por el fabricante, y la cual se obtiene por la ecuación PZM  IZM VZ, donde IZM es la máxima corriente Zener del diodo, como se muestra en la figura 1.29 b). Por tanto, la IZM que un diodo Zener puede manejar de manera segura está dada por la ecuación 1.23. IZM  PZM/VZ (1.23) Si se excede el valor de IZM, es muy probable que en el diodo haga su aparición el llamado “humo mágico” y el diodo se dañe de forma permanente. Por ejemplo, si se tiene un diodo Zener de 12 V y 1 W, y se requiere saber la máxima corriente con la que se pue- de trabajar el diodo de manera segura, hacemos uso de la ecuación 1.23. IZM  PZM/VZ  1 W/12V  83.3 mA Entonces, la máxima corriente Zener para este diodo no debe exceder los 83.3 mA. Como se comentó anteriormente, los diodos Zener se usan con frecuencia como referencias de voltaje o regula- dores de voltaje en circuitos que demandan poca corriente. Para estas aplicaciones, el diodo Zener se conecta en paralelo con una fuente de voltaje variable, de tal forma que este se polarice inversamente como se muestra en la fi- gura 1.30. Rs + + VZ VENT VSAL – PZM – =`^liX(%*' GfcXi`qXZ`e`em\ijX[\le[`f[fQ\e\igXiXi\^lcXileX]l\ek\[\\ekiX[XZfemfckXa\mXi`XYc\% El diodo conducirá cuando el voltaje de la fuente, VENT , alcance el voltaje Zener, VZ, manteniendo el voltaje VZ especificado; esto es, el voltaje VENT variable será regulado a un voltaje de salida relativamente constante, VSAL , aun cuando existan fluctuaciones en el voltaje de entrada. Sin embargo, debido a la baja impedancia de los diodos Zener, se usa una resistencia RS para limitar la corriente en el circuito. Por tanto, la corriente IZ, que fluye en el diodo Zener, se puede calcular usando la ecuación 1.24. IZ  (VENT VZ)/RS (1.24) Por ejemplo, la figura 1.31 muestra un diodo Zener de 6.2 V, usado como un regulador de voltaje sin carga. En consecuencia, para obtener la corriente IZ utilizamos la ecuación 1.24. IZ  (VENT VZ)/RS  (25 V 6.2 V)/1 kΩ  18.8 mA No obstante, los circuitos reguladores sin carga, como el que se ilustra en la figura 1.31, son de poca utilidad, ya que por lo general a estos circuitos se les conecta una carga RL, como se muestra en la figura 1.32. grupo editorial patria® 47 1 Dispositivo semiconductor básico: el diodo Rs = 1 k + + + VZ = 6.2 V VENT = 25 V VSAL PZM = 1 W – – – =`^liX(%*( I\^lcX[fi[\mfckXa\Q\e\ij`eZXi^X% Rs = 100  + VSAL = VZ = 7.5 V VENT = 15 V + VZ = 7.5 V PZM = 1 W RL = 150  – – =`^liX(%*) I\^lcX[fi[\mfckXa\Q\e\iZfeZXi^X% Debido a que la carga RL se conecta en paralelo con el voltaje VZ, el voltaje en la carga, VL, es igual al voltaje en el Zener; esto es, VL  VZ. La caída de voltaje en RS está dada por VENT VZ. Por tanto, la corriente en la resistencia se puede calcular como: IS  (VENT VZ)/RS  (15 V 7.5 V)/100 Ω  75 mA La corriente en la carga IL se calcula usando la ley de Ohm: IL  VZ/RL  7.5 V/150 Ω  50 mA Usando la ley de Kirchhoff para las corrientes, podemos obtener la corriente IS por la ecuación 1.25. IS  IZ IL (1.25) Por tanto, IZ puede calcularse despejando de la ecuación 1.25. IZ  IS IL  75 mA 50 mA  25 mA Con estos valores podemos calcular la potencia disipada del circuito: PZ  IZVZ  25mA r 7.5 V  187.5 mW Cuando el voltaje de entrada, VENT, es constante y la corriente IL disminuye debido a un aumento en RL, entonces la corriente IZ se incrementará en la misma proporción. 48 ELECTRÓNICA • MIJAREZ este no es ni buen conductor ni buen inversamente como un interruptor abierto con cero aislante. estos elementos emiten luz de ánodo positivo con respecto al cátodo.5 V. RF .318 r VSAL(P). y para un rec- ± Los semiconductores tipo n tienen muchos elec. directa o inversa? utilizaría y por qué. RR. se tienen tres op. del rectificador. ca un voltaje inverso VR de 100 V y una corriente ciones de diodos: a) el 1N4001 (PIV  50 V.636 r trones libres como resultado de añadir átomos pen. Al polarizar el ± Un diodo se polariza directamente haciendo su diodo directamente.7 V. a resistencia más común del diodo Zener es como regulador de directa.2 En una aplicación donde se requiere rectificar una 1. La teriales. amarillo.2 V y el cátodo con 10. La primera considera al diodo polari- el germanio (Ge) son ejemplos de este tipo de ma. son tetravalentes. PROBLEMAS DEL CAPÍTULO 1 1. El voltaje de ruptura es tí- ± Un diodo polarizado directamente muestra una re. por g r u p og reud pi too er di ai tl oprai ta r lip aa® tria® 49 . ± Los circuitos rectificadores de media onda u onda tor al cual se le añaden otros átomos no tetravalentes completa convierten un voltaje de CA en un voltaje mediante un proceso denominado dopaje o doping. Un ± La frecuencia del voltaje de rizo a la salida de un rec- hueco es considerado como una carga positiva. tificador de media onda es la frecuencia de la señal ± Un diodo semiconductor está formado por la unión de entrada. dispositivo semiconductor que permite el flujo de ± Los LED son diodos fabricados con compuestos ter- corriente en una sola dirección. sistencia muy baja. Am- de átomos. verde o naranja. Defina qué diodo ción. Para un rectificador de onda completa es de un semiconductor tipo p y uno n. a una temperatura de la unión b) el 1N4002 (PIV  100 V. mos trivalentes durante el proceso de dopaje.5 V. Los semi. picamente de 3 V a 15 V. 1 Dispositivo semiconductor básico: el diodo DATOS IMPORTANTES DEL CAPÍTULO ± Los semiconductores tienen cuatro electrones de ± Existen tres aproximaciones de circuitos equivalen- valencia. tificador de onda completa sin filtro es 0.05 μA. para operar en la región de ruptura. recibe el nombre de semiconductor bas aproximaciones consideran al diodo polarizado intrínseco. ± Cuando se conecta un capacitor a la salida de un rec- conductores tipo p tienen muchos huecos o vacíos en tificador. El diodo es un el doble de la frecuencia de la señal de entrada. el voltaje de CD de salida es aproximada- sus enlaces covalentes como resultado de añadir áto. El silicio (Si) y tes del diodo. máxima en polarización directa. es decir. El dopaje incrementa la conductividad del material ± Para un rectificador de media onda sin filtro. corriente fluyendo a través de él. IO  1 A). La aplicación La relación de resistencia inversa. mente es de 1. ± Un semiconductor extrínseco es aquel semiconduc. VP .6 A. calcule la resistencia (PIV  200V. el vol- semiconductor. IO  1 A). zado directamente como un interruptor cerrado. segunda aproximación considera la barrera de po- ± Un material semiconductor puro. donde el costo del diodo se inversa RR del diodo. narios de arsénico. galio y fósforo. voltaje en circuitos que requieren poca corriente. taje de salida de CD es 0. polariza inversamente haciendo el ánodo negativo ± La caída de voltaje de un LED polarizado directa- con respecto al cátodo. con una componente de CD.1 Si en un diodo de silicio se polariza el ánodo con sus siglas en inglés) e IO es la corriente promedio 9. mente el voltaje pico.5 V a 2. 1. mientras que un diodo polariza. ± El diodo Zener es un diodo especialmente diseñado do inversamente muestra una resistencia muy alta. ¿cómo es la polariza. VB . es al menos 1000:1. tavalentes durante el proceso de dopaje. con un solo tipo tencial. VSAL(P). inversa IR de 0. que para el diodo de silicio es 0. IO  1 A) y c) el 1N4003 p-n de 25 °C. incrementa con su voltaje inverso de pico (PIV. Con estos datos. Un diodo se color rojo.3 La hoja de datos del diodo de silicio IN4002 especifi- onda sinusoidal de 80 VPP a 0. 35 se tiene una relación capacitor de 100 μF y se conecta una carga de 100 Ω.6 En el circuito de la figura 1.51 V rio del transformador VS (voltaje eficaz y voltaje de pico). fSAL y el PIV para el diodo.34.7 En el circuito de la figura 1. resuelva el siguiente rizo usando las ecuaciones que aproximan el cálculo circuito. =`^liX(%*. Calcule el VCD . un 1. IDIODO. de este voltaje. 50 ELECTRÓNICA • MIJAREZ . 1 Dispositivo semiconductor básico: el diodo 1. calcule el voltaje en el secunda. PIV para Calcule el voltaje de rizo usando las ecuaciones que cada diodo y fSAL. 0V NP : NS to ts tf Tiempo. NP : NS I 8:1 D1 RL = 470  120 VCA RL = 100  I 60 Hz Vs = 15 VCA C = 1 000 F + – VENT = 18 V T1 =`^liX(%** a) 1.4 Considerando la barrera de potencial en la aproxi. 1. NP : NS 3:1 – D1 D2 120 VCA Vs = 30 VCA VSAL 60 Hz + 120 VCA D3 D4 60 Hz + RL = 100  T1 – =`^liX(%*.37 se tiene una relación de vueltas del transformador de 8:1.36. de vueltas 3:1.8 En el circuito rectificador de la figura 1. IL . IL. VSAL VP = 20. t 5:1 VSAL 16. aproximan el cálculo de este voltaje. IDIODO .5 Del circuito de la figura 1.67 m D1 T 120 VCA VCA RL = 300  60 Hz b) =`^liX(%*- T1 =`^liX(%*+ 1. calcule el voltaje de mación de un diodo de silicio. donde la relación de vueltas NP:NS es 5:1. Rs = 100  + VSAL 1.5 V PZM = 1 W RL = 250  + + – 15 V LED – – – =`^liX(%+( a) 1. 1. cule la máxima corriente Zener para este diodo.6 V y 0.12 Calcule la corriente IZ para el circuito regulador 1. calcule IS.40. 1. Rs = 1 k + 1. IL e IZ.24 ¿Qué aproximación de circuito equivalente para un diodo se usaría si se requiere conocer de ma- nera general los voltajes y las corrientes de un cir- =`^liX(%+' cuito? grupo editorial patria® 51 . calcule IS. calcule la corriente 1. defina cuál es la corriente que fluye a través del diodo.1 V PZM = 500 mW RL V = +9 V – – – Rs + =`^liX(%+) VLED 2.10 En el circuito de la figura 1. Expli- VENT = 25 V VSAL – PZ = 1 W que su respuesta.21 Si se polariza directamente un diodo de silicio con un voltaje de 0.42.19 ¿Cuál es valor de la barrera de potencial para un diodo de silicio y para uno de germanio? sin carga de la figura 1. – 1.18 En un material semiconductor describa cómo se 1. 1.9 En el circuito de la figura 1. 1. IL.41. Rs = 100  Rs = 1.38. PZ. =`^liX(%*/ para valores de RL  270 Ω y RL  510 Ω. calcule la resisten- cia limitadora para tener una corriente de LED de + 20 mA.22 El diodo es un dispositivo lineal o no lineal.5 W.17 Defina la diferencia entre un semiconductor in- =`^liX(%*0 trínseco y uno extrínseco. calcule el valor de IZ si RL se abre. + + VZ = 9. 1.1 V 1.39. 1 Dispositivo semiconductor básico: el diodo 1.20 En un diodo polarizado inversamente defina cuál es la causa principal de la corriente de fuga.5 k + VSal = VZ = 7.16 Defina cuántos electrones de valencia tiene un b) átomo de silicio o de germanio.0 V LED – 1. VENT = 9 V + VZ = 5. IZ y del LED. cal- crea un par electrón-hueco.5 V.23 Explique cómo puede probarse el estado de un diodo con un multímetro.14).5 V VEnt = 15 V + VZ = 7.15 En el circuito del problema anterior (1.14 En el circuito de la figura 1.11 Se cuenta con un diodo Zener de 5.13 En el circuito de la figura 1. – 1. . en este capítulo se analizan las característi- cas de construcción y de operación de los transistores bipolares. X Polarización del transistor BJT. Para funciones de amplificación. más que como amplificadores. En la actualidad. 53 . por lo que es necesario apoyarse en circuitos que involucren transistores discretos para realizar el trabajo. Por ende. de los arreglos de transistores Darlington y de los transistores tipo FET. empecemos. porque hay situaciones en el diseño de equipo electrónico donde el CI que cumpla todos los requerimientos simplemente no existe. aun cuando la mayoría de los circuitos electrónicos que se construyen hoy en día em- plean CI. BJT. En este capítulo estudiamos: X Construcción del transistor bipolar BJT. principalmente operando como interruptores. mediante el uso de transisto- res discretos. Asimis- mo. Esta importancia reside en la necesidad de conocer las propiedades de entrada y salida de cada CI. en el capítulo 5 se estudian con detalle las características teóricas y prácticas de los CI denominados amplificadores operacionales (OP AMP). con el propósito de realizar su interfaz o conexión a otros CI o al mundo exterior. entonces. los circuitos integrados (CI) han reemplazado casi por completo la construcción de circuitos. 2 El activo transistor El transistor es el ingrediente principal de todo circuito electrónico. Aprender cómo usar los transistores puede ser apasionante y divertido. desde el amplificador u oscilador más simple hasta la computadora digital más sofisticada. los cuales son meros arreglos de transistores y otros componentes que se construyen en un mismo material semiconductor. Un buen entendimiento del funcionamiento del transistor es primordial. es un dispositivo que puede amplificar. 2 El activo transistor X Regiones de operación de los transistores. ya que para saber que habían inventado algo. observando que la señal de salida sonaba más fuerte que la señal de entrada. La razón por la que la región del colector es la más 1 El 23 de diciembre de 1947. La propiedad de amplificación de potencia.1 b) ilustra un transistor pnp. CONSTRUCCIÓN DEL TRANSISTOR El transistor es el ejemplo más importante de un componente “activo”. voltaje o corrien- te. La mayoría de los portadores inyectados en la base desde el emisor no se va hacia la terminal de la base. el cual fue llamado transistor de punta de contacto. En estas figuras podemos observar que. X Operación y características principales del JFET. y su dopaje es moderado. La potencia adicional la obtiene de una fuente de potencia externa. la base es un área muy delgada y ligeramente dopada. produ- ciendo una señal de salida con más potencia que su señal de entrada. X Tipos de transistores FET. <d`jfi  e g e :fc\Zkfi <d`jfi  e g e :fc\Zkfi 9Xj\ 9Xj\ X Y =`^liX)%( :fejkilZZ`e[\ckiXej`jkfiZfejljki\ji\^`fe\j[fgX[Xj%X KiXej`jkfiege%Y KiXej`jkfigeg% La región del emisor es densamente dopada. sino que pasan hasta la región del colector. para algunos el inven- to más influyente del siglo xx. Los tres f ísicos estadounidenses obtuvieron patentes independientes por cada transistor y fueron galardonados con el Premio Nobel de Física en 1956. X Transistor FET. su función es emitir o inyectar portadores de corriente a la región de la base. sus características generales y su polarización. considerado el predecesor del transistor de unión inventado por William B.1 a) se observa un transistor npn. fue lo más importante para los inventores del transistor. Shoc- kley. mientras que la figura 2. Brattain y John Bardeen demostraron. El transistor es un semiconductor construido con tres regiones dopadas y tres terminales. para ambos transistores. X Transistor BJT como interruptor. como se muestra en la figura 2. principalmente para funcionar como interruptor. para crear su propia empresa. En tanto. El área del colec- tor es la más grande de las tres regiones. colecta o atrae a los portadores de corriente que son inyectados a la base. El colector. ¡exacto!.1. X Transistor Darlington. por sus siglas en inglés). Por su parte. donde contrató jóvenes brillantes de las universidades aledañas. de la fuente de alimentación. en los laboratorios Bell. alimentaron con un transistor un altavoz o bocina. Shockley dejó los laboratorios Bell y se fue a California. X Valores máximos de potencia. la base es la región más angosta. X Verificación del transistor BJT con un óhmetro. Walter H. 54 ELECTRÓNICA • MIJAREZ .1 Iniciamos esta sección estudiando la construcción básica del transistor bipolar de unión (BJT. como su nombre lo indica. En la figura 2. la operación de amplificación del primer transistor. la cual se encuentra entre las regiones más anchas del emisor y el colector. su tierra natal. X Transistor FET como interruptor. Hoy sabemos el gran impacto en nuestras sociedades que sigue teniendo el descubrimiento del transistor. algunos de estos investigadores abandonaron su empresa y formaron Fairchild Semicon- ductors e Intel. la barrera de potencial en ambas uniones es aproximadamente 0. mientras que la unión de la derecha es llamada la unión base-colector. que normalmen- te se consigue en la embajada de ese país y ha sido transmitido por televisión. Para el silicio. en la base tipo p se usan pequeños círculos. La unión pn a la izquierda del transistor es llamada la unión emisor-base. Mientras que para indi- car los portadores mayoritarios. en esas regiones. Existe un video muy interesante y altamente recomendable llamado video-historia de la industria electrónica de Japón. en la figura 2. La figura 2. EB. BC.4 b). :fc\Zkfi: :fc\Zkfi: 9Xj\9 9Xj\9 <d`jfi< <d`jfi< X Y =`^liX)%+ JˆdYfcf\jhl\d}k`Zf[\ckiXej`jkfi9AK%X KiXej`jkfiege%Y KiXej`jkfigeg% 2 La industria electrónica en Japón dio un impulso muy grande a su economía. e g e <d`jfi :fc\Zkfi <d`jfiYXj\ :fc\ZkfiYXj\ :XgX[\X^fkXd`\ekf :XgX[\X^fkXd`\ekf 9Xj\ =`^liX)%* I\^`fe\j[\X^fkXd`\ekf[\lekiXej`jkfiege% En la figura 2. El símbolo esquemático para ambos tipos de transistores se muestra en la figura 2. diseñado en Japón. grupo editorial patria® 55 . de gran influencia en el plano interna- cional. Es importante notar que para el transistor npn de la figura 2. la flecha en el emisor apunta hacia afuera. huecos. En el transistor pnp sucede lo opues- to. La difusión de elec- trones de ambas regiones n hacia la base p genera una barrera de potencial. VB. en el emisor y colector los portadores de corriente mayoritarios son los huecos.4 a). con industrias como Sony.2 =`^liX)%) :fejkilZZ`e[\lef[\cfjgi`d\ifjkiXej`jkfi\jege[\^\idXe`f% En el transistor npn. para ambas uniones pn. electrones libres. La figura 2. los portadores de corriente mayoritarios son electrones libres en el emisor y en el colector. para indicar la concentración de los portadores de carga mayoritarios.2 muestra la construcción de uno de los primeros transistores npn de germanio.3 se puede apreciar que los símbolos de menos (-) se usan en el emisor y colector tipo n. 2 El activo transistor grande es porque tiene que disipar más calor que la base y el emisor. mientras que los portadores de corriente mayoritarios en la base son los electrones libres.7 V.4. la flecha en el emisor apunta hacia adentro. mientras que para el transistor pnp.3 muestra las capas o regiones de agotamiento en un transistor npn sin polarizar. mientras que los portadores de corriente mayoritarios en la base son los huecos. 6 muestra las corrientes del emisor IE. La co- rriente que fluye hacia la terminal de la base. la unión emisor-base. es muy pequeña. mientras que al voltaje de alimentación en la unión CB se le denomina VCC. 2 El activo transistor Los transistores npn o pnp no difieren en términos de su capacidad para amplificar potencia. El voltaje de alimentación de la unión EB se designa como VEE . debe ser positivo. solo algunos huecos se encuentran disponibles para recombinación en la base. cada tipo requiere diferentes polaridades para su correcta operación. segundo. 56 ELECTRÓNICA • MIJAREZ . Primero. Polarización del transistor BJT Para que un transistor funcione adecuadamente como amplificador. Para colectar la mayoría de los electrones libres inyectados del emisor a la base. Después de que el voltaje colector-base alcanza cierto nivel. Los elec- trones del emisor tipo n son repelidos hacia la base por la terminal negativa de la fuente de alimentación VEE. debido a que los electrones libres inyectados en la base deben llenar los huecos antes de que puedan fluir hacia la terminal de la base. EB. <d`jfi :fc\Zkfi  e g e 9Xj\ Æ " Æ " M<< M:: =`^liX)%. Por ejemplo. GfcXi`qXZ`e[\lekiXej`jkfiegegXiXcXZfe\o`e[\YXj\Zfd’e% Observe que en esta conexión la terminal de la base es común para ambas uniones. como se ilustra en la figura 2. Sin embargo. debe polarizarse direc- tamente. el cual puede lograrse con un pequeño voltaje. De hecho. La figura 2. incrementar este voltaje tendrá un efecto mínimo o ningún efecto en el número de electrones libres que entran al colector. el voltaje colector-emisor. en un transistor npn. CE. es necesario crear un campo eléctrico lo suficientemente fuerte en la unión colector-base. CB. la corriente IB. si el voltaje CB es muy grande. el voltaje positivo CB atrae electrones libres de la región de la base tipo p hacia la región del colector antes de que se combinen con los huecos en la base tipo p. el voltaje de ruptu- ra se podría exceder. el voltaje CE debe ser negativo. mientras que la unión colector-base.  e g e < : @: @< @9 9 Æ " Æ " M<< M:: =`^liX)%- :fii`\ek\j[\\d`jfi#@<#[\YXj\#@9#p[\Zfc\Zkfi#@:#[\lekiXej`jkfiegegfcXi`qX[fZfeZfe\o`e[\YXj\Zfd’e% En la figura 2.6 podemos observar que la mayoría de los electrones inyectados del emisor a la base pasan hacia la región del colector. solo algunos electrones se combinan con los huecos. Como la región de la base es muy angosta y ligeramente dopada. voltaje o corriente. la corriente de la base IB y la corriente del colector IC. y a esta se le denomina corriente de re- combinación. Hay dos razones para que esto suceda así. lo cual dañaría al transistor.5. mientras que en el transistor pnp. debe polarizarse inversamente. En esta conexión. La beta de CD es expresada por la ecuación 2. los voltajes externos utilizados para polarizar el transistor son VBB y VCC .050 mA  24. IE  IB IC (2. en este caso un transistor npn. si un transistor tiene una corriente IB  20 mA y una corriente IC  1. de la ecuación 2. El primero. se muestra en la figura 2.48 A. Por ejemplo.3) IB grupo editorial patria® 57 . Las flechas indican el sentido de las corrientes IE .6. VBB . es fácil que podamos obtener la relación que existe entre estas mediante la ecuación 2. usando la ecuación 2. su valor es tan cercano a la unidad. al que se denomina emisor común. Por ejemplo.1.95 mA Después. que se ignora la di- ferencia entre IC e IE.7. IC e IB .1. @: e " g M:: Æ e " M99 @<4@9"@: Æ @9 @: =`^liX)%.3.5 A Una de las características que define qué tan cercanos son los valores de IE con respecto a IC es la llamada alfa de CD.95 mA A   0. el alfa de CD es 0.2 calculamos α: I C 24. el valor se acercará más a la unidad. CB. y se requiere calcular la corriente IE. podemos hacer uso de la ecuación 2. KiXej`jkfigfcXi`qX[fgXiXleXZfe\o`e[\\d`jfiZfd’e% La ganancia de corriente de CD en un transistor conectado en configuración de emisor común se llama beta de CD. por lo que IC tiene aproximadamente el valor de IE.1) En la mayoría de los transistores la IB es muy pequeña. mientras que VCC proporciona una polarización inversa a la unión colector-base. Entre más delgada y menos dopada sea la región de la base. y se le designa por la letra griega β o por la constante hfe .99 o mayor. y es expresada por la ecuación 2.2) IE En la mayoría de los casos. y se desea obtener el alfa de CD.48 A 0. si se tiene un transistor con una corriente IE  25 mA y una IB  50 μA. IC B (2.998 IE 25 mA Otra forma de conexión para un transistor.02 A  1.2. En muchos análisis. Así: IE  IB IC  1. primero. IC A (2. BE. provee una polarización directa a la unión base-emisor. 2 El activo transistor Si observamos los sentidos de las corrientes en la figura 2. a la cual se le designa como α. debido a que la terminal del emisor es común a ambos lados del circuito.1 despejamos IC : IC  IE IB  25 mA 0. 3: IC  β r IB  200 r 60 μA  12 mA Ahora bien.5: A B (2. si se tiene un transistor con una corriente IC  15 mA y una IB  40 μA. usaremos el transistor npn conectado en emisor común de la figura 2. β  200 e IB  60 μA.3. usando la ecuación 2. se puede calcular β usando la ecuación 2.'μ8 . esto es. los parámetros de CD α y β pueden relacionarse uno a otro. la de corte. / 0 (' (( () (* (+ M:< mfckj X Y =`^liX)%/ KiXej`jkfiegeZfe\ZkX[f\e\d`jfiZfd’e%X :`iZl`kf%Y >i}]`ZX[\@:mj%M:<gXiX[`]\i\ek\jmXcfi\j[\Zfii`\ek\[\YXj\% En este circuito se puede observar que los voltajes de polarización. se usa para controlar la cantidad de corriente de base. Con un valor fijo de RB. si β es conocido. IB. Para esto.5) 1 A Por ejemplo. α puede calcu- larse usando la ecuación 2. hacemos uso de la ecuación 2. Para describir estas regiones. la activa y la de ruptura.996 B   249 1 A 1 0. si un transistor tiene una β  150 y se pide obtener α.996 REGIONES DE OPERACIÓN DE LOS TRANSISTORES Existen diferentes regiones de operación del transistor. @94+'μ8 + @94*'μ8 * M99 < @94)'μ8 M9< ) @94('μ8 ( @94' ( ) * + . - . 2 El activo transistor Por ejemplo.4: B 150 A   0. VBB puede ajustarse para producir la corriente de base deseada. y se requiera calcular la corriente IC . como son la región de saturación. si se conoce α.8 a). despejamos IC de la ecuación 2.4: B A (2. son variables y que el valor de la resistencia de base. tenemos 15 mA B  375 40 μA Otro ejemplo típico es que se nos proporcionen la beta de CD y la corriente IB .'μ8 M:< M:: . @94-'μ8 I9 9 - @94.996 y se solicite encontrar β: A 0. 58 ELECTRÓNICA • MIJAREZ .993 B 1 150 1 Otro ejemplo es que tenga α  0. y se pide calcular la beta de CD. RB . Entonces. VBB y VCC . M:9 @:D8 : @94.4) B 1 Del mismo modo. ya que significa que la corriente de colector IC es controlada únicamente por la corriente de base IB. se le llama región de saturación. es decir unas decenas de volt. Esta área se llama región de corte. Al área vertical de las curvas. 3 Cuando un transistor se encuentra saturado. Ahí.9. ya que se encuentra saturada. IC de un transistor npn para varios valores de corriente IB se muestra en la figura 2. 2 El activo transistor Al variar VBB se puede proveer de un rango amplio de valores de corriente de colector y de corriente de base. VCB. la corriente IC es cero. - . entonces podemos calcular la corriente de colector mediante IC  β × IB  100 × 50 μA  5 mA. ya que la corriente del colector. Por tanto. IC. el diodo que hace la unión colector-base es polarizado inversamente y la corriente de co- lector IC  β × IB. / 0 (' (( () (* (+ M:< mfckj =`^liX)%0 I\^`fe\j[\jXkliXZ`e#[\Zfik\pXZk`mX[\lekiXej`jkfiege%:XiXZk\iˆjk`ZXjZfc\Zkfi$\d`jfipZXiXZk\iˆjk`ZXjZfc\Zkfi$YXj\% Región de corte Cuando la corriente IB  0. IC por lo general es ignorada. pode- mos observar que cuando el VCE es cero. Cuan- do el transistor se encuentra saturado. Cuando el VCB es arriba de cero volts. es muy pequeña. Si asumimos que el voltaje VBB ha sido ajustado para producir una corriente de base IB  50 μA y que β  100. Esto es importante. llega un punto en el que por más agua que le agreguemos. si VCC se varía desde unas cuantas decenas de volt hasta varios volts. ya no es controlada únicamente por la corriente de base IB. IC. IC. se dice que un transistor está en corte cuando la corriente IC es cero. Si no existe un voltaje positivo conectado a la terminal del colector. la corriente de colector.9. cerca del origen. no se tendrá ningún efecto en la corriente de colector IC . En la figura 2. En tanto se mantenga polarizada inversamente la unión colector-base. cuando el voltaje colector-emisor. por más que se incremente la corriente de base. para los transistores de silicio. VCE. @94-'μ8 - @94.3 I\^`e[\ I\^`e jXkliXZ`e XZk`mX @:D8 @94. grupo editorial patria® 59 . Región de saturación La gráfica de VCE vs. entonces IC  β × IB  100 × 70 μA  7 mA.8 b). por tanto. la corriente IC también se incrementa de forma lineal. @94+'μ8 + @94*'μ8 * I\^`e @94)'μ8 ) [\Zfik\ @94('μ8 ( @94' ( ) * + . esta permanecerá constante.8 a) también podemos observar que VCC puede variarse desde varios volts hasta unas cuantas decenas de volts. como se observa en la figura 2. Si VBB se incrementa para tener una corriente de base IB  70 μA. Lo anterior es cierto siempre y cuando no se exceda el voltaje de ruptura de colector-emisor. sin ningún efecto en la corriente de colector IC . se incrementa desde cero. Sin embargo. esto ocurrirá independientemente del valor del voltaje colector-base.'μ8 .'μ8 . IB . debido a que la unión colector-base no se polariza inversamente. este no puede atraer electrones desde la base. De la figura 2. Esto es análogo a la esponja que absorbe agua.8 a) también podemos resaltar que el VCE  VCB VBE. la corriente de colector. De igual manera. y. IC se mantendrá en 5 mA. la curva característica se encuentra muy cerca del eje horizontal. no absorberá más. como se muestra en la fi- gura 2. ya no se incre- mentará. para un valor específico de voltaje VCE. fluya por el circuito.5 W y el voltaje VCE  15 V. es demasiado grande. IB  40 μA y se asume una β  100. de lo contrario. La ecuación 2.6 podemos calcular Pd: Pd  IC × VCE  6 mV × 9 V  54 mW Por ende. VALORES MÁXIMOS DE OPERACIÓN Los transistores. presentan una Pd de aproximadamente ½ W. es mayor que la corriente de base. el voltaje colector-emisor. para evitar que se pueda dañar. VCB. Potencia de disipación Pd La potencia de disipación. Por ejemplo. el circuito del colector actúa como una fuente de corriente. la corriente de colector. VCE .8 a) se pide calcular el Pd. 2 El activo transistor Región activa La región activa del transistor es aquella en que las curvas características del colector son prácticamente horizontales. permitiendo que una corriente de colector. VCC  9 V. usando la ecuación 2. IC. las cuales se especi- fican en la hoja de datos del producto que proporciona el fabricante. de la figura 2. IB. Pd. VCB . IC  β r IB. y la potencia de disipación. Por tanto. el voltaje emisor-base. la corriente de colector.3 mA 4 Los transistores de pequeña señal. posteriormente. Entonces.9. como cualquier otro dispositivo. presentan ciertas limitaciones en su operación. la unión del dio- do colector-base presenta una ruptura eléctrica. 60 ELECTRÓNICA • MIJAREZ . Región de ruptura La región de ruptura ocurre cuando el voltaje colector-base.5 W/15 V  33. En esta región.6) El valor de esta multiplicación no debe exceder el proporcionado como valor máximo por el fabricante Pd(máx). Esta área de operación debe evitarse en el diseño con transistores. como se muestra en la figura 2. IC.6.6: Pd  IC r VCE (2.9 porque se asume que la ruptura del transistor no ocurrirá cuando el diseño del transistor se realiza de forma adecuada. podríamos ver aparecer el humo mágico indicando el daño. Para este caso. como se muestra en la ecuación 2. Despejando IC de la ecuación 2. donde también se incluyen los valores máximos de operación. IC. Pd. Pd  0. muy grande y no de- seada. por lo general. de un transistor se obtiene multiplicando la corriente IC por el voltaje VCE. para el transistor de la figura 2.8 a). el transistor seleccionado debe tener una potencia de disipación máxima mayor a los 54 mW. VEB .6 también puede usarse para obtener la máxima corriente IC. mientras que los transistores de potencia tienen una Pd mayor a ½ W. primero calculamos la corriente de colector IC  β r IB  100 r 60 μA  6 mV. por un factor de ganancia beta. tenemos que VCC  VCE  9 V. en este caso. Cuando el transistor opera en esta región. Esta región no se muestra en la figura 2. Estos valores son el voltaje de colector-base. obtenemos: IC  Pd /VCE  0. esto es.4 Otro ejemplo sería obtener la máxima IC en el transistor cuando se tiene la potencia Pd y el voltaje VCE. de 25 ºC. mientras que el tercer subíndice indica la condición de tercer terminal no involucrada. significa que por cada 1 ºC que se eleve la temperatura de la unión. restamos este valor de potencia. la capacidad de disipación de potencia del transistor se reducirá 2 mW. a temperatura ambiente. TC . estos pueden verificar- se usando un óhmetro. y el factor de reducción es 2. temperaturas mayores a este rango destrui- rán el transistor. la disipación de potencia. emisor-base y colector-emisor. 6 La función de óhmetro puede obtenerse de multímetros analógicos. este factor de reducción es especificado en W/ºC. el factor de reducción de Pd se especifica considerando la temperatura del encapsulado. de tal manera que la temperatura de la unión no alcance tales niveles de destrucción. normalmente es proporcionada por el fabricante a una temperatura ambiente. los fabricantes proporcionan el factor de reducción de Pd para temperaturas arriba de los 25 ºC. con la terminal de la base abierta.10 muestra un transistor npn reemplazado por su circuito equivalente de diodos. Por ejemplo. En otro ejemplo se tiene un transistor de ¼ W de Pd. prácticamente en desuso.5 Conforme se aumenta la temperatura. Por lo general. < : < : KiXej`jkfiege :`iZl`kf\hl`mXc\ek\[\ [`f[fj[\ckiXej`jkfiege 9 9 =`^liX)%(' KiXej`jkfiegepjlZ`iZl`kf\hl`mXc\ek\[\[`f[fj% 5 Para los transistores de potencia. del valor original. TA. grupo editorial patria® 61 . o de multímetros digitales. y los diseñadores deben mantener esta potencia a valores menores a lo especificado. se hace menor. Por ejem- plo. el voltaje VCEO indica que el máximo voltaje permitido entre las terminales de colector y emisor es 40 V.4 mW/ºC  84 mW Finalmente. para obtener el nuevo Pd a 60 ºC: Pd  250 mW 84 mW  166 mW Voltajes de ruptura Otros parámetros importantes que listan las hojas de datos del transistor son los voltajes de ruptura correspondientes a las uniones colector-base. Pd. El exceder cualquiera de estos voltajes puede resultar en daño permanente del transistor. VERIFICACIÓN DEL TRANSISTOR CON UN ÓHMETRO Debido a que los transistores están conformados por uniones p-n. en lugar de la temperatura ambiente. y se desean calcular las características de potencia a 60 ºC. que también presentan la opción de prueba de diodos. TA. Por tanto. Para los transistores de si- licio. si el transistor tiene un factor de reducción de 2 mW/ºC.4 mW/ºC. 2 El activo transistor Factor de reducción de Pd La disipación de potencia. emisor-base y colector-base. esto es 250 mW. 250 mW. para el transistor de pequeña señal 2N3904 los voltajes de ruptura son: VCBO  60 V. VEB0  6 V y VCEO  40 V Los primeros dos subíndices de estos voltajes indican las terminales del transistor para las cuales aplica el voltaje. ΔPd. TA. de 25 ºC. la máxima temperatura de unión se encuentra entre los 125 a 200 ºC. Esta es la razón por la cual los fabricantes de transistores deben especificar la máxima disipación de potencia. primero. 6 La figura 2. Pd. calculamos la variación de temperatura ΔT  60 ºC 25 ºC  35 ºC y después multiplicamos esta variación ΔT por el factor de reducción de Pd: ΔPd  ΔT × factor de reducción  35 ºC r 2. Por ejemplo. 11. no es económicamente viable realizar geometrías adicionales para construir diodos. por lo que su geo- metría y el dopado de sus capas se eligen para optimizar sus características.12 a). es del orden de 1000:1 o mayor. y se espera leer una resistencia muy alta. que por claridad se muestra en la figura 2. para verificar la unión base-emisor de un transistor npn. 2 El activo transistor En la fabricación de circuitos integrados. e e e e < : < : E\^if Ifaf g g Ω Ω Æ " Æ " ' ∞ Ifaf ' ∞ E\^if 9 9 I\j`jk\eZ`XYXaX I\j`jk\eZ`XXckX X Y =`^liX)%() M\i`]`ZXZ`e[\cXle`eYXj\$\d`jfi[\lekiXej`jkfiege%X :fe\o`eZfele_d\kif\egfcXi`qXZ`e[`i\ZkX% Y :fe\o`eZfele_d\kif\egfcXi`qXZ`e`em\ijX% Para verificar el estado de la unión colector-base se repite el mismo procedimiento anterior. los transistores son los elementos más importantes. primero se conecta un óhmetro polarizando la unión de manera directa. RR/RF .13. se invierten los cables del óhmetro polarizando la unión inversamente. la relación entre la resistencia de polarización inversa y la resistencia de polarización directa. como se ilustra en la figura 2. posteriormente.12 b). los transistores son adaptados para operar como diodos. =`^liX)%(( =fidXjZfdle\j\ecXjZlXc\jlekiXej`jkfigl\[\X[XgkXij\gXiXljXij\Zfdf[`f[f% Pero nos estamos desviando. esperando leer una resistencia baja. En consecuencia. como se muestra en la figura 2. Por lo general. e e e e < : < : E\^if Ifaf g g Ω Ω " Æ " Æ ∞ E\^if ' ∞ 9 Ifaf ' 9 I\j`jk\eZ`XYXaX I\j`jk\eZ`XXckX X Y =`^liX)%(* M\i`]`ZXZ`e[\cXle`eZfc\Zkfi$YXj\[\lekiXej`jkfiege%X :fe\o`eZfele_d\kif\egfcXi`qXZ`e[`i\ZkX% Y :fe\o`eZfele_d\kif\egfcXi`qXZ`e`em\ijX% 62 ELECTRÓNICA • MIJAREZ . como se muestra en la figura 2. Para una unión de silicio en buen estado. ya sea npn o pnp. que es una de sus principales aplicaciones. En el caso del interruptor mecánico.12 y 2.15 se muestra a una persona como operador dentro del transistor. y ajusta la salida de tal manera que la corriente colector se mantenga de acuerdo con la ecuación IC  βIB. El operador interno del transistor observa la corriente de base. como se muestra en la figura 2. aunque en la realidad tiene ligeras diferencias que ya analizaremos. IB. como se ilustra en la figura 2. vol- taje o corriente.9. @: IC IC J K @9 @< M:: M:: X Y =`^liX)%(+ X KiXej`jkfifg\iX[fZfdf`ek\iilgkfi%Y :`iZl`kfZfele`ek\iilgkfid\Z}e`Zf% En esta sección analizamos. región de saturación y región activa. mediante un selector. y sea comandado por una corriente o voltaje muy pequeña en la base. como se ilustró en la figura 2. grupo editorial patria® 63 . este no permitirá flujo de corriente hacia la carga RL cuando se encuentre abierto. 7 En configuración de emisor común. además.7 El objetivo es que el transistor pueda operar esta corriente o voltaje grande entre colector y emisor. Aunque. todo el voltaje de VCC aparecerá en la carga RL . de tal modo que puede ir desde corto circuito (transistor en saturación) has- ta circuito abierto (transistor en corte). cuyo trabajo perpetuo es ajustar un potenciómetro variable.13.12 y 2. la configuración de emisor común es la más usada en transistores npn. TRANSISTOR COMO INTERRUPTOR El transistor puede usarse como interruptor para conectar y desconectar una carga RL del voltaje de alimentación VCC . el óhmetro indica una alta resistencia en ambas conexiones significa que el transistor se encuentra abierto. mediante modelos simplificados.14 a). por el contrario. el comportamiento del transistor como interruptor de CD. el emisor es conectado a tierra y es común a la entrada y a la salida del circuito. el transistor operado como interruptor debería tener las mismas características que su contraparte mecánica. escoger el tipo npn o pnp.14 b). Cuando se usan multímetros digitales. Idealmente. es útil identificar sus tres regiones de operación: región de corte. En ambos casos. al momento de cerrar el interruptor. Cuando el transistor se usa como interruptor.13. 2 El activo transistor Otra medición que con frecuencia se realiza con un óhmetro. La figura 2. De las figuras 2. es importante mencionar que el transis- tor puede usarse en configuración de base común. Si. En la figura 2. se debe seleccionar la opción de óhmetro. al operador solo se le permite modificar la resistencia variable. es pequeña en comparación con la corriente o voltaje de carga que maneja el interruptor. solo se tienen que insertar las terminales del transistor en un enchufe y. La diferencia con un interruptor mecánico es que el transistor puede ser opera- do eléctricamente y su respuesta de operación es más rápida. se puede deducir que obtener lecturas de baja resistencia en ambas conexiones indica que el transistor se encuentra en corto circuito. pero. aunque no se muestra en las figuras 2. es la resistencia entre el colector-emisor. o a un estado intermedio (transistor en región activa). el transistor se encuentra defectuoso y debe reemplazarse. debido a que la señal que se encarga de operar el interruptor. de manera intuitiva. colector común o emisor común. la cual debe ser muy alta o infinita para ambas conexiones del medidor. Sin embargo. Existen incluso multímetros digitales capaces de indicar el beta de CD del transistor.15 presenta un dibujo que ayudará a representar el comporta- miento del transistor en esta configuración. 8 Un modelo es una representación simplificada. 2 El activo transistor @:4_]\@9 : 9 < =`^liX)%(. VCC. en este caso del transistor. como se muestra en la figu- ra 2. no es lo suficientemente grande para polarizar la unión en forma directa. Cuando el interruptor se encuentra abierto. en consecuencia. Usando este modelo. β o hfe . y sirve para predecir su comportamiento en ciertas circunstancias. por lo que no fluirá corriente a través del diodo. Entonces. mientras la unión base-emisor se polariza directamente. unión base-emisor. como lo especifican las hojas de datos. que ayuda a incrementar el entendimiento intuitivo de su funciona- miento.16. El transistor se encontrará en estado de saturación y el interruptor se cerrará cuando el diodo. este se cerrará y conectará la resistencia a tierra. es utilizar un modelo8 simplificado del mismo.17.16 considera dos ramas para cada tipo de transistor: un diodo de la base al emisor y un interruptor del colector al emisor. podemos observar que el estado del interruptor depende de la relación entre las corrientes IB e IC y la ganancia de corriente de CD. la corriente del emisor (y del colector) será nominalmente cero y el interruptor se mantendrá abierto. De lo anterior. El emisor es el punto común entre las dos ramas. :fdgfikXd`\ekf[\ckiXej`jkfi\eZfe\o`e[\\d`jfiZfd’efg\iX[fZfdf`ek\iilgkfi% Una forma de intuir el comportamiento del transistor como interruptor y hacerlo operar desde la región de cor- te a la región de saturación y viceversa. 64 ELECTRÓNICA • MIJAREZ . VSAL. El transistor deberá encontrarse en estado de corte cuando el voltaje en el diodo. analizamos el comportamiento del transistor. Si empujamos el interruptor. :fc\Zkfi :fc\Zkfi ege geg 9Xj\ 9Xj\ <d`jfi <d`jfi =`^liX)%(- Df[\cfj`dgc`]`ZX[f[\lekiXej`jkfi#egepgeg#fg\iXe[fZfdf`ek\iilgkfi\eZfe]`^liXZ`e\d`jfiZfd’e% El modelo de la figura 2. es igual al voltaje de alimentación. Considerando el interruptor del modelo simplificado del transistor. se polarice directamente y la corriente de base IB se establezca de tal forma que la corriente de colector esté definida por IC = βIB. se requiere habilitar o deshabilitar el paso de corriente del circuito de la figura 2. En este caso. entre la base y el emisor. no fluye corriente por la resistencia y el voltaje de salida. la unión colector-base se polari- zará inversamente. Un valor intermedio sería un hfe = 450. es que IB >> IC/hfe . como la requerida en este ejemplo.Mpd}o`df(d8\dgc\X[XgXiXfg\iXilekiXej`jkfiegeZfdf`ek\iilgkfi% Una corriente de 20 mA. por lo general un factor de diez. Vamos a suponer que la señal eléctrica es de 5 V y no puede proveer más de 1 mA de corriente. cuyas características eléctricas se muestran en la tabla 2. se necesita que el valor calculado en la expresión anterior sea mayor. es asequible casi por cualquier transistor. para amplificar su capacidad de salida. de un sensor o un microcontrolador. en esta conexión de emisor común. si IC  20 mA y hfe  450 podemos tener la relación: I C 20 mA   0.044 mA h fe 450 Con este cálculo se puede observar que obtenemos el valor de IB. El componente electrónico perfecto para realizar este trabajo es nada menos que ¡nuestro transistor! Para este ejemplo usaremos el modelo simplificado de un transistor npn. la corriente de colector será IC  12 V/600 Ω  20 mA.M M<EK 9 < M<EK =`^liX)%(/ J\ŒXc\c„Zki`ZX[\. @ek\iilgkfi[\cdf[\cfj`dgc`]`ZX[f[\ckiXej`jkfiljX[fgXiX_XY`c`kXif[\j_XY`c`kXi\cgXjf[\Zfii`\ek\XkiXm„j[\leXi\j`jk\eZ`X% tendremos el voltaje VCC entre las terminales de la resistencia. IC . Sin embargo. no especifican en la hoja de datos un valor preciso de hfe o β. que nos indica un hfe  400. Por tanto. No obstante. de la hoja de datos podemos tomar la corriente IC  2 mA. es decir llevar al transistor al estado de saturación. 2 El activo transistor M::4()mfckj I4-''Ω @J8C MJ8C =`^liX)%(. podemos usar una señal eléctrica proveniente. la cual nos indica un hfe  500. la corriente IB necesaria sería: grupo editorial patria® 65 . para asegurar que el transistor entre en estado de saturación. como se muestra en la figura 2. Por tanto. y también considerar la corriente IC  100 mA. vamos a seleccionar un transistor de pequeña señal como el BC547C. Los fabricantes. M::4()mfck`fj M::4()mfckj I4-''Ω @J8C I4-''Ω @J8C ()M @<EK @<EK : MJ8C MJ8C . requerida. por ejemplo. por lo general. ya que este varía de transistor a otro y con las condiciones eléctricas y térmicas. En lugar de cerrar el interruptor con nuestro dedo. Usando la ley de Ohm.1. Debido a que IC  20 mA. La condición que debe satisfacerse para activar el interruptor. En este caso.18. es posible obtener un valor aproximado de hfe relacionado con la corriente de colector. 2 El activo transistor Transistor npn BC547 Características eléctricas Símbolo Mín. 720 mV Corriente de corte colector-emisor --- con VCE  80 V BC546 ICES --. BC549 ICES --. 900 --.2 15 nA con VCE  50 V BC547 ICES --. IB  0. mV con IC  10 mA. 2501) K/W Voltaje de saturación del colector con IC  10 mA. --. Usando la ley de Kirchhoff de voltajes. --- C hfe --. para esta malla tenemos: VENT  IBRB VBE 66 ELECTRÓNICA • MIJAREZ .+0% IC 20 mA IB  r 10  r 10  0. IC  2 mA VBE 580 660 700 mV con VCE  5 V. --. 4 μA con VCE  50 V. 80 200 Mv con IC  100 mA.44 mA h fe 450 El paso siguiente es calcular la resistencia de base. 200 600 mV Voltaje de saturación de la base con IC  10 mA. analizando la malla que involucra la corriente IB. 400 --. 150 --. ambiente RthJA --. IC  10 μA Ganancia de corriente. IC  10 mA VBE --. 700 --.19. RB. mV Voltaje base-emisor con VCE  5 V. 200 --.2 15 nA con VCE  80 V. --- Resistencia térmica de la unión a temp. grupo A hfe --. --- B hfe --.2 15 nA con VCE  30 V BC548. IC  100 mA Ganancia de corriente.5 mA VCEs at --. 0. 90 --. 120 --. 4 μA KXYcX)%( :XiXZk\iˆjk`ZXj\c„Zki`ZXj[\cX]Xd`c`X[\kiXej`jkfi\j9:. --- B hfe --. --. grupo A hfe --. --- con VCE  5 V. Tj  125 °C BC546 ICES --. 270 --.5 mA VBEs at --. como se muestra en la figura 2. IB  0. --- C hfe --. grupo A hfe 110 180 220 --- B hfe 200 290 450 --- C hfe 420 500 800 --- con VCE  5 V. Tipo Máx. 0. 0. IC  2 mA Ganancia de corriente. Unidad Ganancia de corriente CD con VCE  5 V. IB  0. --.+-$9:. Tj  125 °C BC5476 ICES --.5 mA VBEs at --. IB  5 mA VCEs at --. 2 El activo transistor @9 @9 9 9 I9 < M<EK4,M M<EK4,M M9<4'%.M M9<4'%.M < =`^liX)%(0 DXccXhl\`emfclZiXcXZfii`\ek\@9\e\cZ`iZl`kf[\ckiXej`jkfiegefg\iX[fZfdf`ek\iilgkfi% Del capítulo 1, sabemos que la caída de voltaje de la unión de un diodo es aproximadamente 0.7 V y que la corrien- te IB que requerimos es de 0.44 mA; por tanto, despejando RB de la ecuación anterior obtenemos que: VENT VBE 5 V – 0.7 V RB    9.8  Ω y 10   kΩ IB 0.44   mA Si se inyecta más corriente IB, el transistor no incrementará su IC, ya que está saturado. En la figura 2.18 se obser- vó que cuando el voltaje de entrada es 5 V, estado lógico alto, el voltaje de salida es cercano a cero, estado lógico bajo y viceversa. Por lo que se muestra que el transistor, en esta configuración, es capaz de invertir la señal de entrada. Un razonamiento simétrico puede aplicarse para el caso que se requiera que la resistencia de carga RL sea conec- tada a tierra, o que el nivel de la señal de entrada vaya de un estado lógico alto a un estado lógico bajo. El dispositivo apropiado sería un transistor pnp, donde la corriente es tomada de la base en lugar de ser inyectada, tal como se ilustra en la figura 2.20. < ,M M<EK ,M M<EK @9 @9 < 9 ()M 9 ()M : : MJ8C I4-''Ω @J8C I4-''Ω =`^liX)%)' Fg\iXZ`e[\lekiXej`jkfigegZfdf`ek\iilgkfi% En el circuito de la figura 2.20, cuando la señal de entrada es cero volts, el transistor entra en estado de saturación, permitiendo que la corriente fluya a través de la carga. Por otro lado, cuando la señal de entrada es 5 V, el transistor entra en estado de corte y no fluirá corriente hacia la carga. En los ejemplos anteriores, la carga conectada entre colector-emisor es una resistencia. Sin embargo, esta podría ser una lámpara, un LED, un solenoide, una bocina o cualquier otro dispositivo que se desee controlar. Por consiguien- te, vale la pena considerar un par de precauciones al momento de diseñar con transistores como interruptores: 1. Seleccione la resistencia de base RB de tal forma que se proporcione una corriente de base IB en exceso. En es- pecial cuando se controlan lámparas, lo anterior debido a que el hfe se reduce a valores de VCE muy bajos. 2. Para cargas inductivas, proteja el transistor con un diodo a través de la carga, como se muestra en la figura 2.21. Sin el diodo, cuando el interruptor se abre, la energía almacenada en el inductor generará en el colector un vol- taje positivo oscilatorio muy elevado que probablemente sobrepase el voltaje de ruptura de colector a emisor. grupo editorial patria® 67 2 El activo transistor "M:: =`^liX)%)( ;`f[f[\jlgi\j`eljX[fZlXe[fj\ZfedlkXeZXi^Xj`e[lZk`mXj% Otro dato importante a tomar en cuenta es la cantidad de corriente de carga que el transistor puede manejar; para ello, se selecciona un transistor que pueda operar con las condiciones de corriente requeridas. Las opciones que se tienen son grandes, ya que existe una variedad grande de transistores para aplicaciones que van desde los cientos de milésimas de ampere hasta los amperes, como lo muestra la tabla 2.2. En la tabla 2.2 se muestran los valores máximos absolutos para algunos transistores npn y pnp comerciales; dichos valores deben tomarse únicamente como valores de referencia nominales, no como los valores con los que se operará el transistor. Los transistores de mayor potencia, por lo general, pueden usarse con disipador, si la aplicación lo requie- re. Una regla práctica es usar una corriente de carga de hasta 30% del valor de IC nominal cuando no se utilice disipador y una corriente de carga de hasta 75% del valor de IC cuando se utilice disipador. Por ejemplo, el transistor TIP32C puede manejar una corriente de 0.9 A sin disipador y 2.25 A con un disipador de 10 °C/W. Heat sink Factor de reducción de Transistor Valor absoluto admisible disipación de potencia VCE IC Temp. para 75% IC npn Pnp [voltio] [ampere] [°C] [°C/W] BC547C BC557C 59 0.100 150 No aplica 2N2222 2N2907 75 0.800 200 No aplica TIP 29C TIP 30C 100 1 150 10 TIP 32C TIP 32C 100 3 150 10 TIP 41C TIP 42C 100 6 150 5 TIP 33C TIP 34C 100 10 150 1 KXYcX)%) MXcfi\jd}o`dfjXYjfclkfjgXiXXc^lefjkiXej`jkfi\j[\gifgj`kf^\e\iXc% ¿Qué tanto se calienta el encapsulado del transistor?, depende del disipador que se le adhiera. El encapsulado mis- mo es capaz de emitir calor al medio ambiente. Si no es suficiente, dependiendo de las condiciones de carga, se le agrega un disipador, el cual transfiere el calor a su alrededor de manera más eficiente. Los disipadores se especifican por un valor numérico en °C/W. Este número representa la temperatura a la que se elevará el disipador adherido al transistor por cada watt de calor generado. Por ejemplo, si se ponen 12 W de calor en un disipador de 5 °C/W, signifi- ca que este elevará su temperatura 60 °C arriba de la temperatura ambiente.9 9 Un disipador puede pensarse como un conductor de calor. Así como hay metales que son mejores conductores de electricidad que otros, tam- bién existen metales que son mejores conductores de calor que otros. Ocurre lo mismo con la corriente, ya que esta siempre fluye en un solo sentido. El calor también siempre fluye en un solo sentido: de caliente a frío. De qué manera fluye el calor, es otro tema, pero podemos comentar tres procesos: por radiación, por convección y por conducción. Al calentarse, el disipador emite energía en forma de radiación infrarroja y se 68 ELECTRÓNICA • MIJAREZ 2 El activo transistor Como resaltamos antes, la corriente IB es muy importante para garantizar que el transistor opere correctamente como interruptor. No obstante, esta corriente depende de la corriente de colector IC y de la constante hfe , que no es- pecifica un valor preciso, además que normalmente el valor de hfe es menor en la región de saturación. Por consiguien- te, si conocemos la IC que requerimos, otra forma de determinar el hfe es mediante las curvas proporcionadas por el fabricante en la hoja de datos. Si, por ejemplo, seleccionamos un transistor npn TIP41C y necesitamos manejar una corriente IC  2 A, entonces buscamos la curva de hfe vs. IC provista en la hoja de datos del dispositivo, como se muestra en la figura 2.22. De la figura 2.22 podemos observar que, para una corriente IC de 2 A, el hfe es aproximadamente 50. Entonces, podemos calcular IB usando la expresión: IC 2 A   40 mA h fe 50 ,'' *'' M:<4)%'M )'' KA4(,'—: _]\ #>XeXeZ`X[\Zfii`\ek\[\:; ('' ),—: .' ,' *' )' ,,—: (' .%' ,%' '%'- '%( '%) '%* '%+ '%- (%' )%' +%' -%' @:#Zfii`\ek\[\Zfc\Zkfi8 =`^liX)%)) :limX[\_]\mj%@:[\ckiXej`jkfiK@G+(:% Para asegurar que el transistor entre al estado de saturación, debemos generar una IB mucho mayor; en este caso, podríamos seleccionar que sea 4 veces: IC 2A IB  r4 r 4  160 mA h fe 50 Debido a que el valor de la corriente IB comienza a ser significativo, no escogimos un factor 10 veces mayor, como lo hicimos antes. La variación de hf e , dependiente del transistor y de la corriente IC , es una inconveniencia de diseñar con los transistores bipolares. Por lo pronto, vamos a continuar con el diseño de este transistor suponiendo que tene- mos una señal de entrada de 10 V en la terminal de la base, como se muestra en la figura 2.23. Entonces, para obtener la resistencia de base, RB , tenemos: VENT VBE 10 V 0.7 V RB    58 Ω y 60 Ω IB 160 mA enfría. Por esta razón, los disipadores son negros; el color negro es un eficiente radiador, aunque también absorbe muy bien la radiación in- frarroja. Una mejor forma de deshacerse del calor es moviendo el aire a través del disipador, lo cual se llama convección. El aire alrededor del disipador se calienta y sube hacia la atmósfera; este aire caliente es reemplazado por aire frío, repitiéndose el ciclo; claro, en este caso un venti- lador ayudaría mucho al proceso. Por conducción es el ejemplo de la conexión del encapsulado al disipador. grupo editorial patria® 69 2 El activo transistor )+M )8 (-'d8 M<EK4('M : I9 9 < '%.M =`^liX)%)* KiXej`jkfiegefg\iX[fZfdf`ek\iilgkfigXiXdXe\aXi)8[\ZXi^X% De esta manera, resolvimos el problema del cálculo de RB usando las curvas proporcionadas en la hoja de datos del transistor. El siguiente paso será ver el voltaje de saturación usando un procedimiento similar. De acuerdo con nuestro modelo simplificado del transistor, tenemos un interruptor perfecto. Sin embargo, como también comentamos, este modelo es solo una aproximación para obtener un entendimiento intuitivo. Cuando se cierra un interruptor ideal, debe haber un voltaje de cero volts entre sus terminales. Pero un transistor real, cuando se pone en saturación, es decir, cuando se cierra el interruptor, cierto voltaje se encuentra presente entre las terminales de colector y emisor; el voltaje VCE y su valor puede determinarse usando las tablas o curvas de la hoja de datos del transistor. La figura 2.24 muestra las curvas de VCE para un transistor TIP41C. )%' KA4(,'—: (%- _]\ #>XeXeZ`X[\Zfii`\ek\[\:; (%) M9<jXk 7@:&@94(' '%/ M9<7M:<4+%'M '%+ M:<jXk 7@:&@94(' ' '%'- '%( '%) '%* '%+ '%- (%' )%' +%' -%' @:#Zfii`\ek\[\Zfc\Zkfi8 =`^liX)%)+ @:mj%M:<[\jXkliXZ`egXiXlekiXej`jkfiK@G+(:% En la gráfica que se ilustra en la figura 2.24 podemos observar que para una corriente de 2 A en el colector, el voltaje VCE de saturación es aproximadamente 0.2 V, que no es cero volts, como en el caso ideal, pero es realmente insignificante. Esto lo podemos notar en el cálculo de RL, cuando se considera la caída de voltaje del VCE. VCC VCE 24 V 0.2 V RL    11.9 Ω IC 2A Sin embargo, si usamos una IC mayor, el voltaje VCE empieza a ser significativo, como se aprecia en la curva. El aumento en el voltaje VCE tiene dos efectos negativos en el comportamiento del circuito: le resta voltaje a la carga y genera potencia, V r 1, en el transistor, por tal razón se calienta. 70 ELECTRÓNICA • MIJAREZ 2 El activo transistor TRANSISTOR DARLINGTON En el mercado se encuentran disponibles otros tipos de transistores, o arreglos de ellos, en especial para aplicaciones de potencia grande, como los SCR, TRIAC, IGBT y los Darlington. Aunque también existen los transistores tipo FET, que por sus características eléctricas se han usado ampliamente en la fabricación de circuitos integrados. Analizar todos estos dispositivos va más allá de los alcances de este libro, así que en esta sección solo estudiamos el transistor Darlington y posteriormente se analizan los transistores FET. El transistor Darlington es un tipo de transistor que en realidad consiste en un arreglo de dos transistores BJT conectados de tal forma que sean capaces de incrementar su ganancia de corriente, como se ilustra en la figura 2.25. El objetivo del transistor Darlington es incrementar el valor de hfe , que tiende a ser bajo en estado de saturación. La solución es usar dos transistores, como se muestra en la figura 2.25 a). El primer transistor que conforma el arreglo recibe una pequeña corriente en la base y la multiplica por su hfe , IB r hfe . Esta corriente amplificada se inyecta en la base del segundo transistor, el cual, a su vez, la multiplica por su hfe, IB r hfe r hfe . De esta manera, obtenemos, en la carga, una corriente amplificada dos veces; en consecuencia, nos permite manejar corrientes considerablemente grandes con una corriente en la base relativamente pequeña. Si reemplazamos cada transistor por su modelo simplificado, obtenemos el circuito que se muestra en la figura 2.25 b). Por su parte, la figura 2.25 c) muestra este modelo una vez que se activó el primer transistor. Desde un punto de vista intuitivo, el arreglo de transistores Darlington puede entenderse como un solo transistor, cuya ganancia de corriente, hfe, es el cuadrado de un transistor convencional, y cuyo voltaje base-emisor es 1.4 V, en lugar del tradicional 0.7 V, como se muestra en la figura 2.25 c). :fc\Zkfi :fc\Zkfi :fc\Zkfi 9Xj\ 9Xj\ 9Xj\ @:4_)]\@9 <d`jfi <d`jfi <d`jfi X Y Z =`^liX)%), KiXej`jkfi;Xic`e^kfe%X JˆdYfcf\jhl\d}k`Zf%Y pZ Df[\cfj`dgc`]`ZX[f% Los transistores Darlington pueden construirse con transistores BJT discretos. Sin embargo, la buena noticia es que este arreglo se fabrica en un circuito integrado y es encapsulado como un transistor que incluye otros componen- tes que mejoran su desempeño, como se muestra en la figura 2.26. : 9 < =`^liX)%)- 8ii\^cf;Xic`e^kfe\eZXgjlcX[fZfdflekiXej`jkfi% grupo editorial patria® 71 2 El activo transistor De esta manera, existen comercialmente arreglos Darlington que se pueden operar como si fueran transistores especiales. La tabla 2.3 muestra algunos transistores Darlington.10 Transistores Valores absolutos Valores de saturación a 50% ICmáx VCE IC Temp. V SAT ICOL IBASE npn pnp [voltios] [ampere] [°C] [voltios] [ampere] [mA] hfe TIP 112 TIP 117 100 2 150 0.9 1 2 500 TIP 122 TIP 127 100 5 150 1.3 2.5 10 250 TIP 102 TIP 107 100 8 150 1 4 8 500 TIP 142 TIP 147 100 10 150 1.3 5 10 500 KXYcX)%* MXcfi\jd}o`dfjXYjfclkfjgXiXXc^lefjkiXej`jkfi\j;Xic`e^kfe% De igual forma que con los transistores BJT discretos, una regla práctica es cargar estos transistores con 20% de valor nominal de IC sin disipador, y hasta 75% de su valor nominal de IC con un disipador de 5 °C/W. Por ejemplo, el Darlington TIP102 puede manejar 1.6 A sin disipador y hasta 6 A con un disipador de 5 °C/W. TRANSISTORES FET El transistor de efecto de campo, o Field Effect Transistor (FET), es un dispositivo de tres terminales, similar al tran- sistor bipolar de unión BJT, que analizamos antes en este capítulo. Sin embargo, el FET es un dispositivo unipolar que depende únicamente de un tipo de portadores de carga, ya sea de los huecos o de los electrones. Esencialmente existen dos tipos de FET: los Junction Field Effect Transistors, abreviados como JFET, y los Metal-Oxide Semiconductor Field Effect Transistors, abreviados como MOSFET. A diferencia de los transistores bipolares que son controlados por corriente, los FET son dispositivos controlados por voltaje; esto significa que una entrada de voltaje es la encargada de controlar la corriente de salida. Los FET pre- sentan una impedancia de entrada extremadamente grande, del orden de los megaohms; en consecuencia, requieren muy poca potencia para operar la carga. Esta característica hace que los FET sean algunas veces preferidos a los tran- sistores BJT. Adicionalmente, la construcción de los FET requiere menos espacio que los BJT, por lo que los hace ideales para la fabricación de circuitos integrados, donde el tamaño de cada componente es crítico. En esta sección solo cubrimos las características eléctricas de los transistores JFET y MOSFET, asimismo bosque- jaremos sus aplicaciones como interruptores. Su importancia radica en que son la base para la construcción de los amplificadores operacionales que se estudian en el siguiente capítulo. Tipos de FET Los transistores FET tienen un canal que es controlado, como su nombre lo indica, por un campo eléctrico, producido por un voltaje aplicado a una de sus terminales. No existen uniones polarizadas directamente, así que esta terminal no consume corriente; tal vez esta es una de las ventajas más importantes de los FET. Del mismo modo que con los tran- sistores BJT, existen dos tipos de polaridades: FET de canal n, con electrones como portadores de carga, y FET de canal p, con huecos como portadores de carga. Estas dos polaridades son análogas a las de las encontradas en los transistores BJT, como npn y pnp, respectivamente. Pero, los diferentes tipos de transistores FET que existen en el mercado tienden a confundir. Primero, debido a que hay dos tipos de FET, donde varía la construcción de la terminal denominada Gate, G, que son los JFET y los MOSFET, 10 En Internet se pueden encontrar hojas de datos de diferentes transistores Darlington; sin embargo, una liga con información de electrónica muy útil, que incluye esta tabla y otras, es la del profesor Nayarana Rao, de libros electrónicos denominados knol (http://knol.google.com/). 72 ELECTRÓNICA • MIJAREZ 2 El activo transistor y, segundo, porque existen dos tipos de dopados en el canal, los cuales pueden ser reducción o agotamiento (depletion) y realce o crecimiento (enhancement). La figura 2.27 trata de aclarar, a primera vista, los diferentes tipos de FET. =<K A=<K DFJ=<K i\[lZZ`ef i\XcZ\f ZXeXce ZXeXcg X^fkXd`\ekf Zi\Z`d`\ekf ZXeXce ZXeXce ZXeXcg =`^liX)%). ;`]\i\ek\jk`gfj[\kiXej`jkfi\j=<K% La diferencia principal entre los JFET y los MOSFET radica en que la terminal G en el MOSFET está aislada del canal. Debido a esto, la impedancia de entrada del MOSFET es muchas veces mayor que la del transistor JFET. Desde el punto de vista conceptual, todos los transistores FET son iguales; por esta razón, solo analizaremos la construcción y el comportamiento de los FET tipo JFET, y de ellos hacemos énfasis en los de canal n. Construcción del transistor JFET El transistor JFET está compuesto por 4 terminales, como se muestra en la figura 2.28: Drenaje (Drain), D, fuente (Source), S, y dos terminales llamadas compuertas (Gates), G1 y G2. Al área entre las terminales S y D se le llama canal. El tipo de material semiconductor usado en el canal determina el nombre del transistor, el cual puede ser JFET canal n, como se ilustra en la figura 2.28 a), o JFET canal p para el transistor que se muestra en la figura 2.28 b). Para el caso del JFET canal n, se agregan a los lados del canal dos regiones pequeñas de material semiconductor tipo p. Cada región corresponde a las terminales G1 y G2. Cuando el fabricante conecta una terminal para cada compuerta, al dispositivo se le llama JFET de doble compuerta. No obstante, en la mayoría de los casos las compuertas son conectadas interna- mente y el JFET se comporta como si tuviera una terminal única G. ;i\eXa\ ;i\eXa\ e :XeXc g :XeXc :fdgl\ikX( g g :fdgl\ikX) :fdgl\ikX( e e :fdgl\ikX) =l\ek\ =l\ek\ X Y =`^liX)%)/ :fejkilZZ`e[\ckiXej`jkfiA=<K%X A=<KZXeXcg%Y A=<KZXeXcg% De manera simétrica, para el JFET canal p, las regiones de material semiconductor que se encuentran a los lados del canal son tipo n. De igual forma que el canal n, las compuertas G1 y G2 se conectan internamente para formar una conexión externa. grupo editorial patria® 73 2 El activo transistor En los transistores JFET, el flujo de corriente es entre las terminales D y S. Para el JFET canal n, la mayoría de los portadores de corriente en el canal son electrones libres; por el contrario, para el JFET canal p, la mayoría de los portadores de carga en el canal son huecos. Los símbolos esquemáticos para el transistor JFET se muestran en la fi- gura 2.29. La figura 2.29 a) muestra el símbolo esquemático para el JFET canal n, y la figura 2.29 b) ilustra el símbolo para el JFET canal p. La única diferencia es la dirección de la flecha en la terminal G. Para el JFET canal n la flecha apunta hacia el canal y para el JFET canal p la flecha apunta hacia afuera desde el canal p. En ambos símbolos, la línea vertical que conecta las terminales D y S representa el canal semiconductor correspondiente a cada transistor. Un punto importante: cuando la flecha de la terminal G se encuentra en el centro, se dice que el JFET es simétrico. Esto quiere decir que las terminales D y S pueden ser intercambiadas sin afectar la operación. En cambio, si la flecha se encuentra fuera del centro, cerca de la terminal S, como se muestra en la figura 2.29 c), se dice que el JFET es asi- métrico y las terminales D y S no pueden ser intercambiadas. A=<K A=<K A=<K :XeXce :XeXcg :XeXce ;i\eXa\ ;i\eXa\ ;i\eXa\ J`d„ki`Zf J`d„ki`Zf 8j`d„ki`Zf :fdgl\ikX :fdgl\ikX :fdgl\ikX =l\ek\ =l\ek\ =l\ek\ X Y Z =`^liX)%)0 JˆdYfcfj\jhl\d}k`Zfj[\ckiXej`jkfiA=<K%X :XeXcej`d„ki`Zf%Y :XeXcgj`d„ki`Zf%Z :XeXceXj`d„ki`Zf% Operación y características principales del transistor JFET Para entender la operación del transistor JFET, vamos a analizar el circuito de la figura 2.30, en el cual se ilustra el flujo de corriente en un JFET canal n con las terminales G1 y G2 desconectadas. La magnitud de corriente depende de dos factores: el valor del voltaje entre las terminales D y S, VDS, y la resistencia del canal entre las terminales D y S, designada como rDS. Adicionalmente, el valor óhmico de rDS depende del nivel de dopado, del área y de la longitud del material semiconductor usado en la construcción del canal. ;i\eXa\ @; e " :fdgl\ikX( g g :fdgl\ikX) M;; Æ =l\ek\ =`^liX)%*' =claf[\Zfii`\ek\\elekiXej`jkfiA=<KZXeXceZfek\id`eXc>j`eZfe\o`e% 74 ELECTRÓNICA • MIJAREZ VGG. se reduce a cero. polariza inversamente ambas uniones P-N. es positiva. VDD . Esta consiste en un material aislante dentro de un material conductor. como vimos en el capítulo 3 para el diodo. la corriente de la fuente. conectado a la terminal D. donde los portadores de carga se han difundido o han sido separados por un campo eléctrico. se hace negativa con respec- to a la fuente. son la misma. Si 11 A la región de agotamiento también se le llama capa de agotamiento.31 b). con sus voltajes de polarización adecuados para crear la región de agotamiento mostrada en la figura 2. VDS en esta condición se muestra en la figura 2.4(. S. Al voltaje VGS requerido para hacer ID cero se le denomina voltaje de corte. Variando el voltaje entre las terminales de compuerta y fuente. la corriente en el canal ID puede ser controlada. La corriente fluye en el canal entre las capas de agotamiento y no a través de las capas mismas. D. las capas de agotamiento pueden llegar a tocarse...i\eXa\ e e :fdgl\ikX( :fdgl\ikX) :fdgl\ikX g g M. sino que además la compuerta.32 a) ilustra un transistor JFET de canal n. con el propósito de ayudar a controlar la cantidad de corriente que fluye por el canal. S.i\eXa\ . G. a la terminal de la fuente. Si el voltaje VGS es lo suficientemente negativo. D. Los voltajes de polarización para un JFET canal p son los opuestos a los del JFET canal n. G.4(. y la corriente del drenaje. En el JFET. La figura 2. zona de agotamiento o región de la unión. es decir. IS. aunque en la mayoría de los casos se considera que el flujo de corriente es únicamente ID . ID. teniendo como resultado una corriente ID igual a cero.M M>J =l\ek\ =l\ek\ X Y =`^liX)%*( <]\Zkf[\cXk\id`eXc>\ecXZfii`\ek\\ecXk\id`eXc. como es el caso de un semiconductor dopado. es negativa y la terminal de compuerta. G. G1 y G2.32 b). es equivalente a conectar la terminal de la compuerta. VDD . VGS(CORTE). El efecto de tener un voltaje negativo en la terminal de la compuerta.%X :fdgl\ikX\eZfikfZ`iZl`kfZfecX]l\ek\% Y CXgfcXi`qXZ`e\ok\ieX[\cXZfdgl\ikXi\[lZ\cXZfii`\ek\[\[i\eXa\[iX`e % La figura 2. VGS  0. VGS. el flujo de electrones va de la terminal S a la terminal D. la distribución de voltaje a lo largo del canal hace que el ancho de la región de agotamiento (depletion) sea mayor en la parte superior del canal y más angosto en la parte inferior.31 b). si el JFET es simétrico. previa- mente conectada a tierra. grupo editorial patria® 75 . en consecuencia. como se muestra en la figura 2. S. es positiva con respecto a la terminal de la fuente. se hace positiva con respecto a la terminal de la fuente. La mejor visualización para la difusión de portadores de carga es compararla con la difusión de tinta en el agua. La figura 2. D. G. dejando solo iones donadores o aceptadores de impurezas.M g g M. El voltaje de alimentación. Para el JFET canal p. Cuando la fuente de alimentación de la terminal de la compuerta.31 a) muestra este transistor con las terminales G y S conectadas a tierra. . estran- gulando (pinch off) el canal. es decir. la terminal de drenaje. haciendo más angosto el canal y por ende reduciendo la corriente ID. la terminal de drenaje.11 Las capas de agota- miento penetran profundamente en el canal n y ligeramente en las áreas de material tipo p de las compuertas G1 y G2 debido a los niveles de dopaje en los materiales n y p. La gráfica de ID vs.31 b) muestra al transistor JFET canal n polarizado de tal manera que no solo la terminal de drenaje. Las regiones de material semiconductor tipo p en el transistor JFET canal n. A esta área se le llama de ago- tamiento porque se agotan o reducen los portadores de carga en la región. Si ambas compuertas están centradas vertical- mente en el canal. Esto trae como resultado una corriente cero en las terminales de compuerta G1 y G2. 2 El activo transistor Debido a la fuente de alimentación. que se localizan a los lados del canal n. están conectadas a las terminales de compuerta. es que las regiones de agota- miento se expanden. JJ4('d8 M>JZfik\ 4+M :fdgl\ikX M>J4(M M.JZfe\cmfckXa\M>J4'% Z :limX@. Se observa que VP  VGS(CORTE). entonces VP  ( 4 V)  4 V.JJ4('d8 @. denominado VP. La mayoría de las hojas de datos no listan el valor de VP .Jmfckj M. VDS(P) se considera como el voltaje límite entre la región óhmica y la región de saturación del transistor JFET. Esto puede expresarse por la ecuación 2.JJ4('d8 M>J4'M @. Esta es una característica muy útil de los transistores JFET. a partir de ese valor. en condiciones de operación nor- males. como se muestra en la figura 2. @. De la figura 2. la resistencia del canal. Hay un par de puntos importantes que se pueden observar de la figura 2. de la figura 2. el primero es que la pendiente de cada curva de ID vs. rDS. A la máxima corriente drenaje-fuente que un transistor JFET puede manejar. que es el inverso de la palabra Ohm. se le denomina IDSS y ocurre cuando la terminal de compuerta.32 c). es aterrizada. Para este cálculo VGS y VP son valores absolutos. para el JFET canal n que estamos analizando. VDS(P)  VP – VGS (2. la corriente de drenaje. debido a que la corriente ID se incrementa de forma directamente proporcional con el volta- je VDS. El gm es para los FET lo que el hfe es para los transistores BJT. depende del valor de VGS.mj%M. se ignoran sus polaridades. se incrementa de manera proporcional al voltaje VDS. La corriente ID es constante para voltajes mayores a VP . en la cual ID no se ve afectada por cambios en el voltaje VDS.i\eXa\ :fdgl\ikX\eZfikfZ`iZl`kfM>J4'M @.mj%M. se incrementa. Al área debajo del valor de VP se le llama región óhmica.33 muestra la gráfica de transconductancia. VGS decrece conforme se hace más negativo el voltaje VGS. lo cual es válido para cualquier transistor JFET. ID vs. si VGS(CORTE)  4 V. ¿Qué tanto disminuye ID?.7. 76 ELECTRÓNICA • MIJAREZ .32. Cuan- do el voltaje VDS alcanza el voltaje de estrangulamiento (pinch off).d8 M. pero casi siempre listan el valor de VGS(CORTE). VGS del transistor JFET de la figura 2. La transconductancia se defi- ne como el recíproco de la resistencia. Esto sucede porque al hacerse más negativo el voltaje VGS.J @.32 c). Si el volta- je VGS se hace negativo. la resistencia del canal. La figura 2. debido a que. Una característica distintiva de los JFET es su curva de transconductancia.d8 . el voltaje VP es de 4 V. Sus unidades son los Mhos. G. rDS . siendo el voltaje VGS(CORTE) el voltaje negativo máximo para que ID  0. Por tanto.32 b). se le denomina región de saturación (fuente de corriente). En tanto. La figura 2.7) Donde VP es el voltaje de estrangulamiento para VGS  0 V. es decir cuando el voltaje VGS es cero. decrece al hacerse más ne- gativo el voltaje VGS.. es interesante resaltar la relación que hay entre los valores de VP y VGS(CORTE). o aproximadamente ID/VGS. se incrementará de manera proporcional. Para este ejemplo. entonces la corriente ID se nive- la.32 c) exhibe un conjunto de curvas para diferentes valores de VGS. aunque también se les llama siemens.32 c) podemos obtener el valor de VP usando el voltaje VGS(CORTE). M>J4)M M>J M>J4*M M>> =l\ek\ MG4+M M>J4+M MG4+M M.32 b) indica una corriente IDSS de 10 mA. ID . es decir. Para voltajes mayores que VP . el valor de ID será menor que el de IDSS.Jmfckj  X Y Z =`^liX)%*) KiXej`jkfiA=<KZXeXce%X MfckXa\j[\gfcXi`qXZ`e[\cA=<KZXeXce%Y :limX@. y VDS(P) es el voltaje de estrangulamiento para cualquier valor de VGS. ya que pueden usarse como resistencia que varía con el voltaje de entrada. La figura 2. gm. 1/R.JgXiX[`]\i\ek\jmXcfi\j[\M>J % El segundo punto es que el voltaje VDS al cual ocurre el estrangulamiento (pinch off ). 2 El activo transistor el voltaje VDS se incrementa desde cero. d8 @. G.d8 .34. Una manera de intuir el comportamiento del JFET como interruptor.JJ4('d8 . IB . Por ejemplo.5 V: 2 0. ya que un cambio en el voltaje VGS no produce un cambio directamente proporcional en ID .8. ni estimar el valor de hfe combinado con la corriente de carga IC. la diferencia entre los JFET y los MOSFET es principalmente que la terminal de la compuerta. empero. D G S =`^liX)%*+ Df[\cfj`dgc`]`ZX[f[\lekiXej`jkfiA=<K% grupo editorial patria® 77 .33 podemos observar que la gráfica no es lineal. #[\lekiXej`jkfiA=<K% De la figura 2. si usamos la gráfica de la figura 2.8.d8 +M *M )M (M 'M M>JZfik\ M>Jmfckj =`^liX)%** :limX[\kiXejZfe[lZkXeZ`X#M>Jmj%@. cuando VGS  0. es utilizar un modelo muy simple como el que se muestra en la figura 2. con valores de impedancia mayores a los 1014 ohms.65 mA © 4 V ¸· TRANSISTOR FET COMO INTERRUPTOR Como comentamos al inicio de esta sección acerca de los transistores FET. podemos calcular la corriente ID cuan- do VGS  0 V y cuando VGS  0. ya que no se tienen que despilfarrar corriente excesiva de polarización. 2 El activo transistor @.8) © VGS(CORTE) ·¸ La ecuación 2. desde el punto de vista conceptual. fácilmente podemos visualizar que ID  IDSS  10 mA. Los transistores FET operados como interruptores son más simples que los transistores BJT.5 V ¶ I D  10 mA §¨1  7.5 V. Para activar los transistores FET únicamente necesitamos aplicar el voltaje correcto a la entrada de alta impedancia de la terminal de compuerta. G.%. Si se conocen los valores IDSS y VGS(CORTE) . Si VGS  0 V.33 y la ecuación 2. y puede ser usada para JFET canal p o canal n.d8 )%. su operación es igual y ambos pueden funcionar en aplicaciones de conmutación. se puede calcular la corriente ID con la ecuación 2. § VGS ¶2 I D  I DSS ¨1 (2. en el MOSFET es aislada del canal por una delgada capa de cristal (SiO2). lo cual le proporciona una impedancia de entrada muchas veces mayor que la del transistor JFET. Pero.8 es válida si VDS es mayor o igual que VDS(P). 34 se observa que la terminal de compuerta. la corriente de la compuerta será muy pequeña o insignificante.36. por su parte. tipo diodo. Es decir. 2 El activo transistor En la figura 2. "('M C}dgXiX('M '%(8 'M M>J M>J4'M:fe[lZZ`e M>J4ÆM>J:FIK<  =`^liX)%*. 12 El JFET puede dañarse de manera permanente si la terminal de la compuerta. cuando VGS alcanza el voltaje negativo de corte VGS(CORTE). la resistencia depende de la polarización en la terminal de la compuerta. ya que la terminal de la base consume corriente y forma diodos con el emisor y colector. el JFET tendrá una corriente ID de cero. G. Por consiguiente. Cuando el voltaje VGS alcance el voltaje negativo de corte.12 En consecuencia. este es capaz de conectar la terminal de drenaje. G.35. cuando el vol- taje de entrada es cero volts. los FET son agradablemente simples. forman una unión P-N. G. cuando VGS  0 V. D. el diodo debe polarizarse inversamente. mientras el FET se comporte como una resistencia pequeña. generalmen- te. a un estado de circuito abierto o impedancia muy grande. ya que cuando un JFET se encuentra destruido. corrientes mayores de 50 mA pueden producir el humo mágico. es justo decir que se han ignorado los efectos de capacitancia entre la compuerta y el canal y que hay cierta variación en la resistencia.2 Ω. Una forma de verificar el estado de un JFET con un óh- metro. comparada con la carga. se polariza directamente con respecto a la fuente. Valores típicos de esta resistencia son menores a los 0. lo cual es un valor adecuado para este tipo de aplicaciones. 10 V Señal de entrada R VGS = 0V VGS = –VGS (CORTE) =`^liX)%*- A=<Kfg\iX[fZfdf`ek\iilgkfiXeXc^`Zf% El objetivo en la figura 2. en comparación con los transistores BJT. rDS. rDS. En este modelo. Sin embargo. debido a que la terminal G se polariza negativamente con respecto a la terminal de la fuente. =<Kk`gfA=<KZXeXc$EZfe\ZkX[fgXiXfg\iXiZfdf`ek\iilgkfi% En esta configuración. normalmente el diodo es el que se daña. y las terminales drenaje. S. 78 ELECTRÓNICA • MIJAREZ . S. a un valor muy cercano a tierra. indicando el daño. Para este ejemplo. la corriente ID será la máxima y el transistor conducirá para activar la carga. En este sentido. interruptores que permitan o limiten el paso de señales analógicas como se muestra en la figura 2. Una de las aplicaciones que no se puede llevar a cabo con transistores BJT es la de interruptores analógicos.36 es conmutar el JFET de un estado de conducción o interruptor cerrado. con respecto a las oscilaciones de la señal de entrada. La figura 2. D. es comprobar el estado del diodo. Los transistores bipolares no son adecuados para esta clase de aplicaciones. y fuente. muestra un FET tipo JFET canal-N conectado para operar como interruptor. causando a su vez que la corrientes ID  IS. ne como función emitir o inyectar portadores mayo. en el diseño de equipo electrónico. nancia de corriente de CD. Con los transistores JFET también se da el caso que sus propiedades pueden variar sustancialmente entre una muestra y otra. si no es necesario. que se estudian en el capítulo 5. de base: β  IC /IB. diferencia de sus primos los BJT. Existen dos razones principales por las cuales no se utilizan con frecuencia los transistores como amplificadores lineales: la primera. como pudimos apreciar en sus curvas carac- terísticas. que ya mencionamos.13 DATOS IMPORTANTES DEL CAPÍTULO ± El transistor BJT consiste de tres regiones dopadas: ± El transistor operado como interruptor puede ser el emisor.4 V para silicio. que ± El emisor. unipolar. hfe2. como es el caso del hfe en los transistores BJT. la base y el colector. es muy pequeña. El transistor como inte- rruptor opera en las regiones de corte y de satura. que es una cuestión im- portante cuando se utiliza en miles o millones de circuitos. Esencialmente. da debido a que la corriente de entrada. se tiene que tomar en cuenta la corriente ± El colector es el área más grande del transistor y su de carga. huecos o electrones. La mayoría de los portadores rando la relación IB >> IC/hfe . grupo editorial patria® 79 . pero con lación entre la corriente de colector y de la corriente un voltaje VBE del doble. de emisor: α  IC /IE. el área más dopada del transistor BJT. conside- dopaje es moderado. para operarlos en esta condición se requiere tomar ciertas consideraciones que pueden variar de transistor a transistor. los FET pueden encontrarse como JFET y MOSFET. tie. Resisten. por lo que no desperdician corriente para po- cia baja. sor común. Sin embargo. ± La relación entre las corrientes del transistor BJT se ± La diferencia principal entre JFET y MOSFET es que encuentra dada por la igualdad IE  IB IC. como un solo transistor de alta ganancia. es decir utiliza solo un tipo de portadores ción entre la corriente de colector y de la corriente mayoritarios. en polarización directa y resistencia alta der activarse. La segunda es que los amplificadores operacionales (OP AMP). 1. utilizan para su construcción transistores BJT tanto como FET. es la variación entre componente y componente. la región JFET. la región de corte. mayoritarios inyectados a la base no fluyen hacia la ± El transistor Darlington es un arreglo de dos transis- terminal de la base. se usa su circuito equivalente de diodos y se prueba ± Los FET presentan una muy alta impedancia de en- cada unión como un diodo independiente. en polarización inversa. la terminal de la compuerta en el MOSFET es aislada del canal. La razón principal es porque se pueden comprar amplificadores operacionales cuádruples por el precio de dos o tres transistores discretos. que se controlan con corriente. Aunque la de emisor común es más usa- da. trada. ± Para asegurar la operación del transistor BJT como ritarios a la región de la base. La conclusión es que operar los transistores como amplificadores puede ser un poco truculento. lo cual le proporciona una impedancia de ± El transistor BJT tiene cuatro regiones de operación: entrada muchas veces mayor que la del transistor la región de saturación. 2 El activo transistor TRANSISTORES COMO AMPLIFICADORES LINEALES Los transistores BJT o FET pueden usarse como amplificadores lineales. ± El transistor FET es un dispositivo semiconductor ± El alfa de CD del transistor BJT se obtiene de la rela. sino que son atraídos a la termi. ± Los FET son dispositivos controlados por voltaje. a ción. que son muy baratos y fáciles de usar. IC . controla la corriente de carga IC. interruptor. tores conectados en tándem para incrementar la ga- nal del colector. IB . de ruptura y la región activa. Así que no vale la pena hacerse la vida dif ícil. se encuentra entre el emisor y el colector. Puede considerarse ± El beta de CD del transistor BJT se obtiene de la re. IB. 13 En la actualidad. el hfe y la corriente de base. ± Para probar un transistor BJT con un óhmetro. no he utilizado transistores como amplificadores. configurado en base común: colector común y emi- ± La base del transistor BJT es la región menos dopa. 2.14 Defina al factor de reducción Pd de un transistor =`^liX)%*.7 V.3 V VSAL BJT. en un transistor BJT? 2. Calcule las características de potencia a 75 ºC. Estime la máxima métrico.1 Se tiene un transistor que tiene una corriente IC  15 mA y una IB  40 μA.2 Un transistor cuenta con el Beta de CD y la corriente de base IB para su operación. 1 K 2. 2.17 Describa la región fuente-corriente en un transis- VGS  –0.9 En el circuito de la figura anterior se colocó una es un pulso de 3. describa cómo es el dopaje RL en las áreas correspondientes a su base.4 Se cuenta con un transistor con una Pd  0.13 ¿Cómo se obtiene la ganancia de DC.12 ¿Cuáles son las regiones de saturación y de ruptu- ra de un transistor BJT? 2. colector y emisor. resistencia de 1. de 25 ºC. y el factor de reducción es 3 mW/ºC.3 V.6 Se cuenta con un transistor Darlington tipo TIP142. corriente que puede operar el transistor si no se cuenta con disipador de potencia. 2N4392 nan la potencia Pd  0. 2.19 ¿Cuál es la diferencia principal entre un transistor requieren para su control. Calcule la corriente ID cuando 2.18 ¿Por qué un FET es un dispositivo unipolar? der/apagar un LED en el siguiente circuito.3 Calcule la máxima IC de un transistor. =`^liX)%*/ ración emisor común.15 Defina a qué se le llama un transistor FET asimé- el cual tiene especificado una corriente IC  10 A. El hfe  100 y el voltaje VBB que activaría el transistor 2. B VENT E 2. IENT C 15 V 2. VENT  Señal de entrada 2. 2 El activo transistor PROBLEMAS DEL CAPÍTULO 2 2.2 MΩ en serie con la terminal de la compuerta. una VGS(corte)  –5 V. BJT. FET y un MOSFET? 80 ELECTRÓNICA • MIJAREZ . Se cuenta con un voltaje VCC de 15 V y se requiere operar una carga RL de 45 mA. 5V 2. se proporcio. 2. trico y su comparación con un transistor FET si- como valor absoluto permisible. 2. tor FET.5 W a temperatura ambiente. β  200 e IB  60 μA. LED  Calcule la corriente IC.7 Un transistor FET canal-N tiene una IDSS  15 mA y transistor FET. denominada hfe.10 En un transistor BJT. TA.16 Describa a qué área se le denomina canal en un 2. Especi- fique de la hoja de datos qué valores de voltaje se 2. ¿Es posible encender/apagar el LED VCC = +15 V con los voltajes antes seleccionados? ISAL 2. calcule el Beta y el alfa de CD.5 Se requiere diseñar un conmutador con un transis- tor NPN de pequeña señal tipo el BC547 en configu.25 Wy el voltaje VCE  9V. Diseñe el circuito.8 El transistor FET canal-N es utilizado para encen- 2.11 Defina la región activa y de corte de un transistor 3. iniciamos su estudio con la exposición del concepto de retroalimentación y con la teoría detrás de este dispositivo. también analizamos la etapa de entrada de estos CI. seleccionamos un OP AMP comercial para describir sus parámetros más importantes. El OP AMP es uno de los bloques fundamentales en el diseño electrónico. más adelante. En conclusión. Por último. para llevar a cabo operaciones en sus terminales de entrada. el cual resulta de gran importancia porque proporciona muchas de las características de CA y CD del OP AMP. funciones de transferencia y comparación con otras señales. considerando al 1 En este libro abreviaremos al amplificador operacional como OP AMP. que proviene de la palabra en inglés: operational amplifier. abreviado OP AMP1 por sus siglas en inglés. el OP AMP es uno de los CI con mayor potencial a disposición de los diseñadores. Puede su- mar o restar múltiples señales. filtrado. con el cual se pueden realizar numerosas aplicaciones. ¡Esa es la razón por la que se le llama operacional! Estas operaciones incluyen ganancia positiva o negativa. 3 El mágico amplificador operacional El amplificador operacional. Por tanto. es un circuito integrado que tiene dos terminales de entrada y una de salida. la cual está constituida por el amplificador diferencial. 81 . aunque existen traducciones al español que lo llaman AMP OP. Después. con el fin de continuar con la tónica de este libro y proveer un entendi- miento intuitivo. La razón principal para el uso de esta abreviatu- ra es su empleo generalizado en universidades y centros de trabajo. amplificar la diferencia entre señales de entrada. El OP AMP puede ser configurado en una gran diversidad de formas. en este capítulo se explica el funcionamiento interno de este dispositivo. Así pues. entre otras. integrar o diferenciar señales con respecto al tiempo. X Circuitos comparadores. lo cual no sería de utilidad. De hecho. es el principio de funciona- miento de los osciladores. la principal es que libera de distor- sión y de no-linealidad al amplificador. X Convertidores de voltaje a corriente y de corriente a voltaje. Hoy sabemos el impacto que ha tenido y tiene la retroalimentación negativa en diversas áreas como la electrónica. 3 El mágico amplificador operacional OP AMP como caja negra o caja mágica. aunque disminuye la ganancia. las características del amplifica- dor se hacen menos dependientes del amplificador de lazo abierto (sin retroalimentación) y dependen solo de las propiedades de la red de retroalimentación. por ejemplo. En circuitos amplificadores. la velocidad de un auto. esta puede llegar a ser un problema en ciertos circuitos. X El OP AMP y sus características principales. principalmen- te en configuración con retroalimentación negativa. la retroalimentación consiste en comparar la salida del sistema con la salida deseada. La retroalimentación negativa adquiere importan- cia porque los amplificadores son normalmente no-lineales y generan distorsión. la salida es un múltiplo de la señal de entrada. La retroalimentación puede ser tanto negativa como positiva. además de que proporciona una respuesta en frecuencia plana y provee una salida predecible. por lo general. la cual no tuvo un éxito inmediato. la patente fue otorgada nueve años después. X Filtros activos. por ejemplo. el control. por otro lado. Sin más prelu- dio. que inicie la magia. X Circuitos OP AMP con diodos. sin embargo. X El amplificador diferencial. La retroalimentación positiva. X Análisis de CD/CA y ganancias del amplificador diferencial. En los sistemas de control. la entrada es comparada con una versión atenuada de la salida. conforme se incrementa la retroalimentación negativa. las telecomunicaciones. tiene menos importancia que la retroalimentación negativa. etcétera. y hacer las correcciones correspondientes. se introducen y analizan algunas de sus operaciones básicas. tratando de proveer las bases para obtener una comprensión in- tuitiva de este misterioso componente. El sistema puede ser casi cualquier cosa. el proceso de control de temperatura en una habitación. mientras que en los amplificadores retroalimentados. Se puede pensar que esto únicamente tiene el efecto de reducir la ganancia del amplificador. 2 En 1928. etcétera. los dispositivos biomecánicos. X ADC y DAC las interfaces del mundo digital y analógico.2 Lo anterior es cierto. X Circuitos básicos con OP AMP. Por ese motivo. encontrando como respuesta por parte del registro de patentes que este procedimiento era poco útil y hasta no muy inteligente. el concepto de retroalimentación es conocido ampliamente y utilizado en muchas disciplinas del conocimiento. también mejora otras características. Habiendo hecho estos comentarios. Black registró una patente relacionada con la retroalimentación negativa. X Las misteriosas tierras. y aunque se utiliza con frecuencia en algunas aplicaciones. el nivel de un líquido en un tanque. X Teoría importante de los OP AMP. Harold S. La retroalimentación negativa es el proceso de acoplar la salida del amplificador de tal manera que cancele parte de la entrada. 82 ELECTRÓNICA • MIJAREZ . X Circuitos populares con OP AMP. CONCEPTO DE RETROALIMENTACIÓN En la actualidad. X Consideraciones y recomendaciones. incluso. En este capítulo estudiamos: X Concepto de retroalimentación. enseguida analizamos la teoría primordial detrás del OP AMP. podemos notar una entrada positiva y una entrada negativa. 3 El mágico amplificador operacional TEORÍA IMPORTANTE DE LOS OP AMPS El amplificador operacional (OP AMP) es el circuito integrado lineal más usado en el diseño electrónico. esta también puede pensarse como la diferencia de las dos entradas. por lo que usar los términos “no-inversora” e “inversora. o cosas por el estilo. a su vez. en realidad son los mismos. cuando estudia- mos las configuraciones del OP AMP. Por definición. El OP AMP constituye el bloque de construcción analógico equivalente a las compuertas digitales que estudiamos en el siguiente capítulo. el resultado es una confusión total. si tenemos 3 V en la entra- da positiva y 4 V en la entrada negativa. De esta manera. por consiguiente. idealmente infinita. Lo anterior es muy importante.2 podemos observar un bloque de suma y un bloque de amplificación. la salida del OP AMP tiene una im- pedancia muy baja. De esta manera. la cual puede representarse por la ecuación 3. la salida de este bloque es la suma de las dos entradas. estos símbolos indican la fase relativa que tendrá la salida. Así. la cual es importante para man- tener negativa la retroalimentación negativa.2.1) 3 Los bloques de suma y ganancia. grupo editorial patria® 83 . <ekiX[Xef$`em\ijfiX " JXc`[X <ekiX[X`em\jfiX $ =`^liX*%( JˆdYfcf\jhl\d}k`Zfle`m\ijXc[\cFG8DG% Los símbolos de las entradas ( ) y ( ) no significan que una entrada tiene que mantenerse positiva con respecto a la otra. VSUMA  (V ) – (V –) (3.3 Del bloque de suma. baste decir que al OP AMP se le representa con dos símbolos separados. y para muchos análisis es conveniente considerarla como si fuera una fuente de voltaje con resistencia muy baja. Las entradas del OP AMP presentan una alta impedancia. ayuda a evitar esta confusión. la salida de ese bloque será 1 V. cuando el estudiante o ingeniero diseña por primera vez un circuito con OP AMP. como se muestra en la figura 3. en lugar de “positiva” y “negativa”. como en el símbolo original del OP AMP.1. pero. En el mundo digital actual parece ser muy común estudiar de manera rápida y superficial el tema de los OP AMP. M<EK " MJLD8fM<IIFI MJ8C  =`^liX*%) I\gi\j\ekXZ`e`ek\ieX[\cFG8DG#Zfdgl\jkXgfi[fjjˆdYfcfjj\gXiX[fj% De la figura 3. Esta sección. con una de las entradas multiplicada por 1. le pueden resultar similares a los usados en sus clases de teoría de control. que conforman el OP AMP. sin usar capacitores o transformadores para aislar los voltajes de CD de cada etapa. La entrada negativa se considera como el voltaje en ese punto multiplicado por 1. idealmente cero. con el objetivo de ayudar a comprender mejor su funcionamiento interno y adquirir una intuición educada con respecto a este dispositivo. en especial cuando el circuito no funciona como se espera. proveyendo únicamente de fórmulas al estudiante o al interesado de estos temas. sin explicar la teoría o el pro- pósito detrás de ellas. La teoría de control se aplica perfectamente a los OP AMP. podemos decir que el OP AMP es un amplificador diferencial directamente acoplado y de alta ganancia.1. Por lo pronto. El símbolo esquemático del OP AMP se muestra en la figura 3. por lo que lo vemos posteriormente. pretende proveer la teoría primordial de los OP AMP. lo que significa que virtualmente no tienen ningún efecto sobre los circuitos que se conectan a estas. El acoplamiento directo significa que la salida de una etapa se conecta directamente a la entrada de la si- guiente. Por su parte. 3. en el cual asumimos que las entradas del OP AMP son iguales. vamos a usar el símbolo original del OP AMP con retroalimentación negativa.3 lo primero que notamos es la salida que se conecta a la entrada negativa. Es importante que cada vez que veamos el símbolo original del OP AMP recordemos que internamente se en- cuentra conformado por un bloque sumador y un bloque amplificador. por lo general. la variable G representa la cantidad de amplificación que el OP AMP aplica al bloque de suma. un valor típico sería 200 000. A esta ganancia del OP AMP se le llama de lazo abierto y. y otra relacionada con la retroalimentación. que vemos posteriormente. G. el cual tiene aplicaciones relacionadas con la conversión de señales analógicas a digitales. ampliamente usado.1.4. llamada de lazo cerrado. por esta razón se le llama retroalimentación negativa. respectivamen- te. es muy alta. 3 El mágico amplificador operacional Por otro lado.3 también podemos observar que ahora tenemos dos ganancias: una de lazo abierto. aplicándole este valor típico de G. como se muestra en la figura 3. pero se aplica únicamente cuando la retroalimentación es negativa.2) VSAL  V ENT r 1 G * H Debido a que el valor de G es muy grande. tenemos que: VSAL  (3 – 4) r (200 000)  –200 000 V Por supuesto que el voltaje de salida no llegará a los 200 000 V. MJLD8f M<EK " M<IIFI > MJ8C Æ ? =`^liX*%* I\gi\j\ekXZ`e[\cFG8DGZfei\kifXc`d\ekXZ`ee\^Xk`mX% En la figura 3. regresando a la representación del OP AMP de la figura anterior. De la figura 3. Para el ejemplo anterior. si consideramos que las entradas son 3 V y 4 V. H. Analizando el diagrama de la figura 3. y usamos la ecuación 3. por tanto la ecuación se simplifica de la siguiente manera: 1 VSAL VENT (3. a través de un blo- que llamado H.3) H Este es el caso especial. Ahora. como se muestra en la figura 3. para el bloque de amplificación. <ekiX[Xef$`em\ijfiX " JXc`[X <ekiX[X  `em\ijfiX ? =`^liX*%+ JˆdYfcf\jhl\d}k`Zffi`^`eXc[\cFG8DGZfei\kifXc`d\ekXZ`ee\^Xk`mX% 84 ELECTRÓNICA • MIJAREZ . el 1 del denominador en la ecuación 3. agregamos un bloque de retroalimenta- ción. Este ejemplo es un arreglo muy usado en los OP AMP: el circuito comparador. se obtiene la siguiente ecuación de control básica: VSAL  ((V )ENT r G ) (VSAL r G r H ) G (3.2 resulta insignificante. a menos que los voltajes de las fuentes de alimen- tación del OP AMP sean de ese valor. Ahora.3. 5 V 4 200 000 1 2 1.7 1. Para esto.4) 1 Cualquier voltaje aplicado a la entrada positiva.9 V 7 200 000 1 2 1. por tanto.9 V >VSAT( ) > 2.5 0. Sin embargo. se asume que la entrada negativa (V ) es cero al inicio y. Tiempo G H VENT V− (VENT)−(V−) VSAL 0 200 000 1 0 0 0 0 1 200 000 1 0 0 0 0 2 200 000 1 2 0 2 0 0 V >VSAT( ) > 1 V 3 200 000 1 2 1 1 1 1 V >VSAT( ) > 1. usamos el OP AMP configurado como circuito seguidor de voltaje.9 1.2 V >VSAT( ) > 1. tenemos que: 1 VSAL  VENT l VSAL  VENT (3.8 V 5 200 000 1 2 1. de lazo cerrado.2 1. G  200 000 y H  1. entonces.0 V 8 200 000 1 2 2 0 2 9 200 000 2 0 2 10 200 000 2 0 2 11 200 000 2 0 2 12 200 000 1 0. con el objetivo de obtener el entendimiento intuitivo de la retroalimentación negativa.8 0. es unitaria.1 1. demuestra otro arreglo muy útil del OP AMP: el circuito seguidor de voltaje.2 2.8 V. se aplica una secuencia de voltajes a su entrada positiva. se asig- nan valores a las ganancias.8 1.0 V >VSAT( ) > 1.5 1. si H  1. Después. 3 El mágico amplificador operacional Cuando la ganancia de retroalimentación.5 V >VSAT( ) > 1.1. en este mismo capítulo.5 V 13 200 000 1 0.8 V >VSAT( ) > 2. Por tanto. de 0 V.8 1. VENT.2 0. aparecerá en la salida.5 V >VSAT( ) > 1 V (Continúa) KXYcX*%( MXcfi\jXj`^eX[fj[\^XeXeZ`Xj#mfckXa\j[\\ekiX[XpmfckXa\j[\jXc`[XgXiXleFG8DGZfei\kifXc`d\ekXZ`ee\^Xk`mX# Zfe]`^liX[fZfdfj\^l`[fi[\mfckXa\% grupo editorial patria® 85 .9 0.2 2 2.5 1. habla- mos de este popular circuito y sus aplicaciones.5 1. 2 V y 0.2 V 6 200 000 1 2 2.5 0.2 2.8 2 1. como se muestra en la tabla 3. 8 KXYcX*%( MXcfi\jXj`^eX[fj[\^XeXeZ`Xj#mfckXa\j[\\ekiX[XpmfckXa\j[\jXc`[XgXiXleFG8DGZfei\kifXc`d\ekXZ`ee\^Xk`mX# Zfe]`^liX[fZfdfj\^l`[fi[\mfckXa\% En un inicio. 86 ELECTRÓNICA • MIJAREZ . como lo ilustra la figura 3. Cuando el voltaje de salida se encamina de 2. Ahora. 3 El mágico amplificador operacional (Continuación) Tiempo G H VENT V− (VENT)−(V−) VSAL 14 200 000 1 0.8 1 0. V  2.8 0 0. ) (%. resultado de la diferencia entre VENT y V .8 0. el voltaje de salida del bloque de ganan- cia. se encamina hacia el voltaje máximo positivo del amplificador (VSAT ). de los compo- nentes que lo conforman. si por ejemplo disminuye a 1.1. y se asume V  0 V. Por tanto. el voltaje de salida será de 2 V. G.5 V >VSAT( ) > 0.1 V.7 V >VSAT( ) > 0.8 0. como se observa en el tiempo 7 de la tabla 3.8 0 0.1. Si la entrada negativa (V ) se hace mayor de 2 V.5 también se aprecia que el voltaje de salida sigue al voltaje de entrada. el proceso se repetirá. En este caso.8 0. a 1 V? ¡Correcto! La entrada negativa también se aproxima a 1 V. de esta manera. Pero. la salida del bloque de suma se va haciendo cada vez más pequeña. este voltaje empieza a disminuir su va- lor. G.8 19 200 000 0. como se ilustra en el tiempo 2 de la tabla 3.8 0. cambia a 0.2 V. entonces la entrada al bloque de ganancia. como se aprecia en el tiempo 3.7 0. más específicamente. MfckXa\j[\\ekiX[Xp[\jXc`[X[\leFG8DZfei\kifXc`d\ekXZ`ee\^Xk`mX#Zfe^XeXeZ`X[\cXqfZ\iiX[f?4(% En la figura 3. se hará negativa. MfckXa\M ( M<EK MJ8C '%.1 0. como la ganancia de lazo cerrado H  1. obligará a la salida a ir en la dirección negativa. La salida del bloque de suma es de 2 V. Entonces. ¿qué sucede con la entrada negati- va (V ) cuando la salida (VSAL) se aproxima.8 17 200 000 0. esto dependerá del tipo de amplificador y.7 0.8 18 200 000 0.2 1 1. de la tabla.5.8 0. este valor proporcionará una salida positiva al bloque sumador de 0.8 V 16 200 000 0. )%. por ejemplo. hace que la salida se dirija otra vez hacia el voltaje máximo positivo del amplificador (VSAT ).8 0 0. (' (. como ocurre en el tiempo 6.2 V hacia al voltaje negativo máximo (VSAT ). G. Si el voltaje de entrada. y en consecuencia asumimos una salida de 0 V.7 V 15 200 000 1 0. en consecuencia.8 V. K`\dgfdj =`^liX*%. ¿Cuándo se detiene este proceso? Se detendrá cuando la entrada (V ) sea igual a la entrada VENT (V ). )' Æ'%. ' ' . se aplica un volta- je VENT  2 V a la entrada V .9 V. el voltaje de entrada es 0 V. ¿Qué tan rápido alcanzará el voltaje de salida al voltaje de entrada?.8 0 0. VENT. que al multiplicarse por la ganancia. VENT. entonces. cómo llevamos a cabo esto. ¿El divisor de voltaje se verá afectado por la en- trada inversora del OP AMP? Esto es una de las confusiones de muchos estudiantes al tratar de analizar circuitos con OP AMP. Además. que vimos en el capítulo 0. En conclusión. al cual se le aplicara una señal y esta se pudiera multiplicar por un valor deseado. ¤ ³ ¥ 1 ´ VSAL  VENT r ¥ 1 ´ l VSAL  VENT r 100 (3. grupo editorial patria® 87 . VSAL. vamos a insertar un circuito divisor de voltaje en lugar de H. como se mues- tra en la figura 3. Si recordamos el comportamiento del humilde circuito divisor de voltaje.5) ¥ 100 ´ ¦ µ La pregunta sería. vamos a analizar otra vez la ecuación básica de control: G 1 VSAL  VENT r l VSAL VENT 1 G * H H Hemos visto que el voltaje de entrada. por ejemplo. por tanto: 1 RENT RRETRO 1 RRETRO  l  1 (3. si H  1/100.6. se concibió la idea de que debía haber una forma más fácil de realizar un circuito amplificador. 3 El mágico amplificador operacional ¿Por qué es tan importante la retroalimentación negativa? Recordemos que el objetivo de crear los amplificadores operacionales fue realizar circuitos amplificadores que no fueran dif íciles de construir. debido a la tolerancia de fabricación de los transistores. y que la salida del divisor de voltaje va hacia la entrada inversora del OP AMP. cargando el circuito. y VSAL se considera como una fuente de voltaje.`m`jfi[\mfckXa\ljX[fZfdfi\kifXc`d\ekXZ`ee\^Xk`mX% En la figura 3. Por supuesto que no. vamos a calcular la salida del divisor de voltaje: V RENT V V RENT l  H (3.6 se observa que la entrada del divisor de voltaje proviene de la salida del OP AMP. En definitiva. Entonces. Lo que se quería era un circuito que requiriera pocos componentes externos. los circuitos de amplificación estaban limitados a usar transistores. y la razón principal por la cual no los analizamos de esa manera en el capítulo 2. la ganancia de los transistores podía variar significativamente.7) H RENT H RENT 4 Hasta la invención de los OP AMP. veremos que este circuito sería muy útil aquí. ya que se desea que H sea equivalente a dividir entre 100.6) SAL VSAL RENT RRETRO RENT RRETRO Sin embargo. <ekiX[Xef$`em\ijfiX " MJ8C M  II<KIF I<EK =`^liX*%- . para nuestra retroalimentación requerimos 1/H. entonces tendre- mos una amplificación de la entrada de 100. que la operación de amplificación (OP AMP) fuera sencilla. Entonces. diseñar circuitos amplificadores era un proceso tedioso que involucraba mucho trabajo de prueba y error. El problema con los transistores usa- dos como amplificadores. depende del valor de H. por lo que siempre afectan la señal del circuito que el diseñador desea amplificar. es que son dispositivos operados con corriente. si V no afecta en el divisor de voltaje. Ahora. ya que la entrada presenta una impedancia muy alta.4 Así. y la terminal inversora.7 a). es controlada por un par de resistencias. lo que nos incumbe conocer es VSAL cuando se aplica VENT. como se muestra en la figura 3. se les llama OP AMP bi-FET. En otras pala- bras. Como ya aprendimos. Entonces. AMPLIFICADORES DIFERENCIALES La etapa de entrada estándar de un OP AMP se llama par diferencial. 88 ELECTRÓNICA • MIJAREZ . si a la entrada no-inversora. que la ganancia de lazo cerrado de este circuito.5 La forma más común de un amplificador diferencial posee dos entradas y una salida. compuesta por los amplificadores diferenciales. que queremos amplificar.6 puede escribirse como: VENT RENT VENT  V RENT l  (3. 3 El mágico amplificador operacional Considerando ahora que tenemos el caso especial de retroalimentación negativa. lo que en realidad nos interesa saber es el efecto de este circuito en VENT para obtener VSAL. podemos asumir que los voltajes de la terminal no inversora. o amplificador diferencial. se le conecta el voltaje de entrada. V .9. VSAL RRETRO VSAL  V RENT RRETRO l  1 (3. y la ecuación 3. y consiste de un par de transistores NPN o PNP. Obviamente. podemos observar que el cálculo de estas resistencias para producir la ganancia del circuito es mucho más sencillo que utilizar circuitos de amplificación basados en transistores discretos.8) SAL VSAL RENT RRETRO RENT RRETRO Pero. VENT. 1/H. de la ecuación 3. lo anterior se debe a que la retroalimentación negativa hace que el voltaje de salida intente alcanzar ese estado. tenemos que VENT  V . son iguales (V  V ). nos dispo- nemos a analizar una de las etapas internas de los OP AMP que provee muchas de sus características eléctricas de CD y CA: la etapa de entrada.9) ENT VENT RENT RENT Se puede observar. V . V . Ahora que hemos visto el concepto de retroalimentación negativa y la teoría que soporta los OP AMP. Por tanto. 8dgc`]`ZX[fi[`]\i\eZ`Xc%X :`iZl`kfZfek\id`eXc\j`em\ijfiXpef$`em\ijfiX%Y K\id`eXc`em\ijfiXXk\ii`qX[X# j\ŒXcXgc`ZX[X\ek\id`eXcef$`em\ijfiX#M(pMJ8C#\e]Xj\% 5 A los OP AMP que utilizan transistores JFET en la construcción del amplificador diferencial de entrada y transistores BJT en las otras etapas. "M:: "M:: I: I: MJ8C MJ8C M( H( H) M( H( H) Ef @em\ijfiX M)4'M `em\ijfiX Ef I< `em\ijfiX I< M:: M::  X Y =`^liX*%. en la base de Q1.10) Donde Ad representa la ganancia de voltaje diferencial. en igual pro- porción. podemos apreciar que si las bases de Q1 y Q2 son aterrizadas. Cada base debe tener una trayectoria de retorno de CD a tierra. Por último.8 a) muestra el caso cuando Q1 se aterriza y se aplica una señal. El voltaje de salida para el amplificador diferencial se obtiene con la ecuación 3. estarán en fase.9 b) muestra el circuito equivalente donde cada transistor ilustra sendas resistencias de emisor con valor 2RE. el voltaje de salida VSAL y el voltaje de entrada. En condiciones ideales. la salida se toma del colector de Q2. 3 El mágico amplificador operacional La base de Q1 se llama entrada no-inversora y la base de Q2 es la entrada inversora. La figura 3. Por otro lado.11) RE grupo editorial patria® 89 . VB . RE. V1.7 b).11. en esta condición. V1 y V2. de cada transistor es muy pequeño o aproximadamente cero. el voltaje de salida será el vol- taje del colector VC. entre el emisor de cada transistor. V1.9 a) muestra el amplificador diferencial con ambas bases aterrizadas a través de las resistencias RB1 y RB2 . se denomina IT . las señales de salida VSAL y de entrada V2 se encuentran fuera de fase 180°. Para esta condición. La corriente de CD que pasa a través del emisor. En este ejemplo. V2. la figura 3. en la entrada de Q2. dejando a los transistores en estado de corte. vamos a utilizar el circuito mostrado en la figura 3. condición que consideraremos para el análisis de este circuito. y al aplicado a la entrada inverso- ra se le llama V2. La figura 3. Si la base de Q2 se aterriza y se aplica una señal. Q1 y Q2 son idénticos o perfectamente igualados. VEE VEE IT  (3.10: VSAL  Ad (V1 V2 ) (3. Tomando en cuenta que Q1 y Q2 están perfectamente igualados. de otro modo. con frecuencia se llama corriente de cola y. la corriente IT se divide. "M:: "M:: I: I: MJ8C MJ8C FM @em\ijfiX H( H) M) M( H( H) M) I< I< M:: M::  X Y =`^liX*%/ 8dgc`]`ZX[fi[`]\i\eZ`Xc%X K\id`eXcef$`em\ijfiXXk\ii`qX[X#j\ŒXcXgc`ZX[X\ek\id`eXc`em\ijfiX#M)pMJ8C]l\iX[\]Xj\(/'—% Y J\ŒXc\jXgc`ZX[XjXXdYXjk\id`eXc\j[\\ekiX[X% ANÁLISIS DE CD/CA Y GANANCIAS DEL AMPLIFICADOR DIFERENCIAL Análisis de CD Para realizar el análisis de CD del par diferencial. En este caso en particular. y considerando que el voltaje en la base. los transistores estarían con sus bases abiertas.8 b) muestra la condición en la cual se aplica una señal a ambas entradas simultáneamente. podemos observar que el voltaje de salida se encuentra en fase con V1. al voltaje aplicado a la entrada no-inversora se le designa V1. las señales aplicadas. se encuentran des- fasadas 180°. De forma cualitativa. como se muestra en la figura 3. por lo general. la figura 3.9. La corriente IE se calcula usando la ecuación 3. Por otro lado. los voltajes de base VB1 y VB2 se asumieron con un valor cercano a cero.%/. donde IE es la corriente de emisor en cada transistor.M I:4('bΩ I:4('bΩ β(4β)4). normalmente se ignora en los cálculos de IE.7 V en las terminales del emisor. podemos calcular los voltajes de base de la siguiente manera: VB1  VB2  IE r RE  1. el voltaje de colector de CD puede obtenerse usando la ecuación 3. IE  1. β1  β2  450.58 μA. la corrien- te IT se calcula usando la ecuación 3. la corriente IE también puede obtenerse usando la ecuación 3.11. 3 El mágico amplificador operacional "M::4(. cada transistor tendrá una co- rriente IE  IT/2.12: VEE VEE IE  (3.7 IT    1. Aunque.43   mA RE 10   k Ω Como la corriente IT  2IE. Por tanto.43 mA/2  715 μA.12) 2 RE Cualquiera de los dos procedimientos produce el mismo resultado.85 V Este voltaje de VC se obtiene cuando las bases de ambos transistores son aterrizadas y se asume que los transisto- res están perfectamente igualados.13) Si asumimos que IC IE.M "M::4(.13: VC  VCC I C RC (3. Si usamos los valores de RB1  RB2  1 kΩ. 90 ELECTRÓNICA • MIJAREZ . Estos valores de voltaje se pueden corroborar asumiendo una ganancia de CD para ambos transistores.9 a).58 μA r 1 kΩ  1. VEE VEE 15 0.58 mV Debido a que este valor es muy pequeño.13: VC  15 V – (715 μA r 10 kΩ)  15 V – 7.M M:4.M Y =`^liX*%0 8e}c`j`j[\:. por lo que IB  ICβ  715 μA450  1.M H( '%.' M:4.[\cXdgc`]`ZX[fi[`]\i\eZ`Xc%X 8dYXj\ekiX[XjXk\ii`qX[XjXkiXm„j[\I9(pI9) % Y :`iZl`kf\hl`mXc\ek\#dfjkiXe[fI <Zfdf[fji\j`jk\eZ`Xj`e[\g\e[`\ek\j[\mXcfi)I< % Donde VBE es igual a 0.M X M<<4(.%/. Para el cálculo de IE.15 V  7. podemos obtener el valor de VC usando la ecuación 3. como se muestra en la figura 3.M H) H( H) I9(4(bΩ I9)4(bΩ I9(4(bΩ )I<4 )I<4)'bΩ )'bΩ I:4('bΩ M<<4(. 12 b) es posible observar que el voltaje de salida es iCRC . pero acomodado de tal forma que se permite apreciar una configura- ción particular para cada transistor.10 a) muestra una señal de entrada de CA. "M::4(. y por una fuente de corriente correspondiente a la unión colector-base.15 muestra cómo se obtiene la ganancia Ad en esta condición: RC Ad  (3. Además. 6 La derivación del valor de re es larga e involucra el empleo de cálculo.12. de la unión emisor-base. 3 El mágico amplificador operacional Análisis de CA Para realizar el análisis de CA del par diferencial. por lo que re1  re2 .dM H( H) H( H) M(4('dM M(4('dM I<4('bΩ I<4('bΩ M::4(. Esta es la razón por la cual a la terminal de la base de Q1 se le llama terminal no-inversora. rc.6re. enseguida llevamos a cabo el circuito equivalente de CA para el amplificador diferencial. aplicada a la base de Q1. y que el voltaje de entrada está dado por 2iC re. es de 25 mV/IE. La figura 3. En la figura 3. vamos a utilizar la figura 3. El valor típico de la resistencia de CA. Por tanto. podemos observar que re2 se encuentra en paralelo con RE.11 ilustra este circuito equivalente del transistor.14: VSAL iC RC RC Ad    (3. que va más allá del alcance de este libro. VSAL . La figura 3. las fuentes de alimentación se aterrizan y que re1 y re2 funcionan como un divisor de voltaje para la entrada. la ganancia Ad está dada por la ecuación 3. 7 Adicionalmente al circuito equivalente del transistor mostrado en la figura 3. En la práctica. entonces podemos ignorar el efecto de RE en este circuito. donde se omite RE. grupo editorial patria® 91 . como se muestra en la figura 3. el signo negativo ( ) indica que la señal de salida invierte la fase 180°. La figura 3. el valor de re va de 25 mV/IE a 50 mV/IE .10 a).M I:4('bΩ I:4('bΩ MJ8C MJ8C . Q1 actúa como emisor seguidor y Q2 como amplificador de base común.5. se encuentra en fase con la señal de entrada. V1. V1.7 Con base en el circuito equivalente de CA del transistor. Asumiendo que Q1 y Q2 son idénticos. y la resistencia interna de la fuente de corriente de colector. Estos modelos se usan cuando se requieren respues- tas muy precisas.15) 2re En esta ecuación.14) VENT 2iC re 2re Un análisis similar se obtiene cuando se aterriza la señal no-inversora y se aplica señal a la entrada inversora. mientras Q2 se aterriza. existen otros circuitos equivalentes más exactos que incluyen la resistencia interna de baserb.12 b).M M:: X Y =`^liX*%(' 8e}c`j`j[\:8[\cXdgc`]`ZX[fi[`]\i\eZ`Xc%X :`iZl`kffi`^`eXc%Y :`iZl`kfi\[`YlaX[fgXiXXgi\Z`XicXZfe]`^liXZ`e[\H(# Zfdfj\^l`[fi[\mfckXa\#pH)#ZfdfXdgc`]`ZX[fi[\YXj\Zfd’e% Con el objetivo de visualizar el comportamiento de CA del circuito de la figura 3. Debido a que ningún transistor tiene inversión de fase. la corriente IE1  IE2 . De este circuito podemos notar que para señales de CA.10 b) ilustra el mismo circuito. V1. ahora vamos a hacer uso de un circuito equivalente de CA de un transistor. la señal de salida. La ecuación 3. pero como RE>>re2 . denominada re.10. En este caso. lo cual nos lleva al circuito equivalente mostrado en la figura 3.M "M::4(. el cual está compuesto por una resistencia de CA. A d Cuando los voltajes V1 y V2 se aplican simultáneamente.16: RC VSAL  (V1 V2 ) (3. Ad. 3 El mágico amplificador operacional "M:: I: :fcc\Zkfik\id`eXc: 9Xj\k\id`eXc 9 i:i\gi\j\ekjk_\XZ i: i\j`jk\eZ\f]k_\\d`kk\i [`f[\ <d`jfik\id`eXc< I: =`^liX*%(( :`iZl`kf\hl`mXc\ek\[\:8gXiXlekiXej`jkfi#\cZlXcdl\jkiXcXi\j`jk\eZ`X[\:8#[\efd`eX[Xi\#gXiXle`e\d`jfi$YXj\# pleX]l\ek\[\Zfii`\ek\Zfii\jgfe[`\ek\XcXle`eYXj\$Zfc\Zkfi% M:: I:4('bΩ I:4('bΩ @<( @<) MJ8C MJ8C .85 V. esto es V1 V2  0. 92 ELECTRÓNICA • MIJAREZ . el voltaje de salida es idealmente de 7.16) 2re Donde RC2re es la ganancia de voltaje diferencial. Si V1 y V2 son iguales. el voltaje de salida se encuentra determinado por la ecua- ción 3.dM M(4 M(4 ('dM I< ('dM I< X Y =`^liX*%() 8e}c`j`j[\:8[\cXdgc`]`ZX[fi[`]\i\eZ`Xc%X :`iZl`kf\hl`mXc\ek\[\:8\e\chl\j\dl\jkiXZdfM(j\[`m`[\\eki\i\(pi\) % Y :`iZl`kf\hl`mXc\ek\[\:8ZfeI<\oZcl`[X#pXhl\)I<i\) % Ganancia de voltaje diferencial.dM . cada una de valor 2RE.13 c). Para obtener la ganancia ACM . la ganancia de modo común.17) iC (re 2 RE ) (re 2 RE ) En la mayoría de los casos. el cual muestra un amplificador diferencial con señales de modo común aplicadas a sus entradas. de ahí su nombre de entrada de modo común. se obtiene por la ecuación 3. Por tanto. el voltaje de salida es igual a VSAL  iC RC. tal y como se indica en la ecuación 3.%Z :`iZl`kf\hl`mXc\ek\gXiX:8% En tanto. ACM La ganancia de modo común.M I:4('bΩ I:4('bΩ MJ8C H( H) H( H) M<EK M<EK M<EK M<EK )I<4)'bΩ )I<4 )'bΩ I<4('bΩ M<:4(.17: iC RC RC ACM   (3.M M::4(. "M::4(.18) 2 RE Razón de rechazo de modo común (CMRR) Otro parámetro importante de los amplificadores diferenciales es la Razón de Rechazo de Modo Común (CMRR. como se muestra en la figura 3. ACM .M "M::4(. De acuerdo con este circuito. RE puede dividirse en dos resistencias por separado. por lo que la ecuación se reduce a la ecuación 3. ACM .M X Y I:4('bΩ @ MJ8C )I<4)'bΩ )I<4 )'bΩ Z =`^liX*%(* 8dgc`]`ZX[fi[`]\i\eZ`XcZfeleX\ekiX[X[\df[fZfd’e%X :`iZl`kf%Y :`iZl`kf\hl`mXc\ek\gXiX:.13 b). vamos a utilizar el circuito de la figura 3.18: RC ACM  (3. el circuito equivalente para CA se ilustra en la figura 3. Dado que las corrientes de emisor de CD son iguales. La CMRR se define como la razón entre la ganancia de modo diferencial. ACM. y la ganancia de voltaje de modo común. por sus siglas en inglés). Ad. re<<RE.19: grupo editorial patria® 93 . 3 El mágico amplificador operacional Ganancia de voltaje de modo común. en un amplificador diferencial asume que las señales aplicadas a cada base de los transistores de entrada son exactamente iguales tanto en fase como en amplitud. mientras que el voltaje de entrada es igual a VENT(CM)  iC(re 2RE).13 a). 8 Uno de los primeros OP AMP que utilicé al salir de la universidad. 8 Robert Widlar (1937-1991) es considerado el primer diseñador del OP AMP monolítico en estado sólido. re.5 2 RE 20 k7 Una vez que se tiene el valor de ACM y el valor de Ad . y fabricado por Fairchild Semiconductors. procederemos a ver al amplificador operacional y sus características principales.42 VPP Para obtener la CMRR. podemos calcular la CMRR usando la ecuación 3.1 dB ACM 0 De esta forma. EL AMPLIFICADOR OPERACIONAL Y SUS CARACTERÍSTICAS PRINCIPALES En la actualidad existen. con de- sempeño y características eléctricas variadas. mejor es el amplificador diferencial. A pesar de ciertas 94 ELECTRÓNICA • MIJAREZ . un valor de 49. usando componentes discretos. primero debemos calcular la ACM. literalmente.18: RC 10 k7 ACM    0. tenemos que: 25 mV 25 mV re    35 Ω IE 715 μA Una vez calculado el valor de re.5  20log(285. que previamente calculamos. primero calculamos el valor de la resistencia interna de emisor. será amplificado mucho menos que las señales que queremos amplificar. la cual se obtiene usando la ecuación 3. y la ACM.85 r 10 mVPP  1. requerimos la Ad. ACM . el voltaje de CA de salida. la CMRR en decibeles y la ganancia de voltaje de modo común. vamos a utilizar el circuito de la figura 3. Para ello. Por tanto. cientos de amplificadores operacionales disponibles en el mercado.20: CMRR  20log Ad 85  20log142 .7)  49. que por lo general es común a ambas entradas y no deseado. denominado uA702.7 veces mayor que la salida debida a la señal de entrada de modo común. podemos obtener Ad : RC 10 kΩ Ad    142.1 dB significa que la salida correspondiente a la señal de entrada diferencial es 285. el cual tiene como entrada una señal de voltaje CA de 10 mVPP .19) ACM Entre más alto es el valor de la CMRR.85 Ω 2re 70 Ω Con el valor de la ganancia. Esto es importante porque el ruido. y sabemos la relación que esta mantiene con IE . Widlar propuso que los CI no fueran diseñados como circuitos convencionales. desarrolló una metodología para hacer resistencias con transistores.20) ACM Como ejemplo del cálculo de parámetros importantes del amplificador diferencial. 3 El mágico amplificador operacional Ad CMRR  (3. que culminó con el primer CI lineal en 1963. Ahora que hemos estudiado los conceptos generales de la retroalimentación. Para eso. como mencionamos antes. Ad . ahora podemos calcular el voltaje de salida de CA: VSAL  Ad r VENT  142. Puesto que previamente obtuvimos el valor de IE  715 μA. entre más alto es el valor de la CMRR mejor es el amplificador diferencial. Una forma más frecuente de especifi- car la CMRR es en decibeles: CMRR  20log Ad (3. Entonces.10 a). Se requiere calcular la ganancia de voltaje de modo diferencial. la teoría en que se sustentan los OP AMP y los rasgos distintivos y parámetros importantes de los amplificadores diferenciales. como mejor ganancia. además de que lo recomendamos como un buen punto de inicio para sus diseños. ya que sus especificaciones son casi idénticas. H- H/ I) I* . =`^liX*%(+ <dgXhl\kX[f.+ ±M<<:: . Este circuito imperfecciones.+(% En la figura 3. Todos estos OP AMP se consideran equi- valentes. es el LF411. La figura 3. los OP AMP son muy costeables.15 podemos reconocer a nuestro conocido amplificador diferencial. . que sirven como entradas del OP AMP. :fdgfj`Z`e`ek\ieX[\cFG8DG. Continuó haciendo mejoras al OP AMP. En la actualidad. causó que para 1969 los OP AMP se vendieran por alrededor de 2 dólares. se ha convertido en un estándar para la industria. etc. sin embargo.@G[\cFG8DG. resistencias y capacitores. siendo los nú- meros de parte más populares: el AD741.) . denominado 741.+(p[`jki`YlZ`e[\g`e\j% Internamente. M<< H0 " Md :: "M:: Æ H( H) H+ H* H. como se ilustra en la figura 3. como muchos otros OP AMPs..* H. asociado con una alta demanda en la producción de los mismos. podemos obser- var que las bases de Q1 y Q2 se conectan a las terminales del CI. de este circuito. este OP AMP fue un éxito comercial y se vendía por aproximadamente 300 dólares. además de tener un uso muy extendido. en esta sección adoptaremos el 741 como nuestro OP AMP estándar. Widlar se unió a la compañía NationalSemiconductors. En 1966. grupo editorial patria® 95 . con precios de ventas menores a 1 dólar. mayor ancho de banda.15. El LF411 es un OP AMP muy completo que he utilizado como “caballito de batalla”. diodos. * - + .( I( ÆM:: =`^liX*%(. sin embargo. menor corriente de entrada. cuando sea necesario haremos comparaciones de desempeño con el OP AMP 411 de entrada FET. "M:: . desde hace varias décadas el OP AMP de entrada BJT. 3 El mágico amplificador operacional originalmente introducido por National Semiconductors. *ó (ó Ç ( m`jkXjlg\i`fi / / &? . el LM741. Por tal razón. está contenido en un popular CI de 8 terminales.) 69 ) .14 muestra la distribución de pines y el empaquetado DIP del OP AMP 741. el OP AMP 741 está compuesto por transistores. El OP AMP 741. El éxito de los OP AMP. el NE741 y el uA741. donde tuvo un trabajo muy exitoso. El 741 es elaborado por diferentes fabricantes. conocido como mini DIP (Dual In-Line Package). VSAL . Todas estas características ideales son independientes de los cambios en la temperatura y en la fuente de alimen- tación. 6. a continuación listamos las características ideales de su desempeño: 1. La configuración push-pull le permite al OP AMP tener una impedancia de salida muy baja. Impedancia de salida. y tiene un valor aproximado de 30 pF. Ganancia de voltaje de lazo abierto. no obstante. Este capacitor afecta la operación del OP AMP a altas frecuencias. Antes de analizar las características reales del OP AMP. Ganancia de voltaje de lazo abierto AVOL  infinita. El capacitor CC también produce una distorsión en el SlewRate. AVOL .21. Esta ganancia se encuentra dividiendo el voltaje de salida. como se ilustra en la figura 3. AVOL La ganancia de voltaje de lazo abierto. usado entre etapas.21) VED Un valor típico de AVOL para el OP AMP 741 es de 200 000. el OP AMP puede amplificar señales de CD. 7. pero este tema lo discutimos cuando analizamos las características más importantes de los OP AMP. Por esta razón. 3 El mágico amplificador operacional se usa porque amplifica la diferencia de voltaje entre sus dos entradas. parten de estas características en varias formas. VSAL  0. ZSAL  cero. como vemos a continuación. pero se usa para prevenir oscilaciones no deseadas. entre el voltaje de entrada diferencial. 96 ELECTRÓNICA • MIJAREZ . y no los valores individua- les de V1 y V2 . 3. sin usar capacitores o transformadores para aislar los voltajes de CD de cada etapa. de lazo abierto. es amplificado. Es importante hacer notar que únicamente el voltaje de entrada diferencial. "M:: Æ Q<E 8MFC M[ QJ8C M( " MJ8C ÆM:: M) =`^liX*%(- Df[\cf[\cFG8DG`[\Xc% Los OP AMP reales no alcanzan el desempeño ideal. ZENT  infinita. lo cual es aná- logo a tener una fuente de voltaje con una resistencia interna muy baja. VSAL AVOL  (3. se denomina de compensación. El capacitor CC. como lo muestra la ecuación 3. Costo tiende a cero.17 a). 2.16 modela las características ideales del OP AMP. La salida del OP AMP es tomada de los emiso- res correspondientes a los transistores Q8 y Q9. Es importante hacer notar que el OP AMP es directamente acoplado. Estos transistores se conectan en una configuración llamada push-pull. 4. 5. VED . y Q9 conduce durante el semi-ciclo negativo. de un OP AMP es la ganancia de voltaje cuando no existe retroalimenta- ción negativa. La salida puede cambiar instantáneamente (slew rate  infinito). Esto significa que la salida de una etapa se conecta de forma directa a la entrada de la siguiente. VED  V1 V2 . cuando ambas entradas están al mismo voltaje (voltaje de offset  cero). en la cual Q8 conduce durante el semi-ciclo positivo de la forma de onda de salida. Impedancia de entrada. Respuesta a la frecuencia uniforme y ancho de banda desde CD hasta infinito. La figura 3. 17 b).'μM M 4000%0. el voltaje de salida estará definido por la ecuación 3. simplemente.9 9 De manera práctica.M Z [ =`^liX*%(. respectivamente. significa que el voltaje de entrada diferencial.17 d) invertimos los valores en V1 y V2 . VSAT. requerido para obtener los vol- tajes de saturación se puede obtener de la siguiente forma: oVSAT o13   V oVED    o 65 μV AVOL 200 000 Un punto importante de mencionar es que si el VSAL se encuentra entre ±VSAT .M X Y "(.22: VSAL  AVOL r VED  200 000 r 0. y VSAL es negativo cuando la entrada no inversora ( ) es negati- va con respecto a la entrada inversora ( ). como lo podemos apreciar en la figura 3. Aquí V1 es negativo con respecto a V2 . VSAL  AVOL r VED  200 000 r 0. y posteriormente calculamos VSAL usando la ecuación 3. ±VSAT.4.M Æ(. como se muestra en la figura 3. por ejemplo.95 μV.μM 8MFC4)''''' MJ8C4"('M M<. Por tanto. En la figura 3.8MFC ± M<. Si. los voltajes de alimentación son ±VCC  ±15 V.22) El VSAL  ± 10 V. Para obtener el VSAL usamos la misma ecuación anterior. FG8DGZfe]`^liX[fgXiXXdgc`]`ZXilemXcfig\hl\Œf\ejlj\ekiX[Xj#M<.4.M "(. primero obtenemos VED  V1 – V2  1 000 μV – 999. Si ahora asumimos que V1  1 V y V2  999.22: VSAL  AVOL r VED  200 000 r o 0. debido a los ruidos inducidos.5 μV  10 V Los límites máximos positivo y negativo del voltaje de salida. el voltaje de entrada diferencial. los vol- tajes de saturación. 3 El mágico amplificador operacional "M:: "(.'μM 8MFC4)''''' MJ8C4±('M M) M) Æ Æ ÆM:: Æ(. por tal razón el voltaje de salida es positivo.4M(ÆM) 8MFC4)''''' MJ8C4M<. VSAL. es dif ícil medir en el laboratorio voltajes menores a los 50 μV. el VSAL se puede calcular.#gfilemXcfidlpXckf[\^XeXeZ`X8MFC % Como ejemplo numérico. VED . grupo editorial patria® 97 . VED  V1 – V2  999. Entonces.M M( M( " " M<.17 c). Por lo general. es muy pequeño y para fines prácticos se considera que es cero volts.'μM 8MFC4)''''' MJ8C4Æ('M ) M)4(M Æ Æ Æ Æ(.μM " " " M<. y saturación negativa.95 μV – 1 000 μV  50 μV.4. los voltajes de saturación tienen un valor de 2 V menor que los voltajes de alimentación. VED . VSAL es positivo cuando la entrada no inversora ( ) es positiva con respecto a la entrada inversora ( ). se denominan voltajes de saturación positiva. serán ±13 V. Entonces. ±VCC. Por tanto.5 μV  10 V En esta ecuación podemos observar que V1 es mayor que V2. asumimos una entrada pequeña de VED  ±5 μV y AVOL  200 000.M M(4(M M(4000%0.95 μV  50 μV. –VSAT.5 μV  o10 V (3. multiplicando el VED por AVOL. generalmente 80 r 10–9 A. Q1 y Q2 deben tener una trayectoria externa de CD de regreso a la tierra de la fuente de alimentación. Por lo gene- ral. pero no para OP AMP con entradas bipolares. las corrientes IB se ignoran para transistores JFET. IOS. No obstante. o menos. Sin embargo. "M:: @9Æ Æ @9" . que acabamos de describir. como se muestra en la ecuación 3.24) Para el OP AMP 741. Para el OP AMP 741. En un mundo ideal. a temperatura ambiente. de tal forma que el voltaje de salida sea cero. Los valores de IB e IB son tan pequeños que en muchos análisis de la operación de los circuitos se consideran cero.23) 2 Donde el símbolo / / significa únicamente la magnitud.10 Los fabricantes especifican la corriente IB como el promedio de las dos corrientes. donde se especifi- can las características de entrada de CD de los OP AMP. La importancia de las corrientes IB radica en que estas causan una caída de voltaje en las resistencias de la malla de retroalimentación. la cual puede expresarse por la ecuación 3.18 se designa como IB– a la corriente que fluye de la terminal inversora y como IB a la corriente que fluye de la terminal no-inversora. A la diferencia entre estas dos corrientes se le denomina. sin considerar la polaridad. en aplicaciones de alta precisión. estas corrientes son muy pequeñas.23: / I B+ / / I B– / IB  (3. junto con el voltaje de offset y la deriva (dift) de offset. La figura 3. como el 411. Voltajes de entrada de offset Por lo general. El voltaje de offset. De hecho. del orden de los nanoam- peres. la malla de polarización o en la impedancia de la fuente. como corriente de offset. los valores de estas corrientes tienen que tomarse en conside- ración. elegantemente. a pesar de los esfuerzos de los diseñadores de OP 10 Para OP AMP con entrada JFET. se define como el voltaje que debe ser aplicado a la entrada.24: I OS  / I B / / I B / (3. con lo cual se puede obtener un VOS  0 V. la corriente IOS es típicamente de 20 μA. y hasta 2 μA a 70 °C. los transistores y las resistencias que conforman el amplificador diferencial son idénticos. 98 ELECTRÓNICA • MIJAREZ . los primeros parámetros que se encuentran en las hojas de datos de los fabricantes. son las bases de los transistores Q1 y Q2 las que sirven como estas entradas y deben ser polarizadas correcta- mente antes de intentar amplificar cualquier señal de voltaje de entrada. El valor de estos parámetros está determinado por la etapa de entrada constituida por nuestro viejo amigo el par o amplificador diferencial. 3 El mágico amplificador operacional Corrientes de polarización de las entradas Las terminales de entrada del OP AMP requieren una pequeña corriente llamada corriente de polarización. IB. la corriente IB es típicamente de 50 Pa.+( MJ8C " ÆM:: =`^liX*%(/ :fii`\ek\j[\gfcXi`qXZ`e[\\ekiX[X[\cFG8DG% En la figura 3. Para esto. IB– e IB . son las corrientes de polarización y las corrientes de offset. Los valores de IB e IB po- drían ser diferentes. a temperatura ambiente. VOS. ya que es muy dif ícil tener dos transistores idénticos.18 muestra la dirección del flujo de co- rriente de las terminales inversora y no-inversora cuando son aterrizadas. ZENT. la cual cambia con la temperatura. es la resistencia intrínseca de salida del OP AMP. esta es la impedancia viendo hacia una entrada con la otra entrada aterrizada. con la retroalimentación negativa. la de- riva por envejecimiento. especifican. vimos que si tenemos un OP AMP con voltajes de saturación VSAT  ±13 V y una oVSAT o13 V AVOL  200 000. La ZO ideal es cero. como el OP-77. que intenta mantener ambas entradas al mismo voltaje. Del ejemplo anterior. Impedancia de salida: oscilación de salida vs. por lo general. Por desgracia. además del voltaje de offset. RL. La ZENT ideal tiene un valor infinito. y no se puede predecir a cuál. por ejemplo a tierra. tienen dos entradas para reducir el VOS a cero.19. Esta deriva es ocasionada por la caída de voltaje de la unión p-n polarizada directamente.2 μV/mes. para OP AMP reales de entrada BJT. como el 411. es aproximadamente de 1012 ohms. como se ilustra en la figura 3. Sin embargo. ya que inicialmente el VOS puede ajustarse a cero. entonces: VED 65 μV I ENT    650 pA ZENT 100 k7 Como sabemos. la ZENT presenta. No obstante. cada transistor cambia en forma ligeramente diferente. siempre hay pequeñas diferencias. en consecuencia. las características de los circuitos OP AMP dependen de los elementos externos.2 μV/°C. por ende el VOS cambia con la temperatura. 10 μV. la salida se saturará a VCC o –VCC. El VOS se puede modelar como si hubiera una batería conectada en serie con una de sus entradas como se muestra en la figura 3. mientras que para el 411 es 2 μV. y la deriva de voltaje de offset. Debido al efecto de la retroalimentación negativa. resistencia de carga La impedancia de salida. que para este OP AMP es de 0. co- múnmente de 10 kΩ. Por ejemplo. mientras que para los OP AMP de entrada FET. eliminando la mayor parte de la entrada diferencial. Esto significa que la variación del VOS por envejecimiento sería únicamente de ¡48 μV en 20 años! Impedancia de entrada La impedancia de entrada. Un parámetro de mayor importancia para aplicaciones de precisión es la deriva (dift) del VOS con la temperatura y el tiempo. como el 411. en consecuencia. y normalmente se le consi- dera un parámetro de menos importancia que la corriente de polarización IB. Para el 741. es la corriente que entra a la terminal no-inversora de un OP AMP en configuración de lazo abierto.19. en la práctica. correspondiente a la unión base-emisor de los transistores de la etapa de entrada. Si la impedancia de entrada AVOL 200000 ZENT  100 kΩ. grupo editorial patria® 99 . ZO. valores muy altos. como el 741. se refiere a la resistencia de entrada diferencial. la oscilación del voltaje de salida es independiente de la carga. la impedancia de entrada es aproxima- damente 2 MΩ. 0. Esta deriva del VOS se especifica en las hojas de datos en μV/°C. IENT. para el 741 este parámetro es de 15 μV/°C y para el 411 de 7 μV/°C. el máximo VOS es 4 μV. vamos a asumir que la corriente de entrada. los OP AMP de preci- sión. mediante un potenciómetro. que no proporcionan la deriva por envejecimiento. A diferencia de los OP AMP 741 y 411. 3 El mágico amplificador operacional AMP para hacer los transistores idénticos. M:: Æ MJ8C " MFJ Gfk ÆM:: =`^liX*%(0 MFJdf[\cX[fZfdfleXYXk\iˆXZfe\ZkX[XXcX\ekiX[Xef$`em\ijfiX% Los OP AMP. para OP AMP comerciales. la corriente de en- trada es cero. ¿cuál será la corriente de entrada al inicio de la saturación? Bien. Si se conectan las entradas a un mismo voltaje. La diferencia en los vol- tajes de entrada necesaria para hacer que el voltaje VSAL sea cero es el VOS. el voltaje de entrada diferencial oVED    o65 μV . Cuando la frecuencia se incrementa arriba del valor de fOL .%'  (' @dg\[XeZ`X[\ZXi^XbΩ =`^liX*%)' MfckXa\[\fjZ`cXZ`e[\jXc`[Xmj%`dg\[XeZ`X[\ZXi^X% Para algunos OP AMP su capacidad de salida es asimétrica. Por tanto. aunque en la práctica el bel no se utiliza por ser demasiado grande. y el ancho de banda también sería infinito. De la figura 3. Normalmente. en la práctica. Esta salida será también una onda sinusoidal con diferente fase y magnitud.M K84"). tiene valores típicos de 20 mA. el valor de AVOL  141 400 a 10 Hz. como una gráfica de voltaje de oscilación de salida vs. La retroalimentación negativa reduce el valor de ZO a valores realmente insignificantes. como se muestra en la figura 3.20 para el OP AMP 741.20. )/ ). MJ4±(. que es en realidad la unidad. es de 100 Ω. la cual. tradicionalmente considerado el inventor del teléfono. ya que la oscilación puede ser desde tierra hasta el voltaje positivo de la fuente. dB.7 de su valor máximo. o viceversa. Hendrik Wade Bode. a 10 Hz. podemos apreciar que para una impedancia de carga de 1 kΩ. frecuencia de corte de ganancia de lazo abierto. característica muy útil cuando se usan OP AMP con una sola fuente de alimentación. Impedancias de carga menores a 1 kΩ. Para el OP AMP 741. en un circuito. Una forma de representar gráficamente la respuesta en frecuencia de un sistema.11 Sin embargo. como se muestra en la figura 3. es una unidad logarítmica que constituye la décima parte de un bel. es a través del uso de los diagramas de Bode. como el LM358. a 100 ELECTRÓNICA • MIJAREZ .—: MfckXa\[\fjZ`cXZ`e[\jXc`[XMgg )+ )) )' (/ (- (+ () (' / '%(  '%)   '%. para algunos OP AMP de baja potencia puede llegar a ser de vario miles de ohms. generalmente. típicamente. la mayoría de los OP AMP operan relativamente con bajas frecuencias. Recibe su nombre del científico que lo desarrolló. la ganancia de lazo abierto del OP AMP ideal sería infinita desde cero o CD hasta cualquier frecuencia. AVOL se reduce al 70. pueden recibir (sink) más corriente que la que pueden proporcionar (source). una que corresponde a la magnitud de dicha función y otra que corresponde a la fase. la ganancia decrece por un factor de 10 por cada década que se incrementa la fre- cuencia. 3 El mágico amplificador operacional es aproximadamente 40 Ω. por ejemplo. la ganancia de lazo abierto AVOL  200 000 frecuencias debajo de 10 Hz. El dB relaciona la potencia de entrada. PE. permiten oscilaciones que cubren sus fuentes de alimentación. estos diagramas constan de dos gráficas separadas. Esto es proporcionado por los fabricantes en sus hojas de datos.12 Esta reducción en AVOL a altas frecuencias es causada 11 La respuesta de frecuencia es una representación de la respuesta de un sistema a entradas sinusoidales a distintas frecuencias.21. impedancia de carga. Respuesta a la frecuencia En el dominio de la frecuencia. No obstante. y para el 741. PS. Algunos OP AMP. o los eleva para el caso de fuentes de corriente. para este OP AMP. El dB es una unidad de medida sin dimensiones y relativa (no absoluta). y la potencia de salida. reducirán de manera significativa su voltaje de oscilación. A esta frecuencia se le designa fOL . 12 El decibel. si el OP AMP se alimenta con ±15 V. el voltaje de oscilación es aproximadamente 24 Vpp.  (%'  )%'   . Esto equivale a decir que AVOL decrece 20 dB/década. El bel recibió este nombre en honor de Alexander Graham Bell. lo que realmente tiene importancia es su máxima capacidad de corriente de salida. es decir. la cual es utilizada para facilitar el cálculo y la realización de gráficas en escalas reducidas. funitaria. El SR nos indica qué tan rá- pido puede cambiar el voltaje de salida de un OP AMP con respecto al tiempo. dB =  10logPS .M ΔM4'%. dB =  10log VV  20logV S E S o PE R VE 2 N . SLEW RATE Otra especificación muy importante de los OP AMP es el Slew rate. la funitaria es aproximadamente 1 MHz. generalmente. A la frecuencia en la que AVOL  1 se le denomina frecuencia unitaria. Los OP AMP de baja potencia. grupo editorial patria® 101 .22. y p  I 2 R también N se puede obtener por N . mientras que los OP AMP de alta-velocidad pueden tener SR de 100 V/μs o hasta 6 000 V/μs. El dB se usa comúnmente para medir ganancia positiva o ganancia negativa (una ganancia negativa significa S E S IE atenuación). dB =  10log  II  20logI . Para ilustrar este concepto usaremos la figura 3. tienen SR de 1 V/μs.5 V/μs. designado como SR. Esto significa que no importa qué tan rápido cambie el voltaje de entrada. " . Puesto que P  V2 .5 V/μs. una reducción de 10 es igual a N  20 log 10  –20 dB. 3 El mágico amplificador operacional )''''' ]FC >XeXeZ`X[\mfckXa\[\cXqfXY`\ikf#8MFC (''''' 8MFC4(+(+''X]FC ('''' (''' ('' (' ( (?q ('?q (''?q (b?q ('b?q (''b?q (D?q =i\Zl\eZ`X =`^liX*%)( :limX[\i\jgl\jkXXcX]i\Zl\eZ`Xmj%^XeXeZ`X[\mfckXa\8MFC% por el capacitor interno CC. Para el 741. el voltaje de salida puede cambiar únicamente 0.+( MJ8C M Æ "('M ΔM4. como el LH0063C.M "(M '—*'— =`^liX*%)) FG8DGZfeleXj\ŒXc[\\ekiX[Xj`eljf`[Xc#]fidX[\fe[X8#pleXj\ŒXc[\jXc`[Xj`eljf`[Xc#]fidX[\fe[X9%8dYXjj\ŒXc\j Zl\ekXeZfecXd`jdX]i\Zl\eZ`X#g\if[`]\i\ek\jg\e[`\ek\j[liXek\cXjXck\ieXZ`fe\jgfj`k`mXjpe\^Xk`mXj% 2 través de la fórmula N . y se especifica en volts/μs. Por tanto. Para el 741. el SR es 0. . Sin embargo. la frecuencia máxima a la cual el voltaje de salida oscilará sin distorsión es igual al máximo slew rate (MSR) que presenta el OP AMP. si tenemos un OP AMP con un SR  10 V/μs y un VP  5 V.23. si el OP AMP tiene un SR de 1 V/μs tendríamos una distorsión producida por el SR. como se muestra en la figura 3. Esto es: VSAL  VP sen 2P f t dV  2P f VP cos 2P f t dt dV  dt MÁX  2P f VP Para una señal sinusoidal con una frecuencia f  34 kHz y un voltaje de pico VP  14 V. la distorsión del SR depende de la amplitud de salida y de la frecuencia. la frecuencia máxima de salida sin distorsión de un OP AMP con un SR y un VP dado se obtiene median- te la ecuación 3.`jkfij`e[\cJI[\Y`[fXhl\cXg\e[`\ek\`e`Z`Xc[\cX]fidX[\fe[X[\jXc`[X\oZ\[\ cXj\jg\Z`]`ZXZ`fe\j[\JI[\cFG8DG% En resumen. podemos determinar la máxima frecuen- cia que este OP AMP puede operar sin distorsión. es una versión amplificada de su entrada sinusoidal. a una frecuencia dada.24. VED . forma de onda B. Por tanto. forma de onda A. usando la ecuación 3.dgbVYZdcYV6 =fidX[\fe[X G\e[`\ek\5JI \jg\iX[X\ecXjXc`[X .26) f MÁX   318   kHZ 2PVP 2P (5  V ) Dicho de otra forma y considerando una señal sinusoidal de frecuencia f (hertz) y una amplitud A (volts). decimos que esta señal requiere un SR mínimo de 2πAf volts/s para oscilar correctamente. para una se- ñal sinusoidal. como se muestra en la figura 3. De lo anterior.22 se ilustra que el voltaje de salida del OP AMP. de tal manera que la amplitud es reducida y la forma de onda distorsionada. 102 ELECTRÓNICA • MIJAREZ .23.26: V 10 SR μs (3. Por tanto. Sin embargo. si la pendiente de la salida sinusoidal excede el SR del OP AMP. 3 El mágico amplificador operacional En la figura 3. Entre mayor sea el voltaje de pico de la señal.25: SR (3. podemos observar que la frecuencia máxima de la señal puede ser incrementada si se utiliza un OP AMP con un SR de mayor valor o aceptando un voltaje de pico de salida de menor valor. VP . requeriríamos un valor dV 106 V mínimo de SR   dt MÁX  2P (34 kHz)(14 V) 3 r s  3 V/μs.M&μj =`^liX*%)* .25) f MÁX  2PVP Por ejemplo. mayor será la pendiente inicial. como se muestra en la figura 3. la señal de salida tendrá una forma de onda triangular.dgbVYZdcYV7 =fidX[\fe[X[\jXc`[X ki`Xe^lcXi#i\jlckX[f [\cX[`jkfij`e[\ JI#[M&[k4'%. Corriente de corto circuito Es muy común que los OP AMP cuenten con una protección contra un corto circuito en su salida. RL . si la resistencia de carga. el 411 especifica un settling time de 2 μs a 0. El settling time indica el tiempo que toma el OP AMP en estabilizarse en su salida. considerando una entrada escalón. grupo editorial patria® 103 .`jkfij`e[\leXj\ŒXcj`eljf`[Xc`e[lZ`[Xgfi\cJI[\leFG8DG% Settling time Otro aspecto del desempeño de alta frecuencia de un OP AMP es descrito por el parámetro denominado tiempo de estabilización o settling time como comúnmente lo especifican las hojas de datos. 3 El mágico amplificador operacional "(+M *M&μj ]d}o4*+b?q (M&μj ]d}o4((b?q Jc\niXk\d}o`df XcZilZ\gfiZ\if Æ(+M =`^liX*%)+ . JXc`[X 9Xe[X \iifi K`\dgf K`\dgf[\ K`\dgf[\ K`\dgf[\ dl\ikf ZXdY`fd}o`df i\Zlg\iXZ`e \jkXY`c`qXZ`e]`eXc J\kkc`e^k`d\ =`^liX*%). nos estamos adelantando. dentro de una banda de error. ya que el voltaje de salida no puede exceder 25 mA × RL. por ejemplo cuando el OP AMP se utiliza como etapa posterior de un convertidor digital a analógico (DAC). la corriente de salida no puede exceder 25 mA. el voltaje de salida será bajo. ya que se desea saber cuánto le tomará al OP AMP estabilizarse después que un código digital ha cambiado. De esta manera.25 ilustra este parámetro. pero. Por ejemplo. si la salida de un OP AMP. La figura 3. como el 741.01% de error. Por tanto. ya que el próximo capítulo se inicia con los principios de electrónica digital. J\kkc`e^k`d\[\leFG8DGdfjkiXe[fjlYXe[X[\\iifi% El settling time es importante para ciertas aplicaciones. que explicamos posteriormente. se conecta directamente a tierra. conectada a la salida tiene un valor pequeño. Este parámetro es.13 Esto significa que si dos señales de entrada. La figura 3.—: /' . La figura 3. el OP AMP amplifica la diferencia en el voltaje de sus dos entradas. la reducción inicia después de los 100 Hz. La PSRR se especifica para ambas fuentes de alimentación. De igual manera.+(% Para el OP AMP 741. pero importante. la señal de entrada diferencial aparecerá en la salida aproximadamente 30 000 veces más grande que la señal de entra- da de modo común. los cuales podrían generar ruido de alta frecuencia. se aplican simultáneamente a un 741. En consecuencia.M 0' K84"). se requerirá una fuente de alimentación aislada o de elementos de filtrado en las terminales de entrada de la fuente de alimentación del OP AMP. un OP AMP tiene la característica de amplificar las señales de entrada diferencial y de atenuar cualquier señal de entrada de modo común. una señal de entrada diferencial y una señal de modo común. mencionaremos la razón de rechazo de la fuente de alimentación (PSRR. frecuencia. una CMRR de 10 000 corres- ponde a una CMR de 80 dB. El PSRR indica la capacidad de un OP AMP para excluir cualquier señal de alta frecuencia que aparezca en la fuente de ali- mentación. Por ende. También. De esta forma.' +' *' )' (' ' ( (' ('' (b ('b (''b (D ('D =i\Zl\eZ`X?q =`^liX*%)- :DIImj%]i\Zl\eZ`XgXiX\cFG8DG. 3 El mágico amplificador operacional Razón de rechazo de modo común (CMRR) Como vimos antes. 104 ELECTRÓNICA • MIJAREZ . Ad. positiva y negativa. la salida no es cero. Por ejemplo. Desafortunadamente. incluso con señales de modo común perfectas. ('' Mj4±(. la salida del OP AMP será igual a cero. ese ruido de alta frecuencia se pasará hasta la salida del OP AMP. en este mismo capítulo. 13 Algunos fabricantes expresan la CMRR como la división entre la ganancia de modo diferencial.26 muestra la curva característica de la CMRR vs. debido a que los OP AMP no presentan características ideales. Aún así. a esta señal se le conoce como señal de entrada de modo común y en muchas ocasiones se podría considerar como una interferencia en las señales de entrada. ACM. y cada una tiene exactamente la misma relación de fase y la misma amplitud. la etapa de entrada de un OP AMP está formada por el par o amplificador diferencial. lo cual corresponde a una relación de 30 000:1. Mientras que el rechazo de modo común (CMR. para el 741. por sus siglas en inglés) es el logaritmo de esa división. si dos señales idénticas se aplican a las entradas de un OP AMP. para rechazar esas señales antes de que pro- duzcan ruido en la señal de salida. la CMRR  90 dB. podemos observar que la CMRR disminuye al incrementarse la frecuencia. y la ganancia de voltaje de modo común. sutil. la razón de rechazo de modo común (CMRR) es muy alta. Si esto sucede.27 muestra una gráfica típica de PSRR vs. por sus siglas en inglés). para el OP AMP 741. en realidad. frecuencia. Razón de rechazo de la fuente de alimentación (PSRR) Para completar algunas de las características importantes de los OP AMP. con variaciones simultáneas de las fuentes. si un OP AMP tiene un PSRR muy pobre y se conecta a una fuente de alimentación que alimenta circuitos digitales. por ejemplo desde ±15 V a ±5 V.' -' :DII[9 . Todas las resistencias presentan un ruido de voltaje térmico en origen.15 La figura 3. podemos observar que si se incrementa el valor de la resistencia. es el parámetro más complicado.29 muestra el circuito equivalente del ruido Johnson asociado a cada resistencia. a este tipo de ruido se le conoce como ruido Johnson.15 y R es el valor de la resistencia.27) Donde K es la constante de Boltzmann (1.27. Æ Æ @EÆ ME @E" " " Il`[f^\e\iX[fgfimfckXa\ME Il`[f^\e\iX[fgfiZfii`\ek\@E =`^liX*%)/ Il`[f\eleFG8DG^\e\iX[fgfimfckXa\ME pZfii`\ek\@E % Un tercer elemento que contribuye al ruido en los circuitos con OP AMP es el ruido generado por las resistencias ex- ternas al OP AMP.M ()' "=l\ek\ K84"). Por tal razón. Para el caso de los OP AMP. conocido como ruido Johnson o Johnson Noise. Lo anterior limita nuestra habilidad para hacer mediciones rápidas y exactas.27. Nyquist publicó el análisis teórico de este tipo de fluctuaciones.38 r 10 23 J/K). descubrimos que las cantidades que observamos fluctúan por valores muy pequeños de ma- nera aleatoria. el ruido es el que genera más problemas en el diseño de circuitos. 15 En 1927. B es el ancho de banda (Hz). también. J.14 Este. H. y nos hace ver que la cantidad de información que obtenemos o comunicamos es siempre finita. grupo editorial patria® 105 .—: ('' GJII[9 /' -' +' Æ=l\ek\ )' ' (' ('' (b ('b (''b (D =i\Zl\eZ`X?q =`^liX*%). MEI I =`^liX*%)0 Il`[f[\mfckXa\^\e\iX[fgficXji\j`jk\eZ`Xj% El voltaje de ruido de las resistencias. el ruido generado puede ser de voltaje y de corriente. VNR. V NR  4 KTBR (3. indicando que estas tenían un origen térmico. 3 El mágico amplificador operacional (+' Mj4±(.28. De la ecuación 3. Un año después. también se incrementará el ruido térmico generado por la misma. puede obtenerse por la ecuación 3. ya que. B. Johnson observó fluctuaciones aleatorias de voltaje al realizar mediciones en resistencias eléctricas. como se muestra en la figura 3. Esas fluctuaciones aleatorias es a lo que llamamos ruido. en muchas ocasiones. T es la temperatura abso- luta  T (°C) 273. veste último se relaciona con las corrientes de polarización en las entradas del OP AMP. 14 Siempre que queremos hacer mediciones exactas. ruido Nyquist o ruido térmico. GJIImj%=i\Zl\eZ`X[\leFG8DG% Ruido El último parámetro que vamos a analizar es el ruido. de forma cualitativa y cuantitativa. de este ruido total.30. para el 411 se especifica un ruido por corriente de pA HA 0. generado a 25 °C. si R  300 kΩ. I " Æ Ii\kif I<ek J\[\jgi\Z`XcXZfeki`YlZ`e [\il`[f^\e\iX[fgficXj I[\i\kifXc`d\ekXZ`e =`^liX*%*' :`iZl`kf[\FG8DGljX[fgXiX[\k\id`eXi\cil`[f[fd`eXek\% Si el valor de R en el circuito de la figura 3. ya sea de manera numérica o por medio de gráficas. por ejemplo. será el dominante. R  3 kΩ. aunque también contri- buirán el ruido de voltaje. si usamos un OP AMP con etapa de entrada FET. entonces el ruido de voltaje.31. el ruido generado por voltaje en la entrada del amplificador Hz Hz se indica también mediante una gráfica. por una resis- tencia de 1 kΩ a 1 Hz. IN. VNR.30 es cero. La tabla 3. la contribución del ruido para el circuito de la figura 3.01 y un ruido por voltaje de 25 . para el caso de ruido por voltaje. se tendrá en consecuencia un ruido muy bajo generado por la corriente. que se incrementa a bajas frecuencias. Esta suma se obtiene mediante la raíz cuadrada de la suma de los cuadrados de todos los valores de ruido. por lo que es importante examinar el efecto de estos tres tipos de ruido. Por eso. ya que R es cero. el cual tiene una corriente de polarización muy baja. Sin embargo. VN .31. 1/f. y tampoco se generará el ruido de corriente. VN. aunque también exis- tirá el ruido por voltaje. sin embargo. el ruido generado por la corriente de polarización que pasa por R es. El OP AMP 741 especifica estos parámetros mediante gráfi- cas y el 411 por un valor numérico y por gráficas. ahora. Pero. tal como la que se muestra en la figura 3. El ruido dominante depende del circuito en particular que se esté empleando.30 con diversos valores de la resistencia R. y el ruido producido por la corriente. Por ejemplo. IN. Valores de R Elemento contribuyente 0 3 kΩ 300 kΩ Ruido por voltaje 3 3 kΩ 3 kΩ Ruido por corriente 0 3 kΩ 300 kΩ Ruido por la resistencia 0 7 kΩ 70 kΩ KXYcX*%) <c\d\ekfjhl\Zfeki`Ylp\e[\dXe\iXgi\[fd`eXek\\ecX^\e\iXZ`e[\il`[f\e\cZ`iZl`kf[\cX]`^liX*%*'% Normalmente. VN. el ruido producido por las resistencias es un componente clave en los circuitos con OP AMP. Por tanto. El cálculo del ruido total es la suma de los valores absolutos de todos los ruidos. y el ruido Johnson. R. entonces el componente que predomina es el ruido Johnson. como se aprecia en la figura 3. Si. por corriente y voltaje. vamos a analizar el circuito mostrado en la figura 3. el cual está relacionado con el ancho de banda de ruido del amplificador y se le designa por una figura de mérito designada como frecuencia de corte.2 muestra. las hojas de datos especifican el ruido generado a la entrada del OP AMP por voltaje o por corrien- te. Todos los OP AMP tienen un valor de ruido. Para OP AMP 106 ELECTRÓNICA • MIJAREZ . porque no existirá el ruido Johnson proveniente de la resistencia. 3 El mágico amplificador operacional Una estimación del ruido total que se usa comúnmente como referencia es 4 ηV. este último con un mayor valor. el componente predominante del ruido. ¡No se ha diseñado! Lo que se puede hacer con las opciones disponibles es seleccionar el mejor. Por ejemplo. 9Xafil`[f 9Xafil`[fgfi 8dgc`fXeZ_f gfimfckXa\ Zfii`\ek\ [\YXe[X 9XafmfckXa\ DXpfi^XeXeZ`X Fg\iXZ`eZfeleX [\f]]j\k [\mfckXa\ ]l\ek\[\Xc`d\ekXZ`e LeX:DIIXckX 8ckX`dg\[XeZ`X 9XafZfejldf DXpfidXe\af [\\ekiX[X [\gfk\eZ`X [\Zfii`\ek\X cXjXc`[X =<K 9`gfcXi =`^liX*%*) :XiXZk\iˆjk`ZXj`dgfikXek\j[\cXjk\Zefcf^ˆXj[\j`c`Z`fljX[XjgXiX]XYi`ZXiFG8DG% grupo editorial patria® 107 . Por tanto. dependiendo de la aplicación. No obstante.32 muestra de manera general y a golpe de vista la diferencia entre estas dos tecnologías usadas para la fabricación de los OP AMP. estos transistores tienen un efecto fundamental en el desempeño total del OP AMP. Para esto se requiere usar un circuito especial con filtros y ganancias. por ejemplo de 0. no existe un OP AMP ideal para todas las aplicaciones. Lo importante es tener en cuenta los elementos que con- tribuyen al ruido de un circuito de OP AMP a fin de reducirlos al mínimo. OP AMP reales y su selección Resulta evidente que las características del OP AMP ideal no existen y que el OP AMP real tiene limitaciones. Un slew rate infinito podría no ser tan bueno como suena. La figura 3. 3 El mágico amplificador operacional . y transitorios de muy alta rapidez. si se requiere un circuito de precisión a bajas frecuencia se recomienda tener un OP AMP con un 1/f bajo.' -' 8⎞ ⎟ Ç⎠ . Como ya vimos en las secciones an- teriores. y utilizarlo de manera adecuada. Las tecnologías disponibles de silicio para la fabricación de OP AMP son la bipolar y la FET. La diferencia más importante entre estas dos tecnologías son los transistores empleados en la etapa de entrada. por mu- cho. que va más allá del objetivo de este texto. Esto disminuye aún más los glitches o transitorios de muy alta amplitud y alto contenido de frecuencias.1 a 10 Hz. en un ancho de banda específico. para el diseño de un circuito amplificador se usa un ancho de banda que es.' ⎛ μÇ Il`[fgfimfckXa\⎜⎝¹Ç?q +' *' )' (&] (' ' (' ('' (b ('b (''b =i\Zl\eZ`X?q =`^liX*%*( Il`[fgfimfckXa\#ME #^\e\iX[f\ecX\ekiX[X[\leFG8DG% diseñados para operar con un factor de ruido reducido a baja frecuencia. Uno de los objetivos de medir el ruido con un osciloscopio es obtener el voltaje pico a pico (VPP) a la salida del OP AMP. con lo cual se puede reducir el ruido. esta figura de mérito se puede reducir has- ta 2 Hz. es interesante hacer notar que esas imperfecciones son usadas por los diseñadores como ventajas o caracte- rísticas deseables. A la fecha. Podemos decir que al OP AMP real le gusta trabajar con señales de baja frecuen- cia. menor que infinito. A cualquier OP AMP que no use retroalimentación negativa se le considera dema- siado inestable para ser útil. La señal de salida se retroalimenta a la entrada. La inver- sión de fase ocurre porque la señal de entrada. VENT . con sus excepciones. Ii\kif4('bΩ "M:: K`\iiXm`iklXc I<ek4(bΩ Æ . Aun con la retroalimentación negativa. el VSAL  AVOL × VED . Lo anterior debido a que su salida se encuentra desfasada 180º con respecto a su entrada. El valor exacto de VED es de- terminado por la ganancia de lazo abierto AVOL y el voltaje de salida VSAL.+( " MJ8C4('MGG M<EK4(MGG ÆM:: =`^liX*%** :`iZl`kfXdgc`]`ZX[fi`em\ijfi% Las resistencias RRETRO y RENT proveen la retroalimentación negativa. designado como VED . controla la ganancia de voltaje total del circuito. El amplificador inversor Al circuito basado en un OP AMP con retroalimentación negativa. 3 El mágico amplificador operacional CIRCUITO BÁSICOS DEL OP AMP Como enfatizamos al inicio de este capítulo.4'M . a través de estas resistencias. II<KIF4('bΩ "M:: I<EK4(bΩ Æ M<.33. se le llama am- plificador inversor. la terminal de entrada inversora en el OP AMP se considera como tierra virtual. VED es tan pequeño que en la mayoría de los casos se le considera cero. mejora las impedancias de entrada y de salida e incrementa el ancho de banda del OP AMP. se aplica a la terminal no inversora ( ) del OP AMP. El voltaje entre la entrada inversora y la tierra es el voltaje de entrada diferencial. la cual. a su vez. Por tal razón. En esta sección describimos cómo la retroalimen- tación negativa estabiliza la ganancia de voltaje. en el análisis del circuito. por supuesto. pero sin consumir corriente. La figura 3. como se muestra en la figura 3.+( " MJ8C4('MGG M<ek4(MGG ÆM:: =`^liX*%*+ :`iZl`kfXdgc`]`ZX[fi`em\ijfi\e]Xk`qXe[f\cZfeZ\gkf[\k`\iiXm`iklXc% 108 ELECTRÓNICA • MIJAREZ . Esto significa que el vol- taje en la entrada inversora del OP AMP se encuentra al mismo potencial que la tierra del circuito. la retroalimentación negativa puede mejorar de manera importante el desempeño de un amplificador.34 ilustra el concepto de tierra virtual. la ecuación 3. seleccionando únicamente la RENT . ACL. que “ve” el voltaje de la fuente. podemos calcular el voltaje de salida: VSAL  VENT r ACL  1VPP r 10  10 VPP Como vimos en la sección anterior. AVOL. como lo indica la ecuación 3. la ZENT del circuito de la figura 3. la ganancia de voltaje de lazo cerrado. proporcionan la ganancia de lazo abierto. VED tiene un valor que. VENT . ZENT . de la siguiente forma: VSAL 10 V VED    50 μVPP AVOL 200 000 Impedancia de entrada. obtenemos la ganancia ACL usando la ecuación 3. es RENT . si esta tiene un valor de 200 000. del amplificador. las hojas de datos de los fabricantes. para fines prácticos.29: 10 k7 ACL   10 1 k7 Ahora. podemos calcular el voltaje de entrada diferencial VED. idealmente infinito. La retroalimentación negativa mantiene la ganancia de voltaje constante aun cuando la ganancia AVOL varíe. la impedancia de entrada del circuito. la impedancia de la entrada inversora del OP AMP es extremadamente grande. es igual a la corriente que fluye por la resistencia de retroalimen- tación. Como ejemplo.28 puede expresarse como: VENT –VSAL  RENT RRETRO De esta expresión. se estima en cero.30) Como sabemos. por lo general. la corriente producida por VENT .30. En otras palabras.29 indica que VENT y VSAL se encuentran 180° fuera de fase. grupo editorial patria® 109 .29) VENT RENT El signo negativo de la ecuación 3. ACL.33 es: ZENT y RENT  1 k7 Lo anterior nos muestra que la impedancia de entrada se puede controlar fácilmente. Primero. vamos a calcular la ACL y el VSAL del circuito mostrado en la figura 3. la cual es la ganancia del amplificador con retroa- limentación negativa: –VSAL RRETRO ACL   (3. Por consiguiente. es independiente de cualquier cambio en la ganancia AVOL del OP AMP. Por ejemplo. que fluye a través de la resistencia de entrada. RRETRO . ZENT Debido a que la entrada inversora del OP AMP se encuentra a tierra virtual y además se conecta a las resistencias de la malla de retroalimentación. pero esta no es la impedancia de entrada del circuito. resulta la ganancia de voltaje de lazo cerrado. RENT .28) RENT RRETRO Recordando que VED  VSAL/AVOL y que AVOL es un valor muy grande. 3 El mágico amplificador operacional Ganancia de voltaje de lazo cerrado ACL Debido a que en la entrada inversora del OP AMP prácticamente no fluye corriente. Esto es: VENT VED VED VSAL  (3.33. Esto es: ZENT y RENT (3. como vimos en la sección de teoría importan- te de los OP AMP.31 tenemos que: 75 7 ZSAL(CL)   0. En esta configuración. por tanto: RENT B RENT RRETRO Por ejemplo. ZSAL(CL). ACL. esta fracción de retroalimentación es nuestro práctico divisor de voltaje. El amplificador no-inversor La configuración del OP AMP como amplificador no-inversor se muestra en la figura 3.35. Ii\kif4('bΩ I<EK4(bΩ Æ MJ8C4('MGG M<. primero calculamos β: 1 k7 B  0. ZSAL(CL) .33 el AVOL  200 000 y la ZSAL(OL)  75 Ω. comprobamos que ZSAL(CL) es mucho menor que la ZSAL(OL) de lazo abierto. asumimos que la corriente en la terminal inversora. y queremos calcular la impedan- cia de salida de lazo cerrado. la impedancia de salida del circuito amplificador inversor es significativamen- te menor que la impedancia de salida de lazo abierto del OP AMP. y β es la fracción de retroalimentación. está determinada por las resis- tencias RRETRO y RENT . esto es: VSAL V (–) V (–)  RRETRO RENT 110 ELECTRÓNICA • MIJAREZ . la ganancia de voltaje de lazo cerrado.0041 7 1 (200 000)(0. Por este motivo. que normalmente especi- fican los fabricantes. En realidad.+( " M<EK4(MGG IC =`^liX*%*. de modo que las señales de entrada y salida se encuentran en fase. del OP AMP es cero.31) 1 AVOL B Donde ZSAL(OL) es la impedancia de salida de lazo abierto del OP AMP. usando la ecuación 3. En esta figura observamos que la señal de entrada VENT se aplica directamente a la entrada no-inversora ( ) del OP AMP. La impedancia de salida de un circuito con retroa- limentación negativa se llama impedancia de salida de lazo cerrado. la corriente que pasa por RRETRO es igual a la corrien- te que pasa por RENT . de tal manara que VED  0 y V( )  V( ). ZSAL Gracias a la retroalimentación negativa. 3 El mágico amplificador operacional Impedancia de salida. si en el OP AMP de la figura 3. y se obtiene usando la ecuación 3. V( ).31: ZSAL(OL) ZSAL(CL)  (3.4'M . porque determina cuánto de la salida se retroalimenta a la entrada.0909 1 k7 10 k7 Ahora. FG8DGZfe]`^liX[fZfdfXdgc`]`ZX[fief$`em\ijfi% Igual que con el amplificador inversor.0909) Con lo anterior. la ganancia de voltaje de lazo cerrado.33) Donde RENT representa la resistencia de entrada de lazo abierto del OP AMP y ZENT(CL) la impedancia de entrada de lazo cerrado con retroalimentación negativa. Dicho de otra forma. 3 El mágico amplificador operacional Como el voltaje de entrada se conecta a la entrada no inversora ( ). Por ejemplo. virtualmente no tiene que proporcionar corrien- te a la terminal de entrada no inversora ( ).0909) y 36 G7 Estrictamente 36 000 000 000 Ω no es infinito. pero para fines prácticos se puede considerar que sí lo es. Impedancia de salida.34. la fuente de voltaje de entrada.34) 1 AVOL B Si para el circuito de la figura 3. vamos a calcular la ACL y el VSAL para el circuito de la figura 3. la fuente de voltaje VENT “ve” una alta impedancia de entrada ZENT . la retroalimentación negativa disminuye la impedancia de sali- da del amplificador no-inversor y se calcula usando la misma ecuación. ACL. ZSAL(OL) ZSAL(CL)  (3. 75 7 ZSAL(CL)   0. ZENT En el amplificador no-inversor. virtualmente no se pedirá corriente (o carga) a la fuente VENT . VENT. Debido a que en la mayoría de los casos 1 AVOL β es un valor muy gran- de.33.0909) grupo editorial patria® 111 . ZSAL De la misma manera que con el amplificador inversor. entonces tenemos que: VSAL VENT VENT VSAL RRETRO  l 1  RRETRO RENT VENT RENT RRETRO ACL  1 (3.35: 10 k7 ACL  1  11 1 k7 Por tanto. podemos calcular la impedancia de entrada ZENT(CL) usando la ecuación 3.35 asumimos una impedancia de salida de lazo abierto ZSAL(OL)  75 Ω y AVOL  200 000.0041 7 1 (200 000)(0. es independiente de los cambios en AVOL. VENT  V( ).32) RENT Como en el caso del amplificador inversor.33: ZENT(CL)  RENT (1 AVOL B ) (3. A manera de ejemplo. si para el circuito de la figura 3. se considera que ZENT(CL) se acerca al infinito.35 asumimos una impe- dancia de entrada RENT  2 MΩ y AVOL  200 000. la expresión común- mente usada es que “no se carga” a la fuente VENT . En consecuencia. Para calcular la ZENT del amplificador no-inversor usamos la ecua- ción 3. ZENT(CL)  2 M7(1 200 000 r 0. el voltaje de salida es: VSAL  VENT r ACL  1 VPP r 11  11 VPP Impedancia de entrada. podemos calcular la ZSAL(CL) usando la ecuación 3. el cual se muestra en la figura 3.37 a). Las ecuaciones 3. Una pregunta que surge del circuito seguidor de voltaje es: ¿por qué utilizar este circuito si su ganancia de voltaje es únicamente uno? La respuesta se basa en el hecho que este circuito puede manejar cargas grandes. igualar impe- dancias o aislar circuitos de potencia muy grande de circuitería muy precisa y sensible. En ocasiones. en- tonces: VSAL  VENT Otra forma de visualizar al circuito seguidor es usar la ecuación de ganancia ACL del amplificador no inversor: RRETRO ACL  1 RENT y considerar RRETRO/RENT  0/∞ y 0.+( MJ8C4M<EK4(MGG " M<ek4(MGG IC =`^liX*%*- :`iZl`kfj\^l`[fi[\mfckXa\% De la figura 3. por tal motivo.37 b). Seguidor de voltaje Uno de los circuitos más populares con OP AMP es el circuito seguidor de voltaje. el voltaje de salida debe seguir al voltaje de entrada.37 b). para abreviar. RL. 112 ELECTRÓNICA • MIJAREZ . Este circuito usa la máxima cantidad posible de retroalimentación negativa.33 y 3. que tiene una impedancia muy alta. por lo que VENT no requiere proporcionar casi ninguna corriente al circuito. Este circuito también es llamado amplificador de ganancia unitaria. de ahí el nombre de seguidor de volta- je. Como lo muestra el circuito de la figura 3. VENT . Por ejemplo. VENT . los voltajes de entrada y salida se encuentran en fase. Además. por tanto: ACL  1 Debido a que VSAL  VENT . También notamos en la figura que la salida se conecta directamente a la terminal de la entrada inversora ( ). Esto significa que el circuito actuará como una fuente de voltaje ideal.34 pueden usarse para calcular ZENT(CL) y ZSAL(CL). amplificador buffer o amplificador de aislamien- to. De esta forma. la impedancia de salida del amplificador no-inversor es muy cercana a cero ohms. de un valor relativamente bajo como se muestra en la figura 3.36 se puede observar que el voltaje de entrada. a una resisten- cia de carga. por ende. respectivamente. VENT no se cargará. con una impedancia inter- na de aproximadamente cero.36. Æ . ZENT(CL) es extremada- mente alta y ZSAL(CL) es extremadamente baja. Puesto que VED  0 y V( )  V( ). se conecta directamente a la entrada no inver- sora ( ) del OP AMP. 3 El mágico amplificador operacional Al igual que con el amplificador inversor. la fuente de voltaje VENT se conecta a la terminal no inversora ( ) del OP AMP. en vez de conectar una fuente de voltaje con capacidad de corriente limitada. se conecta el OP AMP. para eliminar cualquier carga que pueda ocurrir como se ilustra en la figura 3. debido a la retroalimentación negativa. se le llama simplemente seguidor o buffer. la impedancia de salida ZSAL(CL) es muy baja. como seguidor de voltaje. la ganancia AVOL . ZENT(CL) es infinito y ZSAL(CL) es cero ohms.36. por consi- guiente. no hay frecuencia de corte inferior.7% de su valor máximo. AVOL  200 000 y ZSAL(OL)  75 Ω. ZENT(CL)  2 MΩ(1 200 000) y 400 GΩ. la frecuencia de la señal de entrada. que para el 741 es de 10 Hz. 3 El mágico amplificador operacional " Æ M<EK IC M<EK IC X Y =`^liX*%*. Esto causa una disminución en la ganancia de voltaje de lazo abierto. La frecuencia a la cual la ganancia ACL decrece a 70. se incrementa. Ahora. si RENT  2 MΩ. Debido a que AVOL decrece. también decrece la cantidad de retroalimentación negativa. con lo cual mantiene el voltaje de salida. Entonces. como el mostrado en la figura 3. vamos a calcular ZENT(CL) y ZSAL(CL) del circuito seguidor de voltaje de la figura 3. a este valor de frecuencia. calcularemos ZSAL(CL) : ZSAL(OL) ZSAL(CL)  1 AVOL B Como β  1: 75 7 ZSAL(CL)   0. eventualmente. AVOL. VSAL . el OP AMP sí tiene una frecuencia de corte superior llamada fOL. y se designa como fCL. la ganancia de voltaje de lazo abierto. VED . se reduce a 70. ya mencionamos que las etapas internas que constituyen al OP AMP son directamente acopladas. X =l\ek\[\mfckXa\#M<EK #Zfe\ZkX[XXleXi\j`jk\eZ`X#IC#[\mXcfiYXaf%Y J\^l`[fi[\mfckXa\Zfe\ZkX[fXcX]l\ek\M<EK # ljX[fgXiX\c`d`eXicfj\]\Zkfj[\ZXi^X[\M<EK % A manera de ejemplo. las curvas para AVOL y para ACL decrecerán y se superpondrán al mismo tiempo. por lo que surge la pregunta: ¿qué utilizaremos para extender la frecuencia de corte superior más allá de la frecuencia fOL? ¡Exacto! Nuestra conocida y útil retroalimentación negativa. el voltaje de entrada diferencial. continúa incrementándose. Sin embargo. se incrementa por encima de la frecuencia de lazo abierto fOL. como lo muestra la figura 3. el incremento en VED compensa la reducción en AVOL . Si la fre- cuencia de la señal de entrada. ¿Por qué? Vamos a asumir que en un amplificador no-inversor.35: grupo editorial patria® 113 . Puesto que VSAL  VED r AVOL . La fOL tiene una frecuencia muy baja para ser usada en algunas aplicaciones. Como el voltaje de entrada. a un valor constante. VENT.35. AVOL. La frecuencia fCL puede calcularse usando la ecuación 3. como vimos en la sección de respuesta a la frecuencia. Empezaremos con ZENT(CL) : ZENT(CL)  RENT(1 AVOL β) Debido a que β  1.21. igualará la ganancia ACL. Ancho de banda del OP AMP Antes. per- manece constante. ya que incluyen frecuencias desde CD.000375 7 1 200 000 Para fines prácticos. VENT . VENT .7% de su valor máximo se le llama frecuencia de corte de lazo cerrado. ('- ('. muestran la fUNITARIA. Las hojas de datos.38.35 nos indica que la frecuencia fCL es afectada por la ganancia ACL. Como se muestra en la gráfica 3. para el 741. (''''' . Para el OP AMP 741 la fUNITARIA y 1 MHz.'' ]FC >XeXeZ`X[\mfckXa\8MFC ('''' 8:C4(''' (''' ('' 8:C4(' (' ( (?q('?q(''?q(b?q('b?q(''b?q(D?q k ]LE@K8I@8 =i\Zl\eZ`X =`^liX*%*0 I\jgl\jkXXcX]i\Zl\eZ`X[\cX^XeXeZ`X[\cXqfXY`\ikf#8MFC#p[\cXj^XeXeZ`Xj[\cXqfZ\iiX[f8:C4('p8:C4('''% 114 ELECTRÓNICA • MIJAREZ . el cual se cumple independientemente de los valores de resistencias de la retroalimentación negativa. La figura 3.—: ('+ ('* 8MFC (') (' ( ('Æ( ( (' ('' (b ('b (''b (D ('D =i\Zl\eZ`X?q =`^liX*%*/ I\jgl\jkXXcX]i\Zl\eZ`X[\cX^XeXeZ`X[\cXqfXY`\ikf#8MFC% La ecuación 3.39 ilustra la respuesta a la frecuencia de la ganancia AVOL y de las ganancias ACL con valores de 10 y 1 000. el producto entre fCL y ACL siempre será igual a la fUNITARIA. Producto ganancia-ancho de banda de lazo cerrado La ecuación 3. 3 El mágico amplificador operacional f UNITARIA f CL  (3.'. podemos apreciar que las curvas para ACL  10 y ACL  1 000 no se afectan a esta frecuencia.700 a fOL  10 Hz. normalmente. Observe en la figura que la curva de AVOL se reduce a 70. usada para obtener la frecuencia de corte de lazo cerrado. el ancho de banda de lazo cerrado fCL decrece y viceversa. este producto es de 1 MHz.35) ACL Donde fUNITARIA representa la frecuencia a la cual la ganancia AVOL  1. como se muestra en la figura 3.38. Si ACL se incrementa. Mj4±(. sin embargo.35. puede acomodarse como: fCL r ACL  fUNITARIA Para cualquier OP AMP.M K84"). se le considera tierra virtual e implícitamente no circula corriente por la terminal inversora. Debido a que los OP AMP se usan en muchas formas. Asimismo. El amplificador sumador El amplificador sumador es un circuito basado en un OP AMP inversor.35 calculamos que cuando ACL  10. CIRCUITOS POPULARES CON OP AMP Como es sabido. el extremo derecho de las resistencias de entrada se conecta a la terminal ne- gativa del OP AMP. se incrementa.40. se reduce el ancho de banda y viceversa. Si la ganancia de lazo cerrado. a estas se les enumeró como R1. II<KIF4(bΩ I(4(bΩ M(4"(M I)4(bΩ Æ M)4Æ.    I a  R1 R2 Ra Se puede decir que todas las resistencias de entrada efectivamente están aisladas una de otra y que cada voltaje de entrada “ve” únicamente su propia resistencia y nada más.M I*4(bΩ M*4"*M MJ8C " =`^liX*%+' :`iZl`kfXdgc`]`ZX[fijldX[fi`em\ijfi% Para facilitar la descripción de este circuito a las resistencias de entrada RENT. De lo anterior.40. fCL  1 MHz/1 000  1 kHz. § RRETRO RRETRO RRETRO ¶ VSAL  ¨ V1 V2 V3 · (3. 3 El mágico amplificador operacional Haciendo uso de la ecuación 3. R2 y R3. al cual se le añaden entradas paralelas. y cuando ACL  1 000. a su vez.36. Como se observa en la figura 3. las aplicaciones de la industria electrónica son muy variadas y los OP AMP son un ingrediente am- pliamente usado en muchas de estas. es igual a la suma negativa de los voltajes de entrada V1. V2 y V3. VSAL. concluimos que existe un compromiso entre ancho de banda y ga- nancia. como se muestra en la figura 3. el voltaje de salida será igual a la suma negada de todas sus entradas como lo muestra la ecuación 3. como en el circuito de la figura 3. en esta sección no es posible cubrir todos los diferentes circuitos con OP AMP. grupo editorial patria® 115 .36) © R1 R2 R3 ¸ Cuando R1  R2  R3  RRETRO . todas las corrientes se combinan y fluyen a través de la resistencia de retroalimentación. la cual. debido a que casi no circula corriente por la terminal inversora del OP AMP. RRETRO. y técnicamente cada voltaje de entrada es amplificado por diferente factor de ganancia. AVOL. este apartado describe en detalle algunos de los circuitos con OP AMP más populares. Por tanto.40. fCL  1 MHz/10  100 kHz. No obstante.    I 2  . el voltaje de salida. entonces podemos calcular las corrientes de entrada por: V1 V2 Va I1  . por ejemplo.5V r 2. VSAL.5 k7 ¸ II<KIF4('bΩ I(4(bΩ M(4'%. Entonces.40.41.5V ·  –(5 V – 8 V)  3 V © 1 k7 2. VSAL. con frecuencia. Por ejemplo. un circuito con valores diferentes de resistencias de entrada. para el circuito de la figura 3.40 muestra solo tres entradas. Los amplificadores diferenciales tienen las características de amplificar la diferencia entre sus señales de entrada y atenuar o rechazar señales de modo común. como se muestra en la fi- gura 3. podemos calcular el voltaje de salida. Para encontrar la fórmula que nos proporcione el voltaje de salida. usando la ecuación 3. pero este se puede extender para manejar cualquier número de entradas. porque R1  R2  R3  RRETRO .36.37) El circuito de la figura 3.42 empezamos po- niendo en corto-circuito la entrada VY . estos se usan en conjunto con circuitos resistivos tipo puente. donde la salida del puente es la entrada del amplificador diferencial.M Æ I)4)%. Por tanto.bΩ M)4Æ)M MJ8C " =`^liX*%+( :`iZl`kfjldX[fi`em\ijfiZfe[fj\ekiX[Xj% Amplificador diferencial Los circuitos diferenciales constituyen circuitos que por lo común se encuentran en instrumentación y aplicaciones industriales. VSAL. del circuito de la figura 3. VSAL  –[V1 V2 V3] VSAL  – [1V – 5 V 3 V] – 1 V Pero.42 muestra un amplificador diferencial típico. § RRETRO RRETRO ¶ VSAL  ¨ V1 V2 · © R1 R2 ¸ §10 k7 10 k7 ¶ VSAL  ¨ r 0.37. La figura 3. se usa el teorema de superposición que se estudia en el capítulo 2 que se ubica en el CD-ROM. Estos amplificadores combinan las ganancias de un amplificador inversor y de un amplificador no-inversor en un mismo OP AMP. en la ecuación para obtener el VSAL se hace uso de la ganancia del OP AMP en configuración inversora: VSAL  R R RETRO 1 VX (VY en corto circuito) 116 ELECTRÓNICA • MIJAREZ . si queremos calcular el voltaje de salida. 3 El mágico amplificador operacional VSAL  [V1 V2 V3 ] (3. podemos usar la ecuación 3. si tenemos. 7 V y VX  0. A manera de ejemplo. como se muestra en la figura 3.38)   R R RETRO VSAL (V V ) X Y 1 De la ecuación 3. Sin embargo.7 V)  10( 0. 3 El mágico amplificador operacional EfkX1I(4I) II<KIF4I* I(4(bΩ II<KIF4('bΩ MO Æ I)4(bΩ MJ8C MP " IC4(''bΩ I*4('bΩ =`^liX*%+) :`iZl`kfXdgc`]`ZX[fi[`]\i\eZ`Xc% Ahora.38. el voltaje de salida se encuentra sumando ambos resultados: VSAL   R R V  R R V RETRO 1 X RETRO 1 Y (3.43 para una de las entradas del amplifica- dor diferencial. si VY  0. ya que si VX  VY el voltaje de salida será cero. vamos a calcular el voltaje de salida del circuito de la figura 3.5 V. entonces: VSAL   R R R 2 RETRO RETRO V r  R RR Y 1 RETRO 1 Lo cual se reduce a: RRETRO VSAL  VY (VX en corto circuito) R1 Ahora.38. se puede observar que el amplificador diferencial amplificará únicamente la diferencia entre sus señales de entrada.2)  2 V ¦ 1 k7 µ Con el circuito amplificador diferencial es posible tener ganancias iguales o mayores a la unidad. ¤ 10 k7 ³ VSAL  ¥ ´(0. grupo editorial patria® 117 . poniendo en corto-circuito a la entrada VX. el OP AMP queda en configuración no-inversora y la ecuación para obtener el VSAL es: VSAL  R3 R2 R3 VY r 1  RRETRO R1 Puesto que R1 R2 y RRETRO  R3. este circuito solo tomará de manera confiable la diferencia de las dos señales de entrada cuando las impedancias de las fuentes de voltaje de entrada sean bajas.42 usando la ecuación 3.5 V – 0. habrá pérdida en las señales debido a la acción de divisor de voltaje entre las impedancias de la fuente y la resistencias de entrada del amplificador. Si las impedancias de las fuentes son altas con respecto a las resistencias de entrada R1 y R2. Un reloj analógico representa. análogo significa “una representación de un objeto que se parece al original”. en contraste con una señal digital. el cual convierte las vibraciones mecánicas producidas por la voz en vibraciones eléctricas de la misma forma de onda. se emplea en aplicaciones que van desde la instrumentación médica hasta el control de procesos industriales. Pero nos estamos adelantando. al igual que el amplificador diferencial. como muestra la tabla 3. y las convierte en representaciones electrónicas o mecánicas analógicas. la exactitud con la cual la interferencia en las señales de entrada es atenuada o eliminada se basa en dos variables: la exactitud con la cual son igualadas las resistencias y un parámetro de los OP AMP llamado razón de rechazo de modo común (CMRR). Analógico implica. 118 ELECTRÓNICA • MIJAREZ . con la rotación de las manecillas en la carátula del reloj. Un circuito que mejora estas características de entrada del amplificador diferencial y permite cierta flexibilidad en el ajuste de su ganancia es el amplificador de instrumentación. Asimismo. bien. para lo cual se requeriría ajustar dos resistencias. Sin embargo. pues. la rotación de la Tierra. es fácil implementar la ganancia estableciendo los valores de resistencias RRETRO /R1 y R3 /R2 a un valor mayor o igual a uno. Otro ejemplo típico es el de un micrófono. Puesto que la ganancia es igual en ambas señales de entrada. el amplificador sustrae favorablemente el voltaje de modo común del circuito.1% 499. si los pares de resistencias externas del amplificador son desiguales.44 muestra la configuración clásica de un amplificador de instrumentación cons- tituido por tres OP AMP. esto se analiza en el capítulo siguiente. Desigualdad entre Error en la salida Error resistencias (V/μV) (dB) 1% 4950 46.5 66. En realidad. La figura 3. Asumiendo que el OP AMP perfecto existe.16 aunque difiere en términos de la calidad de sus entradas.3. 3 El mágico amplificador operacional M=l\ek\ I=l\ek\ MO I( =`^liX*%+* G„i[`[Xj\ecXj\ŒXc[\\ekiX[X[\cXdgc`]`ZX[fi[`]\i\eZ`XcgficXXZZ`e[\c[`m`jfi[\mfckXa\ZlXe[fI=l\ek\\jXckX% Adicionalmente. movimiento o sonido. Existen aplicaciones donde se requiere cambiar esta ganancia de manera dinámica.0 0.01% 49. Un dispositivo analógico monitorea ciertas condiciones. también pueden ocurrir errores si las dos impedancias de la fuente no son iguales o.95 86 KXYcX*%* <iifiZXljX[fgficX[\j`^lXc[X[\eki\i\j`jk\eZ`Xj[\cXdgc`]`ZX[fi[`]\i\eZ`Xc% El hecho que R1  R2 y RRETRO  R3 simplifica considerablemente las matemáticas de este circuito. una señal continua. Este circuito es similar al amplificador diferencial en el sentido de que realiza la diferencia entre dos señales analógicas.1 0. que divide estas señales en números. una limitación de este circuito es la falta de flexibilidad para ajustar su ganan- cia. como temperatura. Amplificador de instrumentación El circuito amplificador de instrumentación. 16 ¿Señales analógicas? Bien. el cálculo del error en la salida del OP AMP está relacionado con el porcentaje de desigualdad entre las resistencias. VSAL.—: MP " I*4('bΩ p 8) Æ =`^liX*%+. la alta impedancia de las entradas no inversoras de los amplificadores A1 y A2 recibe las señales de entrada. el cual contiene un termistor. VSAL   R R (V RETRO 1 X VY ) Como ejemplo.4. <kXgXÈYl]]\iÉ 8dgc`]`ZX[fi[`]\i\eZ`Xc :`iZl`kfgl\ek\ Æ o 8( I(4(bΩ II<KIF4('bΩ MO " 8 I94('bΩ I84.bΩ X). vamos a presentar la conexión de un circuito puente. la función de este circuito es rechazar o atenuar el voltaje de modo común en las entradas del amplificador y tomar o amplificar la diferencia entre ellas. Como ya sabemos.bΩ " Æ i M:. indicado por el amplificador A3. se encuentra de la misma manera que con el amplificador diferencial.M I. como se muestra en la figura 3.45. Debido a que los amplificadores A1 y A2 son configurados con ganancia unitaria (seguidores de voltaje o buffers). sigue el amplificador diferencial. Esto es una clara ventaja sobre el amplificador diferencial.4. el voltaje de salida.bΩ 9 " I.44. I)4(bΩ 8* Æ MJ8C GK: I:4. :`iZl`kfgl\ek\Zfe\ZkX[fXleXdgc`]`ZX[fi[\`ejkild\ekXZ`e% grupo editorial patria® 119 . a la entrada de un amplificador de instrumentación. 3 El mágico amplificador operacional <kXgXÈYl]]\iÉ 8dgc`]`ZX[fi[`]\i\eZ`Xc Æ 8( I(4(bΩ II<KIF4('bΩ MO " 8 Æ I)4(bΩ 8* 9 MJ8C " MP " I*4('bΩ 8) Æ =`^liX*%++ :`iZl`kfXdgc`]`ZX[fi[\`ejkild\ekXZ`e% En el circuito amplificador de instrumentación de la figura 3. Después de la primera etapa de este circuito. donde las impedancias de las fuentes de voltaje de las señales de entrada pueden ser altas o desiguales. Así pues.5 3.21 V RC RD 5 k7 9 k7 Ahora. sucederá lo opuesto: la resistencia del termistor disminuirá. Si la temperatura disminuye por debajo de los 25 °C. El punto 1 se mejoró enormemente añadiendo los buffers amplificadores. por sus siglas en inglés) con un valor de resistencia RD  5 kΩ a temperatura ambiente (25 °C). primero calculamos los voltajes VX y VY que corresponden a las entradas del amplificador de instrumen- tación VA y VB . Además. Debido a que la ganancia del amplificador diferencial es –RRETRO/R1. añadir las resisten- cias igualadas en el proceso de manufactura mejora notablemente la CMRR.1 V ¦ 1 k7 µ Como observamos en la sección anterior. lo cual a su vez ocasiona que el voltaje VY sea progresivamente más positivo. respectivamente. calculamos el voltaje de salida: ¤ 10 k7 ³ VSAL  ¥ ´(2. Por tanto. como se muestra en la figura 3. provocado por un incremento en la temperatura ambiente. Como VX no cam- bia. Si esto sucede. como primera etapa del amplificador de instrumentación. Cambiar la ganancia requiere cambiar dos resistencias igualadas. ya que VSAL  –RRETRO/R1 (VX – VY)  0 V.5 kΩ. 3 El mágico amplificador operacional El termistor tiene un Coeficiente de Temperatura Positivo (PTC. los voltajes VX y VY se aplicarán a la etapa de los seguidores de voltaje y serán iguales a los puntos de voltajes A y B. lo cual a su vez hará que el voltaje VY sea menos positivo. Por tanto: 1 VX  r 5 V  2.21)  7. dejando la ganancia de voltaje y la CMRR para ser definida por las resistencias de la etapa de salida. Para mejorar el punto 2. Si la temperatura sube arriba de 25 °C.5 V 2 RD 9 k7 VY  r5 V  r 5 V  3. los diseñadores de CI movieron las resistencias igualadas a los amplificadores de entrada.45 funciona cualitativamente.46. lo cual implica que VX  VY. 2. El circuito de la figura 3. Para ilustrar el funcionamiento cuantitativo. Recordemos que. si asumimos que el circuito puente ha sido balanceado a temperatura ambiente. I(4('b MO " MX 8( Æ I)4('b I. el voltaje de salida será negativo. la diferencia VX – VY es negativa. para definir la ganancia a la entrada del amplificador con solo una resistencia. idealmente.4('b Æ MZ I*4('b 8* MJ8C " I-4('b I> I+4('bΩ Æ M[ 8) MP MY " =`^liX*%+- 8dgc`]`ZX[fi[\`ejkild\ekXZ`eZfe^XeXeZ`XmXi`XYc\gifgfiZ`feX[XgfileXi\j`jk\eZ`XI>% 120 ELECTRÓNICA • MIJAREZ . de la segunda etapa. a temperatura ambiente el potenciómetro RB se ajusta de tal ma- nera que el puente esté balanceado. A1 y A2. el voltaje de salida será positivo. la diferencia VX – VY es una cantidad positiva. el circuito seguidor de voltaje tiene una impedancia de entrada infinita y una impedancia de salida cero. Puesto que la ganancia de voltaje del amplificador A3 es negativa. Como el volta- je VX permanece constante. para esto. el voltaje de salida del amplificador de instrumentación es cero. El propósito principal de los amplificadores A1 y A2 es aislar las resistencias del circuito puente del amplificador diferencial. el amplificador diferencial básico tiene dos puntos débiles: 1. esto causa que la resistencia RD del termistor se incre- mente arriba de los 5 kΩ. respectivamente. se proporcionó al circuito una impedancia de entrada alta. La impedancia de entrada es relativamente baja. vamos a calcular el voltaje de salida del circuito puente conectado al amplificador de instrumentación. Entonces. asumimos que RB  5 kΩ y que RD se incrementa a 9. Con esta configuración. Ω ()+Ω >4. Usando un circuito integrado como base del sistema.46.39. era parte de un sistema desarrollado en México.39) En conclusión.`X^iXdX[\Ycfhl\j[\cXdgc`]`ZX[fi[\`ejkild\ekXZ`e8. el voltaje de salida estará definido por la ecuación 3.'' (( ('bΩ (' J<EJ< /'%)Ω )'bΩ ('bΩ I>( (. comparado con el humilde 741. por sus siglas en inglés).-)+% Aunque en la actualidad existe una gama grande de fabricantes de amplificadores de instrumentación. Cuando empecé a diseñar con el AD624. Aunque también existen CI. 2.18 17 Una variación usando el amplificador de instrumentación como CI. esta ecuación se reduce a: 20k7 ACL  1  RG r (1) Por tanto.%. llamado Sistema de Adquisición y Control (SAC). Existen dos configuraciones típicas para el amplificador de instrumentación: 1. es el desarrollo de un amplificador de ganancia programable (PGA. a su vez.8 ( " " Æ 69+') Æ >4('' (* )). Usando amplificadores operacionales de propósito general.8 I>) * " )'bΩ ('bΩ " ('bΩ " . 3 El mágico amplificador operacional En el caso general. que determinan la ganancia del amplificador. Æ 0 J8C@. grupo editorial patria® 121 . se puede expresar como: R5 R6 ACL  1  RG r  R1 R2 Para el circuito de la figura 3.17 Uno de los amplificadores de instrumentación que utilicé al terminar la universidad fue el AD624. Este CI formaba parte importante de un módulo de entradas analógicas que.'Ω Æ "<EKI8. 20 k7  VSAL  1 RG r (VX VY ) (3. el amplificador de instrumentación presenta una alta impedancia de entrada y la capacidad de seleccionar la ganancia del circuito modificando únicamente una resistencia. era como conducir un auto BMW en lugar de un Volkswagen sedán. el 741. ACL.46. .47 muestra el diagrama de bloques de este circuito integrado. . en el cual se pueden utilizar resistencias con interruptores mecánicos o electrónicos (construidos con FET) para modificar la resistencia RG y. con entradas digitales. como el LH0086.I<= . la primera aplicación que vi del AD624 fue la de acondicionador de señales para digitalizar variables analógicas.%*Ω >4)'' () +++. del fabricante Analog Devices.'Ω Æ<EKI8. la ganancia. en la tabla 3. 18 Al graduarme. por ende. que usaba en las prácticas de la universidad. como tempera- tura y velocidad.8 ) Æ =`^liX*%+. La figura 3. la ganancia de voltaje del circuito de la figura 3.4 se muestra una comparación de las características del AD624 contra nuestro OP AMP de propósito general. Estos CI presentan especificaciones técnicas que distan de las idea- les.48.025 BW (Hz) Infinito 1M 25 M SR (V/μs) Infinito 0. Sin embargo. inductores y capacitores. muestran aplicaciones típicas y recomenda- ciones de conexión. es más fácil ajustar la razón entre resistencias que preocuparse del valor absoluto de las mismas. llamadas bandas de paso. denominadas bandas de corte. y bloquean las frecuencias en otras bandas. pero comúnmente son mucho mejor que las provistas por los OP AMP de propósito general. El uso de este tipo de componentes ha ayudado a diseñar maravillosos instrumentos tanto médicos como industriales. En contraparte. por lo general. 3 El mágico amplificador operacional Amplificador Parámetro Ideal OP AMP tipo 741 de instrumentación tipo AD624 AVOL (dB) Infinito 100 60 (no se usa en circuito abierto) ZENT (Ω) Infinito 2M 1000 M ZSAL (Ω) Cero 75 — IOS (ηA) Cero 20 35 VOS (mV) Cero 2 0. como lo muestra la respuesta a la frecuencia ideal de la figura 3. la base principal es el OP AMP. El uso de OP AMP en la implementación de filtros activos se ha incre- mentado con la llegada de los circuitos integrados. pasa-banda o rechazo-de-banda.5 5 CMMR (dB) Infinito 90 130 PSRR (μV/V) Cero 20 — KXYcX*%+ :fdgXiXZ`e\eki\leFG8DGpleXdgc`]`ZX[fi[\`ejkild\ekXZ`e% Los amplificadores de instrumentación en CI tienen una escala alta de integración. están compuestos principalmente por una cantidad grande de transistores. pasa-altas. sino también sus aplicaciones y recomendaciones. 122 ELECTRÓNICA • MIJAREZ . Una ventaja importante de los filtros activos es que estos no necesariamente atenúan las señales de interés como lo hacen sus contrapartes los filtros pasivos. 8M 8M 8M 8M @ @ @ @ ]?q ]?q ]?q ]?q 8M 8M 8M 8M 9Xe[X 9Xe[X 9Xe[X 9Xe[X 9Xe[X 9Xe[X 9Xe[X 9Xe[X 9Xe[X 9Xe[X [\gXjf [\Zfik\ [\Zfik\ [\gXjf [\Zfik\ [\gXjf [\Zfik\ [\gXjf [\Zfik\ [\gXjf GXjX$YXaXj GXjX$XckXj GXjX$YXe[Xj I\Z_Xqf[\YXe[Xj =`^liX*%+/ I\jgl\jkXXcX]i\Zl\eZ`X`[\Xc[\[`]\i\ek\j]`ckifj% 19 Las hojas de datos de los OP AMP y de los amplificadores de instrumentación en CI. como resistencias. Los filtros pueden ser pasa-bajas. un filtro pasivo es aquel que usa únicamente com- ponentes pasivos. Además. Idealmente. modificando su amplitud y su fase. es decir. como transistores y OP AMP. Los filtros activos son aquellos que usan componentes activos con capacidades de amplificación. en las bandas de paso debe haber transmisión sin distorsión y en las bandas de corte la transmisión debe ser nula. de modo que vale la pena leer no solo sus especificaciones.19 FILTROS ACTIVOS Un filtro eléctrico es un elemento que discrimina un grupo de frecuencias de una señal eléctrica que pasa a través de él. Los filtros permiten el paso de frecuencias dentro de ciertas bandas. 20log ZRETRO ACL(dB)  (3. la ganancia de voltaje decrece a una tasa de 20 dB/década o 6dB/octava. A este valor se le llama frecuencia de corte y se le designa como fc: 1 fC  (3.'. ZRETRO AV  (3. en esta sección estudiamos un filtro pasa-bajas y un filtro pasa-altas de primer orden. Como sabemos del capítulo 1. La figura 3. se conecta en paralelo con la resistencia de retroalimentación.40) 2P RRETROCRETRO En tanto.41) RENT Donde ZRETRO es: CRETRO RRETRO ZRETRO  2 2 RRETRO CRETRO Arriba de la frecuencia de corte. la ganancia de voltaje para cualquier frecuencia se calcula usando la ecuación 3. lo cual causa que la ganancia de voltaje también disminuya. RRETRO . entre mayor sea el orden. llamado CRETRO . ya sea un inductor o un capacitor. A frecuencias extremadamente grandes. Filtro pasa-bajas Un filtro pasa-bajas permite pasar idealmente solo frecuencias bajas.49 a) que un capacitor.7% del valor máximo.42. por lo que se usa la ecuación 3.49 b).42) RENT grupo editorial patria® 123 . a bajas frecuencias.8:Cd}o I(4(bΩ )'[9&[„ZX[X Æ -[9&fZkXmX M MJ8C " k' =i\Zl\eZ`X X Y =`^liX*%+0 =`ckifgXjX$YXaXj[\gi`d\ifi[\e%X :`iZl`kf%Y I\jgl\jkXXcX]i\Zl\eZ`X#^XeXeZ`Xmj%]i\Zl\eZ`X% A altas frecuencias. la ganancia de voltaje es 70. fC. los filtros tienen un orden. debido a un incremento en la retroalimentación negativa. A manera de ejemplo.49 b) muestra la curva de la respuesta a la frecuencia del circuito de la figura 3. la reactancia capa- citiva es casi cero ohms y la ganancia de voltaje también se aproxima a cero. usando un OP AMP como elemento activo. En muchas ocasiones. En consecuencia. Podemos observar de la figura 3. La figura 3.48. tipo bloque.41. se tiene una reactancia capacitiva muy grande. Los filtros de primer orden usan en su construcción una resistencia y un componente reactivo. Los filtros de segundo orden usan dos resis- tencias y dos componentes reactivos. su comportamiento se parece más a la res- puesta a la frecuencia ideal. la reactancia capacitiva decrece. 3 El mágico amplificador operacional Adicionalmente. de la figura 3. el circuito funciona como un amplificador inversor. Cuando XCRETRO  RF .49 a).49 muestra un filtro activo pasa-bajas de primer orden y su respuesta a la frecuencia. cuya ganancia es – RRETRO / RENT . idealmente de valor infinito. a bajas frecuen- cias CRETRO . :=4'%'(μ= 8:C I=4('bΩ 8:Cd}o '%. como se ilustra en la figura 3. la ganan- cia de voltaje se especifica en dB. ACL. La frecuencia de corte. Por tanto. Para calcular la ganancia de voltaje en dB a 0 Hz. entonces ZF  0. la ganan- cia de voltaje es: RRETRO 10 k7 AV    10 RENT 1 k7 A 1 MHz XCRETRO es: 1 1 XCretro    15.0158. fC.40. para: 1 fC   1. ACL. y que a 1 MHz se atenuarán con una ganancia de 0.43.9 7 2P f RRETRO 2P 1 MHz 10k7 Ahora.9 2 7 10 3 7 Usando la ecuación 3. 3 El mágico amplificador operacional A manera de ejemplo.41 calculamos la ganancia: RRETRO 15. la obtenemos tomando en cuenta que XCRETRO y ∞ Ω.43) 2P RENTCENT 124 ELECTRÓNICA • MIJAREZ . Por otro lado.9 7 r 10 k7 ZRETRO  2 2   15. fc. La ganancia de voltaje de lazo cerrado ACL a 0 Hz y a 1 MHz.89 7 ( R )RETRO (C )RETRO 15.707 r 10 kΩ  7.49 a): 1.591 kHz.591 kHz 2P 10 k7 0.0158 RENT 1 k7 Con estos resultados. a frecuencias muy bajas XCENT y ∞ Ω y la ganancia de voltaje.707 RF . La ganancia de voltaje en dB a 0 Hz y a 1. Por tanto: 20log RRETRO 7. es igual a –RRETRO/RENT. la ganancia de voltaje ACL se reduce 3 dB de su valor paso de banda (pasa-banda) de 20 dB. y la ganancia de volta- je.01μF La ganancia de lazo cerrado ACL a 0 Hz. por tanto: 20log RRETRO 10 k7 ACL(dB)   20log  20 dB RENT 1 k7 La frecuencia 1. ZRETRO  RRETRO . se aproxima a cero. Por esta razón. en consecuencia. se obtiene mediante la ecuación 3. Filtro activo pasa-altas De manera ideal. Para calcular la frecuencia de corte usamos la ecuación 3. un filtro pasa-altas permite pasar únicamente frecuencias altas.07 k7 ACL(dB)   20log  17 dB RENT 1 k7 Es importante hacer notar que a la frecuencia de corte. calculamos ZRETRO: CRETRO RRETRO 15.07 kΩ. La frecuencia de corte. 3. que previamente calculamos. 1 fC  (3. podemos verificar que las señales de entrada a este circuito se amplificarán con una ganancia de 10 en CD.89 7 AV    0. algunos autores a la fC la llaman la frecuencia de los 3 dB. 2. fC . La figura 3.50 muestra un filtro ac- tivo pasa-altas de primer orden y su respuesta a la frecuencia. a esta frecuencia ZF  0. A altas frecuencias XCENT y 0 Ω. asumimos que XCRETRO y ∞ Ω y. vamos a calcular del circuito de la figura 3.591 kHz es la frecuencia de corte. observamos que la ganancia ACL decrece 20 dB/década o 6dB/octava debajo de la frecuencia de corte fC. dista mucho de tener la forma tipo bloque de los filtros ideales mostrada en la figura 3. si la carga no tiene que estar aterrizada.1 μF CONVERTIDORES DE VOLTAJE A CORRIENTE Y DE CORRIENTE A VOLTAJE Convertidores de voltaje a corriente En algunos diseños se requiere tener una corriente de carga constante que no se vea afectada por las variaciones en la resistencia de carga RL. 1 1 fC    1. La respuesta a la frecuencia. ACL. Para filtros de orden muy alto. entonces la podríamos conectar en la trayectoria de retroalimentación. la ganancia de voltaje ACL es 70.45: 20log RRETRO ACL(dB)  (3. la tasa de decrecimiento en ACL será de 16 dB/octava o 40 dB/década.'. que nos proporcionan características muy cercanas a las ideales. RRETRO AV  (3.44) ZENT Donde ZENT es: 2 ZENT  RRETRO XC2retro La ganancia de voltaje en dB se calcula con la ecuación 3. usando la ecuación 3. Existe. grupo editorial patria® 125 . Para filtros de segundo orden. se utilizan conexiones en cascada de OP AMP y se incrementa el número de componentes reactivos.7% de su valor máximo.48. pero esto no tendrá efecto en la frecuencia de corte. Para realizar estos filtros se utilizan componentes o sistemas de procesamiento digital de señales (DSP) o microcontroladores. 20 Si elevamos el orden del filtro también incrementaremos la tasa de atenuación. por otro lado. 3 El mágico amplificador operacional 8:C II<KIF4('bΩ 8:Cd}o '%. tanto para los filtros pasa-bajas como para los pasa-altas. esto no afec- tará la ganancia de voltaje ACL en su región de paso de banda. fC. sin embargo.43. Pero esto podría ser tema de otro capítulo completo.8:Cd}o :<EK4'%(μ= I<EK4(bΩ )'[9&[„ZX[X Æ -[9&fZkXmX M MJ8C " k' =i\Zl\eZ`X X Y =`^liX*%. como lo muestra el convertidor de voltaje a corriente de la figura 3. La ganancia de voltaje para cualquier frecuencia se calcula usando la ecuación 3. lo cual hace que el diseño del filtro sea más complejo. Pero.51.' =`ckifgXjX$XckXj[\gi`d\ifi[\e%X :`iZl`kf%Y I\jgl\jkXXcX]i\Zl\eZ`X#^XeXeZ`Xmj%]i\Zl\eZ`X% A la frecuencia de corte.50 b). se puede variar la ganancia de voltaje. CENT .591 kHz 2P RENTCENT 2 r 3.1415 r 1 k7 r 0. Por otro lado. incluso de otro libro.45) ZENT La frecuencia de corte puede variarse ajustando el valor del capacitor de entrada. De la figura 3.44. el dise- ño de filtros digitales. y ganancia de voltaje son muy similares a los del filtro pasa-bajas. fC. ajustando la resistencia RRETRO . Como ejemplo vamos a calcular la frecuencia de corte en este filtro pasa-altas. fC.20 Los cálculos de frecuencia de corte. se hace presente a través de la resistencia R. Puesto que RL no afecta ISAL. Convertidor de corriente a voltaje Como se recordará del apéndice 1 que se encuentra en el CD-ROM del texto. la corriente de salida será la misma. el voltaje de entrada. la corriente de salida.3 V I SAL    3. ZENT y ∞ Ω.3 V. y 2) que el valor de RL ¡no afecta a la corriente de salida! Además. I Æ @<EK " IC =`^liX*%. de la corriente de entrada. VENT. esta opción presenta una impedancia de la fuente.52. la impedancia de entrada vista por la fuente.3 mA R 1 k7 Con este resultado. Por tanto. observamos que aun cuando RL se haga cero ohms. debido a que VENT se conecta a la entrada no inversora del OP AMP. Como RL no afecta a la corriente de salida. esto es. ISAL se puede obtener con la ecuación 3. VENT 3. VENT I SAL  (3. 3 El mágico amplificador operacional " @J8C M<. Un circuito que supera esta deficiencia es el convertidor de corriente a voltaje típico basado en un OP AMP que se muestra en la figura 3.46. Sin embargo. Lo anterior es una desventaja grande.46.46) R De la ecuación anterior. es igual a cero. se calcula usando la ecuación 3. Por ejemplo. ZSAL y ∞ Ω. R  1 kΩ y RL  50 Ω.51 asignando los valores a VENT  3. que no es cero. VED . vamos a calcular la corriente de salida del circuito de la figura 3. ISAL . ISAL. se aproxima a un valor infinito.) :`iZl`kfZfem\ik`[fi[\Zfii`\ek\XmfckXa\% 126 ELECTRÓNICA • MIJAREZ . podemos observar dos cosas: 1) que la corriente de salida. VENT . el convertidor de corriente a voltaje más simple es nuestra humilde resistencia. VENT.( :fem\ik`[fi[\mfckXa\XZfii`\ek\% Debido a que el voltaje de entrada diferencial. conectada de la entrada inversora a tierra. es determinada por el voltaje de entrada. y la resistencia R. sobre todo si el dispositivo que proporciona la corriente de entrada no provee una corriente de entrada constante cuando el voltaje de salida cambia o la corriente es muy pequeña. el circuito actúa como una fuente de corriente constante con una resistencia interna infinita.4'M Æ M<EK IC M<EK I =`^liX*%. 47. La figura 3. respectivamente. Un buen ejemplo de fuente de corriente son las celdas fotovoltaicas. son capaces de generar voltajes y corrientes del orden de los milivolts y microamperes. ZSAL(CL).52. ('b M::4"(. por lo común. Un ejemplo de estos dispositivos son los fototransistores.`f[f ]fkfmfckX`Zf =`^liX*%. Puesto que RL no afecta el valor del voltaje de salida.54 ilustra su conexión con un OP AMP. IENT. VSAL.52 tiene como entrada una fuente de corriente. ZSAL(CL) y 0 Ω. el voltaje de salida será de 1 V. VSAL. como lo muestra la figura 3. 3 El mágico amplificador operacional El circuito de la figura 3. RL. proveniente de una alimentación positiva.3 mA.53 genera una corrien- te de 1 μA.53. vamos a calcular el voltaje de salida. cuando se exponen a la luz. si el diodo fotovoltaico del circuito de la figura 3. La configuración de convertidor de corriente a voltaje también puede usarse para dispositivos que proveen su corriente vía alguna fuente externa.M λ Clq[\ \ekiX[X Æ J`eZfe\o`e " \ecXYXj\ =`^liX*%. Debido al concepto de tierra virtual. VSAL puede calcularse usando la ecuación 3. R  1 kΩ y RL  5 kΩ. porque la impedancia de salida (de lazo cerrado). que se conecta a la entrada no inver- sora del OP AMP.`f[f]fkfmfckX`ZfZfe\ZkX[fZfdfZfem\ik`[fi[\Zfii`\ek\XmfckXa\% Los diodos fotovoltaicos. VSAL  I ENT r R (3. tierra virtual. En consecuencia.+ :`iZl`kfZfem\ik`[fi[\Zfii`\ek\XmfckXa\ljXe[fle]fkfkiXej`jkfi% grupo editorial patria® 127 . Por ejemplo. los cuales actúan como fuentes de corriente. en este caso. no se ve afectado por la resistencia de carga. las cuales pueden conectarse como convertidores de corriente a voltaje mientras se man- tiene la entrada a tierra. las fuentes de corriente son menos comunes de visualizar. el voltaje de salida. (DΩ @<EK Æ MJ8C λ " . es aproximadamente cero ohms.* .47) En el circuito de la figura 3. VSAL  I ENT r R  3. el voltaje de salida. toda la corriente de entrada fluye a través de la resistencia R.47. tal como la fuente de alimentación VCC.3 V Por lo general. se calcula con la ecuación 3. Como ejemplo. VSAL. si la corriente de entrada IENT  3.3 mA r 1 k7  3. . 3 El mágico amplificador operacional Circuitos OP AMP con diodos Los OP AMP pueden ser usados con diodos para rectificar señales con valores pico del orden de los milivolts. 8MFC4(''''' "(''dM MG4"(''dM M<EK " 'M Æ(''dM Æ J` IC4('bΩ =`^liX*%. :`iZl`kfi\Zk`]`ZX[fi[\gi\Z`j`e[\d\[`Xfe[X% Este circuito es capaz de rectificar cargas muy pequeñas del orden de milivolts.7 VENT    3.- DXe\af[\ZXi^Xjhl\i\hl`\i\ej\iZfedlkX[XjljXe[fleFG8DGplekiXej`jkfi[\gfk\eZ`X% El diodo del circuito de la figura 3.56 se utiliza para proteger la unión base-emisor del transistor de conmutación. Cuando VENT se hace positivo. 0. la salida se hace positiva y el diodo entra en estado de conducción y la salida del OP AMP será 0.7 V. como lo muestra la figura 3. =`^liX*%. Recordemos que un diodo de silicio requiere 0. 128 ELECTRÓNICA • MIJAREZ . si se requiere manejar corrientes arriba de 1 A.7 0.5 μV. La figura 3. que necesitan encenderse o apagarse. entonces se recomienda usar un transistor FET o un Darlington. el diodo no conduce y el voltaje de salida es cero volts. De esta manera. se producirán pulsos negativos. Cargas conmutadas Para manejar cargas que requieren ser conmutadas.3 V. Un diodo por sí solo no puede realizar este trabajo. El transistor 2N3055 es un transistor de potencia para aplicaciones no críticas de corriente. "M:: :Xi^X (%'b )E*'. cuando VENT es negativo. La cantidad de voltaje requerido para obtener esta salida es determinada por la ganancia AVOL. VSAL es negativa.5 μV AVOL 200 000 Cuando la entrada excede los 3. es decir. el diodo conduce y el OP AMP actúa como un seguidor. Sin embargo. invirtien- do la polaridad del diodo. porque requiere de un voltaje mayor para activarse.55 muestra un circuito rectificador de precisión de media onda.7 V y uno de germanio 0.. por lo común se utiliza un transistor de conmutación que tiene como entrada un OP AMP. ya que un OP AMP fácilmente puede oscilar a su saturación negativa con voltajes mayores a 5 V.56. En cambio. 57.. se va a saturación negativa VSAT . Cuando VENT es positivo. extremadamente grande. El comparador contrasta el voltaje de entrada. ± VSAT es por lo general un par de volts menor que los volta- jes de alimentación ±VCC. Como sabemos.M Æ ' MI<=4". y a VSAT cuando la entrada es positiva. como su nombra lo indica.57 a). con una referencia de voltaje en la otra. la conmutación es opuesta. y cuando VENT es negativo. En la figura podemos obser- var que este circuito no usa retroalimentación.57 b). Cuando la entrada no inversora se aterriza y se aplica el voltaje a la entrada inversora. debido a que el OP AMP tiene una ganancia de lazo abierto. compara una señal de volta- je en una entrada. Sin embargo. A causa de que VSAL conmuta cuando VENT cruza los cero volts. el OP AMP opera en configuración de lazo abierto con una ganancia de voltaje AVOL. :fdgXiX[fi[\mfckXa\%X :`iZl`kf%Y :limXZXiXZk\iˆjk`ZX% En el circuito de la figura 3. AVOL . el voltaje de salida. La figura 3.M ÆM:: ÆMJ8K X Y =`^liX*%. 3 El mágico amplificador operacional CIRCUITO COMPARADOR Un circuito comparador basado en un OP AMP es aquel que. de la entrada inversora.M%X :`iZl`kf%Y :limXZXiXZk\iˆjk`ZX% grupo editorial patria® 129 . la va- riación más pequeña en la señal de entrada produce un voltaje de salida ± VSAT . como lo muestra la figura 3. "M:: MJ8C M<EK "MJ8K " Æ MJ8C4±MJ8K M<EK ÆM:: ' ÆMJ8K X Y =`^liX*%. VSAL. a este circuito se le llama detector de cruce por cero. VENT. como se muestra en la curva caracterís- tica del comparador de la figura 3. La salida conmuta a VSAT cuando la entrada es negativa. algunas veces se requiere que el voltaje de referencia sea diferente a la tierra. "M:: MJ8C "MJ8K M<EK " MJ8C4±MJ8K M<EK MI<=4". en la entrada no-inversora. con la referencia de cero volts. Corrimiento del voltaje de referencia En los diseños./ :`iZl`kfZfdgXiX[fiZfei\]\i\eZ`X[\mfckXa\#MI<= #`^lXcX". la entrada inversora del OP AMP se aterriza mientras se aplica la señal a la en- trada no-inversora. se va a saturación positiva VSAT . En consecuencia. VSAL. el voltaje de salida.58 ilustra un comparador que utiliza una referencia de voltaje diferente a los cero volts. la figura 3. En realidad.61 a). La figura 3. Otto tenía un talento especial para realizar conexiones a fin de obtener conclusiones importantes. se hace uso de un circuito denominado disparador Schmitt.58 b). Cuando VENT excede los 5 V. En algunos casos.21 y que se puede observar en la figura 3. como lo muestra la figura 3. En el entorno intelectual fue capaz de obtener conexiones significativas entre disciplinas que parecían no tener relación. VREF . también tenía una afinidad natural para “conectarse” a nivel personal con una gran variedad de personas. Otto también trabajó en la Universidad de Minnesota y puso a nivel internacional las semillas de la biof ísica y la bioingeniería. VREF . Schmitt (1913-1998). En la esfera social. diseñó ingeniosos equipos. REF ENT SAL =`^liX*%-' J\ŒXc[\\ekiX[XZfeil`[fjlgl\jkXd\ek\Zfek\e`\e[f[fjglcjfj% Circuito comparador Schmitt trigger Para eliminar esta operación errática del comparador. incluso. 130 ELECTRÓNICA • MIJAREZ .59. zoología y matemáticas.60. con- muta a VSAT . por su parte. y lo llamó thermionic trigger. 3 El mágico amplificador operacional En este caso. "M:: GFK M<EK Æ MJ8C MI<= " I =`^liX*%. es recomendable que lean el artículo A life time of connections. VSAL . La razón de lo anterior es porque la señal de entrada por lo regular puede contener ruido. Por lo común. que nos permita variar el voltaje de entrada. En cambio. puede ser tanto positivo como negativo. es deseable tener un ajuste mediante un potenciómetro. conectando alambres. En la Universidad de Washington trabajó en los departamentos de f ísica. durante la etapa inicial de su investi- gación doctoral.0 :`iZl`kfZfdgXiX[fiZfei\]\i\eZ`X[\mfckXa\mXi`XYc\% Debido a que el OP AMP es muy sensible a los voltajes de entrada. como se muestra en la figura 3. conmuta a VSAT . el voltaje de salida. el cual comúnmente se conoce como Schmitt trigger. muestra la curva característica de este circuito. En el ámbito eléctrico.58 a) muestra un circuito comparador con voltaje de 5 V. la salida puede conmutar (oscilar) erráticamen- te entre ± VSAT cuando el valor de VENT es cercano al voltaje de referencia. VREF se produce usando un divisor de voltaje conectado a VCC o –VCC . 21 El circuito comparador Schmitt trigger fue inventado por el estadounidense Otto H. entonces VSAL . Si siguen interesados en este apasionante personaje. cuando VENT cae por debajo de los 5 V. 49) En tanto.48. del circuito de la figura 3. "M::4(. no habrá manera de que la salida pueda conmutar estados. el diseño del circuito Schmitt trigger puede ser inmune a dispa- ros de conmutación erráticos producidos por el ruido. La salida VSAL permanecerá en VSAT hasta que la entrada se haga más negativa que –βVSAT (LTP).61 b). Ahora.48) R1 R2 El punto del umbral superior (UTP. La fracción de retroalimentación.M I) I( ÆMJ8K X Y =`^liX*%-( :fdgXiX[fik`gfJZ_dd`kki`^^\i%X :`iZl`kf%Y :limXZXiXZk\iˆjk`ZX% La diferencia entre los puntos del umbral superior e inferior se llama voltaje de histéresis. por sus siglas en inglés) es: LTP  BVSAT (3. Por esta razón. por lo común especificada como β.M M<EK Æ MJ8C "MJ8K " MJ8C4±MJ8K CKG LKG ÆM::4(. el voltaje de histéresis. cuando VSAL  VSAT . VH. R1 B (3. El voltaje de histéresis se calcula mediante la ecuación 3.51) Si el voltaje pico a pico de ruido de la señal de entrada es menor que el voltaje de histéresis. Para esto asigna- mos valores a R1  1 kΩ y R2  100 kΩ. un voltaje negativo aparece en la entrada no-inversora.50) La salida del circuito comparador Schmitt trigger permanecerá en su estado actual hasta que el voltaje de entrada exceda la referencia o el voltaje umbral para ese estado. retroalimentado a la entrada no-inversora. Como los voltajes de alimentación son de ± 15 V. el punto del umbral inferior (LTP. Si asumimos que VSAL  VSAT . como ejemplo. β es definida por la ecuación 3. VH. Las resistencias R1 y R2 proveen esta retroalimentación positiva. indica la fracción del voltaje de salida. por sus siglas en inglés) es: UTP  BVSAT (3.M M<EK MI<=4". Entonces. y se le designa como VH. vamos a calcular. Cuando VSAL  VSAT . un voltaje positivo aparece en la entrada no-in- versora. entonces VSAL debe exceder el voltaje de βVSAT (UTP) para conmutar la salida al estado opuesto.51: VH  UTP – LTP VH  BVSAT   BVSAT  2BVSAT (3. 3 El mágico amplificador operacional El Schmitt trigger es un circuito OP AMP comparador que utiliza retroalimentación positiva.61. entonces asumimos unos voltajes de saturación de ± 14 VSAT . Lo anterior se comprende de mejor manera si se observa la curva característica que se ilustra en la figura 3. VSAL . el cual debe ser VSAT . Para calcular los valores para UTP y para LTP.099 R1 R2 1 k7 100 k7 grupo editorial patria® 131 . De igual modo. primero calculamos β: R1 1 k7 B   0. el voltaje de referencia.7 mV LTP  –BVSAT  0. el voltaje de umbral con histéresis es: R1 R1 VH  oVSAT VREF (3. entonces podemos calcular UTP y LTP: UTP  BVSAT  0.7 mV Por tanto.53) R1 R2 R1 R2 Normalmente.7 mV)  257. VREF .099 r (–13 V)  –128. I( i( " " MI<= ǎ MJ i) 'M 'M =`^liX*%-* MfckXa\[\i\]\i\eZ`XfYk\e`[fXgXik`i[\le[`m`jfi[\mfckXa\% 132 ELECTRÓNICA • MIJAREZ . por lo que usamos nuestro divisor de voltaje para obtener el valor deseado. el voltaje de histéresis es: VH  2BVSAT  2(128.52) R1 R2 R1 R2 Por tanto. no se encuentra disponible. Una con- figuración más general para determinar un umbral arbitrario se muestra en la figura 3. M<EK Æ MJ8C M" " I) I( MI<= =`^liX*%-) :`iZl`kfZfdgXiX[fiJZ_d`kkki`^^\iefj`d„ki`Zf% Usando la ley de Kirchhoff para las corrientes tenemos: VOUT V VREF V VOUT VREF V V R1 R2 0œ   V R2 R1 R2 R1 R2 R1 R1 R2 R1 R2 V  VOUT VREF (3.54 y en la figura 3.4 mV Podemos observar que si los valores de R1  0 Ω y R2  ∞ Ω. como se muestra en la ecuación 3.099 r 13 V  128.62. Circuito Schmitt trigger no simétrico Algunas aplicaciones requieren que el umbral no se encuentre de manera simétrica alrededor de cero volts. regresaremos al comparador original sin histéresis. 3 El mágico amplificador operacional Conociendo β.63. aunque esto en realidad consume mucho tiempo en su diseño. esta sección abre las puertas del mundo de los convertidores digitales a analógicos (DAC) y de los convertidores analógicos a digitales (ADC). J`jk\dX[\^iXYXZ`epi\gif[lZZ`eXeXc^`ZXmj%j`jk\dX[\^iXYXZ`epi\gif[lZZ`e[`^`kXc% grupo editorial patria® 133 . para enfatizar su diversidad. en este caso la grabación y la reproducción de sonido. ya estamos llegando a los límites entre el mundo analógico y el digital. Pero. cuando se tienen dos señales analógicas de entrada y una salida digital. ya sea en el mundo analógico o en el mundo digital.65. es conveniente comparar los dos sistemas en una aplicación común. La versatilidad del Schmitt trigger le ha permitido entrar al mundo de los circuitos digitales. Adicionalmente.54) r1 r 2 El circuito Schmitt trigger puede construirse usando dispositivos discretos. es decir. ADC Y DAC LAS INTERFACES ENTRE EL MUNDO DIGITAL Y EL MUNDO ANALÓGICO Hasta ahora hemos examinado el OP AMP y varias de sus aplicaciones. Cabeza Cabeza de escritura de lectura Señal analógica Señal analógica de entrada de salida Dirección de la cinta GRABACIÓN ANALÓGICA Señal analógica Señal analógica de entrada de salida Computadora La señal se convierte Los números se en números convierten en señal GRABACIÓN DIGITAL =`^liX*%-. como el CI 74HC14. 3 El mágico amplificador operacional =`^liX*%-+ :fdgl\ikX[`^`kXc`em\ijfiXJZ_d`kkki`^^\i% r2 VREF  VS (3. Este circuito tiene numerosas aplicaciones. como lo muestra la figura 3. en este momento nos estamos adelantando. por sus siglas en inglés) de un bit. por donde cruzaremos de forma delineada desde el mundo analógico hacia al mundo digital y vice- versa. Para entender la valía relativa de los sistemas analógicos y digitales. presentaremos el punto intermedio entre conceptos y construcción de estos convertidores. sin embargo. convirtiendo señales analógicas a unos y ceros. este es tema del capítulo: Principios de electrónica digital y microprocesadores. ya que para cada dispositivo existen capítulos enteros vdedicados a estos temas. si bien este es uno de los temas que nos ocupa en el tratamiento del siguiente apartado. al comparador se le de- nomina convertidor analógico a digital (ADC. 67. Por otro lado. tiene los elementos que se distinguen en la figura 3. 3 El mágico amplificador operacional Iniciamos el tratamiento de este tema describiendo el proceso de grabación y reproducción analógico. transmitir y reproducir números sin corrupción de las señales. Cada vez que la señal pasa otro proceso analógico. usando técnicas como la detec- ción y la corrección de errores. las cuales convierten las ondas amplifica- das a ondas sonoras. El modelo general de procesamiento digital de señales analógicas. las computadoras solo pueden manipular números de resolución finita. se pierde la poten- cial “resolución infinita” del proceso analógico. cuando la cinta magnética se mueve bajo la cabeza. no obstante. De esta manera. la intensidad del campo magnético almacenado en la cinta se convierte a señales eléctricas. estas señales eléctricas son amplificadas y después convertidas a campos magnéticos por una cabeza de grabación. el sistema puede 134 ELECTRÓNICA • MIJAREZ . cada etapa representa factores adversos que se combinan de tal manera que la calidad de la señal de salida es más baja que la señal de entrada. son incondicionalmente estables. De manera general. una vez convertidas a números. Cuando la cinta magnética se mueve bajo la cabeza. la vigésima generación de grabación es tan exacta como la primera. desplegada. transmitida o manipulada de cualquier manera. En este proceso digital. existen dos desventajas: primero. almacenada. por ejemplo el sonido. dependiendo de la aplicación.66. sonar. voz. La aplicación puede abarcar radar. así. etcétera. las ondas sonoras impactan el micrófono. en el proceso de grabación analógico. En el proceso de reproducción. asimismo. No obstante. para pos- teriormente contrastarlo con el proceso digital. <cdf[\cf^\e\iXc[\gifZ\jXd`\ekf[`^`kXc[\j\ŒXc\jXeXc^`ZXj% La información digitalizada puede ser analizada. donde son convertidas a impulsos eléctricos. la intensidad del campo magnético se almacena en la cinta. Despliegue Teclado 101111 101111 FBP FBP ADC Procesador DAC Acondicionamiento Filtro Filtro de señal Antialias suavizante Memoria Memoria Modem A otros sistemas DSP de programa de datos =`^liX*%-. Estas señales eléctricas son amplificadas y enviadas a las bocinas. el esquema digital también tiene muchos beneficios: las señales. sin embargo. El proceso analógico tiene una resolución infinita. estos efectos adversos se multiplican. como se muestra la figura 3. segundo. Señal digital Apagado Encendido Apagado 0 1 0 Señal analógica =`^liX*%-- KiXej]fidXZ`e[\leXj\ŒXcXeXc^`ZXXj\ŒXc\j[`^`kXc\jXii\^cfj[\e’d\ifj % Una vez adquiridas y almacenadas. video. es posible almacenar. en el proceso digital. estas señales (arreglos de números) pueden reproducirse fielmente. las señales analógicas son convertidas a señales digitales (arreglos de núme- ros). es mucho más complicado que el proceso analógico. Como la salida de un ADC y la entrada de un DAC es una palabra digital.55. grupo editorial patria® 135 . compuestos por unos y ceros. Términos técnicos de la interface analógica-digital-analógica Para apreciar esta transición entre mundos diferentes. 22 Si sigue interesado en este tema. que com- plementará su estudio. en términos de bits. pero no la exactitud de la conversión. el LSB es calculado por la ecuación 3. Así. VFS  5 V. es su voltaje de alimentación. lo cual redunda en una mayor resolución. mientras que una señal digital está limitada a distintos valores (números). es muy probable que la secuela de este libro esté relacionada con el procesamiento digital de señales.22 Pero. Estos conceptos forman los fundamentos de la transformación de valores analógicos a digitales y viceversa. Para cualquier convertidor. Para visualizar la exactitud con relación a la resolución. como se muestra en la figura 3. el cual tiene cuatro posibles combinaciones. 3 El mágico amplificador operacional no contener algunos elementos. Así. generalmente. en particular números binarios llamados bits. por sus siglas en inglés) de la palabra digital. las cuales pueden resultar de esta relación exactitud-resolución. VFS 1LSB  (3. en este apartado solo analizamos los módulos ADC y DAC. la exactitud se expresa en términos del valor de LSB. antes es importante definir algunos términos técnicos relacionados con el tema. La figura 3. menos significativa (LSB.8:% Los bits definen la resolución disponible en el convertidor. y N es el número de bits. una señal analógica puede asumir cualquier valor dentro de un rango. el cual. vamos a considerar el juego de tiro al blanco que se representa en la figura 3.:p. se tiene mayor información que puede ser usada para representar la amplitud o la intensidad de la señal. es necesario entender que una represen- tación digital de una señal analógica es una aproximación. La resolución es comúnmente considerada. Este tema se analiza con mayor detalle en el siguiente capítulo. un convertidor de 16 bits operando a plena escala. Por ejemplo. primero definiremos algunos términos únicos en el área digital. Para esto. Pero.3 μv 2 1 65535 Por lo común. pero podría tener un voltaje de referencia arbitrario. ya nos estamos desviando. entre mayor sea el número de bits. tendrá una resolución que se calcula de la siguiente manera: 5V 5V 1LSB  16   76.55) 2N 1 Donde VFS es el voltaje de escala plena del convertidor. esta se caracteriza por el número de bits que contiene.66. y son in- dependientes del método que se utilice para digitalizar una señal. por esta razón se dice que su resolución es infinita. VREF Entrada Salida digital analógica DAC (Número (Voltaje o de bits) corriente) VREF Entrada Salida analógica digital ADC (Voltaje o (Número corriente) de bits) =`^liX*%-/ JˆdYfcfj[\cfjZfem\ik`[fi\j8.68 muestra los símbolos de estos convertidores.69. ' <iifi\j\eleZfem\ik`[fi8. dependiendo de la polaridad. El efecto de este error es un cambio en la pen- diente de la curva de la función de transferencia. podemos observar que hay una gran distancia entre los disparos y que ninguno de ellos se encuentra cerca del centro.70 a). así como por fallas internas del convertidor. 111 111 IDEAL 110 110 Código digital Código digital 101 101 100 100 IDEAL 011 011 010 010 001 001 000 000 1/8 2/8 3/8 4/8 5/8 6/8 7/8 FS 1/8 2/8 3/8 4/8 5/8 6/8 7/8 FS Señal analógica Señal analógica a) b) =`^liX*%. como se muestra en la figura 3. La transición de un código digital de 000 a 001 debería suceder cuando la señal analógica alcanza ½ de 1 LSB. Este error se localiza en el primer punto de conmutación. pero si esta transición ocurre en cualquier otro punto de la señal analógica.8:%X <iifi[\f]]j\k%Y <iifi[\^XeXeZ`X% Debido a que el primer punto de conmutación es recorrido. El blanco B muestra una buena exactitud. hay errores intrínsecos en el proceso de conversión como se ve a continuación. ya que todos los disparos están alrededor del centro. y como una señal digital es una aproximación de una señal analógica. No obstante. ya que los disparos se encuen- tran agrupados con distancias muy cortas entre ellos. Este error puede ser causa- do por un error en el valor del voltaje de referencia del convertidor. El blanco C y el blanco D muestran una resolución más alta que los anteriores. pero el espacio entre los disparos indica una baja reso- lución. la diferencia es un offset. puesto que en este todos los disparos se encuentran en el centro. en este. Otro error en la función de transferencia es el error de ganancia.70 b). el cual despliega la mayor exactitud. como se muestra en la figura 3. 3 El mágico amplificador operacional A B C D =`^liX*%-0 <oXZk`kl[mj%i\jfclZ`e% El blanco A muestra una baja resolución y una pobre exactitud. Los convertidores ADC y DAC perfectos no existen. los disparos en el blanco C no se encuentran en el centro comparados con el blanco D. El error de ganancia es visto como un corrimiento del código de escala completa después del corregir el error de offset.:f. 136 ELECTRÓNICA • MIJAREZ . la función de transferencia entera se recorre ya sea hacia la derecha o hacia la izquierda. con ninguna oportunidad de alcanzar el punto deseado. En todo este proceso. la variedad de sensores es vasta. tienen que ser detectadas. la mayoría de esas señales analógicas proviene de ellos. El otro error está relacionado a los sistemas monotónicos (de mo- nótonos. Ahora. bolsas de aire.71 b). cuando la entrada se incrementa de 4 a 8.8:%X <iifi[\efc`e\Xc`ek\^iXc@EC p\iifiefc`e\Xc [`]\i\eZ`Xc. existen otros dos errores que describen la desviación de la línea recta ideal. porque existe un incremento en el uso de sensores (los cuales son esencialmente analógicos) y. y casi todas las tarjetas electrónicas tienen al menos una señal analógica. ¡el mundo es analógico! En aplicaciones que van desde electrodomésticos y automóviles modernos hasta aplicaciones médicas e industriales.EC %Y <iifi\oki\df. Así pues.EC% El error no lineal integral (INL.:p. acústica. Cuando la entrada se incrementa del paso 3 al 8. etcétera. etcétera. los cuales constituyen aquellos sistemas cuyo código de salida permanece constan- te o siempre se eleva con un incremento en los valores de entrada. el convertidor analógico a digital (ADC) juega un papel pri- mordial. como reproductores mp3. amplificadas y convertidas al dominio digital. a fin de realizar su procesamiento. el código de salida se decrementa. Aunque. mientras que el error no lineal diferencial (DNL.( <iifi\j[\[\jm`XZ`e[\cXcˆe\Xi\ZkX`[\Xc[\cfjZfem\ik`[fi\j8. 111 111 110 110 DNL Código digital Código digital 101 101 100 100 INL 011 011 No monotónico 010 010 001 001 Código perdido 000 000 1/8 2/8 3/8 4/8 5/8 6/8 7/8 FS 1/8 2/8 3/8 4/8 5/8 6/8 7/8 FS Señal analógica Señal analógica a) b) =`^liX*%. donde un sistema de control de lazo cerrado se encuentre buscando una posición. ya que incluye sensores de movimiento.71. teléfonos iphone. de 8 posibles de escala plena. la función de transferencia permanece como una línea recta. por sus siglas en inglés) es cualquier desviación en el tamaño del paso que se desvíe del ideal. el código de salida se incrementa. 3 El mágico amplificador operacional Observe que en los errores arriba descritos. En esta sección presentamos los fundamentos de la transformación de las señales de mundo analógico al mundo digital vía el ADC. por definición. el sistema puede concluir que ha pasado el punto buscado y regresarse. Estos errores pueden ser desastrosos en siste- mas de control. como se muestra en la figura 3. en la figura 3. por sus siglas en inglés) es una medida de la desviación de la función de transfe- rencia de la línea recta ideal. Por ende.72 esta se representa con el juego de la “resbaladilla”. el sistema continuará buscando ese punto y nunca se logrará estabilizar. Uno de estos erro- res sucede en caso de que se pierda un código y corresponda a la posición. ¿Por qué nos interesa el mundo analógico? Bien. campo magnético. es decir que no cambian). hoy en día. En este caso. si esto sucede. Considere un sistema donde el código buscado es 110 en la entrada 6. humedad. pre- sión temperatura. corriente. el sistema permanece atrapado en un valor mínimo local. Convertidor analógico a digital (ADC) A pesar de todas las maravillas de la electrónica digital que se conocen en nuestros días. las señales analógicas prove- nientes de una diversidad grande de sensores. Otros dos casos extremos de DNL se muestran en la figura 3. Para apreciar la transformación del mundo analógico a su representación en el mundo digital. reproductores DVD. grupo editorial patria® 137 . esto es conveniente. se tiene una señal analógica de entrada en el eje X y un código digital de salida en el eje Y. este error es conocido como quantization error. +1 LSB de salida Error 000 1 2 3 4 5 6 7 –1 LSB Voltaje analógico de entrada =`^liX*%.) KiXej]fidXZ`e[\cdle[fXeXc^`ZfXjli\gi\j\ekXZ`e[`^`kXc% En la figura 3. en su contraparte digital. La figura 3. o en pasos. 111 Códigos digitales de salida 110 101 100 011 010 001 000 0 1 2 3 4 5 6 7 Voltaje analógico de entrada =`^liX*%. 3 El mágico amplificador operacional Altura (Unidades físicas) Perspectiva analógica rma tafo Tiempo Pla o4 T0 T1 T2 Pas o3 Pas Plataforma 2 P aso Paso 4 Perspectiva digital o1 Paso 3 Pas Paso 2 rra Tie Paso 1 Tiempo Tierra T0 T1 T2 =`^liX*%.* =leZ`e[\kiXej]\i\eZ`X`[\XcgXiXle8. para el sistema digital. donde se tiene una señal analógica de entrada y una señal analógica de salida tanto para el eje X como para el eje Y.72 se aprecia que el deslizamiento por la resbaladilla es continuo en la perspectiva analógica y dis- creto. la línea recta representa la función de transferencia para un sistema analógico.+ <iifi[\[`jZi\k`qXZ`ef\iifi[\ZlXek`qXZ`e% 138 ELECTRÓNICA • MIJAREZ .73 muestra la función de transferencia ideal de un ADC de 3 bits. En inlgés.73. Debido a que la salida en el sistema digital debe asumir un código discreto. Esto sirve como preámbulo para entender otro término importante en el proceso de digitalización. por lo que existen algunos autores que en español lo llaman error de cuantización.:[\*Y`kj% En la figura 3. deberá existir una desviación de la lí- nea ideal cuando la entrada no sea exactamente el valor del código.74. Esta desviación es el error de discretización o error de cuantización. el cual se representa en la figura 3. Por su parte. llamado error de discretización o ruido de discretización. solicitar otro componente a los jefes inmediatos. asimismo. El tamaño del S/H era de aproximada- mente 2 cm r 2 cm. sin embargo. llamado muestra/retención o sample/hold (S/H. por sus siglas en inglés). 300 M Flash 100 M Pipeline 10 M Delta Velocidad (muestras/s) Sigma 1M 500 K SAR 100 K 10 K 1K Delta Sigma 0 6 8 10 12 14 16 18 20 24 Resolución en bits =`^liX*%. estos diseños se han reducido a cuatro topologías básicas: los convertidores flash. el tipo flash. y junto con el ADC trabajaban muy bien. y su salida se conectaba al ADC para obtener resultados de conversión válidos. en la medida de lo posible.23 Más allá de la diferencia de velocidad-resolución. El valor del resto de los pasos de resistencias se define de tal forma que la entrada inversora de COMP2 es 1½ LSB. al menos durante el tiempo de conversión de un LSB. estas con- figuraciones avanzadas de circuitos ADC han permitido la integración del S/H dentro del convertidor. Varios avances se han realizado en el desempeño de los ADC. es decir de qué se necesita hacer con los datos. 3 El mágico amplificador operacional Este error genera un impacto en el desempeño del ADC. el funcionamiento es como sigue: t Cuando VENT < ½ LSB. el tipo SAR. entonces COMP1  1 lógico o estado ALTO. los convertidores de aproximaciones sucesivas (SAR. como lo muestra la figura 3. se han diseñado diferentes topologías de circuitos. donde además también se puede apreciar que los límites entre unos y otros se ha traslapado. existen otros parámetros importantes como el tiempo de lectura del convertidor. Adicionalmente. Para realizar los ADC. El ADC tipo flash es el más rápido para convertir una señal analógica a digital. los tiempos de conversión más cortos y los voltajes de escala plena reducidos.75 muestra una comparación de velocidad contra resolución para estos cuatro convertidores. y del ADC de rango más amplio en términos de resolución. entre los que se incluyen los incrementos en la resolución. pero su análisis va más allá del alcance de este libro. El único problema fue un sobrecalentamiento en un pin que realicé al re-alambrar mi circuito ADC para separar las tierras digitales de las analógicas. En esta configuración. La figura 3. VFS. el dispositivo óptimo depende de la apli- cación. por sus siglas en inglés). Sin embargo. El S/H se utilizaba como fornt end de la señal analógica de entrada. t Cuando ½ LSB < VENT < 1½ LSB. entonces COMP1 y COMP2  1 lógico o estado ALTO.:j% Un cambio importante y significativo de estos nuevos diseños es la desaparición de un circuito OP AMP inde- pendiente. pero la parte digital dejo de operar. t Cuando ½ LSB < VENT < 2½ LSB. Un ADC flash de N-bit se compone de 2N–1 OP AMPs comparadores. VREF es igual al voltaje de escala completa. es importante saber que existe y que podría afectar el funcionamiento del ADC. Menciono esto porque al final de este capítulo realizamos algunas recomendaciones prácticas para trabajar con estos circuitos y evitar. Cada convertidor tiene ventajas y desventajas.76. Por tanto. a quienes no les va a gustar esta solicitud. el funciona- miento del ADC más rápido. a causa de su desempeño. :fdgXiXZ`e[\8. 23 Durante el desarrollo de mi tesis de licenciatura utilicé un circuito S/H y ADC del fabricante Burr Brown.. En esta sección solo se esboza. y tal vez es el que presenta la topo- logía de diseño más simple. de manera general. Los valo- res de la cadena de resistencias es tal que el voltaje en la entrada inversora del comparador 1 (COMP1) es ½ de LSB. 2N resistencias y una malla lógica que determina el código binario de salida. los convertidores pipline y los convertidores delta-sigma. se requería que la señal analógica de entrada fuera estable. sin embargo. entonces todas las salidas son cero lógico o estado BAJO. No apareció el humo mágico de destrucción. grupo editorial patria® 139 . En esta sección nos centra- mos en las técnicas más usadas en la actualidad para entregar un valor digital proveniente de una entrada analógica. .- :fe]`^liXZ`e[\[`j\Œf[\le8. tiene un nivel ALTO o BAJO (1 o 0) y lo reporta al circuito lógico de control para guiar a la siguiente suposición. La figura 3. se incrementa.:k`gf]cXj_% Cuando la magnitud del voltaje de entrada. como el ADC tipo rampa. :fe]`^liXZ`e[\_Xi[nXi\[\le8. VENT . La ventaja principal del ADC tipo flash es su rapidez. Conceptualmente. La función del bloque de conversión binaria es cambiar la salida de los comparadores a un código binario. una de sus limitantes son los tiempos de pro- pagación de los comparadores y de la red lógica. este tiene. Comparador + Ventrada Registro – de control VDAC Registro de Aproximaciones sucesivas Salida digital DAC =`^liX*%.:k`gfJ8I% 140 ELECTRÓNICA • MIJAREZ . como parte de sus características fun- damentales. un convertidor de 8 bits requiere de 255 comparadores y 256 resistencias.77 muestra la configuración del ADC tipo SAR. la desventaja más importante se encuentra en el número de resistencias (2N) y comparadores (2N–1) requerido. lo cual también impacta en su costo. Por ejemplo. por lo general el valor de media escala almacena esa información en un registro y la aplica a un DAC. no obstante. Pero. aplicada por el DAC. un circuito lógico asume un valor digital inicial. El ADC de aproximaciones sucesivas (SAR) es una configuración de hardware que sigue el valor de 1 bit en un esquema de árbol. 3 El mágico amplificador operacional VENT R8 VREF – R7 + COMP7 – Conversión binaria R4 + COMP4 – R3 + COMP3 – R2 + COMP2 – R1 + COMP1 =`^liX*%. El ADC de aproximaciones sucesivas es uno de los más usados. comparado con otras tecnologías que le preceden. el tiempo de conversión relativamente corto. la salida del número de comparadores que son 1 lógicos también se incrementa. Un OP AMP comparador deter- mina si la suposición inicial. 5 V > 2 2 0000 0000 (0/255) * 5  0 < 2 3 0100 0000 (64/255) * 5  1. para el cual se ponderan las ganancias de cada bit discretizado o cuantizado. el valor de salida sería menor que la salida del DAC y el bit MSB se reinicia a cero.6 MV . J\^l`d`\ekf[\cmXcfiXeXc^`ZfljXe[fle8. Si VENT es mayor.03 > 2 7 0110 0100 (100/255) * 5  1.8:[\+Y`kj% grupo editorial patria® 141 . Secuencia Palabra digital Voltaje aproximado Inicio 0000 0000 (0/255) *  0 < 2 1 1000 0000 (128/255) * 5  2. existen muchos dispositivos microcontroladores que poseen internamente un OP AMP. o cuentan con ADC interno. Asimismo.25 V < 2 4 0110 0000 (96/255) * 5  1. al 28 1 realizar la comparación. El sistema de ponderación binaria consiste en un circuito OP AMP tipo sumador. como se muestra en la secuencia 1 de la tabla 3.99 < 2 9 0110 0111 (103/255) * 5  2.5. existen dos esquemas básicos de DAC: el sistema de ponderación binaria continua y el sistema de red de escalera R-2R.:k`gfJ8I% 5V Para este ejemplo.78 muestra un DAC de 4 bits.88 V < 2 5 0111 0000 (112/255) * 5  2. Una de las desventajas del ADC tipo SAR es la velocidad de conversión. el MSB se deja en 1. 3 El mágico amplificador operacional La primera suposición se determina. a media escala./ <jhl\dX[\gfe[\iXZ`eY`eXi`XgXiXle. VREF R R/2 R/4 R/8 B1 B2 R B3 B4 – VSA + * B1 = Bit menos significativo. sin embargo cada vez aparecen CI con esta configuración y velocidades mayores.01 > 2 KXYcX*%. por tanto 1 LSB   19. De manera general. como mencionamos antes. B4 = Bit más significativo =`^liX*%. para realizar esta función de forma económica. es decir entre cero y escala plena. La figura 3. el VFS  5 V. como se aprecia en la secuencia 2 de la tabla 3.19 V >2 6 0110 1000 (104/255) * 5  2. lo cual se hace estableciendo en uno el bit más significativo de la palabra digital (MSB. por sus siglas en inglés) que para un DAC de 8 bits es 1000 0000. Convertidor digital a analógico (DAC) La tarea principal de los convertidores digital a analógico (DAC) es convertir un valor numérico a una señal analógica.95 < 2 8 0110 0110 (102/255) * 5  1. La búsqueda binaria continúa sucesiva- mente cada ciclo de reloj del circuito digital hasta que se prueba el bit más bajo (LSB). entonces. Si el voltaje de entrada VENT  2 V.5. Un inconveniente podría ser el uso de IAs de un solo tiro. en la terminal inversora. dos polos. es muy grande. con el cual se consideran las contribuciones independientes de cada bit.58) (3 R % 2 R ) 2 R 65 R 105 R 16 Sustituyendo las ecuaciones 3. vamos a asumir que la entrada digital se cambia a B1B0  01. Ahora. se obtiene el voltaje de Thévenin. vamos a presentar esta configuración con 2 bits.59) Ahora. como se muestra en la figura 3. La resisten- cia equivalente de la red.57) 2R R 3 El voltaje intermedio. asumimos que el código binario es B1B0  10. VTH. ya que se requieren solo dos valores de resistencias. en circuito abierto. como se muestra en la figura 3. Para analizar este circuito. puede presentarse el caso de no tener mucha flexibilidad en la selección de resistencias. VREF . 3 El mágico amplificador operacional En el esquema de la figura 3. como se muestra en la figura 3.56) El voltaje equivalente de Thévenin de la red.80. 142 ELECTRÓNICA • MIJAREZ . Existen dos circuitos para implementar este DAC: la red R-2R estándar y la red R-2R invertida. El circuito R-2R de escalera presenta una gran sencillez. Además.79 a) el número binario de entrada es B1B0  11. es: V1 (2 R ) 2 VTH (–)   V1 (3. las resistencias requeridas podrían ser de una gama amplia de valores. vista desde el nodo de retroalimentación. por tanto: 2 6 6 VTH   3 16 VREF  VREF 16 (3. los IAs conectan o desconectan la posición relativa de la red a un punto común que puede ser tierra o un punto de voltaje de referencia. se obtiene por división de voltajes de la siguiente manera: VREF (3 R % 2 R ) VREF 65 R 6 V1    VREF (3. vamos a asumir que B0 es el LSB y B1 es el MSB. visto desde el mismo nodo. las cuales pueden depositarse en CI para estos propósitos. podemos observar que en el circuito de la figura 3. Para clarificar estos es- quemas. ya que utiliza únicamente un OP AMP junto con un arreglo de resistencias ponderadas. se usa el principio de superposición. REQ .8:k`gfI$)I%X 9(4(p9'4(%Y 9(4'p9'4(% Para entender el funcionamiento de este esquema.79. La ventaja de este esquema es su simplicidad. La desventaja de este esquema es que al desarrollar un DAC con elementos ponderados discre- tos. debido a las características prácticas de retroalimentación y operación del OP AMP seleccionado.58. En este. VREF VREF R R 2R 2R 2R 2R 2R 2R – – B1 V1 R REQ VSA B1 V1 R REQ VSA + + B2 B2 =`^liX*%. y el número de posibilidades en esquemas. El DAC por red de escalera R-2R es un circuito en el cual se utiliza un esquema de divisores de voltaje en forma seriada.57 y 3. Los interruptores analógicos (IA) activan las entradas al OP AMP y conectan la señal VREF a una ganancia que corresponde a la posición del bit. De esta forma. es: REQ  [(2 R % 2 R ) R ] % 2 R  R (3.79 b). V1. en función del voltaje de referencia.0 <jhl\dXgXiXle.78 el bit menos significativo (LSB) alcanza la ganancia mínima y el bit más significa- tivo (MSB) alcanza la ganancia máxima. a fin de generar la ponderación de un voltaje de referencia. tanto discretos como en integrados. a fin de entrar a la terminal inversora del OP AMP.8:[\)Y`kjZfei\[I$)I`em\ik`[X#Z[`^f[\\ekiX[X9(9'4('% grupo editorial patria® 143 . 3 El mágico amplificador operacional VREF R 2R 2R 2R – B1 V1 R REQ VSA + B2 =`^liX*%/' <jhl\dXgXiXle. invirtiendo la posición relativa de los interruptores analógicos.60) El voltaje equivalente de Thévenin es: 2 R r VREF VREF VTH   (3.61) 2R 2R 2 Por último.81.50 VREF –0. VREF .25 VREF –0. la red se conecta al voltaje de referencia. como se muestra en la figura 3.75 VREF KXYcX*%- Fg\iXZ`e[\le.50 VREF 1 1 0. VREF R 2R 2R 2R R – B1 REQ VSA B2 + =`^liX*%/( . Igualmente. el análisis requerido es usar es el principio de superposición y el teorema de Thévenin para encontrar los voltajes equivalentes aplicados al nodo de retroalimentación del circuito en la terminal no inversora del OP AMP.75 VREF –0.25 VREF 1 0 0. aplicando el principio de superposición podemos obtener la tabla 3. para producir la división de voltaje esperada en el nodo de retroalimentación. La resistencia equivalente es: REQ  [2 R % 2 R R ] % 2 R  R (3. Código de entrada Voltajes B1 B0 VTH VSAL 0 0 0 0 0 1 0. la cual representa el funciona- miento del DAC de 2 bits para todos los casos. la red de escalera R-2R se coloca en la parte superior.8:k`gfI$)I#Z[`^fY`eXi`f9(4(p9'4'% Otra vez.6.8:[\)Y`kI$)I\jk}e[Xi% Para la red R-2R invertida de 2 bits. IAs. El DAC MC1408 utiliza la red escalera R-2R y obtiene la corriente de salida de la siguiente manera: I SAL  I REF  A2 A4 A8 16A 32A 64A 128 1 2 3 4 5 A6 A 256 7 8 Donde AN  1. también existen DAC completos en CI.82. es obtenr una salida de corriente como la que se ilustra en la figura 3. Los resultados del DAC con red R-2R invertida son idénticos a los encontrados con la red estándar. ya que pro- porcionan una señal de salida en corriente.6. Estos DACs presentan configuraciones recomendadas para aplicaciones generales. se puede utilizar un CI que contenga un arreglo de dos valores de resistencias. para la salida BAJA. sin embargo. 3 El mágico amplificador operacional El análisis de este circuito se efectúa usando. y AN  0. el teorema de superposición y el teorema de Thévenin para obtener sus voltajes y resistencias equivalentes. usando el DAC M1408. para la salida ALTA. igualmente. si es requerido cambiar a voltaje solo se agrega un convertidor de I-V basado en un OP AMP. los cuales usan interruptores analógicos.82. IAs. Estos dispositivos proveen una salida proporcional a la ponderación dada por el código binario de entrada. los cuales se muestran en la tabla 3. como el que se ilustra en la figura 3.8:[\/Y`kjZfei\[I$)I% De igual modo. 144 ELECTRÓNICA • MIJAREZ . entre otros. R VREF 2R – VSA B8 R + 2R B7 R 2R B6 R 2R B5 R 2R B4 R 2R B3 R 2R B2 R 2R B1 R =`^liX*%/) . A manera de ejemplo. Algunos CI con estas características son los convertidores tipo DAC 08 y tipo MC1408.83. como se muestra en la figura 3. de corriente. vamos a describir un DAC tipo MC1408 con salida de corriente y con salida de voltaje. La corriente de referencia para este CI se obtiene por: VREF I REF  RREF La aplicación más sencilla. Si se desea un DAC de 8 bits R-2R. 1 μF CCOMP 13 3 VCC VEE 16 Comp (V+) (V–) MSB 5 10 V A1 6 5K A2 +VREF 7 14 +15 V A3 10 K 8 5K A4 MC1408 9 A5 I0 4 10 – A6 –– 741 741 VSA 11 I0 + A7 LSB 12 –VREF A8 15 Datos –15 V de entrada =`^liX*%/+ . entonces el voltaje de plena escala es: 255 VSAL( MAX )  (2 mA)(500 7)  0. entonces la resistencia de referencia se obtine por: 5V RREF   2. RL  500 Ω. IREF  2 μA. como se ilustra en la figura 3.8:D(+'/% El MC1408 se calibra.8:D:(+'/ZfejXc`[X[\mfckXa\gifgfiZ`feX[XgfileFG8DG% grupo editorial patria® 145 .84.5 K 0. +5 V –5 V 0. se usa un OP AMP. Por tanto. suponiendo que la corriente de referencia.99219 μA de plena escala.1 F 5 V 13 3 RREF 2 K VCC VEE (V) (V) MSB 5 A1 2.1 F 6 A2 VREF 7 14 A3 8 A4 MC1408 9 4 SaIida A5 I0 10 A6 RL = 500  11 A7 –– LSB 12 I0 15 A8 VREF GND Datos de entrada 2 1 =`^liX*%/* 8gc`ZXZ`ej`dgc\[\c. de acuerdo con la hoja de datos.1 F 0.996 V 256 Si se requiere obtener una salida de voltaje.5 k 7 2 mA Si conectamos una resisitencia de carga. a una corriente de salida ISAL  1.1 μF 0. 3 El mágico amplificador operacional 5 V 5 V 0. Con frecuencia. lo cual minimiza la diferencia de potencial en el mismo. del plano de tierra o de un cable conductor. la tierra tiene un voltaje. Existen muchas fuentes de ruido. sin embargo. empezamos definiendo el concepto de tierra. I\j`jk\eZ`Xj[\i\]\i\eZ`XpZXgXZ`kfi[\Zfdg\ejXZ`e% B1 B2 B3 B4 B5 B6 B7 B8 VSAL (V) Escala completa 1 1 1 1 1 1 1 1 4. Al igual que las restricciones de potencia. Otra vez.8:D:(+'/% Existen otros DACs que pueden ser configurados para operación unipolar (0-10 V) o bipolar (–10 V a 10 V).0 15 2. y los conductores reales tienen cierta impedancia. donde un área grande de cobre reduce la impedancia.00 Negativo de escala completa 0 0 0 0 0 0 0 1 –4. al plano de tierra se le considera como el mejor retorno de corriente. Lo anterior se lleva a cabo dedicando una capa de la tar- jeta del circuito impreso (PCB. RREF (kΩ) CCOMP (pF) 1. Sin embargo.96 Escala de cero 1 0 0 0 0 0 0 0 0. las limitaciones de tamaño y los requerimientos de rapi- dez y exactitud. Los DACs pueden ser utilizados como periféricos de sistemas digitales basados en microprocesadores o microcontroladores. continuando con el sentido de este libro.5 37 5.8 ilustran la forma de compensar y calibrar el DAC tipo DAC08 o MC1408. por sus siglas en inglés) únicamente como plano de tierra.00 KXYcX*%/ :Xc`YiXZ`ekˆg`ZX[\c. el uso del plano de tierra no asegura una tierra de “alta calidad” para circuitos de CA. LAS MISTERIOSAS TIERRAS La reducción de ruido es uno de los aspectos más importantes en la mayoría de los diseños electrónicos. En el mundo cotidiano. Pero. en todas partes que se encuentre. La tierra se considera un punto de referencia para todas las señales de un sistema o una trayectoria de retorno para las corrientes eléctricas de un circuito. Idealmente. 3 El mágico amplificador operacional Las tablas 3. las generadas dentro del circuito o sistema electrónico es responsabili- dad del diseñador y pueden afectar el desempeño total del circuito. el ruido es un factor omnipresente que debe ser tomado en cuenta para realizar diseños exitosos.7 y 3. Las corrientes que circulan esta tierra causan que la diferencia de potencial a través del conductor sea diferente en todos los puntos. ello se debe a que este puede proveer un punto o nodo de referencia para convertidores.9 75 KXYcX*%. como el AD667 de 12 bits. Una “buena” tierra se obtiene manteniendo la impedancia del conductor (por lo general. OP AMP y otros circuitos. vamos a tratar de generar un entendimiento intuitivo acerca de las misterio- sas tierras. Existen muchos artículos. este es uno de los tópicos que cubriremos en el si- guiente capítulo: Principios de electrónica digital y microprocesadores. 146 ELECTRÓNICA • MIJAREZ . contiene.96 ( 1LSB) Negativo de escala completa 0 0 0 0 0 0 0 1 –5. No obstante. en este caso ON semiconductors. la tierra no es otra cosa que una señal transportada por conductores. Así pues. cobre) lo más baja posi- ble. los cambios en la temperatura. extensas notas de aplicación e incluso libros que tratan el tema de las tierras. con mayor resolución. tenemos que recordar que la impedancia. de cero volts. una componente de capacitancia o inductancia. de acuerdo con la información proporcionada por el fabricante. tanto para la fuente de ali- mentación como para las señales de interés en el sistema o en la tarjeta electrónica. además de resistencia. mejor conocido como diferencia de potencial. la inductancia de un cable es casi independiente de su diámetro. como lo muestra la figura 3.01 100 1K 10K 100K 1M 10M 100M Frecuencia (Hertz) =`^liX*%/. no muestra estas sutilezas. pero es directamente proporcional a su longitud. pero. >i}]`ZX[\`dg\[XeZ`Xmj%]i\Zl\eZ`XgXiXleZXYc\i\Zkf[\*d[\ce’d\if()% Adicionalmente.03 0. 10K 3K 1K Impedancia (ohms) 300 100 30 10 3. Si sustituimos este cable por uno de media pulgada de diámetro (12. del punto 1 al punto 2. entendiendo como fluye la corriente en el plano de tierra. la impedancia en la trayectoria en forma de U es cero y el voltaje que aparece entre los puntos conectados de la fuente de corriente debería ser cero.0 1. hace presentes estas realidades y muestra cómo puede evitarse el ruido de tierra a altas frecuencias.56 mm) es aproximadamente 0. ¼ λ. y se incrementa cuando existen curvas o lazos. f   L 12 m Para desmitificar un poco estas misteriosas tierras.3 0. y el cual tiene una fuente de corriente de CD y de CA en la capa superior que es conectada al punto 1 en un extremo.0 0. como se muestra en la figura 3.1 0.86. la impedancia se reduce ligeramente a 25 Ω.p:8 Zfe\ZkX[X\eki\cfjglekfj(p)XkiXm„j [\leXkiXp\Zkfi`X\e]fidX[\L\e\cG:9#Zfei\kfief[\k`\iiXXkiXm„j[\cgcXef[\k`\iiX% El diagrama esquemático de la fuente de corriente.015 Ω. grupo editorial patria® 147 . por ejemplo.85. figura 3.`X^iXdX\jhl\d}k`Zf[\leX]l\ek\[\Zfii`\ek\%Y =l\ek\[\Zfii`\ek\:. el cable de 3 metros del número 12 tiene una impedancia de 30 Ω a 1 MHz. Para el cable de 3 metros. la resistencia de CD de un cable aplica únicamente a muy bajas frecuencias y es directamen- te proporcional a su longitud. es decir se puede convertir en una antena irradiando energía. Por ejemplo. Esta fuente de corriente se conecta al punto 2 a través de una trayectoria de cobre. como se ilustra en la figura 3. también llamada pista. Por otro lado. Considérese que la resistencia de un cable recto de 3 metros del número 12 (diámetro 2.85.86 a). cuando su longitud es un cuarto de su longitud de onda. esto sucedería a aproximadamente a: C 3 x108 25 MHz. 3 El mágico amplificador operacional Así. en forma de U. construido en una tar- jeta de 2 capas. En la figura se observa cómo ambos puntos van a través del PCB y se conectan al plano de tierra. vamos a usar un circuito muy simple.7mm). Punto 2 Punto 1 Capa inferior usada como plano de tierra CD + CA sólido Conductor con forma de U Capa superior a) b) =`^liX*%/- X . Idealmente. un cable puede resonar. la impedancia inductiva es XL  2πfL. Punto 2 Punto 1 Plano de tierra CD Trayectoria de la corriente de CD Área de lazo para calcular Conductor con forma de U la inductancia Capa superior =`^liX*%/. evidentemente. mayor será la inductancia. En el ejemplo de la figura 3. KiXp\Zkfi`X[\cXZfii`\ek\[\:. la trayectoria con menos área es.87. la cual depende de la inductancia. la de menor área. Líneas Oposición de flujo bucle alrededor exterior del alambre superior Refuerzo en el interior de bucle Líneas de flujo alrededor Oposición del alambre bucle inferior exterior =`^liX*%// Cˆe\Xj[\ZXdgfdX^e„k`Zfp\ccXqf`e[lZk`mf% Dentro del lazo. Como se recor- dará del capítulo 1.88. la corriente toma la trayectoria de me- nos resistencia. es: ¿cuál trayectoria escoge la corriente en el plano de tierra? Naturalmente. sino que toma la trayectoria de menos impedancia. por tanto. por esta razón. La inductancia es proporcional al área del lazo creado por el flujo de corriente. esto significa que para un nivel de corriente dado. por tanto. Como sabemos. entonces. Sin embargo. la impedancia se incrementa con la frecuencia y. por ende. la corriente produce líneas de campo magnético que se suman constructivamente. la corriente de CA de alta frecuencia fluirá por la trayectoria de menor inductancia. Considerando el lazo formado por la pista en forma de U en la capa superior.87. lejos del lazo existen líneas del campo magnético que se suman destructivamente. se almacena más energía magnética y se tiene una impedancia mayor. 3 El mágico amplificador operacional En la figura 3. también se incrementa el voltaje. el campo magnético se encuentra principalmente dentro del lazo. 148 ELECTRÓNICA • MIJAREZ . la trayectoria de menor impedancia.87 se ilustra cómo fluye la corriente de CD. algo de la corriente de CD se dispersa. en este caso del punto 1 al punto 2. Por otro lado. como se muestra en la figura 3. pero solo una cantidad pequeña de esa corriente fluye a una distancia sustancial de esta trayectoria. Entre más grande sea el lazo. el plano de tierra en la capa inferior y despreciando la componente resistiva del cobre. es importante resaltar que la corriente de CA no toma la misma trayectoria de menos resistencia. esta relación puede ilustrarse por la regla de la mano derecha y el cam- po magnético. la pista en forma de U y la porción del plano de tierra directamente debajo de la pista.#[\cglekf(Xcglekf)% Como se aprecia en la figura 3. La pregunta. no estética. a bajas o medianas frecuencias. los circuitos analógicos se localizan en la sección del plano analógico y la porción digital del sistema se encuentra en la parte digital. a fin de asegurar la integridad de las señales de interés y reducir el ruido en diseños que incluyen señales mezcladas. en inglés) se pueden identificar y corregir. como se describió antes. la diferencia de potencial puede ser de cientos de milivolts. se reducirá su impedancia. Una solución simple. resulta que la inductancia se introduce en ambos retornos de las señales. la resistencia del plano de tierra causa que. incluso. suficiente para compro- meter el desempeño de un ADC de 8 o 12 bits. En esta división. y estas deben de mantener la impedancia característica tan baja como sea posible  C L . la pista en U y el plano de tierra. Para mantener esta relación pequeña. la capacitancia se puede incre- mentar seleccionado capacitores de desacoplo (bypass capacitors) en lugares críticos. 3 El mágico amplificador operacional En la práctica. los problemas de distribución de pistas (la- yout. es conectar un cable atravesando el plano de tierra. la corriente fluya entre el plano de tierra y directamente en la pista de la capa superior.l μf entre los pines de alimentación. Tierras digitales y analógicas En esta sección consideramos la importancia que tienen la distribución y la configuración geométrica de las tierras analógicas y digitales. Por tanto. para mantener el lazo pequeño. Para señales típicas TTL (lógica de transistor- transistor. es decir diseños de módulos que contienen tanto componentes analógicos como digitales.`m`j`e[\cgcXef[\k`\iiX#le`[f\ecX]l\ek\[\Xc`d\ekXZ`e% grupo editorial patria® 149 . la inductancia se reduce y la capacitancia se incrementa. Muchos diseñadores separan o dividen el plano de tierra en dos secciones: una digital y una analógica. A/D Tierra analógica Tierra digital ? AGND DGND ? Fuente de poder =`^liX*%/0 . el regreso de la corriente casi se desarrolla todo en la pista de la capa superior. En tanto. por sus siglas en inglés).89. Las líneas de la fuente de alimen- tación se tratan como líneas de transmisión. Otro aspecto importante es la distribución de potencia en la tarjeta electrónica. Una vez que se entiende el retorno de corriente en el plano de tierra. si la pista tiene menos importancia. esta última produce que ambos lazos sean mayores. adicionalmente. Desafortunadamente. se tratará de mantener corta y alejada de las líneas digitales. De esta forma. si se identifica una trayectoria como crítica. como se muestra en la figura 3. como los convertidores ADC y DAC. Si se conecta un capacitor de desacoplo de 0. por medio del uso de un plano de tierra bajo las líneas de alimentación. se puede cortar el plano de tierra y usar un camino que no afecte circuitería sensible. incluso con frecuencias tan bajas como 1 MHz o 2 MHz. las dos tierras se unen en la fuente de alimenta- ción del sistema. Sin embargo. Este enfoque funciona con menos eficacia para sistemas con múltiples converti- dores. Lo anterior pone las terminales de tierra del convertidor en el plano de tierra analógico. 2. 150 ELECTRÓNICA • MIJAREZ . para crear una tierra “con forma de estrella”. el punto de conexión de la figura 3. ayuda a reducir trayectorias inadvertidas que pueden producir retornos de corriente de alta im- pedancia y problemas de interferencia electromagnética. Usar los planos de tierra. No dividir el plano de tierra y conectar las tierras del convertidor al plano de tierra común.90. Debido a que AGND y DGND no están conectadas dentro del CI. 3 El mágico amplificador operacional Por lo general. Conectar las terminales de tierra del convertidor. ya que si usamos el enfoque de la figura 3. entonces no habría ningún problema. lo cual es pedir problemas gratis. únicamente al plano de tierra analógico. aunque en la mayoría de los sistemas es poco práctico. Recuérdese que un convertidor de datos es un dispositivo analógico.90 debería ser donde la tierra de la fuente de alimentación se conecta. sin embargo. con el propósito de hacerlos funcionar adecuadamente. como se muestra en la figura 3.`m`j`e[\gcXefj[\k`\iiXZfeZfe\o`e[\YXaf[\cZfem\ik`[fi8. Por tanto. los convertidores DAC o ADC dividen sus tierras y disponen de dos terminales en su distribución de pines: una llamada tierra analógica (AGND) y otra llamada tierra digital (AGND). pero si las corrientes fluyen por debajo del con- vertidor son sus propios retornos.92. y debajo del conver- tidor unir los planos como se muestra en la figura 3. 3. lo anterior crea un lazo de tierra no deseado. por tanto. el plano de tierra sólido puede ser muy efectivo. es recomendable diseñar teniendo en mente una adecuada división de las secciones digital y analógica. propiamente. A/D Tierra analógica Tierra digital AGND DGND Fuente de poder =`^liX*%0' . Cuando se usan dispositivos de baja potencia.:% Idealmente. como se muestra en la figura 3. Conectar las terminales de tierra analógica y digital del convertidor a su respectivo plano. En términos de cómo se conectan estas tierras. creando una ruta alrededor del pin de DGND. los fabrican- tes de convertidores consideran que se debe usar una impedancia externa muy baja para conectar las terminales de tierras AGND y DGND. su conexión no consiste simplemente en conectar las terminales de tierra a su correspondiente sección del plano de tierra.91. existen tres posibilidades: 1. la impedancia interna sería muy alta. Técnicamente. en este caso ADC.90 se producirían múltiples lazos de tierra. Las terminales AGND y DGND de un convertidor deben unirse en el convertidor o su desempeño no será el adecuado. Debemos ser cuidadosos con las terminales de alimentación del CI. no obstante. estas recomendaciones se pueden extender a los prototipos que usamos de prue- ba en el laboratorio. No se deben usar voltajes muy altos o muy bajos. +9 V –9 V Tierra +Vs –Vs + – + – Alcalina Alcalina 9V 9V =`^liX*%0* :fe\o`e[\[fjYXk\iˆXjgXiXgifgfiZ`feXicfjmfckXa\j[\"M::pÆM::\eleFG8DG% grupo editorial patria® 151 . de acuerdo con las especificaciones del OP AMP. La lista tiene dos categorías: sugerencias generales y las pequeñas trampas donde solemos caer cuando no somos lo suficientemente cuidadosos. principalmente cuando se usa un PCB. Debemos asegurarnos de que las fuentes de alimentación negativa y positiva tengan los voltajes que se espera. como se muestra en la figura 3. 3 El mágico amplificador operacional Parte analógica Parte digital del plano de tierra del plano de tierra A/D A/D Tierra analógica Tierra digital AGND DGND AGND DGND Fuente de poder Fuente de poder =`^liX*%0( 8dYXjk`\iiXj[\leZfem\ik`[filjX[XjZfdfi\kfief =`^liX*%0) GcXef[\k`\iiX’e`ZfZfe\ZkXe[fcXjk`\iiXj\eleX [\cgcXefXeXc^`Zf% j\ZZ`eXeXc^`ZXpleXj\ZZ`e[`^`kXc% CONSIDERACIONES Y RECOMENDACIONES GENERALES En teoría. use un voltímetro entre las dos fuentes y entre cada fuente y tierra para verificar. 1. Pero. primero se presenta una lista de los problemas asociados con el OP AMP.93. Algunas veces se usan dos baterías comerciales para propor- cionar los voltajes VCC y –VCC . los voltajes bajos no pola- rizarán internamente los transistores internos y es posible que el amplificador no funcione en absoluto o no funcione adecuadamente. Por tanto. 2. Las fuentes con voltajes altos pueden dañar la componente. más allá de la teoría. Por el contrario. No dude. todos los circuitos de este capítulo funcionan. en este apartado presentamos al- gunas consideraciones que nos permiten diseñar con el OP AMP de una manera práctica y hacerlos funcionar a la primera vez. revisando las conexiones de un PCB con un estudiante. Existen mu- chos otros circuitos basados en OP AMPs que permiten mostrar el ingenio de los diseñadores.1 μF. eliminar el ruido digital de con- mutación de una señal analógica. Como se vio en la sección anterior. por ejemplo de 0. K`\iiX[\cXj\ŒXc K`\iiX[\ K`\iiX XeXc^`ZX Z_Xj`j [`^`kXc =`^liX*%0.94 muestra una tarjeta electrónica con sus capacitores de desacoplo cerca de las terminales de alimentación de un CI. son de decenas a cientos de megahertz. Para OP AMP que operan con anchos de banda de hasta 1 MHz. las místicas tierras no son de confiar. cuando se pasa el diseño a un PCB. si se tiene un OP AMP en un protoboard sin ningún capacitor. por no decir que imposible. la capacitancia de fuga de esos pines puede prevenir la oscilación del circuito. daba una vuelta extraña entre sus conexiones. Use capacitores de desacoplo tan cerca como sea posible de las terminales de alimentación del CI. la cual actúa como referencia para todas las señales. a excepción de esos pequeños “vuelcos del destino” que suceden con algunas pistas. Si tiene la oportunidad de hacer un PCB. 4. También es recomendable usar un capacitor de 10 μF en la fuente de alimentación. 3 El mágico amplificador operacional 3. El resultado fue errores aleatorios de esa señal. Muchos diseños electrónicos usan una tierra única de retorno de las corrientes. Existen varios símbolos para el uso de tierras. Por ejemplo. principalmente cuando los anchos de banda del CI. especialmente si usan componentes digitales. La figura 3. no nos percatamos de que la pista. tanto de las señales como de los voltajes de alimentación de los equipos. de una señal de varios mega- hertz. :XgXZ`kfi[\'%(μ= =`^liX*%0+ KXia\kX\c\Zkie`ZX\ecXhl\j\`e[`ZXcXgfj`Z`e[\leZXgXZ`kfi[\[\jXZfgcf[\dfekXa\jlg\i]`Z`Xc% 5. por lo que se tuvo que hacer otro PCB. y para interconexión entre tarjetas electrónicas o equipos. Use las pistas de las entradas del OP AMP tan cortas como sea posible. de ser posible. Como sabemos. digitales o analógicos. JˆdYfcfjgXiXcXjk`\iiXj% Resumiendo. Si su circuito tiene mucha circuitería digital. sin embargo. Es muy dif ícil. las tierras sirven como trayectoria de retorno de las corrientes. en este capítulo se estudió un juego de bloques básicos basados en el mágico OP AMP.24 6. Por lo general. Algunas veces se usan capacitores más pequeños. debe estar consciente de que existen capacitancias e inductancias que pueden causar ruido.95 muestra estos símbolos. pero debido a su gran 24 Existen muchas historias urbanas en los laboratorios del mundo acerca de estos “vuelcos del destino”. La figura 3. Finalmente. lo cual considero buena práctica. estas cuestiones de ruido se reducirán bas- tante. y la resistencia de retroalimentación se coloca entre dos pines adyacentes. las conexiones fueran correctas. se podría tener una oscilación en el OP AMP. use planos de tierra. los capacitores de 1 μF son apropiados. la tierra de la alimentación y la tierra de las señales se unen a través del encapsulado o la caja del equipo y se le llama tierra de chasis. nos aseguramos de que no existieran cortos. etcétera. Algunos autores usan la distinción entre tierra analógica y tierra digital. 152 ELECTRÓNICA • MIJAREZ . considere separar las tierras analógicas de las digitales y. En algu- na ocasión. Si tiene la costumbre de usar las table- tas blancas con perforaciones (protoboard). la correcta localización de los capacitores de desacoplo. este puede basarse en dos o tres OP AMP. ca en V/μs. AVL  –RRETRO/RENT . de tal forma que tienen efectos despreciables pido puede cambiar el voltaje de salida y se especifi- en los circuitos a los cuales se conectan. El signo negativo indi- ± El amplificador diferencial rechaza o atenúa con fuer- ca que VSAL y VENT tienen un desfasamiento de 180°. considerando una en- taciones de salida del OP AMP. ± El OP AMP inversor tiene una ganancia de lazo cerrado. ganancia directamente acoplado. AMP es la frecuencia a la cual la ganancia de voltaje ± Los amplificadores de instrumentación en CI tienen de lazo abierto AVOL se reduce a 70.7% de su valor una alta escala de integración (es decir. siguiendo el tenor de este libro. DATOS IMPORTANTES DEL CAPÍTULO ± Las entradas del OP AMP presentan una alta impe. cantidad de transistores). con la cual se estabiliza la o amplificador diferencial. rado por voltaje. ganancia de voltaje y se mejora el ancho de banda y ± El amplificador diferencial tiene dos entradas: una las impedancias de voltaje y corriente. ± El parámetro PSRR muestra la capacidad de un OP ± La alta ganancia de lazo abierto de los OP AMP es lo AMP para eliminar cualquier señal de alta frecuen- que hace que la ganancia de salida con retroalimen. la entrada V es igual a la entrada V . se optó por fomentar los conceptos fundamentales que ayudan a entender estos bloques analógicos. por cerrado. inversora ( ) y una no-inversora ( ). adicionalmente. aunque sus especificacio- ± La frecuencia a la cual la AVOL  1 se llama fUNITARIA. ± El OP AMP no inversor tiene una ganancia de lazo ± La Razón de Rechazo de Modo Común (CMRR. AVL  1 RRETRO/RENT . ± El parámetro CMRR en el OP AMP está determi- cuito comparador. la diferencia entre dos voltajes de entrada.) nado por el amplificador diferencial y nos indica. el voltaje de entrada diferencial VED es tan pequeño ± El amplificador de instrumentación es una versión que se considera cero volts. yor que la otra. El OP AMP seguidor sus siglas en inglés) se obtiene dividiendo la ganancia es la configuración de ganancia unitaria del OP AMP de voltaje diferencial Ad entre la ganancia de volta- no inversor. ± La mayoría de los circuitos con OP AMP usan re- ± La primera etapa de un OP AMP es el par diferencial troalimentación negativa. za las señales que son comunes a ambas entradas. cia que aparezca en la fuente de alimentación. así que no se complique la vida. tación negativa se iguale aproximadamente a 1/H ± A la entrada de los OP AMP el ruido puede ser gene- (red de retroalimentación). en la salida. de señales. por corriente de polarización y por ± Los OP AMP se crearon para facilitar la amplificación resistencias. 3 El mágico amplificador operacional variedad sería imposible describirlos. je de modo común ACM. comúnmente son grupo editorial patria® 153 . ± La especificación del slew rate (SR) indica qué tan rá- dancia. mejorada en especificaciones de un OP AMP dife- ± La frecuencia de corte de lazo abierto de un OP rencial. la salida se irá al voltaje máximo positivo o negativo. si una entrada es ma- trada escalón. ± La ganancia de lazo abierto de un OP AMP es muy alta. nes técnicas distan de las ideales. ± Debido a su alta ganancia de lazo abierto y a las limi- dentro de una banda de error. se sentaron las bases para entrar al mundo digital que se trata con detalle en el capítulo 4. (A esta aplicación se le llama cir. ± Se pueden aplicar diferentes voltajes a las entradas ± La distorsión inducida por el SR produce una forma de los OP AMP. ± El OP AMP sumador es el circuito cuya salida es la ± Al OP AMP se le considera un amplificador de alta suma negativa de todas sus entradas. una gran máximo. ± La especificación de settling time nos indica el tiem- po que le toma al OP AMP estabilizarse en su salida. Sin embargo. ± Un OP AMP diferencial es un circuito que amplifica ± Cuando el voltaje de salida se encuentra entre ±VSAT . cuántas veces la señal de entrada dife- ± El OP AMP con retroalimentación negativa es la rencial es más grande que la señal de entrada de única configuración en la cual se puede asumir que modo común. ¡No tienen que ser iguales! de salida triangular (amplitud reducida y forma de onda distorsionada). conductor usada como tierra tiene.3 V 5 200 000 10 0. por lo que deben man- tener la impedancia característica tan baja como sea ± Un circuito Schmitt trigger es un OP AMP compara- dor que usa retroalimentación positiva para eliminar la operación errática del circuito causada por ruido. como líneas de transmisión. G  200 000 y plete los cálculos restantes y grafique el voltaje de H  10. si alguien lo diseñará pensando en hacerse muy gico al digital y viceversa. com- asignarán valores a las ganancias. como se muestra en la AMP configurado como amplificador.01 V –>VSAT( ) –> 1 V H 4 200 000 10 0. y para entrar del mundo analó- Pero. porque el costo bit menos significativo determina su resolución.15 V en vo de la retroalimentación negativa. la impedancia crece y pueden apa- recer diferencias de potencial en la tierra. se siguiente tabla. Tiempo G H VENT V− (VENT) − (V−) VSAL 0 200 000 10 0 0 0 0 1 200 000 10 0 0 0 0 VSUMA o VERROR 2 200 000 10 0. se obtiene manteniendo la impedancia del conduc- tor tan baja como sea posible. se usará un OP su entrada no-inversora.5 0. mendaciones prácticas para trabajar con los OP 2 1 ± El uso adecuado del sistema de tierras en un circuito AMP reales y familiarícese con las hojas de datos de electrónico reduce el ruido interno. también sería en sus sueños.15 0 VENT G VSAL 0 V –>VSAT( ) –> 0. más no su exactitud. se asumirá que la entrada negativa (V ) es salida. VFS ideal sería cero pesos. de entrada de una de sus terminales con otro volta- je de referencia en la otra entrada. Usando la tabla 3. también es dependiente de la frecuencia. para rectificar señales muy pequeñas. principalmente inductancia. tores de desacoplo. del orden de la capacitancia se puede incrementar usando capaci- los milivolts. 3 El mágico amplificador operacional mucho mejor que las provistas por los OP AMP de ± La impedancia de un cable conductor o de un plano propósito general. VSAL. Como la impedancia inductiva es XL – nente activo y su salida cambia a una taza de 10 dB/ 2πfL.5 V 3 200 000 10 0. En estos convertidores. tencia. la inductancia se reduce al usar un plano de tierra ± Los OP AMP pueden usarse en conjunto con diodos debajo de las líneas de alimentación. L. PROBLEMAS DEL CAPÍTULO 3 3. las cuales ± Un circuito OP AMP comparador compara el voltaje se traducen en ruido. con respecto a VENT. porcional al área del lazo creado por el flujo de ± Un filtro activo de primer orden solo usa un compo. posible L C .15 1 1 V >VSAT( ) > 1.3 1.9 (en Excel). el rico. no usa retroali.6 V (Continúa) KXYcX*%0 154 ELECTRÓNICA • MIJAREZ . la cual es pro- nancia de voltaje y del filtrado. corriente. altas frecuencias.15 0 0. V . Para esto. además de resis- ± Un filtro activo basado en un OP AMP provee ga. ± Los OP AMP pueden usarse para realizar converti- ± El OP AMP con las características ideales ¡no existe! dores ADC y DAC. De modo que atienda las reco- 1LSB  N . adicionalmente. A década después de la frecuencia de corte. Para mantener esta relación peque- ña.15 0.15 1.3 V >VSAT( ) > 1. ± Las líneas de la fuente de alimentación se tratan mentación y su salida es ±VSAT . Una buena tierra los fabricantes.1 Con el objetivo de obtener un entendimiento intuiti. cero al inicio y se aplicará un voltaje VENT  0. ±10 V y una ganancia de lazo abierto AVOL  100 000.5 KXYcX*%0 3.''μ8 3. figurado como inversor. como se muestra en la figura 3. a fin de obtener la IE. derive una fórmu- de salida.5 9 200 000 10 0.11 Explique por qué es importante utilizar un circui- MVENT <EK4(.97.4 1.6 Entrada no-inversora + Salida 1.bΩ  15 k sultado ideal obtenido por la ecuación 3. el voltaje de CA 3. de cada transistor con res.15 1.7 Determine el valor mínimo de slewrate (SR) de un OP AMP para manejar sin distorsión una señal sin- usoidal con una frecuencia f  70 kHz y un voltaje de pico VP  5 V.3 En un amplificador diferencial. d) Calcular el voltaje de entrada diferencial VED. 3 El mágico amplificador operacional (Continuación) Tiempo G H VENT V− (VENT) − (V−) VSAL 6 200 000 10 0. VED . RRETRO  10 kΩ.M V::  15 V b) Si RENT  1 kΩ. J\ejfi Sensor 0-2 VGGPP '$)M querido para obtener los voltajes de saturación. grupo editorial patria® 155 . 3.10 Calcule ZENT(CL) y ZSAL(CL) de un OP AMP configu- MSAL V J8C rado como circuito seguidor de voltaje.M V::  15 V necta a una carga RL  200 Ω. "M CC4(. y AVOL  104. Calcule la máxi- ma oscilación de salida en la carga. pecto a la corriente de cola? impedancia de carga. @ 500 A RILC4)''Ω  200  7.15 1. El sensor se co- ÆM CC4(. c) Compare el resultado del inciso b) con el re- IRC:4(. '$)M IRLC4)''Ω  200  @ 500 A 7.8 Explique qué significado tiene que un OP AMP te de cola IT . AVOL  100 000 y ZSAL(OL)  40 Ω.4 Un OP AMP tiene un voltaje de saturación de VSAT  oscilación en la carga. si RENT  2 Q H1 ( Q2 H * MΩ. su gráfica de voltaje de oscilación de salida vs. =`^liX*%0- b) Utilice un OP AMP 741 como seguidor de vol- 3. la CMRR en decibeles y la ganancia de vol. re. la ganancia de presente una CMRR  100 dB. Determine el voltaje de entrada diferencial. 3. =`^liX*%0. de acuerdo con corriente de emisor. determine la máxima 3. Ad. ¿Cuál es el AVOL a la frecuencia de corte? 3.2 Del siguiente circuito se requiere calcular la corrien. la exacta para la ganancia de un OP AMP con- taje de modo común.15 1.4 V >VSAT( ) > 1.''μ8 3.6 Calcule la frecuencia máxima para un OP AMP que + tiene un slewrate SR  5 V/μs y un voltaje pico de J\ejfi Sensor 0-2 VGGPP – salida VP  10 V. considerado como fuente de volta- IR<E4()bΩ  12 k je. ACM.9 a) Con base en la ecuación 3.5 V H 8 200 000 10 0.12 a) Un sensor. IE.29. evalúe la ganancia de este amplificador inversor. presenta un rango de voltaje de 0-2 VPP y una capacidad de corriente de 500 μA.6 V >VSAT( ) > 1. 3. 3. voltaje de modo diferencial.28. ¿cómo se relaciona la taje entre el sensor y la carga.5 Un OP AMP tiene un AVOL  100 000.15 1.4 V Entrada – inversora 7 200 000 10 0.dM  15 mVpp GG to seguidor de voltaje. ¿cuál es el valor de Etapa “buffer” Amplificador diferencial entrada diferencial. VED.M  5 V – I*R4(%. a) VX  0. del siguiente cir- cuito sumador inversor.22 Diseñe un circuito de precisión detector de picos negativos basado en un OP AMP.bΩ 3 = 1. VSAL.16 ¿Cómo se relaciona la ganancia fCL con la ganancia – ACL? R2  1 k A3 B + VSAL 3.2 V.5 k MV*34"*M  3 V + MVJ8C SAL =`^liX*%('' 3. va en un circuito Schmitt trigger? calcule el voltaje de salida.5 kΩ y R2  250 kΩ. R3  10 k RRETRO II<KIF4('bΩ  10 k VY + A2 IR(4('bΩ 1 = 10 k – VM1(4"(M  1 V IR)24*bΩ = 3 k MV)24Æ.19 ¿Cuál es el papel principal de los seguidores de voltaje A1 y A2 en el amplificador de instrumenta- ción de la siguiente figura? Indique qué ventajas –Vsal tiene usar un amplificador de instrumentación con respecto a un OP AMP de propósito general. pueda manejar cargas conmutadas de 1 A. VH.21 ¿Qué beneficios tiene la retroalimentación positi- 3. de primer orden.14 ¿Cómo es la relación de fase entre el voltaje de sa- lida y el de entrada para un OP AMP inversor? – Explique por qué.20 En un filtro activo pasa altas. si R1  1. del circuito de la siguiente figura.18 Del siguiente circuito amplificador diferencial.13 Para un OP AMP no–inversor. 3 El mágico amplificador operacional 3. si: 3. in- dique cuál es la frecuencia de corte y cómo se comporta la ganancia ACL con respecto a la fre- =`^liX*%0/ cuencia.23 Diseñe un circuito basado en un OP AMP que b) VX  0. 3.2 V. para fines prácticos? 3. c) VY  0. 3. =`^liX*%('( 156 ELECTRÓNICA • MIJAREZ .24 Calcule el voltaje de histéresis. 3.5 V.5 V y VY  –0. A1 VX + R1  1 k RRETRO  10 k 3. Nota: R1  R2 +VCC = 15 V RRETRO  R3 VENT – R1 = 1 k RRETRO  10 k Vx + VSAL = ±Vsal –VCC = 15 V – R2 = 1 k VSAL Vy R2 + R1 RL = 100 k VSAL R3 = 10 k +Vsal VSAL = ±Vsal =`^liX*%00 LTP UTP VENT 3.15 ¿Cuál es el efecto de la retroalimentación negativa A en la impedancia de salida del OP AMP? 3. VSAL .17 Obtenga el voltaje de salida. La primera suposición coplo. con una salida de 20 1 1000 0000 (128/255) * 5  2. el valor de 3. grupo editorial patria® 157 . 3. el bit más significativo de la palabra digital (MSB.28 Un sensor de temperatura. frecuencias. escala plena. se requiere digita.5V  3.5 V.5 V tra en la siguiente figura.33 Describa qué es un plano de tierra en un PCB y offset con respecto a los errores de no linealidad cómo ayuda este a la reducción de ruido a bajas (INL y DNL).32 Existen dos esquemas básicos de DAC: el sistema =`^liX*%(') de ponderación binaria continua y el sistema de red de escalera R-2R. 3 El mágico amplificador operacional 3. como el que se mues. se conecta a un ADC con un voltaje de re- ferencia de 5 V. Complete la tabla hasta que alcance la resolución de una señal digital. que para un DAC de 8 bits ca tiene una resolución infinita y cómo se obtiene es 1000 0000.35 Describa el objetivo de los capacitores de desa- lizar una entrada de 3. to a las tierras para señales de CA de altas frecuen- ciones sucesivas. 3. de bits) KXYcX*%(' 3. 3. 5 0111 0000 VREF 6 0110 1000 Sensor de 7 0110 0100 temperatura Salida 20 μV/ °C 8 0110 0110 digital 9 0110 0111 A DC (Núm. 3. Describa su funcionamiento.5 V μV/°C. Indique cuál es el la resolución 2 0000 0000 (número mínimo de bits) en el ADC para poder 3 0100 0000 convertir los valores de la señal analógica a digital 4 0110 0000 adecuadamente. se establece a media escala. lo cual se hace estableciendo en uno tema digital.34 ¿Qué parámetros se toman en cuenta con respec- flash con respecto a un convertidor de aproxima.5 V.27 Explique la diferencia entre resolución y exactitud Palabra en convertidores ADC y DAC.26 Argumente por qué se dice que una señal analógi. es decir entre cero y les de un sistema analógico con respecto a un sis. cias? 3.25 Mencione las ventajas y las desventajas principa. Secuencia digital Voltaje aproximado 3. Inicio 0000 0000 (0/255) * 5  0  3.30 Describa las características de un convertidor 3. 3.31 Para un ADC de o bit tipo SAR. por sus siglas en inglés).29 Explique la diferencia en los errores de ganancia y 3. . pero. alcanzaría un respeto grande (en especial si llegaba a suceder). quienes. conviene definir lo que es un sistema digital: “es aquel que pro- cesa elementos discretos.1 Los números binarios y los sistemas digitales son temas básicos para los miembros de la comu- nidad de las ingenierías eléctrica. electrónica y mecatrónica. Su ubicuidad es de tal magnitud. cuando poca gente sabía contar más allá del número de los dedos de sus manos y pies. El ejemplo más conocido de un sistema digital es una computadora digital. Si usted ya domina este tema. el ciudadano promedio de las sociedades modernas está en contacto con docenas o quizá hasta cientos de maravillosos sistemas o dispositivos electrónicos digitales. puede pasar directamente al siguiente 1 El hecho de que estemos familiarizados con los números y las operaciones básicas. números binarios (unos y ceros). lavadoras y cámaras fotográficas. muchas veces provoca que tendamos a no apreciar el tremendo esfuerzo mental realizado por muchos personajes a lo largo de la historia. conformado por los sis- temas digitales. de información. pero por mucho no es el único. teléfonos celulares. si esa persona hubiera podido predecir un eclipse. Consciente o no. Ahora bien. pocos de nosotros sabemos qué operaciones matemáticas realizan y. 159 . 4 La maravillosa electrónica digital En el capítulo 3 se estudia ampliamente el tema de la interfaz entre el mundo analógico y el mundo digital. En la antigüedad. cualquiera con conocimientos rudimentarios de matemáticas podía obtener una posición de poder. Aclarado lo anterior. De modo que con el conocimiento que tenemos. que los encontramos hasta en cajas de cereal o en los juguetes de regalo que ofrecen algunas tiendas. en este capítulo nos adentraremos en el mundo digital. si se nos diera la oportunidad de viajar en el tiempo al pasado. Pese a ello. solo por mencionar unos cuantos. asumimos que los entendemos a la perfección. por lo general. quizá lo más importante. para llevarnos al sobre- saliente nivel que tenemos hoy en día. no tenemos idea de cómo lo hacen. tendríamos muchas oportunidades de sobresalir en numerosos actividades y empleos. La mayoría de estos dispositivos lleva a cabo incalculables operaciones matemáticas en computadoras. X Uso de cables para representar números. y grosso (gruesa) que significa ciento cuarenta y cuatro (12 r 12  144). que significa doce. 5. sumadores y decodificadores. Para la división usaron el concepto del recíproco. cuando menos puede dar un repaso. “CONTANDO CON DEDOS. piedrecillas lisas y redondeadas por la erosión que abundan a la orilla de los ríos. a/b  a r 1/b. Con base en esta técnica. Por ejemplo el 82  1. 8. el hecho de que tengamos diez dedos en las manos hace que el sistema numérico con el cual estamos más familiarizados sea el sistema decimal. 3 para el dedo índice. 7.3 la palabra decimal se 2 Las culturas mesopotámicas. lo cual dio como resultado el sistema base 20. del cual se derivan los 60 segundos de un minuto. Por lo que solo necesitaban las tablas para realizar la multiplicación de dos números. principalmente los babilonios. pero si tiene dudas. 2. los 60 minutos de una hora y los 360 grados de un círculo. también se relaciona con el sistema base 12. con el cual ya estaban familiarizados. sin embargo. también con el pulgar es posible asignar a cada dedo tres números de la siguiente manera: 1. pero de acuerdo con su origen. El uso de pequeñas piedras pudo haber sido utilizado para representar números mayores a los que se pudieran representar con los dedos. 4. cuando se empezó a usar el sistema decimal la cuenta iniciaba con el número uno y fue hasta alrededor del año 600 a. Estas piedras pudieron haber sido usadas para enseñar a contar. existen tablas babilónicas relacionadas con el teorema de Pitágoras. 8. por lo que crearon tablas de recíprocos y posteriormente realizaban la multiplicación. por lo general. 2. algunos grupos usaron tanto los dedos de las manos como los dedos de los pies. 5. PIEDRAS.2 No obstante. 160 ELECTRÓNICA • MIJAREZ . crecieron las necesidades de representar cantidades mayores. Para multiplicar usaron la fórmula a r b  [(a b)2 – (a r b)2]/4. en este mismo capítulo. del que hablaremos más adelante. que se utiliza para designar el número 20 o una veintena. 4. usada para referirse a los guijarros.C. Siguiendo el camino trazado para este libro. De igual manera.” X La lógica de la electrónica digital. para referirse a un número o una cantidad numérica. 11 y 12 para el dedo meñique. Entonces. que en la India se introdujo el valor y concepto del cero y de los números negativos. lo cual explica por qué tenemos palabras especiales como docena. 9. X Simplificación de circuitos. 2. el cual es un sistema posicional. algunos de nuestros ancestros utilizaron el sistema base 12. X Dispositivos de tres estados y latches. en la antigua Mesopotamia se usó el sistema base 60. este ca- pítulo tiene el objetivo de esclarecer los fundamentos de cómo se realizan las maravillas digitales. X Celdas de memoria y memorias. 3. usaron el sistema base 60. y tenían la ventaja de ser capaces de almacenar resultados interme- dios para su uso posterior. empecemos a maravillarnos. tampoco es coincidencia que la palabra “calcular” se derive del vocablo en latín calculare. principalmente como antesala de los sistemas basados en microprocesadores. 3 En realidad. piedras. semillas… y los sistemas numéricos. En este capítulo estudiamos: X “Contando con dedos. 7. el cual se basa en diez dígitos: 0. tomando la diferencia entre los dos cuadrados y al final dividir entre 4.4  1 r 601 4 r 600  64. 3 y 4. Adicionalmente. En poco tiempo. Por lo anterior. El hecho de que tengamos un día de 24 horas. no es coincidencia que la primera herramienta que el ser humano utilizó para ayudarse a contar fueron los dedos de las manos. 6 para el dedo medio. 1. 4 La maravillosa electrónica digital capítulo. Aunque algunos historiadores aseguran que los mayas usaron este concepto unos 300 años antes. 6. y 10. Pero. Las tablas proveen los números al cuadrado hasta el 59 y al cubo hasta el 32. Los babilonios también realizaron operaciones aritméticas y algebraicas. Por este motivo. Por otra parte. esa es la razón por la cual en la actualidad usamos palabras como score (del inglés). este vocablo también significa dedo. se puede usar el dedo pulgar para contar las yemas de los dedos de la misma mano: 1. los seres humanos hemos experimentado con varios y diferentes sistemas numéricos. Por ejemplo. Tal vez uno de los aspectos más im- portantes es el uso de tablas para ayudarse en sus cálculos. X Máquinas de estados. A lo largo de la historia. ya sea de las manos o de los pies. SEMILLAS… Y LOS SISTEMAS NUMÉRICOS” La palabra dígito se utiliza. 9 para el dedo anular. por ejemplo. al tiempo que usaban semillas de cacao como dinero. antes de cambiar al siguiente orden o posición. Puesto que este sistema usa diez dígitos. M  1. Sistemas numéricos de posición Para iniciar este apartado vamos a considerar el sistema de numeración empleado por los romanos. X  10. según la cultura maya: un punto.1 a)]. Los números mayas fueron escritos con solo tres símbolos [véase figura 4. una línea. C  100.1 d) muestra la representa- ción del número 13 en relieve. empleaban los dedos de las manos y de los pies para contar. y sabrá de lo que estamos hablando. Sin embargo. que significa “diez”.1 a) podemos apreciar la representación de los números. V  5. como se muestra en la figura 4. Cabe resaltar que los mayas contaban desde el 0 (cero) hasta el 19. Por ejemplo. En la actualidad.1 b). donde: I  1. ya que a partir del número 401 se requie- ren de tres niveles. requie- ren dos niveles o posiciones. del 20 al 25. Para resolver este inconveniente y seguir usando este sistema numérico. para re- presentar el 1. Números mayores al diecinueve. La cultura maya (antigua civilización de la denominada Mesoamérica) usó un sistema vigesimal o base 20. la desventaja más grande de este sistema. y así sucesivamente. 4 La maravillosa electrónica digital deriva del latín decam. dos 10 y un 5 menos un 1. Por su parte.000. los hindúes lo hicieron unos 300 años después. se dice que es base 10 o radix 10 (el término radix proviene del latín y significa raíz).  ' ( . Los si- guientes diecinueve números fueron representados como se ilustra en la figura 4. Sin embargo. al paso del tiempo surgió problema con el uso de este sistema y es que conforme la sociedad evolucionaba y se desarrollaba. 4 r 201 0 r 200  80 5 r 201 0 r 200  100 10 r 201 0 r 200  200 15 r 201 0 r 200  300 1 r 202 0 r 201 0 r 200  400 =`^liX+%) E’d\ifjdXpXji\gi\j\ekX[fjgfi[fje`m\c\j_XjkXXcZXeqXi\c+''#XgXik`i[\ce’d\if+'( j\i\hl`\i\eki\je`m\c\jfgfj`Z`fe\j% grupo editorial patria® 161 . Los mayas aportaron dos ideas fundamentales a las matemáticas: el valor de la posición y el concepto del cero. porque eran fáciles de contar y almacenar.%[ E’d\ifki\Z\#i\gi\j\ekXZ`e\eleX\jk\cX Zfei\d`e`jZ\eZ`XjdXpXj#lY`ZX[X\ele_fk\c[\cgXZˆ]`Zfd\o`ZXef% Los números mayas pueden escribirse en dos niveles hasta llegar al 400. la figura 4.  )' )( )) )* )+ ). que equivale al número 4). Esta última concepción también fue impulsada por otra gran cultura de la antigüedad: la de la India.2. Por ejemplo. para representar el número 5. presumiblemente. En la figura 4. el número 24 se representa como XXIV (es decir. se tendría que continuar inventando nuevos símbolos o utilizar una cantidad muy grande de los sím- bolos ya existentes. sur- gió la necesidad de representar cantidades cada vez más grandes. L  50. intente multiplicar CLXXV r DDDCV. con base en este sistema numérico.1 c). y la figura de una concha para representar el 0 (cero). como se muestra en la figura 4. En el sistema numérico maya un 1 (uno) seguido de un 0 (cero) equivale a veinte. es que es dolorosamente dif ícil trabajar con este. debido a que. X Y Z [ =`^liX+%( Eld\iXZ`edXpX%X JˆdYfcfj%Y Eld\iXZ`e[\c(Xc(0%Z Eld\iXZ`e[\c)'Xc). por ejemplo. En este sistema numérico. comparable solo con la invención del alfabeto. Columna de millares Columna de centenas Columna de decenas Columna de unidades 6 2 4 9 = (6 × 1000) + (2 × 100) + (4 × 10) + (9 × 1) = 6000 + 200 + 40 + 9 = 6249 =`^liX+%+ :fdY`eXZ`e[\[ˆ^`kfjp\cg\jfXjfZ`X[f[\jljZfcldeXj\e\cj`jk\dX[\Z`dXc% Otra forma de comprender la representación de los sistemas numéricos de posición es usando el concepto de po- tencias. 162 ELECTRÓNICA • MIJAREZ . Por ejemplo. consideró que la numeración usada por los mayas es uno de los inventos más fértiles de la humanidad. como el álgebra.3. 4 La maravillosa electrónica digital La técnica usada por los antiguos mayas es conocida como posicional vertical. aunque también fue empleada de manera horizontal en algunas inscripciones. las cuales llegaron a resolver ecuaciones de segun- do y tercer grado empleando un sistema numérico sexagesimal. el valor de un dígito en particular depen- de de sí mismo y de la posición dentro del número. uno de los más productivos de la historia de las ciencias exactas. etcétera. mientras que el exponente (el número 4) especifica cuántas veces se va a multiplicar la base por sí misma. algunos matemáticos prefieren referirse a este tipo de representación como forma exponencial. Igualmente. como se ilustró en el sistema vigesimal. con el cual estamos familiarizados. que significa “diez a la potencia de dos” o “diez multiplicado por sí mismo dos veces”. 10 000  10 r 10 r 10 r 10  104. no es posible saber de los conocimientos adquiridos por los mayas en otras ramas de las matemáticas. que es el estudio de sitios arqueológicos relacionados con el estudio de la astronomía por culturas antiguas.4 como se muestra la figura 4. como se muestra en la figura 4.4. y el valor del nú- mero es determinado por la combinación de cada dígito con el peso de su columna. basta visitar Chichen Itzá en México. que también puede escribirse como: 102. en el caso del número 104. 1 000  10 r 10 r 10  103. Existe un número importante de puntos asociados con los exponentes o potencias que es útil recordar: 4 Aunque la mayoría de los conocimientos científicos y tecnológicos de los mayas ya se habían perdido mucho antes de la llegada de los españoles. 100  10 r 10. donde las culturas mesopotámicas alcanzaron gran desarrollo. Desafortunadamente. al número que se está multiplicando (es decir. Al igual que en el sistema numérico maya. en el sistema decimal cada columna en un número tiene un “peso” asociado. para ver el esplendor maya relacionado con el término denominado arqueoastronomía. No obstante. debido a la destrucción sistemática de sus manuscritos. el 10) se le llama base. En lugar de hablar de potencias. el historiador Otto Neugebauer (1899-1990).5 muestra gráficamente este caso.  )') )'( )''  +' )' ' *+''  " ')'  " ''  4()'' =`^liX+%* J`jk\dXm`^\j`dXc`e[`ZXe[f\cmXcfi[\ZX[X[ˆ^`kfXjfZ`X[fXcmXcfi[\jlgfj`Z`e% Esta es la forma en la que trabaja el sistema decimal o base 10. La figura 4. grupo editorial patria® 163 . un valor con exponente de 3 es referido como el cubo del número. por ejemplo. en ese punto. ya se nos acabaron los dígitos. reiniciamos la primer columna a 0 (cero) e incrementa- mos la segunda columna con 1. 52  5 r 5  25. Ljf[\gfk\eZ`Xj[\[`\q% t $VBMRVJFSCBTFFMFWBEBBMBQPUFODJBEF VOP FTMBCBTFNJTNBFTUPFT1  10. el cual emplea solo dos dígitos: el 1 (uno) y el 0 (cero).5. Igualmente. en la próxima cuenta. así que esta columna también la reiniciamos a 0 (cero) e incrementamos la tercera columna. lo cual es de particular interés cuando consideremos otros sistemas. Comenzando con el 0 (cero). es pre- ferible usar el sistema numérico binario. desafortunadamente. incrementamos la primera columna hasta que llegamos al 9. donde 64 es el cubo de 4. t %FGPSNBFTUSJDUB VOBQPUFODJBEF DFSP OPFTFOSFBMJEBEQBSUFEFMBTFSJFTJOFNCBSHP QPSDPOWFODJØO  cualquier base elevada a la potencia de 0 (cero) es la unidad.6. Pero nos estamos desviando. y continuamos de esa manera. la segunda columna ya tiene el 9. Contar en decimal Contar usando el sistema decimal es relativamente fácil para nosotros. por una variedad de razones que iremos exponiendo en este capítulo. y así sucesivamente. es en realidad el número del sistema base. 0 1 2 3 : 8 9 10 11 : =`^liX+%- :fekXi\e[\Z`dXc% Del mismo modo. como se ilustra en la figura 4. no es el más adecuado para realizar las funciones u operaciones internas de un sistema digital. 4 La maravillosa electrónica digital Columna de millares Columna de centenas Columna de decenas Columna de unidades 6 2 4 9 = (6 × 103) + (2 × 102) + (4 × 101) + (9 × 100) = 6000 + 200 + 40 + 9 = 6249 =`^liX+%. Pero. por ejemplo 43  4 r 4 r 4  64. El sistema númerico binario El sistema decimal como tal. como se muestra en la figura 4. en la próxima cuenta reiniciamos otra vez la primera co- lumna a 0 (cero) e intentamos incrementar la segunda columna. esto es: 100  1. donde 25 es el cuadrado de 5. principalmente porque estamos acostumbra- dos a ello. Por tanto. De hecho. el punto clave aquí es que el peso de las columnas. dándonos como resultado el 100. una vez que alcanzamos el número 99. t $VBMRVJFSWBMPSDPOFYQPOFOUFEF FTSFGFSJEPDPNPel cuadrado del número. relacionada con la programa- ción de funciones de control de estos sistemas digitales. pero eventualmente se decidió por bit. se trata de un sistema base dos. el humor ingenieril es bastante seco. considerado de gran importancia en los sistemas de procesamien- to digital. pero es más fácil que contar en decimal. Entre las opciones se incluyeron binit y bigit. 5 John Wilder Tukey (1915 . De manera similar. la próxima cuenta establece la primera columna a 0 (cero) e intenta in- crementar la siguiente columna. Wilder Tukey intuyó que referirse a este dígito como dígito binario era un poco largo. como es un sistema de base 2. 23  8. Cuando se trabaja en un sistema numérico diferente al decimal o con una mezcla de diferentes sistemas. si el número no tiene subíndice o prefijo. se dice que son de 4 y 8 bits. a menos que los tradujéramos literalmente: dos mordiscos (nibbles) hacen una mordida (byte). %1010.8. con frecuencia se agrupan en 8 bits. Hacia 1940. ni hablar. Por tanto. por sus siglas en inglés). respectivamente. como se muestra en la figura 4.2000) es mejor conocido por haber publicado en 1965. En este caso. Así. dos nibbles hacen un byte. el científico John Wilder Tukey5 se dio cuenta de que la conjunción de los sistemas digitales y el siste- ma numérico binario podría ser muy importante. solo cuesta un poco acostumbrarse a este. o expresáramos: si no lo puedes morder (byte). Además de acuñar la palabra software. e incrementa- mos la segunda columna en 1.7. pero. etcétera. 6 En idioma inglés. Como en los sistemas posicionales. 22  4. así que buscó alternativas para reducirlo. cuando la cuenta alcanza 112 . los valores binarios 10102 y 110010102. por lo general se asume que la representación es decimal. esta también se reinicia a 0 (cero) y se incrementa la tercera columna a 1. A menos que se indique de otra forma. un artículo donde explica el algoritmo llamado la transformada rápida de Fourier (FFT. así que también reciben un nombre especial: byte. por lo que reciben un nombre especial: nibble. es lo mismo que indicar: 1100binario  12decimal Columna de los ochos Columna de los cuatros Columna de los dos Columna de los unos Número 1 1 0 02 binario = (1 × 23) + (1 × 22) + (0 × 21) + (0 × 20) = (1 × 8) + (1 × 4) + (0 × 2) + (0 × 1) = 8 + 4 + 0 + 0 Número = 1210 decimal =`^liX+%. sin embar- go.6 Contando en binario Al inicio. mordisquéalos (usa nibbles). junto con James Cooley. en realidad existen varias convenciones. de modo que cada columna en un número binario tiene asignado un peso. en el sistema binario empezamos contando desde 0 (cero). Sin embargo. el cual es un término conciso y elegante. Para la siguiente cuenta. Por ejemplo. solo es cuestión de conocerlas. es común usar subíndices para indicar qué base se está representando. 11002  1210 . los términos nibbles y bytes ponen de manifiesto el sentido del humor de los ingenieros en sistemas digitales y computadoras. como la siguiente columna ya tiene un 1. de gran uso hasta nuestros días. resultando el número 1002 . 4 La maravillosa electrónica digital El sistema binario es un sistema numérico posicional. Asimismo. en este punto ya se nos acabaron los dígitos disponibles. donde el símbolo % indica un valor binario.7. 164 ELECTRÓNICA • MIJAREZ . G\jfj\e\cj`jk\dXY`eXi`f[\cfj[ˆ^`kfjpcXjZfcldeXj% Otra alternativa que se emplea comúnmente para representar la base de los números es utilizar un carácter o símbolo como prefijo para indicar la base. como se muestra en la figura 4. contar usando el sistema binario parece una tortura. el cual es una potencia del número base del sistema. Es muy común agru- parlos en 4 bits. y después incrementamos la primera columna a 1 (uno). en español esto no se aprecia tanto. de modo que los pesos de las columnas son: 20  1. 21  2. reiniciamos la primer columna a 0 (cero). por ejemplo. como se muestra en la figura 4. Esta es la única tabla de multiplicación del sistema binario. Más recientemente. cada una de las tablas. como veremos después.9. iniciando con la tabla del 2: dos por uno. casi cantando. Por ejemplo. 16. En consecuencia. 8. cuatro. hasta llegar a la tabla del 9. 6 bits. Multiplicación 0 × 0 = 0 0 × 1 = 0 1 × 0 = 0 1 × 1 = 1 =`^liX+%0 KXYcX[\dlck`gc`ZXi[\cj`jk\dXY`eXi`f% El sistema numérico hexadecimal Los humanos. de manera aleatoria. el sistema numérico binario nos resulta simple porque emplea solo dos símbolos. Probablemente. En los diseños de las primeras computadoras era común manejar grupos de datos divisibles entre tres: 3 bits. el sistema numérico octal. Desgraciadamente. recordarás aquella rutina de aprender repitiendo. como se ilustra en la figura 4. tan complejo como se presenta en la figura 4. obviando la del 10. Una vez después. dos por dos. tenemos dificultades para entender el significado de hileras o columnas grandes de ceros y unos. las tablas también se repetían de manera descendente y. por último. como palabras y núme- ros. por su facilidad. la mala noticia es que ahora vamos a hacer un ejercicio similar con las tablas de multiplicar del sistema binario. tenemos una buena percepción de representaciones simbólicas. es que esto lo podemos aprender en unos cuantos segundos. Bien. en este sentido. No obstante. dos. 4 La maravillosa electrónica digital Binario Decimal 0 0 1 1 1 0 2 1 1 3 1 0 0 4 1 0 1 5 1 1 0 6 1 1 1 7 1 0 0 0 8 :· :· =`^liX+%/ :fekXe[f\eY`eXi`f% Aprendiendo las tablas de multiplicar Ahora. por lo general.) puede convertirse con facilidad a su equivalente binario y viceversa. la buena noticia. etcétera. 12 bits. vamos a remontarnos a aquellos días en la escuela primaria en los cuales aprendimos las tablas de multiplicar. 64. Por fortuna. llegó a ser muy popular. cualquier sistema numérico con una base que sea potencia de 2 (por ejemplo. 32. 9 bits.9. el número binario 101010012 no tiene el mismo impacto en nuestra memoria que su equivalente en de- cimal 169. principalmente porque cada dígito octal podía convertirse a tres bits. el cual es más fácil de entender. convertir de binario a decimal puede ser un poco latoso. es decir de base 8. el 1 (uno) y el 0 (cero). es todo lo que se necesita. etc. los sistemas computacionales se han estandarizado a utilizar grupos de bits divisibles entre ocho: grupo editorial patria® 165 . etcétera. 4. La razón principal es que cada dígito hexadecimal puede convertirse directamente a cuatro bits. para enfatizar cada dígito hexadecimal. es decir de base 16. en este caso hasta que llegamos a la letra F. etcétera. entonces.11 es posible observar que los números binarios se han dividido en grupos de 4 bits.10. 4 La maravillosa electrónica digital 8 bits. Así. El sistema hexadecimal requiere únicamente 16 símbolos. Decimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F =`^liX+%(' Cfj(-[ˆ^`kfj[\cj`jk\dX_\oX[\Z`dXc% Contar en hexadecimal El sistema numérico hexadecimal es un sistema posicional. del 0 al 9. porque con frecuencia se realiza de manera mental. 32 bits. Como alter- nativa a este dilema. predo- minó y prevalece hasta la fecha. por tanto. iniciamos con el 0 y continuamos hasta que se terminan todos los dígitos. En la figura 4. Esta representación no es típica. Además. 16 bits.11. como se muestra en la figura 4. El sistema octal decayó y el sistema numérico hexadecimal. e invertir en definir nuevos símbolos para este sistema no sería una solución muy eficaz y mucho menos tener que aprenderse todos estos nuevos símbolos. Tam- bién se puede observar que tanto los números binarios como los hexadecimales tienen ceros como prefijos a la iz- quierda. de la A hasta la F. en la próxima cuenta reiniciamos la primer columna en 0 e incremen- tamos la siguiente columna como se ilustra en la figura 4. esta práctica de llenar con ceros un número se usa para ilustrar el número de bits con que se representa dicho valor. y de letras mayúsculas del abecedario. en este sistema se usó una combinación de números decimales. las reglas para contar son las mismas que hemos visto en los sistemas anteriores. Valor Decimal Binario Hexadecimal Cero 0 0000 0000 00 Uno 1 0000 0001 01 Dos 2 0000 0010 02 Tres 3 0000 0011 03 Cuatro 4 0000 0100 04 Cinco 5 0000 0101 05 Seis 6 0000 0110 06 Siete 7 0000 0111 07 Ocho 8 0000 1000 08 Nueve 9 0000 1001 09 Diez 10 0000 1010 0A Once 11 0000 1011 0B Doce 12 0000 1100 0C Trece 13 0000 1101 0D Catorce 14 0000 1110 0E Quince 15 0000 1111 0F ……… ………… ………… …………… Dieciséis 16 0001 0010 10 Diecisiete 17 0001 0001 11 Dieciocho 18 0001 0010 12 : : =`^liX+%(( :fekXe[f\e_\oX[\Z`dXc% 166 ELECTRÓNICA • MIJAREZ . se- ría impráctico tener que modificar los teclados de cada máquina de escribir o computadora del mundo. Conversión entre números hexadecimales y binarios Convertir un número de hexadecimal a binario y viceversa es extremadamente simple. 4F0A16  20 23410 . lo único que tenemos que hacer es reemplazar cada dígito hexadecimal por su equivalente binario de 4 bits de la siguiente manera: $7 l %0111. los cuales se pueden encender y apagar increíblemente rápido. es una práctica común usar subíndices para indicar el tipo de base que se está usando. Otra alternativa común es utilizar un carácter especial como prefijo para indicar la base. Antes de presentar el uso de cables o alambres para representar números binarios. 5 l %0101. aunque no debe sorprendernos que exista una variedad grande de representaciones. De manera similar. Columna de los cuatro mil noventa y seis Columna de los doscientos cincuenta y seis Columna de los dieciséis Columna de los unos Número 4 F 0 A 10 = (4 × 163) + (F × 162) + (0 × 161) + (A × 160) hexadecimal = (4 × 4 096) + (F × 256) + (0 × 16) + (A × 1) = 16 384 + 3 840 + 0 + 10 Equivalente = 20 23410 decimal =`^liX+%() :fdY`eXZ`e[\[ˆ^`kfjpg\jfj[\cXjZfcldeXj\e_\oX[\Z`dXc% Como vimos antes. significa que el número a la izquierda de la igualdad se encuentra en representación hexa- decimal y el de la derecha en representación decimal. Por ejemplo. Por consiguiente. Por ejemplo. hechos principalmen- te con nuestro activo transistor. 4 La maravillosa electrónica digital Combinación de dígitos y peso de columnas en hexadecimal Como con cualquier sistema posicional. en este caso. y así sucesivamente. esto es: %1100 l $C. cada columna en un número hexadecimal tiene un peso asociado. los pesos de las columnas serán: 160  1. Por ejem- plo. %0111 l $7 Por tanto. C l %1100 Por tanto $7A5C en hexadecimal equivale a %0111101001011100 en binario. %1010 l $A. la base es 16. el número %1100101001010111 en binario equivale a $CA57 en hexadecimal. 163  4 096. que se estudia en el capítulo 2. Por ejemplo. miles de millones de veces por segundo. $A l %1010. también es muy fácil convertir un número binario a su representación hexadecimal. 161  16.12. como se muestra en la figura 4. LÓGICA DE LA ELECTRÓNICA DIGITAL Los sistemas digitales están constituidos por una gran cantidad de interruptores microscópicos. si queremos con- vertir el número $7A5C a binario. Los pe- sos son derivados de la base del sistema. donde $ significa que el valor está en hexadecimal. 162  256. $4F0A. vamos a proveer una revisión general de cómo está conformada la electrónica digital y su lógica. para convertir el número binario %1100101001010111 a hexadecimal solo tenemos que dividir el número binario en nibbles (grupos de 4 bits) y convertir cada nibble a su representación hexadecimal. %0101 l $5. Los transistores pueden ser conectados de tal manera que pueden grupo editorial patria® 167 . por supuesto que simplifica las cosas. a través de Shannon y Shestakov. Victor Shestakov. ancho y angosto. la cual muestra una inteligencia cuasihumana. en cierta forma. la gran mayoría implementa estos sistemas usando electrónica digital. que es el tema de este capítulo. entonces VSAL será casi 5 V. La película inicia con el amanecer del ser humano. A su vez. Independientemente. Si VENT  0 V. entonces utilizado en conmutadores de enruta- miento de teléfono. los cuales pueden procesar datos utilizando técnicas digitales o analógicas. de las cuales vamos a estudiar las elementales. porque la salida no llega a ser exactamente 0 V o 5 V.9 Para los ingenieros en electrónica. a todas las posibles combinaciones de entradas de un circuito y sus respectivas salidas se les conoce como tabla de verdad. Lo cual es cierto. rugoso y liso. A la fecha. Si VENT  5 V. esto no importa si el valor se mantiene por debajo del máximo voltaje permitido para el 0 lógico y por encima del mínimo permitido para el 1 7 Las computadoras o procesadores pueden construirse usando sistemas mecánicos (hidráulicos o neumáticos). su salida será un 0 y viceversa. en el que se siguen reglas predecibles. 8 George Boole (1815-1864).13. un 1 lógico típicamente puede tener el valor de 3 a 5 V. y Boole. simplemente invierte cualquier señal que se presente en su entrada. demostró cómo el álgebra de Boole podía usarse para optimizar el diseño de sistemas electromecánicos de relés. 4 La maravillosa electrónica digital formar elementos lógicos básicos llamados compuertas lógicas. 168 ELECTRÓNICA • MIJAREZ . Esta es la razón por la que muchos ingenieros obtienen un rápido entendi- miento del dominio digital. a manera de victoria. el mismo primate que usó un hue- so como arma es capaz de diseñar artificialmente algo tan sutil. usando procedimientos matemáticos. es relativamente fácil crear compuertas lógicas que puedan detectar. voltaje comúnmente. Discernimos fácilmente entre alto y bajo. los cuales. Lo primordial en el mundo lógico es saber que existen únicamen- te dos estados: el 1 y el 0. Los niveles de voltaje dependen del tipo de componente o familia utilizado en la construcción de los transistores y las compuertas. del director Stanley Kubrick se estrenó en 1968 y por su trama aún sigue siendo actual.10 En el estudio de la lógica booleana. Compuerta inversor (NOT) La compuerta inversor. pero publicó sus resultados en ruso hasta 1941. Para crear esta compuerta vamos a usar un transistor en corte y saturación. cuando Claude Shanon (1916-2001). lo cual. el álgebra de Boole se convirtió en el fundamento de diseño de los circuitos digitales. aunque sabemos que existen matices entre estos dos estados digitales. incluso antes que Claude Shannon. Resolver el mundo en dos estados. Sí.8 V. en la base teórica para la era digital. sin embargo. es importante hacer notar que en algún punto del circuito digital se tiene que tomar la decisión de si el valor presente. Boole publicó en 1854 un artículo llamado “An Investigation of the Laws of Thought”. blanco y negro. entonces en la Universidad de Michigan.7 Una de las industrias con crecimiento continuo y sorprendente en los últimos 50 años ha sido la industria electró- nica. etcétera. complejo y sofisticado como la inteligencia. A algunos de los componentes básicos que llevan a cabo estas tablas de verdad se les llama compuertas lógicas. Estos niveles de voltaje consideran el valor lógico de 1 como verdadero y el valor de 0 como falso. propuso una teoría de interruptores eléctricos basados en la lógica booleana. Si se pone un 1 en su entrada. 10 Ya hace algunos años. En un circuito electrónico. nuestra percepción es digital. la salida VSAL será casi 0V. en el que desarrolló un sistema de reglas que le permitían expresar. No obstante. han permitido la creación de sistemas muy complejos y sofisticados. en esas tablas de verdad las entradas se localizan a la izquier- da y las salidas a la derecha. procesar y generar dos niveles de voltaje. un antiguo jefe me argumentaba que no había tal división entre electrónica digital y analógica. El guión fue escrito por Kubrick y el novelista Arthur C. como su nombre lo indica. el primate lanza el hueso al aire y la trayectoria del hueso (que recorre 4 millones de años) da inicio a la escena de un equipo de astronautas viajando en una nave espacial que es controlada por una computadora de nombre HAL 9000. grande y pequeño. como se muestra en la figura 4. titulada El centinela. Clarke. manipular y simplificar problemas lógicos y filosóficos cuyos argumentos admiten dos estados. El mundo lógico es blanco y negro. al trabajar en un proyecto y mostrar cierta inclinación por trabajar con sistemas electrónicos digitales. la cual ha sido aplicada para manipular datos fundamentados en los principios de una lógica llamada lógica booleana. una gran cantidad de compuertas lógicas puede conectarse para formar una computadora o un procesador de datos. no me he encontrado con un ingeniero al que no le guste el mundo digital. fue el inventor del álgebra que lleva su nombre. sin embargo. todo era simplemente electrónica y esta era analógica por naturaleza. mientras que un 0 ló- gico puede ser una señal entre 0 y 0. escrita en 1948. Sin embargo. verdadero o falso. su trabajo parecía no tener uso práctico hasta 1937. Es considerada una de las películas de ciencia ficción más respetuosa con las leyes de la f ísica. representa un 1 o un 0. Sin embargo. de la Universidad Estatal de Moscú (1907-1987). fuerte y débil. Desde entonces. mostrando una escena en la cual un primate da muerte al líder de otro grupo usando un hueso como arma. Cabe resaltar aquí que estamos diciendo casi 5 V y 0 V. Por lo general. 9 La película 2001: odisea del espacio. resulta agradable. matemático y filósofo británico. ópticos o electrónicos. ba- sándose en una novela corta de Clarke. Sin embargo.8 La lógica booleana se basa en conceptos muy simples. como veremos posteriormente.[\[fj\ekiX[Xj% La expresión booleana para la compuerta AND es Q  A ∙ B Q  A ∙ B. la salida será falsa. – en este libro usaremos el apóstrofe. Tabla de verdad de la compuerta AND Entrada A Entrada B Salida Q 0 0 0 0 1 0 1 0 0 1 1 1 =`^liX+%(. entonces la salida será verdadera. Sin embargo. si una de las entradas es 0 o falsa. El símbolo del inversor y su tabla de verdad se muestran en la figura 4. 11 Algunos autores traducen al español el nombre de la compuerta AND como “Y”.11 Esto se define con la tabla de verdad mostrada en la figura 4. Tabla de verdad del inversor Entrada A Salida Q 8 H 1 0 JˆdYfcf 0 1 =`^liX+%(+ JˆdYfcfpkXYcX[\m\i[X[[\cXZfdgl\ikX`em\ijfi% La expresión booleana para el inversor es Q  A’ . ’ como en el caso de A’ (también es muy común que algunos autores utilicen A ). la salida será falsa. grupo editorial patria® 169 . La representación que usaremos en este libro para expresar esta función es el símbolo de punto. para que la salida pueda ser 1 o verdadera. Si esto es verdadero. “Y” esto es verdadero. Esa es una de las razones por las cuales lo digital es tan popular.14. estudiantil y laboral se usa comúnmente la palabra AND para referirse a esta compuerta. Debido a que en el ambiente ingenieril. para resaltar su función lógica. aunque existen otras. 4 La maravillosa electrónica digital MJ8CH M<EK8 =`^liX+%(* :fdgl\ikXc^`ZXgXiX\c`em\ijfii\Xc`qX[XZfelekiXej`jkfi% lógico. KXYcX[\m\i[X[[\cXZfdgl\ikX8E. La compuerta AND La regla que describe la función de la compuerta AND expresa que todas las entradas tienen que ser 1. continuaremos en este libro con esta nomenclatura. Aunque hay varias formas de expresar la negación. o verdaderas.15. si cualquiera es falsa. entonces. solo se necesita que una entrada sea verdadera. La regla que describe la función de la compuerta OR expresa que si cualquiera de sus entradas es 1. Tabla de verdad de la compuerta OR Entrada A Entrada B Salida Q 0 0 0 0 1 1 1 0 1 1 1 1 =`^liX+%(. 8 8 H H 9 9 X Y =`^liX+%(- X :fdgl\ikX8E.16 b). o falsas. Si esto es verdadero “O”.16 a). como se aprecia en la figura 4. 8 H 9 8 H 9 X Y =`^liX+%(/ X :fdgl\ikXFI[\[`f[fj%Y JˆdYfcf[\cXZfdgl\ikXFI% 12 Algunos autores también traducen al español el nombre de la compuerta OR como “O”. Por tanto. o verdadera. que hace lo opuesto. como se aprecia en la figura 4. El circuito electrónico de la compuerta OR también puede construirse usando un par de diodos. Al igual que con la compuerta AND. esta compuerta se representa con el símbolo que se muestra la figura 4. KXYcX[\m\i[X[[\leXZfdgl\ikXFI[\[fj\ekiX[Xj% La expresión booleana para la compuerta OR es: Q  A B Para expresar a la compuerta OR comúnmente se utiliza el símbolo de suma. 170 ELECTRÓNICA • MIJAREZ . la salida será verdadera. llamada OR. la salida será verdadera. conti- nuaremos en este libro usando el término OR para referirnos a esta compuerta. por otra parte. esto es verdadero. La compuerta OR En la compuerta OR tres de sus condiciones de entrada producen salidas 1. o verdaderas. aunque no exactamente. Por lo general. El símbolo comúnmente usado para esta compuerta se ilustra en la figura 4. para que la salida pueda ser falsa.[\[`f[fj%Y JˆdYfcf[\cXZfdgl\ikX8E.17 muestra su tabla de verdad. para explicar su función lógica.18 a). se requiere que todas las entradas sean 0. 4 La maravillosa electrónica digital El circuito electrónico de la compuerta AND puede construirse de manera simplificada con un par de diodos. solo se tiene que cambiar la conexión de alimentación por una conexión a tierra e invertir la conexión de los diodos.18 b). podemos observar que tres de las combinaciones de entrada produ- cen como resultado que sus salidas sean 0.% De la tabla de verdad de la compuerta AND. o falsas.12 La figura 4. existe otra compuerta. basta comparar sus tablas de verdad. pero todas se derivan de estos tres elementos lógicos primarios. Tabla de verdad de la compuerta NAND Entrada A Entrada B Salida Q 0 0 1 0 1 1 1 0 1 1 1 0 =`^liX+%(0 KXYcX[\m\i[X[[\cXZfdgl\ikXE8E. De hecho. La expresión booleana para la compuerta NAND es: Q  (A Ƃ B)’. La construcción de la compuerta NAND se puede realizar con los elementos básicos que conocemos. la salida de una compuerta AND es invertida por una compuerta NOT. Con esto en mente.% A diferencia de la compuerta OR. eso es todo. es decir.19 ilustra su tabla de verdad. 8 9 H =`^liX+%)( :fejkilZZ`ej`dgc`]`ZX[X[\leXZfdgl\ikXE8E. 8 8 H H 9 9 =`^liX+%)' :fejkilZZ`e[\leXZfdgl\ikXE8E.20. vamos a descri- bir algunas de las compuertas más populares. 4 La maravillosa electrónica digital Estas son todas las compuertas lógicas. esta compuerta es usada con tanta frecuencia que tiene su propio símbolo. una forma simplificada de realizar esta compuerta es usar un par de transistores como se muestra en la figura 4. Por supuesto que hay más compuertas. Sin embar- go. solo existen tres elementos básicos. donde el pequeño círculo en la salida de la compuerta se emplea para indicar que se invierte la señal. La figura 4.pjljˆdYfcf% Para construir su circuito también se pueden utilizar los dispositivos semiconductores básicos. Compuerta NAND La compuerta NAND significa NOT AND.21. la compuerta NAND realiza la función exactamente opuesta o invertida de la compuerta AND. como lo muestra la figura 4.% grupo editorial patria® 171 . Sí. Tabla de verdad de la compuerta XOR Entrada A Entrada B Salida Q 0 0 0 0 1 1 1 0 1 1 1 0 =`^liX+%)+ KXYcX[\m\i[X[[\cXZfdgl\ikXOFI% 172 ELECTRÓNICA • MIJAREZ . como lo ilustra la figura 4. de la misma forma que se hizo con la compuerta NAND. la compuerta NOR significa NOT OR. ya sea falsas o verdaderas. la compuerta NOR puede construirse usando dos transistores. 4 La maravillosa electrónica digital Compuerta NOR ¡Correcto! Como es de suponerse.24. pero su salida será falsa si ambas entradas son iguales. como se muestra en la figura 4. Esta función se lleva a cabo invirtiendo la salida de la compuerta OR.23 b). H 8 8 H 9 9 X Y =`^liX+%)* X :fejkilZZ`e[\cXZfdgl\ikXEFIZfe[fjkiXej`jkfi\j%Y JˆdYfcf[\cXZfdgl\ikXEFI% Compuertas XOR y XNOR La compuerta XOR significa OR exclusiva. la regla que describe la función de la compuerta XOR expresa que la salida es verdadera si una de las dos entradas es verdadera.22 muestra su tabla de verdad. La figura 4. El símbolo de la compuerta NOR es el de una OR invertida.23 a). La tabla de verdad de esta compuerta se ilustra en la figura 4. Tabla de verdad de la compuerta NOR Entrada A Entrada B Salida Q 0 0 1 0 1 1 1 0 0 1 1 0 =`^liX+%)) KXYcX[\m\i[X[[\cXZfdgl\ikXEFI% De manera similar que con la compuerta NAND. La expresión booleana para la compuerta NOR es: Q  (A B)’.  X :fejkilZZ`e[\cZ`iZl`kfj`dgc`]`ZX[f[\cXZfdgl\ikXOFI%Y JˆdYfcf[\cXZfdgl\ikXOFI% Después de haber visto las compuertas anteriores. 4 La maravillosa electrónica digital La expresión booleana para la compuerta XOR es: Q  A Ȉ B. para expresar esta función se utiliza como operador binario el símbolo de suma encerrado en un círculo: ‘Ȉ’. como se muestra en la figura 4. por lo que su expresión booleana se define por: Q  (A Ȉ B)’. una XOR con su salida invertida. Ambas expresiones describen con precisión la lógica de la tabla de verdad. construir una tabla de verdad que detalle la ope- ración exacta del circuito digital.25. Por otro lado. El circuito que se usa para construir esta compuerta está hecho de dispositivos semiconductores básicos. en inglés) y a la segunda se le conoce como producto de sumas o maxitérminos (maxterms. grupo editorial patria® 173 . esto es. Existen dos formas de obtener la expresión booleana de una tabla de verdad. los maxitérminos utilizan las combinaciones de entrada que producen una salida 0 y las unen con com- puertas AND. depende únicamente del diseñador cuál expresión utilizar. la función de la compuerta XNOR resulta obvia. se le llama suma de productos o minitérminos (minterms. a la primera. en este caso. Los minitérminos utilizan las combinaciones de entrada que producen salida 1 y las unen con una compuerta OR. 8 H 9 8 H 9 X Y =`^liX+%). en inglés).26 muestra su tabla de verdad y su símbolo. La figura 4. el siguiente paso es obtener la expresión booleana y finalmente realizar el circuito lógico. Tabla de verdad de la compuerta XNOR Entrada A Entrada B Salida Q 0 0 1 8 H 0 1 0 9 1 0 0 1 1 1 X Y =`^liX+%)- X KXYcX[\m\i[X[[\cXZfdgl\ikXOEFI%Y JˆdYfcf[\cXZfdgl\ikXOEFI% SIMPLIFICACIÓN DE CIRCUITOS. SUMADORES Y DECODIFICADORES Minitérminos y maxitérminos Lo normal en un problema de diseño lógico es. como primer paso. porque el número de combinaciones que producen 0 es menor que el número de 1. matemático de la Universidad de Londres (lla- mada después University College). en la tabla de verdad de la figura 4.$FI% Por el contrario. contribuyó a la lógica matemática. La expresión booleana en este caso es: Y  (CŁ à BŁ à AŁ) Ƃ (CŁ à B à A). . Aunque él no formuló estos teoremas. X <ekiX[Xj JXc`[X 8 8 : 9 8 P 9 ' ' ' ( :Ł ' ' ( ( ' ( ' ( 9 P ' ( ( ( ( ' ' ' @em\ik`icXj mXi`XYc\j ( ' ( ( 8Ł 9Ł ( ( ' ( : :Ł ( ( ( ' @em\ik`icXj mXi`XYc\j Z :`iZl`kfc^`Zf\hl`mXc\ek\ Y P4:Łà9Łà8 Ƃ:Łà9à8 =`^liX+%)/ . se le otorga este crédito porque formalmente los expresó en la forma en que los conocemos.\jXiifccf[\leX\ogi\j`ec^`ZXljXe[fdXo`k„id`efj% X KXYcX[\m\i[X[%Y <ogi\j`eYffc\XeX%Z :`iZl`kfc^`Zf\hl`mXc\ek\8E.28 a) podría ser conveniente usar maxitérminos para expresar su función lógica. 4 La maravillosa electrónica digital Por ejemplo. La expresión booleana en este caso es: Y  (CŁ Ƃ BŁ Ƃ AŁ) (C Ƃ B Ƃ A). X <ekiX[Xj JXc`[X 8 8 9 : 9 8 P : ' ' ' ' ' ' ( ( :ŁƂ9ŁƂ8 ' ( ' ' 9 M ' ( ( ' ( ' ' ' ( ' ( ' 8Ł ( ( ' ' 9Ł ( ( ( : :Ł ( :Ƃ9Ƃ8 Z :`iZl`kfc^`Zf\hl`mXc\ek\ Y  P4:ŁƂ9ŁƂ8 ":Ƃ9Ƃ8 =`^liX+%). el circuito lógico para esta función se muestra en la figura 4. como se ilustra en la figura 4. como se ilustra en la figura 4. En tanto.27 b).$FI% El álgebra booleana está compuesta por muchas leyes y teoremas. Entre los teoremas más útiles destacan los teo- remas de De Morgan. 174 ELECTRÓNICA • MIJAREZ . junto con George Boole.13 los cuales permiten una rápida conversión de una expresión en minitérminos a una expresión en maxitérminos y viceversa. quien. en la tabla de verdad de la figura 4.\jXiifccf[\leX\ogi\j`ec^`ZXljXe[fd`e`k„id`efj%X KXYcX[\m\i[X[% Y <ogi\j`eYffc\XeX%Z :`iZl`kfc^`Zf\hl`mXc\ek\8E.28 b). Los teoremas de De Morgan se pueden plantear de la siguiente manera: Primer teorema (A B)Ł  AŁ Ƃ BŁ Segundo teorema (A Ƃ B)Ł  AŁ B 13 Los teoremas de De Morgan reciben ese nombre en honor a Augustus De Morgan (1806-1871). El cir- cuito lógico para esta función se muestra en la figura 4.27 c).28 c).27 a) podría ser conveniente usar minitérminos para expresar su función lógica. El trabajo de De Morgan fue en gran me- dida una enorme extensión del trabajo de Boole. debido a que el número de combinaciones que producen 1 es menor que las que producen el número de 0. como se muestra en la figura 4. veremos que es posible diseñar un circuito con compuer- tas que realice la suma.33.29. <ekiX[Xj JXc`[Xj OP JldX 8ZXii\f '' ' ' '( ( ' (' ( ' (( ' ( O"P J : =`^liX+%*( KXYcX[\m\i[X[[\cd\[`f$jldX[fi% Como se puede observar en la figura 4. usaremos las reglas de la suma de la figura 4.\Dfi^Xe% El álgebra booleana es la base para simplificar circuitos lógicos. grupo editorial patria® 175 . Para explicar la forma de realizar sumadores. las salidas tomadas de la regla de la suma coinciden exactamente con la tabla de verdad de la compuerta XOR y de la compuerta AND.31. como se muestra en la figura 4. una es extensión de la otra. La forma de realizar la suma es a través de medios sumadores y sumadores completos. La lógica y las matemáticas tienen una estrecha relación. 4 La maravillosa electrónica digital El primer teorema cambia una expresión básica NOR por una expresión AND y el segundo teorema hace lo opuesto. tal como se muestra en la figura 4. las cuales se ilustran en la tabla de la figura 4. Por tanto. iniciamos con el estudio de las reglas de la suma binaria. 8 8 8 8 P P4 P4 P 9 9 9 9  8"9 Ł4P 8ŁƂ9Ł4P 8Ƃ9 Ł4P 8Ł"9Ł4P =`^liX+%)0 8gc`ZXZ`fe\j[\cfjk\fi\dXj[\. ya que nos permite sumar. ¡Esto es maravilloso!. como se ilustra en la figura 4. es de esperarse que también se puedan usar para crear restadores. estos se fundamentan en los teoremas booleanos que ya vimos. Sumadores Sabemos que es posible sumar y restar usando 1 y 0. las colum- nas a la izquierda de la igualdad se usan como entradas y las de la derecha como salidas. la cual es muy sencilla. 'à'â' 'à(â( (à'â( (à(â'pcc\mXdfj( =`^liX+%*' I\^cXj[\cXjldXY`eXi`X% Usando la unión de la lógica con la aritmética binaria. Si bien se pueden usar compuertas lógicas para formar sumadores. como tabla de verdad. en rea- lidad.30. para esto. como el conocido como mapas de Karnaugh.30.32. es decir cambia una expresión NAND por una OR. necesitamos conocer las reglas de la resta binaria. Aunque existen diferentes métodos de simplifica- ción.31. 4 La maravillosa electrónica digital D\[`fjldX[fi o pË J oË o J p p o : : p X J4opË"oËp Y J4oȈp :4op :4op JldX[fiZfdgc\kf o p J : q =`^liX+%*) D\[`fjldX[fipjldX[fiZfdgc\kfZi\X[fjljXe[fZ`iZl`kfjc^`Zfj% Minuendo Sustraendo Diferencia Préstamo 0 0 0 0 0 1 1 y debemos 1 1 0 1 1 1 1 0 0 =`^liX+%** I\^cXj[\cXi\jkXY`eXi`X% De la misma manera que con el sumador.34 que la regla de la resta también coincide con la tabla de verdad de la compuer- ta XOR. Con estos circuitos lógicos pode- mos crear medios-restadores y restadores completos. y que la compuerta AND solo requiere que una de sus entradas sea negada.35. La figura 4.34 muestra este caso. se usan las reglas de la resta binaria como tabla de verdad. como se ilustra en la figura 4. Entradas Salidas Minuendo Sustraendo Diferencia Préstamo 0 0 0 0 0 1 1 1 1 0 1 0 1 1 0 0 X Y Di Bo =`^liX+%*+ KXYcX[\m\i[X[[\cd\[`f$i\jkX[fi% Es fácil identificar en la figura 4. 176 ELECTRÓNICA • MIJAREZ .  .` P 9f P 9f 9f =`^liX+%*.` O . uniendo varias compuertas lógicas es posible crear sumadores y con ellos es posible crear. La figura 4. nos permite formar sumadores o resta- dores de cualquier número de dígitos binarios.` D\[`f$i\jkX[fi O O .  I\jkXY`eXi`X   8+8*8)8( D`el\e[f Æ9+9*9)9( JljkiX\e[f :`e ∑ 8CKF JldX[fi 8( 8 Zfdgc\kf 9 ( :f 9( :`e ∑ JldX[fi 8) 8 Zfdgc\kf 9 ) :f :`e ∑ 9) JldX[fi <ekiX[Xj 8 JXc`[Xj Zfdgc\kf 9 :f :`e ∑ JldX[fi 8* 8 Zfdgc\kf 9 + :f 9* :`e ∑ JldX[fi 8+ 8 Zfdgc\kf 9 / :f 9+ /  +  )  ( . En los circuitos sumadores vistos hasta ahora. Suma y resta en complemento a 2 La representación de números en complemento a 2 o dos complemento (2’) se utiliza en sistemas basados en micro- procesadores. grupo editorial patria® 177 .`X^iXdXc^`Zf[\lei\jkX[fiZfdgc\kf% Restas usando circuitos sumadores En realidad. 4 La maravillosa electrónica digital D\[`f$i\jkX[fi P 9`e .`X^iXdX[\Ycfhl\[\cjldX[fiZfdgc\kfpi\jkX[fi[\+Y`kjljXe[fjldX[fi\jZfdgc\kfj% Como hemos visto hasta aquí.`]\i\eZ`X =`^liX+%*- . para realizar la resta se requiere únicamente un bloque sumador al cual se le agrega una compuerta inver- sora. restadores binarios. Agrupar en forma correcta estos bloques. también.36 muestra el circuito sumador completo en bloques y la conexión para realizar un restador de 4 bits usando sumadores completos. los números a sumar o a restar se consideran positivos. la figura 4. la conversión de un número en su 2’ es muy sencilla. De esta forma. Si queremos obtener el valor binario (positivo) de un número negativo en 2’. Los siete bits restantes representan la magnitud del número. esto es: 1111 1100 3. para representar un número negativo es nece- sario realizar la conversión a 2’. 4 La maravillosa electrónica digital Sin embargo. Decimal con signo Representación en complemento a 2. Le sumamos un 1 para obtener el 2’. podemos observar que todas las representaciones en 2’ para números positivos son iguales a sus equivalentes binarios de ese número decimal. Tomamos el número binario positivo: 0000 0011 ( 3) 2. pero. en muchas aplicaciones de sistemas basados en microprocesadores se requiere sumar o restar no solo números positivos. Por tanto. como se muestra en la figura 4. si este bit es 1. esto es: 1111 1101. si quere- mos convertir el número decimal con signo 3 en un número en 2’ hacemos lo siguiente: 1. el núme- ro decimal 126 está representado en 2’ por el número 0111 1110. Por ejemplo. hacemos el mismo procedimiento: 178 ELECTRÓNICA • MIJAREZ .37. E’d\if[\/Y`kj\ei\gi\j\ekXZ`e[\)Ë2\cDJ9\j\cY`k[\j`^ef% Por su parte. Usando esta representación. el bit más significativo (MSB) es el bit de signo. pueden determinarse tanto la magnitud como el signo de un número. si este bit es 0. con 8 bits 127 0 111 1111 » 126 0 111 1110 ¯ 125 0 111 1101 ¯ 124 0 111 1100 ¯ Ȩ Ȩ Ȩ Ȩ ¯ @^lXchl\cfj 5 0 000 0101 ¼ e’d\ifjY`eXi`fj 4 0 000 0100 ¯ 3 0 000 0011 ¯ 2 0 000 0010 ¯ 1 0 000 0001 ¯ 0 0 000 0000 ½ –1 1 111 1111 –2 1 111 1110 –3 1 111 1101 –4 1 111 1100 –5 1 111 1011 Ȩ Ȩ Ȩ Ȩ –125 1 000 0011 –126 1 000 0010 –127 1 000 0001 –128 1 000 0000 Signo Magnitud =`^liX+%*/ I\gi\j\ekXZ`e[\)ËmXcfi\jgfj`k`mfjpe\^Xk`mfj [\lee’d\if[\/Y`kj% Como se puede observar de la tabla. el número es negativo. Obtenemos el complemento a uno (1’). 9`k[\j`^ef'4"  (4Æ  DJ9 CJ9 DX^e`kl[ =`^liX+%*. Por ejemplo. La utilización de números en 2’ hace posible la suma y la resta de números con signo. y el número 125 está representado en 2’ por el número 1000 0011. Por ejemplo. el número es positivo.38 muestra una tabla con números de 8 bits en representación de 2’. si se tiene un número de 8 bits. sino también números negativos. 9 -+ :f 9.8+ 8*8)8(  "& 9/ 9. 9+ 9* 9) 9( E’d\ifj\eZfdgc\d\ekfX) :`e ∑ 8 =8 8( 9 ( :f 9( :`e ∑ 8 =8 8) 9 ) :f 9) :`e ∑ =8 8 + 8* 9 :f 9* :`e ∑ 8 =8 8+ 9 / :f 9+ :`e ∑ 8 =8 8. :f 9. :`e ∑ 8 =8 8. revisando la tabla de verdad de la compuerta XOR po- demos observar que si una de las entradas es 1. re- gresaríamos a la configuración del restador de la figura 4. 2. si queremos realizar la resta 40 13 en binario y en grupo editorial patria® 179 . GifYc\dXj[\jldXfi\jkX  8/8. 1’  0000 0010. De esta manera. el circuito resta. 9- 9. Por ejemplo. En la figura 4. en caso contrario. Vamos a ver cómo se utiliza el 2’ para realizar estas operaciones de suma y resta usando solo sumadores. el circuito suma.40. se convertirá en un inversor de la otra entrada.40? Bien. 2’ 0000 0011. El circuito tiene un control de modo. 3. 8-8. 9 (. si este control de modo se establece en 0. 9 *) :f 9- :`e ∑ 8 =8 8. 1111 1101.39 se muestra un circuito que suma y resta números con signo. :`e ∑ 8 =8 8/ 9 ()/ :f 9/ :fekifc[\df[f -+ *) (- / + ) ( I\jkX4( 9`k[\ JldX4' j`^ef JldXf[`]\i\eZ`X \eZfdgc\d\ekfX) =`^liX+%*0 :`iZl`kfjldX[fi&i\jkX[figXiXc\cf[\/Y`kj% ¿Cómo realiza su magia el circuito de la figura 4. si el control de modo se establece en 1. 4 La maravillosa electrónica digital 1. primero obtenemos el complemento a dos del sustraendo. Entradas Y5 Y9 0000 0 0 0001 0 0 0010 0 0 0011 0 0 0101 0 1 CXjXc`[XP.41 a).41 b) y después lo sumamos al minuendo.j\i}( jfcfj`cX\ekiX[X 0110 0 0 \j'('() 0111 0 0 1000 0 0 1001 1 0 CXjXc`[XP0j\i}( 1010 0 0 jfcfj`cX\ekiX[X \j(''() 1011 0 0 1100 0 0 1101 0 0 1110 0 0 1111 0 0 =`^liX+%+) .\jZXikX Y JldX[\[fje’d\ifje\^Xk`mfj [ JldX[\lee’d\ifgfj`k`mfdXpfiXlee’d\ife\^Xk`mfd\efi =`^liX+%+( :fdY`eXZ`fe\jgfj`Yc\j[\jldXjljXe[fe’d\ifj\eZfdgc\d\ekfX)% Esto es lo que hace exactamente el circuito sumador/restador de la figura 4.\Zf[`]`ZX[fi[\+X(-#XZk`mXe[f\e(jfcfcXj\ekiX[Xj. para usar el sumador.\jZXikX .  11 1 1 1 1 (+27) 0001 1011 (%ÉjldXe[f\eZfdgc\d\ekfX) (+20) 0001 0100 (%ÉjldXe[f\eZfdgc\d\ekfX) " (+10) " 1111 0010 )%!jldXe[f\eZfdgc\d\ekfX) " (−50) " 1100 1110 )%!jldXe[f\eZfdgc\d\ekfX) +3710 1111 0011 JldX\eZfdgc\d\ekfX) −3010 1110 0010 JldX\eZfdgc\d\ekfX) X JldX[\[fje’d\ifjgfj`k`mfj Z JldX[\lee’d\ifgfj`k`mfd\efiXlee’d\ife\^Xk`mfdXpfi 1 11 1 1 11 1 1 1 1 (−1) 1111 1111 (%ÉjldXe[f\eZfdgc\d\ekfX) (+40) 0010 1000 (%ÉjldXe[f\eZfdgc\d\ekfX) " (−3) " 1111 1101 )%!jldXe[f\eZfdgc\d\ekfX) " (−13) " 1111 0011 )%!jldXe[f\eZfdgc\d\ekfX) −410 1 1111 1100 JldX\eZfdgc\d\ekfX) +2710 1 1111 1100 JldX\eZfdgc\d\ekfX) . para obtener el resultado deseado. es decir.42 muestra las cuatro posibles combinaciones de suma y resta. como se ilustra en la figura 4. 4 La maravillosa electrónica digital 0000 1101 l 1111 0010 = 1’ 0010 1000 (+40) + 1111 0010 0010 1000 (+40) − 0000 1101 (+13) 1 + 1111 0011 2’ 0001 1011 (+27) 1111 0011 l 2’ 0001 1011 (+27) X Y Z =`^liX+%+' X I\jkX\eY`eXi`fp\e[\Z`dXckiX[`Z`feXc%Y :fdgc\d\ekfX)[\cjljkiX\e[f% Z JldX[\cd`el\e[fZfe\cjljkiX\e[f\e)Ë% decimal.41. como se muestra en la fi- gura 4. de manera tradicional.p0% 180 ELECTRÓNICA • MIJAREZ . realizaríamos esta operación usando las reglas de la resta. Si restamos. posteriormente le sumamos el Cin  1.41 c). para obtener el 2’. como se ilustra en la figura 4. La figura 4. No obstante. establecemos el con- trol de modo en 1. invertimos los número B para obtener el 1’. El decodificador 74LS138 tiene tres entradas: A. como vimos en la sección aprendiendo las tablas de multi- plicar. pero en este caso solo seleccionamos dos de ellas para ilustrar su funcionamiento. el fabricante re- comienda que si estas entradas no se van a usar se conecten a VCC o tierra. estas bases nos proporcionan una idea de la forma en que la calculadora de nuestro escritorio realiza internamente sus operacio- nes. manteniendo la electrónica simple. en la sección de microprocesadores.42. resta. Además. y las celdas que las forman son la base de la llamada lógica secuencial. este tipo de CI domina el mercado de las memorias no volátiles. tendremos los circuitos mostrados en la figura 4. por ejemplo. como se verá más adelante. pero podrían involucrar un número grande de componentes lógicos. La premisa básica de las celdas de memoria es almacenar unos y ceros. y G1 activo alto. con 3 entradas y 8 salidas. con dos entradas podemos tener 4 posibles salidas. el multiplicando (9) se suma cuatro veces (el multiplicador es 4) para obtener el producto 36. B y C. podemos tener disponibles las 16 salidas. Con la suma. Una alternativa en este caso es usar suma- dores. como veremos en el capítulo siguiente. este tipo de memoria mantiene los datos almacenados aun cuando se quita la energía que los alimenta. Así. y también pueden usarse para formar celdas de memoria. Un ejemplo de estas memorias es la memoria de acceso aleatorio o RAM. Esta técnica es fácilmente programable en sistemas basados en microprocesadores. respectivamente. trabajando con un número reducido de elementos lógicos. Aquí. 4 La maravillosa electrónica digital Multiplicaciones usando sumadores Las reglas de la multiplicación binaria son muy sencillas. 16 salidas. En la actualidad. y ocho salidas activo bajo: Y0-Y7. además. principalmente para decodificar o seleccionar una dirección de un microprocesador. La habilitación de las salidas puede ser activo bajo. 0. etcétera. ya sea con luz ultravioleta. G2B activo bajo. Por ejemplo. Algunas me- morias pueden perder los datos que fueron almacenados si se pierde la energía que alimenta estos circuitos. a este tipo de memoria se le llama volátil. como las EPROM.43 ilustra el diagrama a bloques y la tabla de verdad de este decodificador. y los 74LS138. podemos llevar a cabo restas y multiplicaciones.14 La operación aritmética que falta describir es la división. MEMORIAS Y MÁQUINAS DE ESTADO Celdas de memoria A los grupos de compuertas descritos hasta ahora se les denomina lógica combinacional. como las EEPROM y las ahora ubicuas memorias FLASH15 tipo pluma o pen drives. CELDAS DE MEMORIA. Las únicas operaciones que usa son suma. con el cual es posible efectuar funciones trigono- métricas. 15 La memoria FLASH es un dispositivo de almacenamiento en CI que puede ser borrado y reprogramado eléctricamente. con 4 entradas. es decir. la multiplicación de 10012 r 01002 (9 r 4) puede resolverse usando un método denominado multiplicación de sumas repetidas. 14 Técnicamente. o activo alto. con 2 entradas y 4 salidas. 8 salidas. como los 74LS139. Otra categoría de memoria es la llamada no volátil. desplazamiento de bits (bit shift) y búsqueda en tablas (table lookup). por ejemplo. con 3 entradas. la mayoría de las calculadoras usa un ingenioso algoritmo llamado CORDIC. Por supuesto. A este tipo de memorias corresponden las memorias de solo lectura ROM y sus variantes que pueden ser borradas. además de sumar. La memoria grupo editorial patria® 181 . o eléctricamente. El número de salidas de un decodificador de n entradas es 2n. Existen circuitos decodificadores en CI que hacen este trabajo. como veremos en la sección de microprocesadores. el 74LS138 tiene tres entradas: G2A. La tabla de verdad del decodificador podría tener como entradas las direcciones del microprocesador y las salidas corresponder a las habilitaciones de dispositivos pe- riféricos. Normalmente. anteriormente dominado por las memorias EPROM y EEPROM. Decodificadores Los decodificadores son dispositivos ampliamente utilizados en el diseño de sistemas digitales. dependiendo si usamos minitérminos o maxitérminos. automáticamente tenemos los fundamentos de la computación. 1. dependiendo de su nivel lógico. Entendiendo el proceso de suma de estos inquietos unos y ceros. 4 entradas y queremos que únicamente se activen en 1 las salidas correspondientes a las entradas 5 y 9. pero con desplazamientos o corrimientos de bits es posible efectuarla. Si tenemos. La figura 4. Memorias no volátiles En la sección anterior aprendimos que un decodificador genera 2n minitérminos de las n variables de entrada. Sin embargo. 4 La maravillosa electrónica digital MZZ >E. G1 G2 C B A Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 X H X X X H H H H H H H H L X X X X H H H H H H H H H L L L L L H H H H H H H H L L L H H L H H H H H H H L L H L H H L H H H H H H L L H H H H H L H H H H H L H L L H H H H L H H H H L H L L H H H H H L H H H L H H L H H H H H H L H H L H H H H H H H H H H L =`^liX+%+* . P- P. memorias RAM y máquinas secuenciales. esta memoria fue inventada en 1980 por el Dr. La memoria FLASH puede construirse con memorias NAND o NOR. Una memoria ROM es un dispositivo que incluye tanto el decodificador como las compuertas OR. dentro de un mismo CI. >)8 >)9 >( ?XY`c`kXZ`fe\j KXYcX[\m\i[X[ Entradas Salidas Ensamble Select. en condiciones normales. Además. Fujio Masuoka mientras trabajaba para la compañía Toshiba. Debido a que la FG es aislada eléctricamente.+CJ(*/% En la siguiente sección vamos a estudiar los principios fundamentales de las memorias no volátiles tipo ROM y posteriormente analizaremos las celdas de memoria básicas de la lógica secuencial. en 1988. con la cual se realizan registros. Las memorias FLASH tipo NAND ofrecen una mayor densidad (mayor cantidad de bits). pero deben ser programadas y leídas en bloques o páginas. sabemos que insertando compuertas OR para realizar la suma de los minitérminos es posible tener cualquier circuito combinacional deseado. usando transisto- res similares a los MOSFET. mientras que las NOR (aunque con menos densidad) permiten ser leídas o programadas de manera aleatoria a nivel palabra o byte. P' 8 P( 9 P) P* : P+ P. la ROM tiene un grupo de eslabones o interruptores compuestos por diodos especiales que pueden fusionarse o romperse. como en los FET estándar. excepto que estos transistores tienen dos terminales de compuerta. no se descargará por muchos años. Adicionalmente. y la otra floatinggate (FG). 182 ELECTRÓNICA • MIJAREZ . cualquier grupo de electrones que se coloque en ella será “atrapado” y. una llamada control gate (CG).`X^iXdXXYcfhl\jpkXYcX[\m\i[X[[\c[\Zf[`]`ZX[fi. La interconexión deseada para una aplicación particular requiere FLASH revolucionó este mercado desde su introducción por Intel. la cual es aislada por una capa de óxido. 45 a).45 b) muestra la implementación de esta memoria. Para esto. algunas veces. Una palabra de salida puede seleccionarse por una dirección única.( X Y =`^liX+%+.*  .)  . '' 8' '( .\Zf[`]`ZX[fi [\eXdcˆe\Xj P' P ( )ed ?XY`c`kXZ`e P ) IFD P* 8' .`X^iXdXXYcfhl\j[\leXd\dfi`XIFD%Y <c\d\ekfjhl\Zfe]fidXeleXd\dfi`XIFD% Únicamente a manera de ejemplo.44 b). en este caso se mostró únicamente con fines ilustrativos. A cada combinación de bits de las variables de entrada se le llama dirección.\Zf[`]`ZX[fi )+ (' 8( (( A0 A1 D0 D1 0 0 0 1 0 1 1 0 1 0 1 1 1 1 1 0 . una dirección es un número binario que denota uno de los mi- nitérminos de las n variables. se especifica por grupo editorial patria® 183 .'  . 4 La maravillosa electrónica digital que se rompan ciertos eslabones. como se indica en la figura 4. es decir. considerando que los eslabones se rompen con ceros lógicos y se dejan intactos con unos lógicos. En la práctica. hay 2n palabras que podrían almacenarse en la memoria. Una memoria ROM. o 2k r m.(  . El número de las diferentes direcciones posibles con n bits de entrada es 2n.44 a) muestra el diagrama a bloques de una memoria ROM. "MZZ e\ekiX[Xj . no es necesario mostrar las conexiones internas de las com- puertas. resulta obvio que los eslabones abiertos se consideran ceros lógicos para las compuertas OR. se requiere tener n entradas de dirección y palabras de m bits de salida. X KXYcX[\m\i[X[[\leXd\dfi`XIFD[\+)% Y :`iZl`kfc^`ZfZfdY`eXZ`feXc[\cXd\dfi`XIFD[\+)% El ejemplo de la figura 4. para formar las trayectorias del circuito necesarios. La figura 4. Puesto que existen 2n direcciones diferentes en una ROM. vamos a implementar una memoria ROM de 4 r 2. La figura 4. y a cada combinación de bits de datos que sale de las líneas de salida se le llama pala- bra. usando lógica combinacional.`i\ZZ`e 8( Pd 8e . son necesarios únicamente 2 bits de direcciones. como se observa en la tabla de verdad de la figura 4. Básicamente. Las direcciones (minitérminos) que tengan una salida 0 no deben tener una trayectoria a la salida a través de la compuerta OR.' djXc`[Xj GXcXYiX[Xkfj X Y =`^liX+%++ X . en este momento necesitamos determinar qué eslabones o interruptores deben romperse. Pero.45 es muy sencillo. La memoria ROM consta de n líneas de entrada y m líneas de salida. Además. para poder leer los datos previamente almacenados en la memoria EPROM. utilizada para programar el dispositivo. Debido a que los capacitores tienden a descargarse. una de las ventajas de la DRAM es la simplicidad de su construcción. En esta sección se describen las memorias SRAM. Sin embargo. 4 La maravillosa electrónica digital el número total de bits que contiene. exis- te otra terminal llamada VPP. lo cual podría verse como menoscabo de su operación. pero antes se analizan los elementos que constituyen sus celdas de memoria: los flipflops. la información almacenada puede perderse a menos que se refresque periódicamente la carga al capacitor. Existen dos tipos de memoria RAM que predominan en el mercado: las memorias dinámicas (DRAM) y las memo- rias estáticas (SRAM). No obstante. este último puede ser cargado o descargado para representar los dos valores de un bit. Además. de 32k r 8.-[\*)B/% Del diagrama a bloques.-9 Æ > )/ MJJ =`^liX+%+- D\dfi`X<GIFDD). La figura 4. se requiere habilitar con 0 lógico dos señales de control llamadas habilitación de – — chip y habilitación de los datos de salida. lo que le permite tener una mayor densidad que las memorias SRAM. esto significa que tiene 13 líneas de entrada y 8 líneas de salida (213 r 8). por ejemplo. existen memorias de este tipo en un CI. generen tiempos y cuenten y sigan secuencias. podemos apreciar que se requieren 15 líneas de direcciones (A0-A14) para seleccionar 32768 bytes (215). VCC y VSS. M:: MGG (. Por otro lado.46 ilustra el diagrama a bloques de esta memoria y uno de sus empaquetados llamado DIP (Dual in line Package). las memorias SRAM son capaces de mantener la información almacenada. Independientemente de las terminales de alimentación y tierra. una memoria ROM de 65536 bits puede organizarse en 8192 pala- bras de 8 bits. como el tiempo de acceso (tACC). / 8'$8(+ H'$H. Cada celda de memoria o bit en una RAM se almacena en un dispositivo basado en compuertas (típicamente seis transistores) llamado flipflop. El concepto de ac- ceso aleatorio significa que las posiciones en la memoria pueden ser escritas o leídas en cualquier orden. sin necesidad de un circuito de refresco. se analizan cuando estudiamos la interconexión de las memorias ROM con los micropro- cesadores y/o microcontroladores. cerrojo o multivibrador biestable. Memorias volátiles Las memorias de acceso aleatorio (RAM) constituyen un tipo de memoria basada en semiconductores capaces de mantener los datos almacenados en estas mientras se encuentren alimentadas de corriente eléctrica. son memorias volátiles. – — La temporización de las señales de control E y G . podemos conceptualizar el tACC. como es el caso de la memoria EPROM M27C256. La importancia de los flipflops radica en que estos pueden interconectarse para formar circuitos lógicos secuenciales que almacenen datos. pierden la información si se les interrumpe la alimentación eléctrica. como el intervalo de tiempo que toma la memoria ROM para completar un acceso de lectura y empezar otro. mientras estén alimenta- das. Esta es la razón por la cual se le llama memoria dinámica. en este libro nos referiremos a este dispositivo como flipflop. no obstante. E y G respectivamente. Æ < D). 184 ELECTRÓNICA • MIJAREZ .:). y otros parámetros importantes de la memoria EPROM. ya que literalmente se pueden crear billones de bits en una DRAM de circuito integrado.:). respectivamente. cada celda de memoria está formada por un transistor y un capacitor. Para el caso de la DRAM. es decir. Sin embargo. De forma comercial. las salidas no cambian. su símbolo lógico y su tabla de verdad. inmediatamente se borrará.47 muestra la conexión lógica usando compuer- tas NAND. una tabla de verdad define la operación del flipflop. Cuando se activa una entrada. Un nivel lógico 0 en la entrada de reset borra o pone en 0 lógico la salida Q. como es el caso de los circuitos con compuertas. debido a que no opera en sincronización con un reloj o con un sistema de temporización. lo cual es indicado por los círculos a la entrada del símbolo. La cuarta línea de la tabla de verdad es la condición inhabilitación o mantenimiento del flipflopRS. Cuando un pulso de reloj llega a la entrada CK. Las figuras 4. las salidas per- manecen como estaban. la salida normal. como lo muestra la tabla. este 1 lógico se retroalimenta a la compuerta 2. Este tipo de flipflopRS opera con un reloj o con dispositivo de temporización. es decir. estas salidas son siempre complementarias.48 a). por su parte. como se muestra en la figura 4. Estas compuertas. A la línea 2 de la tabla de ver- dad se le conoce como set (S). es posible describir su funcionamiento. esto sucederá hasta que la entrada de reloj pase de un nivel lógico 0 a un nivel lógico 1. En esta condición. en este caso. Igual que con las compuertas lógicas. Sin embargo. 3 y 4. la cual ahora tiene dos 1 aplicados en sus entradas.48 c) ilustran el símbolo lógico y la tabla de verdad. por ejemplo. y se denomina salida complementaria. La línea 2 corresponde al modo de reset. respectivamente. Teniendo la entrada R en 0 grupo editorial patria® 185 . los flipflops tienen dos salidas complementarias llamadas: Q y Q Q. existe un diseño de flipflopRS al cual se le añade la característica de sincronismo. no hay cambio en las salidas. La salida Q es la más usada y se considera la salida “normal”. es decir.48 b) y 4.47 a) podemos observar una retroalimentación de la salida de una compuerta NAND a la entrada de la otra. La línea 3 de la tabla. por lo que ahora estas entradas se activan con un nivel lógico 1 o alto. Q  0. Al encontrarse las entradas R  1 y S  0. las entradas se activan con 0. La línea 3 de la tabla de verdad es la condición de reset (R). como es el caso del flipflop básico RS. por ejemplo reset. Q. o com- prarse en forma de CI. Esta condición no se utiliza en el flipflopRS porque no está permitida. Q. es el complemento de la salida Q. =c`g$]cfgY}j`Zfk`gfIJ%X :fe\o`elk`c`qXe[fZfdgl\ikXjE8E. la otra. el modo de manteni- miento se indica en la línea 1 de la tabla de verdad. se pondrá en 0) cuando un nivel lógico 1 active la entrada R y un pulso de reloj active la entrada de reloj CK. del flipflopRS síncrono. =c`g$]cfgIJ Df[f[\ <ekiX[Xj JXc`[Xj J ( H fg\iXZ`e J I H H J\k J H EfidXc Gif_`Y`[f ' ' ( ( <ekiX[Xj == J\k ' ( ( ' I\j\k I\j\k ( ' ' ( I H :fdgc\d\ekXi`X ) H DXek\e`d`\ekf ( ( efZXdY`X I X Y Z =`^liX+%+. 4 La maravillosa electrónica digital Flipflops Los flipflops pueden construirse a partir de compuertas lógicas.47 a). La primera línea de la tabla de verdad es el estado prohibido. con las entradas R y S en 0. un nivel lógico 0 activa la entrada S y establece la salida Q en 1. es posible observar que el flipflop opera en sincronía con el reloj. En condiciones de operación normal. en el cual la salida normal. y se dice son activo bajo. La condición de set se puede comprobar analizando la compuerta NAND de la figura 4. lo que fuerza que su salida. cuando Q  1. Sin embargo. De la figura 4. describe el modo set del flipflop. A partir de la tabla de verdad del flipflop síncrono. Q’  0 y viceversa. en otras palabras. Q’.47 c). también se abre- via como Q’. Q . La figura 4. bajo esta condición. esto es. inmediatamente se activará su salida nor- mal Q. como se ilustra en la figura 4. permanecen en el estado lógico que tenían antes de la llegada del pulso de reloj. opera síncronamente. Un nivel lógico 0 en la compuerta 1 produce un 1 en la salida Q. sea 0 lógico. tienen un efecto inversor en las entradas set (S) y reset (R). el estado en el que ambas salidas están en 1. se borrará (es decir. A este tipo de flipflopRS se denomina asíncrono. El flipflopRS tiene dos entradas etiquetadas como set (S) y reset (R). con compuertas NAND o NOR.% Y JˆdYfcfc^`Zf%Z KXYcX[\m\i[X[% La implementación del flipflopRS síncrono se lleva a cabo añadiendo dos compuertas NAND a la entrada del circuito original asíncrono. A diferencia de las compuertas ló- gicas. Expuesto lo anterior. En este diagrama se muestran las entradas CK. aun cuando S  1.49 muestra un diagrama de tiempos de un flipflop síncrono tipo RS. Q. ya que establece ambas salidas en un nivel lógico 1. Un tiempo después. se establecerá en 1 hasta que se tenga un pulso de reloj de 0 lógico a 1 lógico en la entrada CK. es decir Q  0 y Q’ 1. La línea 4 de la tabla de verdad es aquella que se denomina como prohibida. la salida normal. Aquí es importante poner atención a que. 1 CK 1 2 3 4 5 6 0 a e 1 Entradas S 0 c 1 R 0 b d f 1 Q 0 Salidas 1 Q’ 0 =`^liX+%+0 . la salida normal Q  1 y Q’  0. vamos a analizar la figura 4. porque las entradas S y R se encuentran en esta- do de mantenimiento o sin cambio. 4 La maravillosa electrónica digital J * ( H J\k J :B <ekiX[Xj I\cfa :B JXc`[Xj I\j\k I ) H + I X Y Df[f[\ <ekiX[Xj JXc`[Xj fg\iXZ`e :B J I H H DXek\e`d`\ekf ' ' efZXdY`X I\j\k ' ( ' ( J\k ( ' ( ' Gif_`Y`[f ( ( ( ( Z =`^liX+%+/ =c`g$]cfgjˆeZifefIJ%X @dgc\d\ekXZ`eljXe[fZfdgl\ikXjE8E.49 empezando por el lado izquierdo. por tanto. las salidas normal y complementaria no cambian. debido a que estas resultan muy útiles para trabajar con flipflops y circuitos lógicos secuenciales. cuando llega el pulso de reloj (CK) 1. la entrada S se hace 0 otra vez. las salidas no cambian por estar en el 186 ELECTRÓNICA • MIJAREZ .% Y JˆdYfcfc^`Zf%Z KXYcX[\m\i[X[% y activando la entrada S con un 1 lógico. de tal forma que cuando llega el pulso 3.`X^iXdX[\k`\dgfjgXiXle]$]jˆeZifefk`gfIJ% Ahora. la entrada S  1 y R permanece en 0. las salidas tienen que esperar a que llegue la transición del pulso de reloj 2 de 0 a 1. de- bido a que no se utiliza. en especial con circuitos síncronos. para que las salidas cambien. cuando llega el pulso de reloj 2. En el punto a. S y R en la parte superior y las salidas Q y Q’ en la parte inferior. La figura 4. Las formas de onda o diagramas de tiempo se emplean con mucha frecuencia. ' X :fejkilZZ`e[\le]c`g]cfgk`gf. Por el contrario. como se muestra en la figura 4. Q  0 y Q’ 1.51.51. Posteriormente. Q. Uno de los flipflops más populares es el tipo D.+. Durante los pulsos de reloj 5 y 6 es posible observar que llega un momento en que las dos entradas. estado que se considera como el estado prohibido. Estas señales son entradas de control asíncronas activadas con 0 lógicos que determinan el valor de las salidas.50 b). al flipflopD también se le llama flipflop de retardo (Delay).50 a). respectivamente.51 a). D. Como su nombre lo indica. Analizando la tabla de verdad. denominado 7474. representado por una flecha apuntando hacia arriba en la entrada CK. Los flipflopsD se utilizan con mucha frecuencia para almacenar datos.XgXik`i[\le]$]k`gfIJ%Y JˆdYfcfc^`Zf[\le]$]k`gf. Mientras que las X significan que estas entradas son irrelevantes porque las señales asíncronas las anulan. Las entradas PR y CLR se deshabilitan cuando son 1 lógicos. En este caso. durante la transición de 0 a 1 del pulso de reloj. esto es. el dato es transferido a la salida. de tal manera que las salida cambian. se borra el valor de la salida normal. durante la transición de 0 a 1. El f-f tipo D solo tiene una entrada de datos. El símbolo lógico de este CI y su tabla de verdad se muestran en la figura 4. en la entrada CK de la figura 4. Un flipflop tipo D comercial es el CI de la familia TTL. por esa razón. son 1. La ausencia de este símbolo en la entrada de reloj indi- ca que el disparo es por nivel. por lo que este valor se transferirá a la salida Q. es aceptable que las salidas sean 1. este aparecerá en la salida normal. como se ilustra en la figura 4. un cierto nivel grupo editorial patria® 187 . y una entrada de reloj. como se muestra en la figura 4. algunas veces se les llama flipflop de datos. La línea 4 muestra un 1 en la entrada de datos D y un pulso de reloj. CK. X = irrelevante.( =c`g]cfgZfd\iZ`Xc. la salida normal Q 1 y Q’ 0.% Con frecuencia. hay dos señales de control adicionales llamadas Preset (PR) y Clear (CLR).+%X JˆdYfcfc^`Zf%Y KXYcX[\m\i[X[% Como se puede observar en la figura 4. durante la transición de 0 a 1 de la entrada CK. cualquie- ra que sea el dato de entrada. Dato S FF Q Dato D FF Q Reloj CK Entradas Reloj CK Salidas –– –– R Q Q a) b) =`^liX+%. Entonces. La línea 3 de la tabla de verdad indica la entrada asíncrona prohibida. porque durante este tiempo el pulso de reloj se encuentra en estado bajo y el f-f no se activa. indica que la activación o el disparo de reloj es por flanco. k = Transición BAJA=ALTA del pulso de reloj a) b) =`^liX+%. en este caso. solo que añadiéndole un inversor. ahora Q  0 y Q’  1. retardado un pulso de reloj. la entrada R se hace 1. 1 = ALTO. podemos observar que cuando PR  0 y CLR  1. D. En los flipflops activados por nivel. se activan las entradas síncronas. Este puede derivarse de un flipflopRS. La salidas continúan siendo Q y Q’. El pequeño símbolo >. La línea 5 muestra que D  0. S y R. El 1 de la entrada D se transfiere a la salida Q durante el pulso de reloj. Entradas Salidas Modo Preset de Asíncronas Síncronas (set) operación –– PR CLR CK D Q Q PR Dato D FF Q Set asíncrono 0 1 X X 1 0 Reloj CK Reset asíncrono 1 0 X X 0 1 –– (7474) Q Prohibido 0 0 X X 1 1 CLR Set 1 1 k 1 1 0 Borrado Reset 1 1 k 0 0 1 (reset) 0 = BAJO.50 b). 4 La maravillosa electrónica digital estado de mantenimiento. en ese momento. PR  0 y CLR 0. cuando PR  1 y CLR  0. tsu. El tiempo de set up. fMÁX. es el tiempo mínimo quelas entradas de control del flipflop requieren ser mantenidas constantes después de que llega el disparo del pulso de reloj. también se le llama universal porque puede construirse otro tipo de flipflop llamado tipo T (toggle). sobrepasa el valor de fMÁX. 188 ELECTRÓNICA • MIJAREZ . Cuando las entradas J y K son 1 lógicos. Repitiendo los pulsos en la entrada CK. como se ilustra en la figura 4.52 b). el uso del flipflop tipo D es muy extendido. 4 La maravillosa electrónica digital de voltaje hace que el dato de entrada D se transfiera a la salida Q. si las entradas JK se hacen 1 lógicos. como se observa en la figura 4. y si las entradas JK se hacen 0 lógicos. el principio de funcionamiento de todos los flipflops es el mismo. La frecuencia máxima de reloj. antes de que llegue el disparo del pulso de reloj en la entrada CK. fMÁX. la salida cambiaría de 0 a 1 a 0 a 1 a 0 a 1. sin cambio. b) Los tiempos de set up (tsu) y de hold (th). Cuando la frecuencia del reloj. mientras el pulso de reloj se encuentra en nivel lógico 1.53 b). el tiempo de hold.52 d). respectivamente. tal como se ilustra en la figura 4. Esta idea de cambio en la salida de 0-1-0-1-0-1 es a lo que se le llama conmutación. Ambos tiempos deben cumplirse a fin de garantizar el almacenamiento del dato.[\i`mX[f[\c]c`g]cfgAB% [ =c`g]cfgk`gfK[\i`mX[f[\c]c`g]cfgAB% La línea 4 de la tabla de verdad del flipflop JK muestra una condición muy útil. En términos generales. etcétera. Esta es la razón por la que consideramos el flipflop D para describir algunos parámetros importantes de los flipflops. como: a) La frecuencia máxima de reloj (fMÁX). Este tipo de disparo podría ser un problema si el dato de entrada cambia mientras la entrada de reloj está en 1.52 a) y 4. El inconveniente con los dispositivos activados por nivel es que la salida sigue a la entrada. La frecuencia máxima del pulso de reloj. respectivamente. th. el flipflop es incapaz de res- ponder lo suficientemente rápido y su operación podría ser errática. La figura 4. Al flipflopJK también se le conoce como flipflop universal porque a partir de este se puede formar el flipflopD. por su fa- cilidad. en la entrada CK. es la frecuencia más alta con la cual se puede “disparar” un flipflop de mane- ra confiable. J J FF Q D J FF Q Dato D FF Q Entradas Reloj CK Salidas Reloj CK = Reloj CK –– –– –– K K Q K Q Q a) c) Modo Entradas Salidas de –– operación CK J K Q Q 1 lógico J FF Q FF Q Mantenimiento 0 0 no cambia Reloj CK = Reloj T Reset 0 1 0 1 –– –– K Q Q Set 1 0 1 0 Conmutación 1 1 estado opuesto b) d) =`^liX+%. ya sea de 0 a 1 (bajo a alto) o 1 a 0 (alto a bajo). para un flipflop 74HCT74 estos tiem- pos son de 18 ns y 3 ns. De esta manera. El término proviene de la naturaleza del interruptor de conmutación cerrado-abierto (on-off ). la salida cambia cada vez que llega un pulso a la entrada de reloj CK. To D) requieren ser mante- nidas constantes.52 b). Por otro lado. a lo cual se le denomina estado de con- mutación (toggle). es decir añadiendo un inversor.52 c). No obstante. RS. Otro tipo común de flipflop es el denominado JK. exactamente en la manera en que se formó a partir del flipflopRS. su salida no cambiaría. para este flipflop es de 18 MHz. es el intervalo mínimo que las entradas de un flipflop (JK. que se ilustra en la figura 4. Los tiempos de set up y de hold son relativamente pequeños. por ejemplo. será posible obtener un flipflop tipo T. El símbolo lógico y la tabla de verdad de este flipflop se ilustran en las figuras 4.) =c`g]cfgk`gfAB%X JˆdYfcfc^`Zf%Y KXYcX[\m\i[X[%Z =c`g]cfgk`gf.53 a) mues- tra el tiempo tsu para un flipflop tipo D. Los tiempos se miden considerando 50% de la transición de disparo de reloj y de la entrada D. debido a que no necesita un circuito de refresco su interfaz es sencilla. una para la escritura de datos. grupo editorial patria® 189 . también se puede ver que esta memoria tiene 15 líneas de direcciones (A0-A14). por ejemplo. Como esta memoria es de lectura y escritura. se requiere una habilitación general del CI CI. Una memoria típica para estas aplicaciones es la SRAM de 32 kilobytes HM62256. con un menor consumo de potencia que la memoria DRAM. las terminales de salida Q0-Q7 se van a un estado denominado de alta impedancia.`X^iXdXXYcfhl\j[\leXd\dfi`XJI8D[\*)b`cfYpk\j% Del diagrama a bloques de la figura 4.%X K`\dgfkjl%Y K`\dgfk_% Memorias SRAM La memoria SRAM es más rápida y. como en la memoria principal de las computadoras personales. por lo general.54 a) ilustra el diagrama a bloques de una SRAM de este tipo. como se aprecia en la tabla de verdad de la figura 4. VCC 15 8 –– ––– –– CS WE OE Modo Q0-Q7 Ciclo A0-A14 Q0-Q7 CI no Alta 1 X X seleccionado impedancia ---- –– (Z) CS SRAM 0 1 1 Salida Alta ––– deshabilitada impedancia ---- WE (Z) –– 0 1 0 Lectura Salida Ciclo de OE de datos lectura 0 0 1 Escritura Entrada Ciclo de de datos escritura VSS a) b) =`^liX+%.+ . muy alta. además. y otra para la lectura de datos. y dos señales de control. por tanto. Z. en el cual el consumo de energía de la memoria por lo general se re- duce. de Hitachi. más cara y menos utilizada cuando se requiere una capacidad grande de datos. De la tabla de verdad. denominada. lo cual le permite seleccionar de manera aleatoria los 32 768 bytes (215). La figura 4. 4 La maravillosa electrónica digital D 50% del punto de transición del disparo 50% del punto D 50% del punto 50% del punto CK CK Tiempo de set up (tm) Tiempo de hold (tm) a) b) =`^liX+%. OE OE. Por lo pronto.54 b).* K`\dgfj[\j\klgp_fc[[\le]c`g]cfgk`gf. Z. Por consiguiente. En la siguiente sección se describe la operación de los dispositivos que tienen este estado. aunque en realidad es una impedancia. esta es menos densa que la DRAM y. De- bido a su estructura interna. se observa que cuando la señal de control CS CS  1. Sin embargo.54 a) es posible apreciar las terminales de alimentación VCC y VSS (tierra). WE WE. las SRAM en forma de CI son un componente importante en sistemas basados en microcontroladores. Las SRAM se utilizan en sistemas embebidos o sistemas de aplicación específica. es sufi- ciente entender que el estado de alta impedancia produce que las salidas vayan a una condición ideal de circuito abierto. CS CS (Chip Select). las cuales pueden ser tanto cien- tíficas como industriales. –– –– A A A 1 1 Q=A =`^liX+%. Sin embargo. mientras que el de un buffer de tercer estado es de 50. 190 ELECTRÓNICA • MIJAREZ . Por ejemplo. La figura 4. su expresión booleana es A  Q. regresando a la señal A al nivel original de entrada. WE WE y OE OE. También puede usarse para manejar corrientes de carga altas. su salida iguala a su entrada. y las señales de direcciones (A0-A14) y datos (Q0-Q7) son muy importantes para la realización de la interconexión de este tipo de memorias SRAM. No obstante. El abanico de salida es un parámetro de todas las compuertas lógicas. se puede definir como: “la capacidad de corriente que tiene la salida de una compuerta”. si éste no altera la señal de entrada de ninguna manera y no realiza ninguna operación lógica como cualquier otra compuerta? Y podría- mos continuar pensando. En otras palabras. como un LED. lo cual en cierta forma es correcto. Este parámetro nos permite determinar el número de compuertas lógicas que pueden conectarse a la salida de una compuerta. con el buffer digital se podrían conectar varias compuertas o encender o apagar un LED. Este tiem- po se analizará con detalle cuando se estudie la interconexión de las memorias SRAM con los microprocesadores y/o microcontroladores. Dispositivos de tercer estado y latches Dispositivos de tercer estado Existe un par de dispositivos lógicos de una entrada llamados “buffer digital” no inversor y “buffer” de tres estados. A Q A 1 Q 0 0 1 1 a) b) =`^liX+%. “este buffer tiene el mismo efecto digital que conectar un simple alambre”. una DRAM puede tener tiempos de acceso de 50 a 150 nanosegundos. donde A es la entrada y Q es la salida. por tanto.55 muestra el símbolo y la tabla de verdad de este dispositivo digital. compuertas o dispositivos digitales. como transistores. Al igual que con las memorias ROM. en otras palabras.56. CS CS. las memorias SRAM tienen tiempos de acceso menores que las DRAM. podemos definir al tACC como el intervalo de tiempo que toma a la memoria RAM completar un acceso de lectura o escritura y empezar otro. Por consiguiente. puesto que su salida es exactamente igual que su entrada. respectivamente. Por ejemplo. otra vez.- 9l]]\i[\ki\j\jkX[fjZfejkil`[fXgXik`i[\[fjZfdgl\ikXj`em\ijfiXj% En este punto. como se ilustra en la figura 4. uno del otro. Por lo general. 4 La maravillosa electrónica digital La temporización de las señales de control. la señal. quizá usted esté pensando: ¿qué caso tiene usar un buffer digital no inversor.57 muestra un ejemplo del abanico de salida de un buffer de tercer estado. un parámetro muy importante de la memoria RAM es el tiempo de acceso (tACC). la primera compuerta invierte la señal de entrada A y la segunda compuerta invierte. La característica del buffer digital no inversor es que no realiza ningún tipo de operación lógica. el abanico de salida de una compuerta 74HC04 es de 14. mientras que las SRAM pueden tener tiempos de acceso menores a los 50 nanosegundos. el buffer digital tiene muchos usos en circuitos electrónicos digitales. su abanico de salida es alto. ya que se puede usar para aislar. La figura 4. o para conmutar una carga de corriente relativamente alta.. 9l]]\i[\ki\j\jkX[fj%X JˆdYfcfc^`Zf%Y KXYcX[\m\i[X[% Este buffer digital también puede construirse usando dos compuertas inversoras. debido a que su capacidad de manejo de corriente de salida es mayor que sus requeri- mientos de entrada. Por tanto./ 9l]]\i[\k\iZ\i\jkX[fpjlkXYcX[\m\i[X[%X 9l]]\iXZk`mfXckf%Y 9l]]\iXZk`mfYXaf% Los buffers de tercer estado son muy usados en muchos sistemas digitales y. cada uno de estos dispositivos es capaz de enviar o recibir información usando ese mismo alambre o bus. A  Q.58 a) se habilita con 1 ló- gico. la salida puede ser un 0 lógico o un 1 lógico. “0”. La señal de control o habilitación del buffer de tercer estado puede ser un 1 lógico o un 0 lógico. sin ocasionar daño o pérdida de información. en circuitos basados en microprocesadores o microcontroladores. el dispositivo se deshabilita y su salida se apaga. Esta condición de alta impedancia no es 0 lógico ni 1 lógico. entonces podría ocurrir grupo editorial patria® 191 . si se tiene un alambre o bus de datos conectado a varios dispositivos. seguramen- te aún se estará preguntando: ¿qué hace entonces el buffer de tercer estado? El buffer de tercer estado puede pensarse como un interruptor que tiene una entrada digital de control. el cual permite cerrar o abrir electrónicamente los con- tactos de dicho interruptor. Sin embargo. como se puede apreciar en su tabla de verdad.58 a) y 4. particularmente. Por ejemplo. Ello se debe a que los buffers permiten conectar múltiples dispositi- vos digitales a un mismo alambre. podemos decir que el buffer de tercer estado tiene dos entradas lógicas. respectivamente. “1” y “Alta-Z”. también llamado bus. 4 La maravillosa electrónica digital /Ent /Ent A 1 /Ent Abanico de salida = 3 Buffer =`^liX+%. pero puede producir tres estados diferentes en su salida. precisamente esa es la razón por la que se le llama de tercer estado. como se muestra en la figura 4. Si la señal de control del buffer de la figura 4. cuando la señal de habilitación se establece en 0 lógico. periféricos o microprocesadores. 9l]]\i[\k\iZ\i\jkX[fZfe\ZkX[fXki\jZfdgl\ikXj[`^`kXc\j% Si bien se entiende que el buffer digital “amplifica” la capacidad de corriente de un dispositivo digital. produciendo una condición de circuito abierto. es decir.. entonces se permitirá que su salida opere normalmente. un 0 o un 1. Si estos dispositivos empiezan a enviar y recibir datos al mismo tiempo. Habilitación Habilitación A Q 1 0 0 Entrada 1 Salida 1 1 1 0 0 Alta-Z 0 1 Alta-Z a) –––––––––– Habilitación Habilitación A Q 0 0 0 Entrada 1 Salida 0 1 1 1 0 Alta-Z 1 1 Alta-Z b) =`^liX+%. dependiendo de su entrada. que en realidad es una impedancia muy alta (Alta-Z).58 b). como pueden ser memorias. +?:)++% Las señales de control del buffer 74HC244 habilitan de manera independiente a dos grupos de 4 buffers. el buffer de tres estados es el componente digital adecuado para aislar estos disposi- tivos digitales. como puede ocurrir en muchas aplicaciones de microprocesadores. VCC CB Q1 A8 Q2 A7 Q3 A6 Q4 A5 20 19 18 17 16 15 14 13 12 11 1 2 3 4 5 6 7 8 9 10 CA A1 Q8 A2 Q7 A3 Q6 A4 Q5 GND =`^liX+%-' 9l]]\i[\k\iZ\i\jkX[f\e:@. al inicio de este capítulo. como se muestra en la figura 4. CA y CB. Habilitación 0 Habilitación 1 Habilitación 2 Habilitación 3 Dato 0 Dato 1 Dato 2 Dato 3 1 1 1 1 Línea de datos común (bus de datos) =`^liX+%.60. de manera simple. sin embargo. Esta condición puede causar posible daño en los dispositivos o pérdida de datos. el resto de los buffers se encuentra en su estado de alta impedancia. 4 La maravillosa electrónica digital una condición de corto circuito cuando un dispositivo envía al bus un 1 lógico (voltaje de la alimentación). es el buffer de ocho elementos (óctuple) 74HC244. Como se recor- dará. en 192 ELECTRÓNICA • MIJAREZ . Si las entradas de habilitación de varios buffers de tercer estado se conectan a las salidas de un decodificador. podemos crear una compuerta NAND usando una compuerta AND y un inversor. Cuando se habilita un buffer. el cual tiene dos entradas de control que se habilitan con 0 lógicos. Un ejemplo de cuatro buffers de tercer estado conectados a un alambre común o bus se muestra en la figura 4.59.60. buffers de tercer estado TTL o CMOS. En estas circunstancias. entre ellos y con el bus de datos. Si se requiere habilitar los 8 buffers al mismo tiempo. al diseño de la compuerta NAND se le añade una etapa de salida amplificadora de corriente compuesta por dos transistores. aprovechando al máximo las posi- bilidades que ofrece la alta integración de transistores sobre un sustrato único de material semiconductor. Uno de estos CI. primero vamos a explicar cómo se obtiene un 1 lógico y 0 lógico en una compuerta NAND.61 a).0 :fe\o`e[\ZlXkifYl]]\ij[\k\iZ\i\jkX[fZfe\ZkX[fjXleXcˆe\X[\[XkfjZfd’e% Comercialmente se encuentran disponibles. Para esto. La magia del tercer estado de los buffers La pregunta obligada con respecto al buffer de tercer estado es saber de dónde proviene su estado de alta impedancia. mientras que otro dispositivo envía un 0 lógico (tierra). solo es necesario unir las dos entradas de control. entonces únicamente se podría habilitar un dispositivo de tercer estado a la vez. en CI. de la figura 4. como se ilustra en la figura 4. se dijo que. el estado de alta impedancia se basa en apagar simultáneamente los dos transis- tores de la salida Totem pole cuando se active la entrada de control. por tanto. Cuando las dos entradas se encuentran en 1 lógico.d\afiX[XZfejXc`[Xglj_glcc% Z KiXej`jkfidlck`\d`jfiXeXc`qX[fZfejl\hl`mXc\ek\\e[`f[fj% una configuración denominada push-pull. de forma que una entrada TTL que se deje sin conexión (al aire) equivale a un 1 lógico. Para un buffer de tercer estado. el transistor T se encontrará en corte. como se muestra en la figura 4. el buffer estará en alta impedancia cuando dicha entrada se ponga en 1 lógico. mientras que el transistor T1 entrará en estado de saturación. El diodo D1 R1 R5 R7 T3 A2 T2 T1 D2 D1 C2 = A2 ’ T4 R2 R3 R6 B2 T5 T6 T7 R4 =`^liX+%-) 9l]]\i[\k\iZ\i\jkX[f% 16 Un 0 lógico en una entrada supone una corriente “hacia afuera”. exceptuando los efectos de ruido. el cual se satura y lleva también a saturación al transistor T2. hacia la base del transistor T. en consecuencia. la corriente base colector de T5 satura los transistores T6 y T7. llamada totem pole. hace que el transis- tor T5 entre en estado de corte.16 En otras palabras. De la figura 4. estableciendo a su vez en corte al transistor T2.61 c). Si dicha corriente va “hacia afuera”. y su comportamiento puede ser analizado en términos de diodos.61 b). y se usa un transistor multiemisor en su entrada. por lo que se establece la salida a 0 lógico. La etapa de salida de dos transistores NPN. se tendrá un 1 lógico a la salida. 4 La maravillosa electrónica digital X Y +5 V Z VCC 4K 1K6 130 T1 a+b a a T a+b b b T2 1K =`^liX+%-( X :fdgl\ikXE8E. cuando un T1 se enciende. El funcionamiento de la compuerta NAND que se ilustra en la figura 4. El transistor multiemisor de entrada mejora considerablemente la conmutación de la puerta. aumenta la corriente suministrable y. es decir. como se muestra en la figura 4. si alguna de las entradas está conectada a 0 lógico.61 b) se basa en el sentido en que circula la corriente que recibe la base del transistor multiemisordes de la resistencia de 4K. es decir.62 observamos que cuando la entrada de habilitación B2se establece en 1 lógico. por ende. disminuye la resistencia de salida. T2 se apaga y viceversa. La figura 4.j`dgc\%Y :fdgl\ikXE8E. mientras T1 se va al estado de cor- te. grupo editorial patria® 193 .62 muestra un buffer de tercer estado TTL con la entrada de habilitación en 0 lógico. dicha corriente circula “hacia adentro”. durante la transición de 0 lógico a 1 lógico. LE.*% El 74HC573 es un CI compuesto por 8 latches tipo D y 8 buffers de tercer estado que corresponden a la salida de cada latch. lo cual produce que los transistores de salida del circuito se corten debido al potencial bajo en el emisor de T1 y del colector de T2. y la en- trada de habilitación de la salida. Por ejemplo. los flipflops o latches pueden usarse para formar celdas de memoria. La entrada de habilitación del latch. la figura 4. La terminal de reloj. de tal manera que se puede almacenar una palabra de diferentes bits cuando se aplique una transición de reloj a sus en- tradas CK. Por otro lado. del que la figura 4. y cuando CLK es 0 lógico se dice que es opaco o que retiene el dato que se encontraba en la entrada D. esto es. un flipflop permite el paso de su entrada D (es transparente) durante un breve intervalo.. son comunes para todos los latches.*% Cuando la entrada de control.63. los datos en las entradas Dn se introducen en los latches (modo transparente). se dice que un latch tipo Des transparente (permite el paso de su entrada D) cuando su entrada de reloj CLK es un 1 lógico. 4 La maravillosa electrónica digital conduce. es 1 lógico. ya que su funcionamiento es muy similar. Un dispositivo de esta naturaleza muy usado en sistemas digitales es el latch D 74HC573. La conducción de T1 bloquea a T2.. la salida del latch cambiará cada vez que cambie su entrada D. Latches tipo D Algunas veces los términos flipflop y latch se usan como sinónimos. LE. D0 D1 D2 D3 D4 D5 D6 D7 1 –– 2 OE 19 D0 Q0 D Q D Q D Q D Q D Q D Q D Q D Q 3 D1 Q1 18 LATCH LATCH LATCH LATCH LATCH LATCH LATCH LATCH 4 D2 Q2 17 1 2 3 4 5 6 7 8 5 16 –– –– –– –– –– –– –– –– D3 Q3 LE LE LE LE LE LE LE LE 6 D4 Q4 15 LE 7 D5 Q5 14 8 D6 Q6 13 –– OE 9 D7 Q7 12 LE 11 mna807 Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7 =`^liX+%-* JˆdYfcfp[`X^iXdXc^`Zf[\lecXkZ_fZkXck`gf.+?:. esto es.+?:.64 muestra la tabla de verdad del latch 74HC573. Como sabemos. Por su parte. /OE. Por otro lado. por lo que entra a estado de corte. Cuando LE es 0 lógico. hay una diferencia. tal como se aprecia en el diagrama lógico de la figura 4. CK. Un grupo paralelo de estos dispositivos forma lo que se denomina un registro.. de todos los latches o flipflops se une. Entradas de control Entrada Salida Salida Modo de operación interna /OE LE Dn del latch Qn Habilitación y lectura de 0 1 0 0 0 registro (modo transparente) 1 1 1 0 0 0 0 0 Latch y lectura de registro 1 1 1 Registro latch y salidas 1 0 0 0 Z deshabilitadas 1 1 Z =`^liX+%-+ KXYcX[\m\i[X[[\ccXkZ_. los latches 194 ELECTRÓNICA • MIJAREZ . llevando a T3 a corte. el colector del transistor T2 queda a un potencial muy cercano a tierra.63 muestra su símbolo y su diagrama lógico. y produce que T4 no reciba corriente en la base. no obstante. Cuando la señal de control /OE es un 0 lógico. (254) 1 1 1 1 1 1 1 1 ... El término bus se usa para representar un grupo de señales que transmiten información binaria. tres alambres pueden usarse para representar 8 valores binarios distintos. se podrían representar valores decimales en el rango de 0 a 255. 002 012 102 112. (4)   : 1 1 1 1 1 1 0 1 . mientras que el menos significativo (LSB) se encuentra a la derecha. vamos a asumir que tenemos un bus de datos de 8 alambres. se encuentra a la izquierda del número binario.. Usar alambres para representar números Los sistemas digitales. un alambre puede usarse para representar dos valores binarios. cuando /OE se establezca en 1 lógico. se usa para transportar infor- mación digital. en general. (1) 0 0 00 0 0 1 0 .. 27 = Columna de 128s (MSB) 26 = Columna de 64s 25 = Columna de 32s 24 = Columna de 16s 23 = Columna de 8s 22 = Columna de 4s 21 = Columna de 2s 20 = Columna de 1s (LSB) Ocho alambres 0 0 00 0 0 0 0 .65. el dígito binario más significativo. 4 La maravillosa electrónica digital almacenarán los datos que estaban presentes en las entradas D. dos alambres pueden usarse para representar cuatro valores binarios distin- tos. los cuales de- seamos usar para transportar datos binarios.. Estos dispositivos son muy útiles como puertos de entrada o salida de sistemas basados en microprocesadores o microcontroladores.. (2) 0 0 00 0 0 1 1 . por esta razón. y así sucesivamente.. En la tabla de verdad podemos observar que la operación de la entrada /OE no afecta el estado de los latches. (3) 0 0 00 0 1 0 0 . en particular. 0 y 1.. debido a que contienen buffers de tercer estado que los hace ideales para aplicaciones orientadas a buses.... El procesamiento de estos números dentro de un sistema basado en un microprocesador tiene que ma- pearse a sistemas f ísicos de compuertas lógicas y alambres. En sistemas ba- sados en microprocesadores. como se muestra en la figura 4. considerando el tiempo de set up que precedió a la transición de 1 a 0 lógico. esos ocho alambres pueden representar de la siguiente manera: 28  2 r 2 r 2 r 2 r 2 r 2 r 2 r 2  256 combinaciones posibles de 0 y 1 lógicos. Pero.. esto es 21  2. Los latches 74HC573 son funcionalmente idénticos a los latches 74HC373 y 74HC563. Si se desea usar estas diferen- tes configuraciones para representar números. las salidas irán al estado de alta impedancia.. el cual emplea solo dos dígitos: el 1 y el 0.. (0) 0 0 00 0 0 0 1 . FZ_fXcXdYi\jljX[fjgXiXi\gi\j\ekXie’d\ifjY`eXi`fjj`ej`^ef% En cualquier sistema de numeración es común escribir el dígito más significativo a la izquierda y el menos signi- ficativo a la derecha. y los sistemas basados en microprocesadores. Para los propósitos de este apartado.. De manera similar. grupo editorial patria® 195 . es preferible usar el sistema numérico binario. (255) =`^liX+%-. al cual se le conoce como el bit más sig- nificativo (MSB). En este caso. (253) 1 1 1 1 1 1 1 0 . esto es 23  2 r 2 r 2  8. procesan elementos dis- cretos de información. esto es 22  2 r 2  4. Por ejemplo. como su nombre lo indica. un bus (llamado bus de datos). 0002 0012 0102 0112 1002 1012 1102 1112. el contenido de los latches estará disponible en las salidas.. conocido como máquina de estado. Una confusión que por lo general ocurre al utilizar representaciones binarias y hexadecimales es que estamos acostumbrados a iniciar contando desde el número 1. Sin embargo.65 usamos 8 alambres para representar 28  256 diferentes combina- ciones de 0 y 1. que se desarrolló al inicio de este capítulo. pero tenemos dificultades al tratar con cantidades grandes de 1 y 0. no requieren todos los elementos de un microprocesador para operar. Pero nos estamos adelan- tando. en la figura 4. no termina en el número 256 en decimal. 196 ELECTRÓNICA • MIJAREZ . y cada dígito hexadecimal puede convertirse directamente a cuatro bits. es más fácil entender el número 253 que su contraparte binaria 111111012. existe un dispositivo “intermedio” que es importante mencionar. se basan en los componentes lógicos más simples construidos con muchísimos transis- tores. Por ejemplo. En estos sistemas complejos. Como lo indica su nombre. esto lo veremos en el capítulo siguiente. Desafortunadamente.66. razón por la que en la actualidad predomi- na el sistema numérico hexadecimal. duplicamos la cantidad de diferentes combinaciones. cambiar de binario a decimal es un poco engorroso. y por ende en hexadecimal. sino que cubre desde 0 hasta 255. como palabras y números. tienen memoria y la mayoría de los componentes que tiene un microprocesador. mientras que en los sistemas digitales se acostumbra a iniciar desde el número 0. Cada vez que aumentamos un alambre. ya que determina la capacidad de direccionamiento de los microprocesadores. Exponente que indica el número Combinaciones en decimal Combinaciones Combinaciones de alambres contando a partir del 0 en binario en hexadecimal 28 255 1111 1111 FF 29 511 1 1111 1111 1FF 210 1023 11 1111 1111 3FF 11 2 2047 111 1111 1111 7FF 212 4095 1111 1111 1111 FFF 213 8191 1 1111 1111 1111 1FFF 14 2 16383 11 1111 1111 1111 3FFF 215 32767 111 1111 1111 1111 7FFF 216 65535 1111 1111 1111 1111 FFFF =`^liX+%-- I\gi\j\ekXZ`e\e[\Z`dXc#Y`eXi`fp_\oX[\Z`dXci\cXZ`feX[XZfe\ce’d\if[\XcXdYi\j% La representación de alambres para obtener diferentes combinaciones de números es muy usada en los buses de direcciones. Los flipflops reflejan el estado de las entradas en el momento 17 Esta es la razón principal por la que este libro inició con el capítulo 0. Sin embargo. Máquinas de estado y dispositivos lógicos programables Máquinas de estado Todos los componentes digitales. desde la compuerta más simple hasta la supercomputadora más poderosa con el procesador más “mega-cool”.17 Por ejemplo. su representación en binario. dicho sistema requiere únicamente 16 símbolos. Los flipflops se usan para almacenar información. los humanos somos buenos con representaciones simbólicas. la salida de una máquina de estado es función del estado de sus entradas en cualquier momento. Las máqui- nas de estado usualmente funcionan en sincronía con un reloj. 4 La maravillosa electrónica digital Como sabemos del apartado de sistemas de numeración. como se muestra en la figura 4. Las máquinas de estado se encuentran entre la lógica discreta y los microprocesadores. Con frecuencia se usa una entrada de reloj para determinar el momento en que las entradas deben ser eva- luadas. como ya se dijo. El 0 corresponde a todos los dígitos binarios del número iguales a 0 y el número máximo a todos los dígitos binarios iguales a 1. De esta manera. Internamente. La importancia de la temporización la describiremos cuando exploremos a los microprocesadores y microcontroladores. y un flip flop. Dicha evaluación se realiza en la transición positiva. menor potencia y menos alambrado. A los PROM se les añadió cierta versatilidad. Cuando se llegan a utilizar las máquinas de estado. con el fin de obtener un entendimiento básico en el tema. o FPGA (Field Programable GateArrays). y remplazarlas por un PLD. de modo que un cambio en la circuitería lógica no requiere ningún re-alambrado en el módulo electrónico. con los sistemas basados en microprocesadores o microcontroladores. la lógica puede ser alterada simplemente substituyendo un PLD con otro que ha sido programado con el nuevo diseño. Dispositivos lógicos programables Actualmente existe un gran espectro de dispositivos lógicos programables. los dispositivos lógicos programables se presentan como una opción de soluciones digitales que com- plementan. y merecen un texto por separado. como com- puertas (ORs. Estos dispositivos podían ser usados para llevar a cabo diseños lógicos de un manera flexible en hardware. e incluso compiten. 8ihl`k\ZkliX`ek\ieXj`dgc`]`ZX[X[\dXZifZ\c[Xj[\leGC. Otro beneficio importante es que el diseño dentro del CI es flexible. pueden tener un CPU y hasta componentes analógicos como OP AMP o comparadores. Debido al bajo costo de los microcontroladores. Están ya muy lejanos los tiempos en los que se utilizaban flipflops en proto- boards o tarjetas de wire-wrapping para construir una máquina de estado. En la parte baja de este espectro se en- cuentran los dispositivos lógicos programables originales (PLDs). por lo general se llevan a cabo dispositivos lógicos programables. Otros nombres que se usan para este dispositivo son los PLA (Programmable Logic Array) y GAL (Generic Array Logic). principalmente re- quieren menos área. lo cual dio origen a los primeros PLDs en cir- cuito integrado. los antecesores del PLDs fueron los primeros dispositivos PROM (Programmable Read-Only Memory). también llamados PLD. siguiendo la tendencia de este libro en el siguiente apartado intentaremos explicar de una manera sencilla y resumida que son los dispositivos lógicos programables. Esto hace que la temporización de la señal sea un parámetro muy significativo. negativa o permanente de la entrada de reloj. En la actualidad. A esas celdas se les llama generalmente macroceldas y típicamente se componen de cierta lógica combinacional. 4 La maravillosa electrónica digital en que la entrada de reloj esté presente. como la serie 7400. cada PLD contiene un conjunto de celdas o bloques lógicos conectados entre sí. se podían quitar de un módulo electrónico varios circuitos digitales TTL. Entradas y retroalimentación de los flip flops D ANDs D D Salidas ANDs D D ANDs D =`^liX+%-. los PLD o FPGA. La figura 4.67 muestra una versión simplificada de la arquitectura interna de un PLD. in- troduciendo un mayor número de entradas y la inclusión de registros. las condiciones usadas para la evaluación de datos digitales pueden ser almacenadas en memoria.% grupo editorial patria® 197 . Debido a que se utiliza un solo CI. Hoy en día. Con frecuencia. En su lugar. como compuertas AND y OR. por sus siglas en inglés. los cuales son máquinas de estado con un grupo definido de instrucciones. los PLDs se usan para decodificar direcciones y reemplazar a su contraparte digital discreta. estos dispositivos ofrecen varias ventajas. En otras palabras. aunque… otra vez nos estamos adelantando. ANDs e inversores). sin embargo. Sin embargo. algunos diseñadores digitales consideran que la implementación pura de máquinas de estado se encuentra en proceso de extinción. la cual introdujo la familia EPLD y posteriormente las series MAX-5000. La ecuación booleana para el multiplexor es: Z (D0·/C1·/C2) (D1·C1·/C2) (D2·/C1·C2) (D3·C1·C2) De esta manera. entonces la salida Z  D0 y así sucesivamente. Por ejemplo.% Una transisición de reloj en cada flip flop establece un valor del flip flop anterior. Los flip flops conectados a las salidas de las compuertas OR pueden ser usados para llevar a cabo circuitos secuen- ciales como registros o máquinas de estado.69.68 b). Por ejemplo. 198 ELECTRÓNICA • MIJAREZ . En este ejemplo.% El diagrama esquemático del multiplexor se muestra en la figura 4. es posible construir ecuaciones booleanas dentro de cada macrocelda. cada la salida del plano de las OR puede ser configurada para obtener una suma lógica de cualquiera de las salidas del plano de las AND. Para que este circuito funcione. como se muestra en la figura 4. Z. 4 La maravillosa electrónica digital En la figura 4. se puede almacenar en un flip flop el valor de salida en la próxima transición de reloj. un registro de corrimiento puede implementarse usando una cadena de flip-flops. el cual implementé con un MAX-5000. se pueden implementar adecuadamente funciones lógicas de suma de productos. En este diagrama podemos apreciar dos planos de compuertas constituido por compuertas AND y una compuerta OR. por sus siglas en inglés). D0 C D1 Z D0 D2 D1 Z D3 D2 D3 C1C2 X Y =`^liX+%-/ @dgc\d\ekXZ`e[\ledlck`gc\ofiljXe[fleGC. Con esta estructura. A esta estructura compleja se le llamó Complex PLD (CPLD. o sus complementos. lo cual proveyó a este tipo de dispositivos de una estructura más compleja y de mayor capacidad. Conforme la tecnología avanzó. y si es necesario. De manera similar.67 es posible apreciar que el PLD tiene dos niveles de compuertas lógicas: un plano programable de compuertas AND “alambradas”. seguido de un plano programable de compuertas OR. y cada salida del plano AND puede corresponder a cualquier minitérmino de las entradas. Un multiplexor es un dispositivo que selecciona una entrada específica de un grupo de canales de entrada usando una entrada de control como se muestra en la figura 4. los cuales pueden secillamente imple- mentarse usando un PLD. Fue realmente cool realizar esta pequeña hazaña con un solo CI programando hardware. los PLDs de mayor capacidad son los Field 18 Una de las compañías pioneras de CPLDs es ALTERA. Si C  00. FD0 FD1 FD2 DENT D Q D Q D Q DSAL /C /C /C CLK =`^liX+%-0 @dgc\d\ekXZ`e[\lei\^`jkif[\Zfii`d`\ekfljXe[f]c`g$]cfgj\eleGC. En los primero años después de graduarme de la universidad tuve un requerimiento en un diseño electrónico para realizar un decodificador de 32 salidas. la salida. pueden ser interconectados por compuertas AND. obviamente los tiempos de retardo de los flip flops deben ser mayores que los tiempos de hold de los flip flops. del multiplexor es determinada por la entrada de con- trol C. La estructura del PLD es tal que sus entradas. MAX-7000 y MAX- 9000. fue posible integrar múltiples PLDs simples o SPLDs en un mismo CI. vamos a suponer que se desea implementar un multiplexor de 4 entradas.18 Hoy en día.68 a). donde este dispositivo le permite al diseñador cambiar con mayor facilidad la lógica digital entre componentes digitales. Los dispositivos lógicos programables se encuentran en aplicaciones orientadas a sistemas prototipos. mientras que Verilog es similar a C. Como vimos antes. por sus siglas en in- glés) de captura de esquemáticos. durante el desarrollo o la prueba del módulo electrónico. Una arquitectura típica de un FPGA se ilustra en la figu- ra 4. VHDL es similar al lenguaje de alto nivel Pascal. y una parte de lógica programable y tal vez algo de memoria. El diseño de hardware en estos dispositivos es generalmente realizado usando lenguajes de programación como ABEL o PALASM. El uso de dispositivos lógicos programables ha alcanzado una alta integración de compuertas solo hasta años recientes. grupo editorial patria® 199 . lo cual los hace adecuados para aplicaciones que vayan más allá de la investigación académica. La razón fue la falta de hard- ware reconfigurable. de modo que es muy dif ícil generalizar. La alta capacidad de los dispositivos programables de hoy en día ha sido la razón por la cual muchas aplicaciones de circuitos digitales se están realizando con dispositivos lógicos programables.' 8ihl`k\ZkliXkˆg`ZXj`dgc`]`ZX[X[\le=G>8% Las particularidades de las compuertas lógicas y los flip flops son específicos de cada fabricante. como un microprocesador funcional. equivalentes al lenguaje ensamblador de los microprocesadores que se estudian en el siguiente capítulo. el concepto general de los dispositivos programables es el mismo. temporizadores/contadores. llamada “glue logic”. comparadores analógicos y hasta microprocesadores o microcontro- ladores. Además. De este modo se puede seleccionar a placer un bus de 8 o 16 bits. Con otro enfoque. Sus aplicaciones son muy variadas. Otra alternativa es usar CI híbridos. por sus siglas en inglés). 4 La maravillosa electrónica digital Programmable Gate Arrays (FPGA. La programación se efectúa por medio de interruptores programables hechos predominantemente de transistores CMOS. Los FPGAs consisten de un arreglo de compuertas que pueden ser programadas por el usuario de acuerdo a la lógica del circuito. Aunque originalmente se propuso en la década de 1960 por investigadores de la Universidad de Cali- fornia en Los Angeles (UCLA). donde los fabricantes incluyen dentro del CI una parte lógica fija. Esta práctica se llama computación reconfigurable. A estos arreglos se les llama bloques lógicos o macroceldas. existen dos lenguajes de descripción de hardware (HDL. por sus siglas en inglés) muy importantes: el VHDL y el Verilog. fabricantes de FPGAs proporcionan bibliotecas con bloques complejos listos para usarse tales como contadores. sin embargo. el dispositivo lógico programable puede cambiarse por sus equivalentes en CI digitales de menor costo. Macrocelda (lógica combinacional y flip flops) Bloque de E/S Interconexiones =`^liX+%. todavía es un campo de estudio relativamente nuevo. o dibujando con la ayuda de herramientas denominadas Computer Aided Design (CAD. es posible diseñar registros y hasta memorias SRAM con dispositivos programables y alterar los diseños on-the fly. aunque existen otras tecnologías. Se podría pensar que han pasado ya varias décadas para que este campo de investigación se considere relativamente nuevo. cuando están en operación o cuando se requiere. es decir.70. Cuando el módulo está listo. en el cual utilizaba un FPGA para diseñar sistemas reconfigurables tolerantes a fallas. Intel ha logrado introducir 731 millones de transistores en un solo CI. la familia MOS utiliza transistores de efecto de campo (FET). el futuro de la computación reconfigurable luce brillante y en la actualidad ha encontrado usos en aplicaciones de comunicaciones. porque en la actualidad los fabricantes han desarrollado muchas familias de CI que pueden utili- zarse en conjunto con otros grupos de la misma familia para formar un sistema digital. aproximadamente cada dos años. pasando por la MLI (integración a escala media). La ley de Moore publicada en 1965 y revisitada en 1975 establece que el número de transistores en un CI debería duplicarse cada 24 meses. los fabricantes clasifican a los CI de acuerdo con su complejidad. esto es. los disposi- tivos lógicos programables son una opción relativamente costosa aunque sus precios continúan bajando. 20 La palabra interfaz es muy común en sistemas digitales.21 En la figura 4. aunque los costos para implementarlos en los diseños eran altos. también. debido al bajo costo de los microprocesadores. IBM. y se espera que los CI con 22 nm puedan fabricarse usando nuevos materiales que reemplacen el dióxido de silicio. empezando desde la ZLI (cero escala de integración). Compañías como Intel. temporización y sentido de las corrien- tes (entradas y salidas). De forma estricta. En sistemas digitales. publicó un artículo denominado Biologically inspired reconfigurable hardware for dependable applications. la ley de Moore ha sido la fuerza motriz de la industria electrónica. ('+ CJ@ ('* DJ@ (') (' ( JJ@ QJ@ (''  (0-' (0. Incluso hoy en día. es comparable a grupos como gente. a su accesibilidad a un precio muy bajo. es decir. ya tenía conocimiento y cierta fascinación por los dispositivos lógicos programables. ('. sistemas. la cual se relaciona con su densi- dad o capacidad para integrar en un mismo microcircuito un cierto número de compuertas o el equivalente en transis- tores. ('(( ('(' >J@ 0 (' ('/ LCJ@ :fdgfe\ek\jgfi:@ ('. Asimismo. En este caso. Toshiba y Sony han llegado a reducir los transisto- res de sus CI a 45 nm (nanómetros). Por su parte. MCJ@ ('.71 se presenta una gráfica que muestra las tendencias previstas por los expertos. etcétera) capaz de funcionar de forma compatible y coordinada. cuando un colega y amigo que hacía su doctorado en la Universidad de York. Gordon Moore fue de los investigadores que dejó la compañía de William Shockley para crear la compañía Fairchild Semiconductor Corporation. automovilísticas y de inteligencia. en 1968. sincronizada. Este trabajo fue enmarcado en una naciente disciplina llamada em- bryionics.\ej`[X[[\:@Zfei\jg\ZkfXck`\dgf\ehl\j\cc\mXZXYf% 19 En la década de 1990 que iniciaba mi carrera profesional. en Inglaterra. Moore cofundó Intel Corporation junto con Bob Noyce. Algunas de las familias se fabrican usando tecnología bipolar. Con frecuencia. aspecto que se conoce como la ley de Moore. La capacidad y el talento de los diseñadores de CI ha hecho posible.' (0/' (00' )''' )'(' )')' =`^liX+%. incrementar al doble el número de transistores. la interfaz20 entre circuitos de la misma familia se lleva a cabo con mucha facilidad. La familia de tecnología bipolar más popular es la que usa la lógica transistor-transistor (TTL. instrumentos. Como ejemplo. Por más de 45 años.19 PRINCIPALES TECNOLOGÍAS DIGITALES La popularidad de los circuitos integrados digitales se debe. hasta llegar a la ULSI (integración a escala ultra alta) y la GSI (integración a escala giga alta). militares. cuya propuesta conceptual ha continuado atrayendo a investigadores a este campo de la investigación. Posteriormente. El empleo de estos dispositivos en el campo de la computación reconfigurable no llamó mi atención hasta 1997. la cual fue publi- cada en 1965 en la revista Electronics Magazine. 21 La ley de Moore lleva ese nombre en honor de Gordon Earle Moore (1929) investigador estadounidense y autor de dicha ley. la interfaz puede considerar los aspectos de voltajes y corrientes. por sus siglas en inglés). 4 La maravillosa electrónica digital Con todo lo anterior. los CI son compatibles y pueden conectarse sencillamente entre sí. mientras que otras utilizan tecnología MOS. dispositivos. una interfaz se puede definir como la unión de un grupo (por ejemplo. ¡Impresionante! 200 ELECTRÓNICA • MIJAREZ .( . en gran medida. ya que los competidores se dan cuenta de que si no avanzan de acuer- do con esta ley podrían quedarse retrasados tecnológicamente. para conseguir incrementar la velocidad de conmutación de los transistores.+8?:          \eljf =`^liX+%. El objetivo de esta sección es principalmente describir las características y los términos más importantes de las familias TTL y CMOS en uso. la industria de la microelectrónica espera llegar a un punto en el cual no sea posible hacer más pequeños los transistores. de alta velocidad. Intel y otras compañías han reemplazado el dióxido de silicio por el óxido de un metal tetravalente llamado hafnio. compa- tible con los niveles de voltaje y de corriente de la familia TTL. el cual tiene una mayor capacidad para almacenar carga eléctrica. con tiempos de propagación inferiores a 5 ns y una reducción importante del ruido producido en su conmutación.KC KKC  CJ$KKC  8CJ$KKC  8J$KKC      .+8J#. se pueden realizar más cálculos en un mismo CI.* <mfclZ`e[\cXj]Xd`c`Xjc^`ZXjKKCpDFJ% En la actualidad. trabajar a estas escalas tan pequeñas no es gratuito. por esta razón.72. tal como lo muestra la figura 4. Uno de los retos se relaciona con la potencia de cada transistor. 22 Entre más pequeños y más rápidos sean los diseños de los transistores. se esperaba que en el año 2000 se alcanzara esa barrera. Volviendo al tema de las tecnologías.  IKC  . Al ser más pequeños y conmutar más rápido.+=        jlg\im`m`\ek\j   `ek\iY’j   XckXm\cfZ`[X[  gDFJ <mfclZ`e EDFJ :DFJ  ?:DFJ eDFJ      MCJ@  +'  . las familias bipolares y las familias MOS fueron evolucionando. se ha presentado una serie 74AHC avanzada. ya sean bipolares o MOS. las familias digitales vigentes más populares son las TTL (a partir de la serie 74LS) y las CMOS (a partir de la serie 74HC). La serie 74HC. lo cual permite la conexión directa entre ambas fami- lias. grupo editorial patria® 201 . esta serie ha desplazado a la familia TTL y es de las más utilizadas. Otro problema son las corrientes de fuga en los dieléctricos de la compuerta de los transistores. para variar. Para resolver esto. Recientemente. los diseñadores de sistemas digitales disponen de muchas familias de CI. Sin embargo. parece que aún queda espacio suficiente para la creatividad. Para facilitar la utilización conjunta de circuitos integrados TTL y CMOS.+CJ  . afor- tunadamente.73.+  .) Gi`eZ`gXc\j]Xd`c`XjY`gfcXi\jpDFJ% Aprovechando los avances en la reducción de dimensiones de los transistores y la correspondiente disminución de sus capacitancias parásitas. Hasta hace algunas décadas. algunas de las cuales se listan en la figura 4. ofrece características de velocidad e inmunidad al ruido similares a la serie LS-TTL. Pero. =Xd`c`XjY`gfcXi\j IKC C^`ZX[\i\j`jk\eZ`X$kiXej`jkfi .KC C^`ZX[\[`f[f$kiXej`jkfi KKC C^`ZX[\kiXej`jkfi$kiXej`jkfiKKC\jk}e[Xi#KKC[\YXaXgfk\eZ`X#KKC[\YXaXm\cfZ`[X[#KKCJZ_fkkbp#KKCJZ_fkkbp [\YXaXgfk\eZ`X#KKCJZ_fkkbpXmXeqX[X#\eki\fkifj <:C C^`ZX[\\d`jfi\jXZfgcX[fjkXdY`„eccXdX[Xc^`ZX\edf[f[\Zfii`\ek\ ?KC C ^`ZX[\XckfldYiXckXdY`„eccXdX[X?@EC#c^`ZX[\XckX`edle`[X[Xcil`[f ?K C ^`ZX[\`ep\ZZ`e`ek\^iX[X =Xd`c`XjDFJ GDFJ Jj\d`Zfe[lZkfi[\d\kXc$o`[fZXeXcG EDFJ J\d`Zfe[lZkfi[\d\kXc$o`[fZXeXcE :DFJ J\d`Zfe[lZkfi[\d\kXc$o`[fZfdgc\d\ekXi`f =`^liX+%. nos estamos adelantando al comparar estas familias lógicas de CI. 4 La maravillosa electrónica digital Eventualmente. se introdujo la serie 74HCT. los diseñadores de CI han logrado sobrepasar los obstáculos22 y el camino continúa en grado ascenden- te. lo cual reduce su efectividad. su consumo de potencia también se incrementa.+?:#.+8J  . VIL(mín)  0 V y VIL(máx)  0. el voltaje debe encontrarse entre 2. Por consiguiente. Mientras que para operar una salida de 1 lógico.8 V. generalmente sirven a los diseñadores para comparar. 202 ELECTRÓNICA • MIJAREZ . VOL(mín)  0 V y VOL(máx)  0. esto es.M M@?d}o . VIH(mín)  2 V y VIH(máx)  5 V. la cual se define como la capacidad para tolerar fluctuaciones de voltaje no deseadas en sus entradas.M MF?d}o (c^`Zf (c^`Zf )%+M MF?dˆe )M M@?dˆe Efgi\[\Z`Yc\ Efgi\[\Z`Yc\ '%/M M@Cd}o '%+M MFCd}o 'c^`Zf 'c^`Zf 'M M@Cdˆe 'M MFCdˆe E`m\c\j[\mfckXa\ E`m\c\j[\mfckXa\ XcX\ekiX[X XcX\ekiX[X =`^liX+%.8 V. usando las siguientes ecuaciones: VNH  VOH (mín) – VIH (mín) VNL  VIL (máx) – VOL (máx) En la figura 4. Así pues. Por lo anterior.75 se observa el margen disponible frente al ruido para las familias TTL. De igual manera. se denomina ruido a cualquier perturbación involuntaria que puede originar un cambio no de- seado en la salida del circuito. para la tecnología TTL de la serie 74.0 V y 5. esto es.74 muestra estos niveles de voltaje de entrada y de salida de las tecnologías TTL.4 V y 5 V. ini- cialmente consideramos cuál es el voltaje de alimentación del CI.+ E`m\c\j[\mfckXa\[\\ekiX[Xp[\jXc`[X[\cXjk\Zefcf^ˆXjKKC% Margen de ruido en familias TTL En sistemas digitales. el voltaje de alimentación es VCC  5 V y GND  0 V. Típicamente. los fabricantes de CI establecen un margen de seguridad. el rango dentro del cual el ruido no produce errores sobre los valores lógicos.4 V. . es decir. sin que se afecte el estado de salida. seleccionar y usar las familias lógicas. denominado margen de ruido.4 V. una entrada en 1 lógico debe encontrarse entre 2. Los circuitos digitales deben tener cierta inmunidad al ruido. La figura 4. 4 La maravillosa electrónica digital Tecnologías TTL Los diversos términos que aparecen en la literatura de los fabricantes de CI. El margen de ruido se calcula tanto para el nivel lógico ALTO. esto es.4 V y VOH(máx)  5 V. De igual modo. para que una salida en 0 lógico funcione correctamente. el fabricante suele especificar que para operar correctamente una entrada en 0 lógico. como para el nivel lógico BAJO. VOH(mín)  2. esta debe encontrarse entre 0 V y 0. En este apartado comentamos los términos y las características más importantes de las familias TTL vigentes y de las CMOS. VNH. porque las variaciones de voltaje que provoca el ruido que- dan dentro de los niveles asignados. Niveles de entrada y de salida de las familias TTL ¿Cómo se define un 0 lógico (BAJO) o un 1 lógico (ALTO) en términos de voltaje? Para responder esta pregunta. considerado una medida de la inmunidad del circuito digital frente al ruido. el voltaje debe encontrarse entre 0 V y 0. iniciamos con la familia TTL.0 V. esto es. VNL. en la cual no se incluían diodos.M +B (%-B IC H) = 8 H( 9 : H* (B =`^liX+%. Configuraciones de salida en las familias TTL Las familias lógicas TTL tienen tres tipos de configuraciones de salida: 1. Salida tótem pole o poste totémico.2 V 0. los márgenes de ruido son de 0. por lo que debe conectarse para que la salida pueda obtener el nivel lógico ALTO. En consecuencia.. Salida de colector abierto La compuerta básica TTL fue una modificación de la lógica DTL. ALTO o BAJO. 3.76. DXi^\e[\il`[fgXiXcfje`m\c\jc^`Zfj8CKFp98AF[\cX]Xd`c`XKKC\jk}e[Xi% Para la lógica TTL.76.4 V para ambos niveles de voltaje. Salida de colector abierto. la unión base-emisor en Q1 se polariza direc- tamente. cuando el transistor Q3 está en corte. como se puede apreciar en la compuerta NAND de la figura 4. . Si cualquiera de los niveles lógicos de entrada es 0 lógico.KKCZfejXc`[X[\Zfc\ZkfiXY`\ikf% Como se puede observar en la figura 4.M .M . Salida de tres estados. la resistencia externa RL (también llamada resistencia de pull-up) no es parte del CI.7 V  VB (Q1)  0. por tanto. 4 La maravillosa electrónica digital . el voltaje en la base Q1 es igual a: VIL (voltaje de entrada) VBE(Q1)  0. Como sabemos. 2. la lógica de funcionamiento de los dispositivos de tercer estado se describió en una sección ante- rior de este capítulo.9 V grupo editorial patria® 203 .M MF?dˆe DXi^\e[\il`[f M@?dˆe t gXiX\ce`m\c8CKF M@Cd}o DXi^\e[\il`[f MFCd}o t gXiX\ce`m\c98AF 'M 'M ME?4'%+M MEC4'%+M =`^liX+%.- :fdgl\ikXE8E. en esta sección describimos únicamente la lógica de las configuraciones de salida de colector abierto y tótem pole. el voltaje de salida será un 1 lógico. Entonces. VBE(Q2) y VBE(Q3) son superiores a 2. hace que los transistores Q2 y Q3 vayan a estado de corte. la cual se ilustra en la figura 4. El diodo se coloca para provocar una caída de voltaje en el lazo. es decir. VC.6 kΩ. el voltaje de salida tótem pole en el punto F está determinado por el VCE (Q3)  0. un 0 lógico (BAJO).2 V. en muchas aplicaciones se requiere excitar 204 ELECTRÓNICA • MIJAREZ . y asegurar el corte de Q4 con Q3 saturado.7 V  3.2 V  VC(Q2)  0.( 8 H( = 9 : H* (B =`^liX+%. el estado de salida es igual a 0 lógico. de 16 mA en la serie estándar y de 20 mA en la serie AS. :fdgl\ikXE8E.9 V. es 0. Por consiguiente. los transistores Q2 y Q3 se saturan debido a que el voltaje en la base de Q1 es superior a la suma de las caídas de voltaje VBC(Q1). esto es: VB(Q4) < VBE(Q4) V(D1) ® 0. y por el transistor Q4 que se encuentra en estado de corte. Como el voltaje en la base de Q1.7 V Una transición al estado de 1 lógico en la salida tótem pole. por causa de un cambio en una entrada a 0 lógico. El transistor Q4 está en corte debido a que VC(Q2)  VB(Q4)  0.7 V 0.9 V. .M +B (%-B (*'7 H+ H) .KKCZfejXc`[Xkk\dgfc\% La salida es 0 lógico cuando Q2 y Q3 se encuentran en saturación.7 V – 0. de Q2 se obtiene mediante la siguiente ecuación: VBE (Q3) VCE (Q2)  0. F. F. La diferencia entre una compuerta de colector abierto y una de tipo tótem pole radica en el transistor Q4 y el diodo D1.77. VBE(Q2) y VBE(Q3). el voltaje de salida tótem pole. cuando una de las entradas es 0 lógico. el transistor Q3 queda en estado de corte. Q4 conduce por el voltaje conec- tado a su base a través de la resistencia de 1. como en la compuerta de colector abierto.. VB(Q1).6 V Aplicaciones de lógica TTL con salida de colector abierto La salida tótem pole de un circuito TTL puede absorber una cantidad de corriente limitada en estado 0 lógico. IOLmáx.9 V< 0. VBE(Q4) V(D1). 4 La maravillosa electrónica digital El transistor Q3 comienza a conducir cuando la suma de las caídas de voltaje de VBC(Q1). Sin embargo. El valor del voltaje en el colector.9 V Por su parte.1 V. Salida tótem pole La otra configuración de salida es aquella que recibe el nombre de tótem pole. si se conecta una resistencia al colector. Por tanto. Cuando Q2 entra en corte.7 V 0. Si todos los niveles lógicos de entrada son 1 lógico. es: F  (VCC) – (VBE Q4) – (VD1)  5 V – 0. como se ilustra en la figura 4. un CI de la familia TTL puede absorber más corriente de la que puede proporcionar. para una carga TTL. 4 La maravillosa electrónica digital dispositivos que necesitan un consumo de corriente mayor. ya que dicha conexión produce una corriente excesiva que podría dañar los dispositivos.78 muestra un ejemplo del uso de compuertas de colector abierto para excitar un LED o una lámpara de mayor voltaje.0 :fe\o`e[\[fjZfdgl\ikXjE8E. como relés. cuando la salida de la compuerta excitadora se encuentra en un nivel BAJO. que típicamente puede absorber hasta 40 mA. debido a su mayor capacidad de manejo de corriente y voltaje. típicamente 40 μA para una carga TTL. >E.79 se muestran dos compuertas NAND TTL conectadas en serie. La figu- ra 4. ya que los diodos base-emisor de la carga se encuentran en polarización directa.\ej\i`\2cXZfdgl\ikX\oZ`kX[fiXj\\eZl\ekiXXZk`mf8CKF pXZk’XZfdf]l\ek\jfliZ\ [\Zfii`\ek\% Cuando la compuerta excitadora. lámparas. Por lo general. el sentido de la corriente es negativo. Por otro lado. por lo que en las hojas de características de los proveedores aparece con un signo negativo. tiene un nivel de salida ALTO. M:: ( M::4)'M ) IC ) ( ) ) 8 ( 8 ( ) * ( * ( ) ) 9 9 * =`^liX+%. en este caso otra compuerta NAND. En este caso. La entrada a la NAND de car- ga son diodos en polarización inversa. actúa como fuente de corriente para la carga. Además. En la figura 4. etcétera. =`^liX+%. "M:: "M:: J\ek`[f[\cX`ek\ej`[X[ gXiXjXc`[Xe`m\c8CKF >E.[\Zfc\ZkfiXY`\ikfljX[XgXiX\oZ`kXileC<. por lo que la corriente es muy pequeña. que se ubica hacia el lado izquierdo de la figura 4./ :fdgl\ikXE8E.80. No se recomienda conectar las salidas tótem pole juntas. Esta corriente es mayor.pleXc}dgXiX[\)'M% Sentido de las corrientes En este apartado analizamos los sentidos de las corrientes y estudiamos los conceptos de fuente (source) y sumidero o absorción (sink) de corriente.6 mA. actúa como un sumi- dero de corriente. la mejor opción es usar transistores discretos a la salida tótem pole de la compuerta o una compuerta en colector abierto.79. LEDs. grupo editorial patria® 205 . típicamente 1. De esta manera.81 muestra tres inversores NMOS. el cual era afectado por cualquier impureza. determinaron un rápido desarrollo y difusión de los mismos. La figura 4. sin embargo. Sin embargo. M(M:: M:: M:: M:: MJ8C MJ8C MJ8C M<EK M<EK M<EK =`^liX+%/( Ki\jk`gfj[\`em\ijfi\jEDFJhl\`eZclp\elekiXej`jkfiZfdfi\j`jk\eZ`X[\gfcXi`qXZ`e% Al excluir resistencias integradas de valores relativamente altos. Para resolver estas dificultades. 4 La maravillosa electrónica digital "M:: "M:: J\ek`[f[\cX `ek\ej`[X[gXiX jXc`[Xe`m\c98AF >E. fue necesario desarrollar técnicas de muy alta limpieza ambiental. aunque admitía un amplio rango de voltajes de alimentación (desde 3 V a 18 V). que no estuvieron disponibles sino hasta mediados de la década de 1970. Una vez que se dispuso de estas técnicas. disminuyeron con notoriedad tanto el área de integración como el consumo de potencia. se estableció un nuevo avance en la miniaturización de la electrónica digital. La utilización conjunta de transistores MOS de canal N y de canal P permitió que el consumo estático de las puertas fuera nulo. las ventajas de los transistores MOS. Al principio resultaba más sencillo integrar transistores MOS de canal P. cuya velocidad de conmutación es notoriamente mayor. La primera serie CMOS adoptó el indicativo 40 y presentaba fuertes limitaciones en cuanto a velocidad e inmunidad al ruido. especialmente derivados de un efecto super- ficial del cristal de silicio. El uso de transistores MOS como resistencias de polarización permitió configurar compuertas lógicas utilizando únicamente transistores. =`^liX+%/' :fe\o`e[\[fjZfdgl\ikXjE8E. lo cual dio lugar a la lógica CMOS (lógica con transistores MOS complementarios). principalmente el tamaño y el consumo. >E. donde el transistor superior se encuentra siempre en conducción y equivale a una resistencia de polarización. atendiendo a la demanda 206 ELECTRÓNICA • MIJAREZ . debido a la mayor movili- dad de los electrones respecto de los huecos. estos pronto fueron des- plazados por transistores NMOS.\ej\i`\2cXZfdgl\ikX\oZ`kX[fiXj\\eZl\ekiXXZk`mf98AF pXZk’XZfdfjld`[\ifj`eb [\Zfii`\ek\% Tecnologías CMOS La fabricación de transistores MOS en CI presentó grandes problemas. M MF?d}o (c^`Zf (c^`Zf +%0M Efgi\[\Z`Yc\ MF?dˆe *%.5 V.M M@?d}o . VIL(mín)  0 V y VIL(máx)  1.5 V – 0. VOH(mín)  4.5 V hasta los 5 V. VOL(mín)  0 V y VOL(máx)  0. mientras que el nivel de voltaje de salida para el 1 lógico es de 4.5 V  1.M M@?dˆe Efgi\[\Z`Yc\ (%.1 V.4 V grupo editorial patria® 207 . Por otro lado. es decir.5 V y VIH(max)  5 V.83 muestra estos niveles de voltaje de entrada y salida de la tecnología CMOS consideran- do un voltaje de alimentación de 5 V. La figura 4. esto es.82 muestra un inversor y una compuerta CMOS. Posteriormente.9 V hasta 5 V.:DFJ =`^liX+%/) :fdgl\ikXj`em\ijfiXpE8E.4 V VNL  VIL(máx) – VOL(máx)  1. compatible con la familia TTL en cuan- to a funciones y terminales de los circuitos integrados del mismo número.5 V.ljXe[fk\Zefcf^ˆX:DFJ% Niveles de voltaje de entrada y salida y margen de ruido en la familia 74 AC CMOS Considerando que la alimentación de la tecnología CMOS es VDD  5 V. 9 >E. esto es. se desarrolló la serie 74C. mientras que para el nivel de voltaje de entrada para el 1 lógico es desde 3. todas basadas en los ahora populares transistores CMOS. VIH(mín)  3. "M.. La figura 4. J 8 J 8 >E.1 V  1. el nivel de voltaje de salida para el 0 lógico es desde 0 V hasta 0. como la 74HCT y la 74ACT. el nivel de voltaje de entrada para el 0 lógico es desde 0 V hasta 1. 4 La maravillosa electrónica digital de los usuarios acostumbrados a usar la familia TTL. @em\ijfi:DFJ Gl\ikXE8E. . esto es.1 V. "M. también se desarrollaron series avanzadas..9 V y VOH(máx)  5 V. los márgenes de ruido son: VNH  VOH(mín) – VIH(mín)  4.M M@Cd}o '%(M MFCd}o 'c^`Zf 'c^`Zf 'M M@Cdˆe 'M MFCdˆe E`m\c\j[\mfckXa\ E`m\c\j[\mfckXa\ XcX\ekiX[X XcX\ekiX[X =`^liX+%/* E`m\c\j[\mfckXa\[\\ekiX[XpjXc`[X[\cXk\Zefcf^ˆX:DFJ% Por tanto.9 V – 3. esta aumenta conforme aumenta la frecuencia de conmutación de las compuertas. Estos breves picos de corriente son proporcionados por el voltaje de alimentación VDD . 4 La maravillosa electrónica digital De manera similar a las familias TTL. y pueden tener una amplitud regular de 5 mA y durar de 20 a 30 ns. 208 ELECTRÓNICA • MIJAREZ . en términos de intensidad o de potencia. Consumo El consumo energético de un sistema digital. su disipación de potencia es extre- madamente baja. la disipación de potencia en función de la frecuencia para una compuerta TTL es constante dentro del rango de operación. la familia CMOS tiene una mayor inmunidad al ruido que las familias TTL. esto es. tiene importancia desde dos puntos de vista: t El consumo de energía. t La disipación de calor de los componentes y del sistema en general. no obstante. cuando la frecuencia de conmutación aumenta. la cual provee el voltaje de alimentación. Cuando un circuito lógico CMOS se encuentra sin cambiar (régimen estático). como lo ilustra la figura 4. los márgenes de ruido en la tecnología CMOS son los mismos en ambos es- tados.`j`gXZ`e[\gfk\eZ`X\ecXj]Xd`c`XjKKCp:DFJ\e]leZ`e[\cX]i\Zl\eZ`X% Cada vez que una salida CMOS pasa de BAJO a ALTO. El consumo de energía se relaciona con la fuente de alimentación. ALTO y BAJO. Por 23 El ruido puede generarse en el exterior por la presencia de motores o interruptores. a fin de determinar la disipación de potencia en cierta frecuencia de operación. hay más de estos picos de corriente por segundo y el consumo de corriente promedio de VDD aumenta. se recomienda que al diseñar sistemas digitales con tecnología CMOS se realice un análisis de- tallado de los componentes a utilizar. el valor medio de potencia que la compuerta puede consumir. Evidentemente. PD. Por otra parte. el cual tiene la función de suministrar suficiente corriente. tiene que suministrar una corriente de carga momentánea. Por esta razón. razón por la que esta tecnología es una opción muy atractiva para aplicaciones que están expuestas a medios ruidosos.84. Gfk\eZ`X KKC FJ :D ] ' =`^liX+%/+ . de acuerdo con el consumo global del sistema digital. o por picos de la corriente de alimentación. Para ello.23 Parámetros relevantes para las familias TTL y CMOS Disipación de potencia La disipación de potencia. por el acoplamiento de conexiones a líneas de voltaje cerca- nas a los CI. Sin embargo. VCC . se considera un valor promedio de disipación para las salidas en ALTO y en BAJO. se obtiene del producto entre voltaje de alimentación por intensidad de corriente con- sumida por cada compuerta. la respuesta a dicha señal no aparece instantáneamente en la salida. de tal forma que los tiempos de propagación CMOS suelen medirse y expresarse con relación a una carga típica de 50 pF. la cantidad de corriente cuando la salida es un 0 lógico.85. Retardo de propagación El diseño de un sistema digital siempre debe considerar el tiempo que transcurre entre el cambio de nivel lógico en una entrada y el correspondiente cambio de nivel lógico a la salida de los componentes lógicos utilizados. en ocasiones. de la impedancia de carga conectada a la sali- da y de la temperatura. ambos situados directamente sobre el propio circuito integrado. <ekiX[X JXc`[X kG?C kGC? =`^liX+%/. esta dependencia se debe a que las resistencias de los transistores MOS au- mentan con la temperatura. esto es. y aumentan junto con ella. el tiempo de retardo es menor. y la cantidad de corriente cuando la salida es un 1 lógico. el que se produce durante las transiciones. Por ejemplo. Por ello. sus entradas son de tipo capacitivo. por disminuir con ella la movilidad de sus portadores. los procesadores Pentium de las PC requieren un fuerte disipador con un ventilador. El consumo estático no incluye las transiciones entre los dos estados lógicos. En la familia TTL prevalece el consumo estático. en la familia CMOS el consumo estático es nulo. En cambio. la energía consumida por el sistema se disipa en el mismo en forma de calor y tiene que ser desalojado para evitar un aumento excesivo de la temperatura. además del consumo estático. Para facilitar la suma de tiempos en compuertas conectadas en serie. se requiere de un sistema de enfriamiento particu- lar para asegurar la velocidad o frecuencia de operación de un circuito. lo cual permite utilizar su promedio como tiempo de propagación genérico: tPD  (tPLH tPHL) / 2 Los tiempos de propagación dependen del voltaje de alimentación. grupo editorial patria® 209 . ICCH. cuando la salida cambia de nivel ALTO a BAJO (tPHL) y cuando la salida cambia de nivel BAJO a ALTO (tPLH). sino que toma un cierto tiempo en propagarse.24 Los fabricantes de CI digitales especifican los datos del consumo estático en términos de la cantidad de corriente consumida de forma global por el CI. Ambos tiempos de pro- pagación suelen tener valores cercanos entre sí. podemos decir que los valores típicos de los tiempos de propagación se expresan para 25 °C. cuando se realiza la evaluación global del consumo dinámico de un sistema digital. Finalmente. es decir. el fabricante también incluye datos del consumo dinámico. del orden de los GHz. y que en determinados subsistemas lo hace solamente un pequeño número de ellos. Así. Por tanto. por lo que el consumo dinámico es despreciable respecto al es- tático. como se ilustra en la figura 4. se recomienda considerar que no todos los componentes lógicos conmutan a la vez. la impedancia de carga es el número de entradas conectadas a la salida del componente digital. entre más alto es el voltaje de alimentación. 4 La maravillosa electrónica digital otro lado. Por otro lado. al tiempo que el dinámico se relaciona con la fre- cuencia de operación. esto es. K`\dgf[\gifgX^XZ`e[\[fjZfdgl\ikXjZfe\ZkX[Xj\ej\i`\% 24 Para alcanzar las altas frecuencias de operación. cada tiempo de propagación suele medirse por el retraso entre el punto medio de conmutación (VCC/2) de la onda de entrada y el punto medio de la conmutación de la señal de salida. ya que dichos tiempos dependen de la temperatura. Este tiempo es denominado por los fabricantes como re- tardo de propagación (tPD). en el caso de los CI CMOS. y se especifica de acuerdo con la transición de estado lógico. del orden de unos pocos picofaradios. ICCL. cuando una señal llega a la entrada de un dispositivo digital. Por lo general. En la familia TTL. abanico de salida. el tiempo de propagación medio se mide en ns (nanosegundos) y la máxima de fre- cuencia de funcionamiento en MHz. 4 La maravillosa electrónica digital Es evidente que un tiempo de retardo de propagación pequeño se traduce en una mayor frecuencia de funciona- miento. debemos verificar. IIL(n) La figura 4.. Entonces. Por esta razón.. Io/Ii. por las limitaciones externas de terminales en el empaquetado del CI. típicamente. a las entradas que pueden conectarse a una salida digital se les llama “cargas”. los voltajes y las corrientes de las familias lógicas involucradas. cuya corriente de entrada es muy pequeña. Por tanto. en las series CMOS. Abanico de entrada. el abanico de salida (fan out) se utiliza para expresar el número de entradas que pueden conectarse en la salida de un elemento digital sin deteriorar su operación. entonces la compuer- ta dejará de operar correctamente. una carga puede ser la entrada de una compuerta o cualquier otro circuito. para tener una adecuada conexión entre com- ponentes digitales. el abanico de salida se determina por la carga capacitiva que pueden operar. El término se deriva por el hecho de que la salida de una compuerta puede suministrar una potencia limitada. De esta forma. entonces se tiene un abanico de entrada de cuatro.. por ejemplo. en cambio. De esta forma. si se excede ese valor. sin embargo. además de los niveles de voltaje de alimentación.. la limitación relativa del abanico de salida está dada por el cociente entre las corrientes de sali- da y de entrada. @F? @@? @FC @@C @@? @@C @@? @@C =`^liX+%/- GXi}d\kifj`dgfikXek\j[\cXYXe`Zf[\jXc`[X[\leXZfdgl\ikX[`^`kXc% Para interconectar familias TTL y CMOS. El abanico de entrada de las compuertas en un CI se determina. IIH(n) IOL > IIL(1) .86 muestra los parámetros importantes que se deben considerar de acuerdo con el abanico de salida de cada compuerta o elemento digital. se tiene que cumplir la relación de corrientes para nivel lógico ALTO y BAJO. IOH > IIH(1) . cumpliéndose lo siguiente: VOH(mín) > VIH(mín) VOL(máx) < VIL(máx) IOH > IIH IOL > IIL 210 ELECTRÓNICA • MIJAREZ . como lo muestra la siguiente igualdad. es necesario especificarlo en la definición del abanico de salida. principal- mente. una compuerta. pero. Por otro lado. si se tiene una AND de cuatro entradas. cargas e interconexión de familias lógicas En los circuitos digitales se usa un parámetro denominado abanico de entrada (fan in) para indicar el número de entra- das que puede manejar. también se hace referencia al abanico de salida como las cargas que la salida puede manejar. HC BCT ALS Bipolar F ACL CMOS AS BICMOS ABT FCT LVC CD4000 LVT LS CBT LV S AHC ALVC ALVT CBTLV AVC TVC TTL GTLP Little Logic AUC SSTV VME Introducción Crecimiento Madurez Declinación Obsolescencia =`^liX+%// :`Zcf[\m`[X[\cXj]Xd`c`Xj[`^`kXc\j% 25 Se recomienda leer el documento Logic Selection Guide First Half. pero la cantidad de opciones es muy grande. etcéte- ra.ti. haciendo énfasis en las familias bipolar. y la derivación actual es la más óptima para series de bajo voltaje. CMOS y BiCMOS. los productos que se produzcan con dicha tecnología tender a la obsolescencia.88 muestra una gráfica del ciclo de vida de algunas tecnologías digitales. en consecuencia. Posteriormente. consumo.25 La selección de la familia digital a utilizar en los diseños depende mucho de la aplicación. 2009 (Rev. las familias lógicas se agrupan en series.3 V HSTL TTL CBT TVC VME AC/ACT S LV F AHC LV HC/HCT AHC/ ALB AHCT AC AS ALVT BCT LVT AVC ABT LV-A ALVC ALS CBTLV LVC1G Lógica de 2. en la página web de Texas Instruments: http://focus. 2. Sin embargo. a 3 V.8 V ALVC AVC LVC AVC CBTLV AUC ALVC ALVT AUC =`^liX+%/.8 V. Lógica especial Lógica de 5 V GTLP SSTV GTL BTL SSTL CD4000 FCT ETL LS Lógica de 3. la mezcla entre estas tecnologías derivó en la denominada tecnología BiCMOS (bipolar-CMOS). 4 La maravillosa electrónica digital Como sabemos.`]\i\ek\jk`gfj[\]Xd`c`Xjc^`ZXj% Las tecnologías digitales también tienen un tiempo de vida. posteriormente.5 V LVC LV LVC Lógica de 1. pasando de la alimentación habitual de 5 V. como se ilustra en la figura 4.com/ docs/logic/catalog/resources/logicliterature.jhtml grupo editorial patria® 211 . la tecnología MOS evolucionó hasta llegar a la predominante HCMOS. la gama de familias que existe es grande y describir cada una de ellas va más allá de las intenciones de este libro. ya que podría quedar fuera del mercado y. por esta razón es importante tomar en cuenta en qué etapa se encuentra la familia seleccionada. Otras tecnologías La tecnología bipolar dio origen a la familia TTL. . Q). cuya amplitud de difusión consolidó la lógica digital en circuitos integrados.5 V y a solo 1. La figura 4. En la actualidad. según sus características de velocidad. la cual resulta apro- piada para sistemas de buses (inter-bús). en la siguiente sección delineamos algunas de estas familias.87. ± Cada dígito significativo que se añade en binario du- plica el valor del dígito previo. la máquina de Turing describe un sistema que tiene una memoria infini- ta. ± En un sistema posicional. particularmente los de la máquina Enigma. se tienen las bases de la máquina de Turing. como XOR y AND. La figura 4. de su columna.26 En términos generales. como el binario. cada columna en un número tiene hexadecimal.7 Frecuencia máxima de reloj (MHz) 145 33 45 90 100 150 50 160 170 Excitación de salida IOL(mA) 20 8 8 12 24 24 4 24 8 =`^liX+%/0 :XiXZk\iˆjk`ZXj[\Xc^leXj]Xd`c`XjY`gfcXi\jp:DFJ% RECAPITULANDO En resumen. el hexade. 212 ELECTRÓNICA • MIJAREZ . la habilidad para ir hacia atrás o hacia adelante a lo largo de la memoria y la capacidad para seguir instrucciones en cualquier localidad de memoria. los sistemas actuales basados en microprocesado- res se encuentran muy cercanos a la máquina de Turing. Fue hasta 2009 que el primer ministro Gordon Brown. Turing fue un genio incomprendido. primero se divide el número binario en un “peso” asociado. compuertas lógicas. ± Primero. con todos estos elementos estamos listos para iniciar el capítulo 5 relacionado con los microprocesadores. publicó una disculpa póstuma después de que miles de personas pusieron su nombre en una petición en internet creada por el científico computacional John GrahamCumming.3 3 7 5 3. Muy cerca de la Universidad de Manchester existe una estatua de Alan Turing que solía ver cuando salía de la universidad mientras hacía mi doctorado y pensaba en lo injusto que había sido el trato hacia este cientí- fico. Después de la guerra diseñó una de las pri- meras computadoras electrónicas programables digitales en el Laboratorio Nacional de Física del Reino Unido y poco tiempo después constru- yó otra de las primeras máquinas en la Universidad de Manchester. bit. y el valor del número es determi. 4 La maravillosa electrónica digital Como se describió en la sección anterior. es información que solo puede ± Para convertir de hexadecimal a binario se reemplaza tener dos valores: 0 o 1. DATOS IMPORTANTES DEL CAPÍTULO ± Un dígito binario. cada dígito hexadecimal por su equivalente binario. tp(ns) 3. En 1950. Turing escribió el artículo “Compu- tingMachinery and Intelligence” en el cual propuso lo que se llamó el Turing Test (TT) para reemplazar la pregunta ¿pueden pensar las máqui- nas? Se ha considerado que este trabajo representa el inicio del área computacional llamada inteligencia artificial. ± A los grupos de 4 bits se les llama nibbles y a los de ± Los circuitos sumadores se pueden realizar usando 8 bits se les llama bytes.3 V CMOS 5 V Características F LS ALS LV LVC ALVC HC AC AHC Retardo de propagación de puerta. Lo anterior se puede usar como figura de mérito para comparar diferentes familias. el retardo de propagación se relaciona con la velocidad de operación de la tecnología y con la potencia o corriente de la misma.3 10 7 9 4. Por tanto. ± En la lógica digital 1 es verdadero y 0 es falso. vea o realice la tabla de verdad. 26 Alan Turing fue un criptógrafo inglés quien sentó muchas de las bases de la teoría computacional. para convertir un número de binario a cimal y el decimal. TTL CMOS 3. Durante la Segunda Guerra Mundial. Igualmente. Dos años después se suicidó. Turing trabajó en descifrar los códigos nazis.89 muestra algunas características de las familias bipolares y CMOS más populares. realizar cálculos matemáticos y de re- cordar o almacenar resultados de tal manera que podamos tomar decisiones posteriormente. a nombre del gobierno. nibbles y cada nibble se convierte a su representación nado por la combinación de cada dígito con el peso hexadecimal. ya que fue enjuiciado por el gobierno inglés debido a su condición de homosexual. ahora que se cuenta con la habilidad de tomar decisiones lógicas. Descontando la memoria infinita. un reloj.5 Convierta el siguiente número binario =`^liX+%0' %1011110010100101 a su equivalente hexadecimal. D. reflejan el ± La lógica combinacional utiliza como elementos prin. flip flops. para lo cual usamos maxitérminos. llamadas palabras. porización. EPROM. grupo editorial patria® 213 . 4 La maravillosa electrónica digital ± Usando sumadores es posible realizar. 4. VHDL o Verilog) o dibujando ± Los flip-flops constituyen los elementos básicos de la con la ayuda de herramientas CAD de captura de es- lógica secuencial. D. el cual les permite hacer buses di- de verdad que producen salida 0 y las unen con una gitales. estado de las entradas en el momento en que la en- cipales a las compuertas lógicas. defina qué términos se lógicas elementales que conforman los sistemas digi- utilizan para el 10 y para el 6. compuerta AND. trada de reloj esté presente. ± El tiempo de set up en un flip flop D es el tiempo que lizar operaciones con signo.4 Convierta el número en representación hexadecimal 7A5C16 a su equivalente en decimal. debe permanecer estable antes de ± Los minitérminos son expresiones booleanas que que llegue la transición del pulso de reloj. y no volátiles. las multiplicaciones. más pueden contener flip flops. ± Las máquinas de estado se basan en lógica secuen- ± Las salidas de un decodificador pueden ser activo cial. y. ten información binaria. 4.3 ¿Qué término se utiliza para definir un dígito bina- número maya de tres posiciones? rio? Defina que significan los términos nibble y byte. tener sus datos aun cuando se quita su alimentación ± La programación de los PLDs se efectúa por medio (tipo memorias ROM. ± Los flip flops. utilizados al interconectarse con zado usando lenguajes de programación especializa- otros dispositivos como microprocesadores. debe permanecer estable después de compuerta OR. las cuales puede man. para mas y restas. ± Un bus representa un grupo de señales que transmi- ± El número de salidas de un decodificador es de 2n. o activo alto. ± Los dispositivos lógicos programables (PLD.1 ¿Cuál es el valor equivalente en decimal del siguiente 4. generar tiempos y contar secuencias. generalmente. PAL o ± Existen dos tipos de memorias: volátiles. y ade- memorias RAM). 4. dos (ABEL. EEPROM y FLASH). y m líneas de salida. pacidad son los FPGAs. en una máquina de estados. ± La lógica secuencial utiliza como elemento base a las celdas de memoria. llama. PROBLEMAS DEL CAPÍTULO 4 4. donde n es el número de entradas. etcétera. que pier. como las señales de control y el tiempo ± El diseño de hardware en estos dispositivos es reali- de acceso (tACC). ± La representación en complemento a 2 permite rea. también pueden ser usa- dos para almacenar información. de interruptores programables hechos predominan- ± Las memorias constan de n líneas de entrada. datos (1 y 0) en memorias volátiles y registros. utilizan las combinaciones de entrada de una tabla ± El tiempo de hold en un flip flop D es el tiempo que de verdad que producen salida 1 y las unen con una la entrada. ± Los dispositivos lógicos programables con mayor ca- ± Las memorias tienen parámetros importantes de tem. das dirección. tales. temente de transistores CMOS. PALASM. 0 lógicos. en este caso el valor 106. 4. la entrada.2 Usando la representación exponencial de un núme. y son utilizados para almacenar quemáticos. 1 lógico. para lo cual se usan minitér- minos. ± Los maxitérminos son expresiones booleanas que ± Los dispositivos de tercer estado tienen un estado de utilizan las combinaciones de entrada de una tabla alta impedancia. que llegue la transición del pulso de reloj. se sincronizan con bajo.6 Describa la tabla de verdad de las tres compuertas ro. respectivamente. además de su. GAL) consisten de un arreglo de compuertas AND y den la información cuando pierden la energía (tipo OR que pueden ser programadas por el usuario. 4.13 ¿Cuántas líneas de direcciones se requieren para di.8 Describa la tabla de verdad de la compuerta XOR 0 1 1 0 0 1 0 1 y defina cómo se puede usar esta compuerta como S Q ? inversor. ¿Cuál es su capacidad de direcciona- activo alto. EEPROM y FLASH. tipo RS. =`^liX+%0( madores. con las salidas de 20 líneas. PAL. reccionar una memoria EPROM de 16K bytes? GAL.15 Obtenga el diagrama de tiempos de los pulsos de 4.21 Una memoria ROM tiene un bus de direcciones 4. 4. EPROM.16 Describa el tiempo de set up y de hold de un flip- restadores y multiplicadores a partir de los suma- flop tipo D. 4 La maravillosa electrónica digital 4.23 Describa qué elementos constituyen un bloque ló- de 8K r 4 bits. 4.17 ¿Cuál es la diferencia entre las memorias SRAM y 4. 214 ELECTRÓNICA • MIJAREZ .11 Con la representación de números en comple- DRAM? mento a 2 se pueden realizar sumas y restas con signo.7 Describa la tabla de verdad de la compuerta NAND de las señales de entrada del siguiente f-f síncrono y de la compuerta NOR. 4. 4. Realice la siguiente operación usando el 4. 4.12 Diseñe un decodificador de 3 a 8.19 ¿Para qué se utilizan los dispositivos de tercer es- 20 tado y a qué se le llama alta impedancia? 40 4.18 Describa la diferencia entre las memorias ROM.20 ¿Cuál es la diferencia entre un flip flop y un latch? 2010 4. gico o macrocelda en un PLD.14 Diseñe una memoria de 8K bytes con 2 memorias 4.9 Describa cómo se relacionan los minitérminos y R –– Q ? los maxitérminos de una tabla de verdad con el 0 0 1 0 1 0 0 0 teorema de De Morgan. Defina cómo se pueden hacer circuitos 4. 4. dores.24 Describa las ventajas de los PLD con respecto a su salida que correspondan a los trenes de pulsos contraparte digital discreta en circuitos integrados. es posible diseñar circuitos su. miento? 4. CPLD y FPGA. FF h g f e d c b a CK 4. complemento a 2.10 De acuerdo con la tabla de verdad obtenida de la regla de las sumas.22 Describa qué significan los acrónimos PLD. la popularidad de los microcontroladores sigue en aumento debido a que es posible comprar microcontroladores de ocho y hasta seis terminales por solo unos cuantos cen- tavos de dólar. etc. secadoras. teléfonos. algunos juguetes y aplicaciones de Internet. aunque por unos centavos más. hornos de microondas. frenos ABS. agua o gas). procesadores de comida. sin embargo. Aunque la creación de los microcontroladores es hasta cierto punto reciente y estos han estado con nosotros solo desde hace unas cuantas décadas. control del motor. Entre algunos de los ejemplos del empleo de este popular dispositivo destacan: los sistemas de control de procesos automotrices (bolsas de aire. 5 El popular microcontrolador INTRODUCCIÓN El microcontrolador. etc. es posible encontrarlos como componente central de muchos de los productos que contienen interfaces con el “mundo f ísico”. radios.). dispositivos de presión de sangre. algunos artículos de consumo común (monitores de glucosa. las cuales hasta hace algunos años hubieran sido catalogadas como 215 . entre muchos otros. En la actualidad.). los productos de línea blanca (lavado- ras. es posible conseguir microcontroladores con ca- pacidades de procesamiento. abreviado como μC o MCU.). Estas interfases pueden ser funciones de control de en- trada o salida. los medidores de servicios (de energía eléctrica. su impacto ha sido profundo. tan comunes como encender o apagar dispositivos y/o monitorear determinadas condiciones. El uso de los micro- controladores se ha hecho tan grande y común que en muchas ocasiones no se advierte su presencia. es una maravilla digital integrada en un solo CI. etc. relojes desperta- dores. tanto como sus anteceso- res los microprocesadores. 1 Buzz Aldrin (bautizado con el nombre Edwin Eugene Aldrin. que las computadoras con las que estaba equipada la nave tenían únicamente 70 kilobytes de memoria y un procesador con una frecuencia de reloj de solo 2. que una vez comprendidas se pueden aplicar a cualquier microcontrolador. algunas veces se usa el término micro para referirse indistintamente a cualquiera de ellos. Sin más aplausos para el popular microcontrolador. estas limitadas computadoras permitieron a los astronautas realizar los complejos cálculos de navegación. de cierta manera.1 Todo esto con base en el uso de los dispositivos semiconductores que hemos visto en este libro. X Procesador de Bool. De esta manera. en este capítulo iniciamos con un esbozo histórico de los microprocesadores (μP) y los microcon- troladores. 216 ELECTRÓNICA • MIJAREZ . en particular del μC 80C51. en este capítulo estudiamos: X Esbozo histórico de los microprocesadores y microcontroladores. es decir. Si en la actualidad se observan los sistemas de control del Apolo 11. Lue- go. las cuales en conjunto constituyen a los micropro- cesadores. Los conceptos aprendidos aquí se pueden aplicar de manera general a cualquier microprocesador y nos preparan para entrar al mundo de los microcon- troladores. por lo que es dif ícil imaginar el mundo moderno sin ellos. con sus pequeños displays y teclados de 19 botones. similares. el cual contiene los elementos principales de la mayoría de los microprocesadores.). cruciales para descender exitosamente en la Luna. unidades de control y unidades aritméticas y lógicas. X Arquitectura. Posteriormente. el número de transistores en un CI se ha convertido en una medida razonable de su complejidad funcional. los transistores se combinan para formar compuertas. haciendo nues- tras vidas más seguras y confortables. Para entender los conceptos básicos de los μC. a su vez. X μC de 8 bits: el popular 8051. están entre nosotros. Aun así. existen diferencias marcadas entre uno y otro. usamos un enfoque práctico conocido como ABpra. abordamos los conceptos fundamentales de los microprocesadores con la presentación de un microprocesador modelo. Los microcontroladores.048 kHz. vamos a aprender basándonos en prácticas de laborato- rio. Por esa razón. uno de los tres astronautas del emblemático Apolo 11. X Modos de direccionamiento. pero importantes. Sin embargo. están conformados por los activos transistores. ya que fueron las primeras en usar tecnología de circuitos integrados. Jr. escribió en su libro Magnificent desolation. 5 El popular microcontrolador propias de supercomputadoras. las compuertas se combinan para formar flip-flops. Con la ayuda de la microelectrónica. Por su parte. Estas prácticas enfatizan conceptos simples. aunque también incluimos prácticas usando un simulador comercial. X Desmitificando al CPU o μP. Los videojuegos y la mayoría de los teléfonos celulares de la actualidad cuentan con una capacidad de procesamiento muchas veces mayor que la tecnología que llevó al hombre a la Luna a fines de la década de 1960. la NASA se aseguró de que las computadoras del Apolo 11 fueran de las más avanzadas de su época. se combinan para constituir memorias. las cuales puntualizaremos antes de abordar el tema de uno de los microcontroladores más populares de la industria electrónica: el 80C51 de Intel. the long journey home from the moon. consultando el manual del usuario y las hojas técnicas de cada uno. Basta mirar a nuestro alrededor para encontrarnos con decenas de estos dispositivos. por tal razón. a su vez. Aun así. hacemos uso de calculadora con operaciones lógicas e instrucciones de programación básicas (para conocer sus principios y su manejo) que se incluye en el CD ROM que acompaña este libro. Los microprocesadores y microcontroladores son. X Frenéticos por las computadoras digitales. contadores y otras funciones lógicas. del 80C51. X Interfaz de hardware para un μC. se consideran arcaicos respecto de los estándares de hoy en día. las funciones lógicas. ESBOZO HISTÓRICO DE LOS MICROPROCESADORES Y MICROCONTROLADORES Los microprocesadores y microcontroladores se encuentran en todas partes. X Periféricos internos. X Periféricos mapeados a memoria. el 8008. en especial el sistema operativo CP/M. Faggin dirigió un equipo que diseñó el μP de 8 bits de alta funcionalidad. Las únicas corpo- raciones con recursos para comprar computadoras eran las industrias y las universidades. competidor directo de Intel en este emergente mercado de los microprocesadores. En la figura 5. fue diseñado por el italiano Federico Faggin (1941. posteriormente.) diseñaran la computadora Apple I. debido a limita- ciones de capacidad y velocidad. cuyo costo inicial fue de 179 dólares. agregan más capaci- 2 En 1971. 4 Antes de que Steve Jobs (1955-2011) y Steve Wozniak (1950. Intel lanzó al mercado el 8080 (el primer microprocesador de tecnología NMOS). El Z80 estaba diseñado para ser compatible a nivel de código con el Intel 8080. El microprocesador 4004 era un micro- procesador de 4 bits. sistemas operativos y programas. fue el empleo de un microprocesador de solo 25 dólares y una memoria ROM. hace apenas cuatro décadas. 1975. podía direccionar solo 4096 localidades de memo- ria de 4 bits. entre otras. Los microprocesadores por sí solos no eran utilizables. Motorola y Fairchild. La popularidad de este microprocesador se debe a que se utilizó en las primeras calculadoras de escritorio. el cual superó la velocidad de su predecesor. Hacia 1974.300 transistores y corría a 108 kHz. estas eran grandes máquinas que dif ícilmente podían estar en las casas. En la actualidad. podía manipular bytes. además. La clave para diseñar una computadora de bajo costo. hacia 1972 Intel desarrolló una versión más poderosa: el microprocesador 8008. Adicionalmente. para 1974. en promedio. se incrementó la capacidad de direccionamiento de memoria hasta 64 Kbytes. dos de los primeros microcontroladores son el 8048 de Intel y el 6805R2 de Motorola. Los microcontroladores. Con el advenimiento de las SBC.4 Estos microprocesadores se comercializaron en 20 y 25 dólares. basadas en microprocesadores Intel y Motorola. respectiva- mente. ya que ningún producto era compatible respecto del otro fabricante. el 4004. Federico Faggin dejó Intel para iniciar Zilog. Este microprocesador tenía una arquitectura de 8 bits. Durante 1971-1972. Zilog lanzó al mercado el Z80. reconocía 45 instrucciones y podía ejecutar.2 En 1971. de tal forma que la mayoría de los programas para el 8080 pudieran funcionar en este. como National Semiconductors. por sus siglas en inglés). pero. Zilog. lo que provocó un auge en el mercado de las microcomputadoras de uso doméstico y un caos en la prolifera- ción de lenguajes. Por tanto.. se convirtieron en el componente central. el primer μP del mundo. como parte de las llamadas computadoras de una tarjeta (SBC. Jobs continuó mostrando su talento. Motorola abate dramá- ticamente el costo de los microprocesadores con sus modelos 6501 y 6502. rodeán- dose de gente brillante y generando productos innovadores hasta su fallecimiento. con el fin de diseñar y aprender acerca de los microprocesadores. las computado- ras no eran consideradas como aparatos personales. que estuviera al alcance de la mayoría de las personas. Microcontroladores En 1976 aparecieron las primeras microcomputadoras de un solo CI. en la década de 1980 se acentuó la división en la evolución tecnológica entre microcontro- ladores y microprocesadores. las SBC muy pronto encontraron un destacado uso en los laboratorios de diseño de universidades. Intel Corporation fabricó el primer microprocesador de tecnología PMOS: el 4004. este último adoptado por Apple Inc. De esta forma. En 1975. 3 CP/M fue el primer sistema operativo creado para las computadoras personales. A los 26 años de edad Jobs ya era millonario. a partir de ese año varias compañías fabrican- tes de circuitos integrados comenzaron a producir microprocesadores. en cambio. una instrucción en 20 μs. Rockwell International. para su primera microcomputadora personal. ambos contenidos en una tarjeta madre. manejarlas requería saber comandos especializados. centros de investigación y compañías relacionadas con aplicaciones electrónicas. los microprocesadores incorporan cada vez mayores capacidades para aplicaciones en las que se requiere el manejo de grandes volúmenes de información. el cual tuvo gran éxito. Años más tarde. el 8080. y al cual se le consideró el primer diseño de microprocesa- dor comercialmente exitoso. Con base en ese diseño. es decir. fue posible fabricar útiles productos. que operaba a 2 MHz. Pero. por sus siglas en inglés). se denominaron como microcontroladores. predecesor del sistema operativo Disc Operating System (DOS. no obstante. contenía 2. con su empresa de la manzana. la velocidad de operación continuó igual. las cuales. sin embargo.). quien entonces trabajaba para Intel. ¡Impresionante! grupo editorial patria® 217 . en el garaje de la casa de Jobs. 5 El popular microcontrolador Microprocesadores El primer microprocesador en CI tiene su origen en el decenio de 1970.1 se muestra el orden cronológico de los microcontroladores y micropro- cesadores que marcaron el inicio de la carrera tecnológica de las computadoras personales (PC).3 El mismo año. uno de los microprocesadores de 8 bits más poderosos. y la memoria que podía manejar se incrementó a 16 Kbytes. por sus siglas en inglés). los fabricantes de microcontroladores continuaron mejorando fuertemente las caracterís- ticas de potencia. facilidades para el control en tiempo real. así. 27 terminales de entrada/salida (E/S) y un temporizador de 8 bits. los microcontroladores enfocan sus recursos al control en tiempo real. de E/S. entre otros. como en las computadoras personales (PC). además de mejores desempeños en ambientes de tipo industrial. como lavadoras y controladores de señales de tránsito (semáforos).g. A partir de su creación. etc. En la figura 5. e. mayor capacidad de manejo de memoria. una EPROM de 1 Kbyte. incluía una unidad central de procesamiento (CPU. todos estos circuitos empaquetados en un solo CI de 40 terminales y con 17 000 transistores.`m`j`e\ecX\mfclZ`ek\Zefc^`ZX\eki\μGpμ:% dades que permiten una mayor interacción con el mundo f ísico en tiempo real. tamaño y funcionalidad. de memoria. el primer dispositivo de esta familia.%( Fi[\eZifefc^`Zf[\cfjgi`d\ifjd`ZifgifZ\jX[fi\jpd`ZifZfekifcX[fi\j% Arquitecturas con mayor número de periféricos internos. Las aplicaciones de los microprocesadores se centran en el manejo de grandes cantidades de datos. 5 El popular microcontrolador Intel 8048 Intel 8051 8-bit 8-bit Intel Microcontroller Microcontroller Intel 4004 8008/8080 First 8-bit Microprocessor Microprocessor Intel 8086 PC 16-bit Microprocessor Motorola 6800 series Motorola Microcontrollers 6500 Microprocessor Motorola 68000 Mac Microprocessor 1971 1974 1980 =`^liX. de temporización. en 1980. 32 64 bits... Intel introdujo la familia de microcontroladores MCS-48TM. Así. La familia de dispositivos MCS-48TM pronto se popularizó en la industria ligada a las aplicaciones de control.2 se observa la división entre estos dispositivos. La figura 5. de comunicaciones. como el caso de los sistemas mínimos y/o sistemas embebidos. =`^liX. el 8748.. 64 bytes de RAM.%) ... MICROCONTROLADORES 1971 1976 MICROPROCESADORES Arquitecturas con longitudes de palabras de 16. Intel presentó en el mercado la familia de microcontroladores 218 ELECTRÓNICA • MIJAREZ . una de sus primeras aplicaciones fue la sustitución de componentes electromecánicos usados en productos. Por otro lado.3 ejemplifica las aplicaciones de ambos. En 1976. también lla- mado unidad central de procesamiento (CPU.`m`j`e[\Xgc`ZXZ`fe\j\eki\μGpμ:% MCS-51TM. así. Frenéticos por las computadoras digitales Es innegable que en las sociedades modernas se tiene un frenesí por las computadoras digitales. En la figura 5. en este capítulo describimos a los miembros de la familia del MCS-51TM. precisamente. también se agregaron nuevos miembros a la familia MCS-51TM. Algunas veces. Por tanto. este microcontrolador contaba con 4 Kbytes de ROM. La CPU tiene dos señales de entrada que se generan externamente: la señal de inicialización o restablecimiento (reset) y una señal de reloj. antes de introducirnos de lleno en el mundo de los microcontroladores. procesar esa información usando operaciones lógicas y/o aritméticas. el 8048. que mejoraron drásticamente sus especificaciones originales. es la CPU. Sin embargo. cómo podemos usar los microcontroladores en diseños electrónicos con una cantidad mínima de componentes adicionales. los cuales se usan para almacenar programas (secuencia de instrucciones) o datos. debido a que. un puerto serie y dos temporizadores de 16 bits. En consecuencia. en ocasiones. El componente toral de una computadora. 5 El popular microcontrolador Grandes volúmenes Control en tiempo real de datos Sistemas mínimos/ embebidos Sistemas informáticos MICROCONTROLADORES MICROPROCESADORES =`^liX. una computadora se define como un dispositivo que puede aceptar información del mundo exterior. produ- cen confusiones en este campo de la electrónica. y los puertos de entrada y salida (E/S) que se usan para realizar la comunicación con el mundo exterior. Pero. Señales de reset y de reloj La señal de reset se usa para forzar a la CPU a iniciar en un estado conocido. por sus siglas en inglés). en la actualidad existen versiones de otros fabricantes. la tendencia es. Posteriormente. regresar la información procesada al mundo exterior en un nuevo formato. primero se exponen los fundamentos de los sistemas basados en microprocesadores. también llamada oscilador. ¿qué es una computadora digital? Bien. debido a determinados eventos. los programas complejos y/o mal diseñados pueden terminar atrapados en lazos infinitos. su complejidad se incrementó al contener más de 60 000 tran- sistores. respectivamente. por lo que en los siguientes apartados presentamos la arquitectura de su circuitería (hardware). por último. el automóvil. la familia del MCS-51TM se encuentra bien establecida en el mercado como uno de los microcontro- ladores de 8 bits más poderosos y versátiles. un número extraordinario de circuitos en un solo CI de 40 terminales. La única forma de grupo editorial patria® 219 . pues. que el número de estos dispositivos continúe incrementándose. los dispositivos de memoria tipo ROM o RAM. es en la CPU don- de se llevan a cabo todas las operaciones numéricas y la toma de decisiones. En comparación con su predecesor. se demuestra mediante prácticas.%* .4 se muestran los elementos principales de los que se compone una computadora digital de propósito general. incluyendo los acrónimos y términos más populares que predominan y que. tomar decisiones con base en los resul- tados de este procesamiento y. 32 terminales de E/S. así como su programación (software). Las tenemos en la casa. el “cerebro”. Para aprender más acerca de los microcontroladores. la industria y las traemos con nosotros como objetos personales y de entretenimiento. Los elementos principales que conforman un sistema computacional son: el microprocesador (μP). Por supuesto. su lugar como líder de microcontroladores de 8 bits está con- solidado por muchos años más. en su sentido más amplio. 128 bytes de RAM. También. independientes de Intel. se usa para aplicar de manera automática la señal de reset a la CPU cuando se enciende por primera vez el sistema. aplica perfecto para explicar que la CPU procesa al son (frecuencia) del circuito de reloj. de la misma forma que el ritmo de un tambor sincroniza a una banda de música. un circuito externo denominado power-on-reset. también tienen mucha popularidad en aplicaciones que requieren exactitudes menos exigentes.5 se muestra el símbolo para un oscilador de cristal y su circuito eléctrico equivalente.%+ :fdgfe\ek\jgi`eZ`gXc\jhl\Zfejk`klp\eleXZfdglkX[fiX[`^`kXc% sacarlos de estos lazos es usar la señal de reset. el primer oscilador basado en un cristal fue construido hasta 1917 y patentado en 1918 por Alexander M. la forma. Pero. sirve para inicializar la CPU. una capacitancia y una resistencia. 5 El popular microcontrolador Bus de control Bus de datos M Bus de direcciones RA M RO a alid des rto Pue ada ntr dee Hacia el rto mundo exterior U Pue t CP se Re Desde el loj mundo exterior Re =`^liX. esta propiedad se conoce como piezoelectricidad. la elasticidad y la velocidad del sonido del material. el cristal de cuar- zo se comporta como un circuito compuesto por una inductancia. de los laboratorios Bell. aunque su paternidad fue dispu- tada por Walter Guyton Cady. la primera aplicación práctica fue reali- zada por Paul Langevin. al emplear este efecto para desarrollar el sonar. Por lo general. sin embargo. La frecuencia de re- sonancia de un cristal depende del tamaño. de la misma manera que en los relojes de cuarzo.5 por medio del cual se genera una señal eléctrica con una frecuencia muy precisa. como los resonadores cerámicos. el cristal piezoeléctrico más usado es el cuarzo. durante la Primera Guerra Mundial. No obstante. Oscilador de cristal: piedras con ritmo No cabe duda que el componente más “sexy” de una computadora digital es la CPU o microprocesador. La señal de reloj se usa para sincronizar las acciones internas y externas de la CPU. la cual es generada por un circuito oscilador basado en un cristal. Una de las preguntas más frecuentes al iniciar el estudio de sistemas basados en microprocesadores es: ¿cómo se genera esta señal de reloj? La forma más común para obtener esta señal de reloj es mediante un dispositivo llamado oscilador de cristal. Desde su creación. Nicholson. 5 El efecto piezoeléctrico fue descubierto en 1880 por los hermanos Jacques y Pierre Curie. Este circuito oscilador usa la resonancia mecánica de vibración de un cristal con características piezoeléctricas. 220 ELECTRÓNICA • MIJAREZ . Cuando se retira el voltaje. La señal de reloj se caracteriza por conmutar entre dos niveles de voltaje millones o miles de millones de veces por segundo. otros materiales. y provee la extrema exactitud con la que operan los dispositivos basados en microprocesadores. el cristal genera un campo eléctrico al regresar a su forma original. que podría ser un circuito RC. a los diseños de circuitos basados en esta pie- dra se les llama simplemente osciladores de cristal. produciendo un voltaje. En la figura 5. Cuando un cristal de cuarzo se corta de forma adecuada. puede deformarse por la influencia de un campo eléctrico al aplicarle un voltaje a las caras del cristal. esta frecuencia se usa como base de tiempo de los sistemas digitales. aunque mu- cho de su “sex appeal” proviene de la señal de reloj. el refrán: “bailar al son que te toquen”. desde los sistemas de posicionamiento global (GPS) hasta el reloj del horno de microondas que se usa en los hogares. Como resultado. La tasa de expansión y de contracción del cris- tal determina la frecuencia de resonancia. Cabe destacar aquí que los cristales de cuarzo proveen resonancias en serie y en paralelo. Cuando la energía de las frecuencias generadas iguala las pérdidas en el circuito. Adicionalmente. la reso- nancia en serie es unos kilohertz menor que la resonancia en paralelo. como lo representa esquemáticamente la figura 5. y con los cuales se corta el cristal. la frecuencia de resonancia del cristal. FjZ`cX[fi[\Zi`jkXc%X JˆdYfcf%Y :`iZl`kf\c„Zki`Zf\hl`mXc\ek\% Las características particulares de cada cristal dependen de los ángulos que se forman de acuerdo con sus ejes. para aplicacio- nes críticas al cristal de cuarzo se le integra un control de temperatura. el cristal no funciona por sí solo. .%.%- Df[fj[\m`YiXZ`e[\leZi`jkXcg`\qf\c„Zki`Zf% La frecuencia es inversamente proporcional al grosor del cristal. Por ejemplo. Modo longitudinal Modo transversal Modo flexural Tenedor sintonizable =`^liX. el circuito oscilador toma el voltaje producido por el cristal.`X^iXdX\jhl\d}k`Zf[\leZ`iZl`kffjZ`cX[fi[\Zi`jkXc% grupo editorial patria® 221 . En la figura 5. con el fin de prevenir perturbaciones provenientes de vibraciones mecánicas. y se monta sobre amortiguadores especiales. Por tanto. requiere de un circuito electrónico oscilador para que se mantenga una oscilación. la oscilación puede sostenerse de manera constante. En este caso.%. típicamente 30 pF. no varía significativamente.6 es posible observar algunos de los modos de vibración de los cristales más comunes. Por lo general. así como también dependen de sus deformaciones llamadas modos de vibración. Pero. de ahí su increíble exactitud. que depende de su tamaño. 5 El popular microcontrolador C L R a) b) =`^liX. para que Voltaje sintonizador Cristal resonador Frecuencia de salida Amplificador =`^liX. lo amplifica y lo retroalimenta al circuito oscilador. Algunos fabricantes diseñan cristales que ope- ran con una capacitancia de carga con valores de unos cuantos picofarads.7. pdf 7 En el tiempo en el que aún no existían las memorias ROM. de estos. En la figura 5. Por tanto. en inglés. disponible en: http://www. en Estados Unidos de América. y después presionando un botón para introducir la instrucción. pero no puede escribir (insertar) nuevos datos en esta. a estos pequeños aros se les llama bootstraps. de John R. el circuito electrónico debe tener una capaci- tancia en paralelo especificada por el fabricante. los últimos dos pueden ser generados por una onda sinusoidal. los datos que contiene la memoria ROM se almacenan de manera permanente durante su construcción. El circuito electrónico puede estar compuesto de transistores bipolares.%/ :`iZl`kffjZ`cX[fiZfeZfdgl\ikXj[`^`kXc\j% La mayoría de las aplicaciones de los circuitos osciladores requieren ondas sinusoidales o señales compatibles con los niveles lógicos TTL o CMOS. quienes tuvieron su origen en los vaqueros del norte de México. Soy originario del norte de México y durante mi adolescencia usar botas vaqueras era “cool” y casi una obligación. así pues.am1. la CPU puede leer (extraer) datos de la memoria ROM. Así pues. y podía ser muy largo y tedioso. en la memoria ROM pueden almacenarse las instrucciones de inicialización de la computadora y las rutinas de control requeridas en el encendido de la computadora por primera vez. Por lo que respecta a los dispositivos de memoria. en inglés. estos pueden contener miles o millones de datos. OP AMPs o compuertas digitales. a finales del siglo xix.7 6 Se recomienda leer un tutorial muy completo. ade- más de los puertos de entrada y de salida.9 se observan las salidas típicas de un circuito oscilador. Es importante remarcar que igualar la frecuencia del cristal con el circuito electrónico recomendado es responsabilidad del fabricante. los cuales se utilizan para jalar las botas hacia arriba y calzar cada pie. =`^liX.%0 JXc`[Xjkˆg`ZXj[\leZ`iZl`kffjZ`cX[fi% Dispositivos de memorias y puertos de entrada y salida Los otros componentes que conforman el sistema computacional son los dispositivos de memoria ROM y RAM. de ese tiempo también data la frase: “pulling 222 ELECTRÓNICA • MIJAREZ . titulado Quartz crys- tals resonators and oscillators.8 se muestra un circuito oscilador típico con compuertas digitales. desde la época de los legendarios cowboys.6 +15 V +10 V +5 V 0V –5 V Sinusoidal TTL CMOS =`^liX. En la figura 5.us/Local_Papers/U11625%20VIG-TUTORIAL. los usuarios de las computadoras debían introducir manualmente las instrucciones de inicialización cada vez que se encendía el sistema por primera vez. En su caso. Este tipo de botas tiene un par de pequeños aros de piel cosidos en la parte superior de las botas. 5 El popular microcontrolador un cristal con resonancia en paralelo opere a su frecuencia especificada. con información adicional acerca de los cristales de cuarzo. Este proceso se realizaba definiendo un conjunto de interruptores por cada instrucción. transistores FET. Este proceso se llamaba booting up the computer. Vig. Sí. para permitir la interfaz con el mundo analógico. en ocasiones. sin embargo. una transferencia solo puede realizarse en un tiempo determinado. para comunicación con otros dispositivos periféricos o incluso otras CPU. en este se incluyen las señales de interrupción del sistema. El bus de control El bus de control contiene las señales que se utilizan para realizar la lectura o la escritura de datos a memoria y/o a dispositivos de entrada y salida. las cuales. direcciones y control El término bus se usa para referirse al medio por el cual un grupo de señales puede transferir información digital des- de una o varias fuentes a cualquiera de varios destinos. como es el caso de la computadora que estamos analizando. ¿salen o entran de la CPU? Bien. por último. mientras que utiliza el bus de control para indicar si se desea “hablarle” al dispositivo (transmitir/escribir/sacar datos de la CPU) o “escucharlo” (recibir/leer/introducir datos hacia la CPU). Un sistema basado en una CPU. Por lo general. la memoria RAM contiene datos aleatorios. De manera general. Lo anterior significa que cualquier dato importante almacenado en la RAM debe ser escrito por la CPU después que se encendió el sistema. o los indicadores visuales. por lo general. aunque estas señales se tratan de manera independiente. cabe aclararse que la computadora usa puertos de entrada y salida para comunicarse con el exterior. son abreviadas como INT. como se ilustra en la figura 5. 5 El popular microcontrolador Por otro lado. puertos seriales y paralelos. Buses de datos. Cuando el sistema se enciende por primera vez. hace uso de tres tipos de buses: 1. estas señales de control salen de la CPU. Las señales que entran a la CPU cuando se activa la señal de RD son los datos que se leen de la memoria o puerto.4. hasta programas. Adicionalmente. además. El bus de control. 8 Las primeras memorias que se diseñaron para usarse en las computadoras eran de naturaleza secuencial. como en el caso de las cintas magnéticas.4 muestra únicamente dos puertos. lo que significa que la única forma de extraer los datos era en el mismo orden en el cual habían sido almacenados. 3. A todos los dispositivos que se encuentran en la periferia de la CPU y permiten la comunicación con el exterior se les llama dispositivos periféricos. es posible almacenar grupos de datos en las memorias RAM. El cuestionamiento que hago al explicar estas señales de control es el siguiente: ¿cuál es el sentido de corriente de las señales WR y RD?. Estos periféricos podrían ser los dispositivos necesarios para la aplicación concre- ta que se le dará al sistema computacional. Así. El bus de datos. se utilizó el término memoria de acceso aleatorio para enfatizar que en este tipo de memoria los datos podían ser leídos o escri- tos desde cualquier localidad del dispositivo. tales como el teclado. La figura 5. La CPU usa el bus de direcciones para seleccionar otros dispositivos en el sistema. así como también resultados intermedios y. la CPU sí puede leer datos de una memoria RAM y escribir datos nuevos en esta. existen otros periféricos que se pueden agregar a la CPU. con el auge de las computadoras en la década de 1980 esta palabra se acortó por “boot ” y se hizo popular hasta nuestros días para indicar el proceso de inicialización que se almacena en la memoria ROM de un sistema computacional. precisamente por el bus de datos. sin embargo. pero la computadora puede contener cuantos puertos requiera el dise- ñador. cuando se inventó la memoria RAM. del inglés write y read. oneself up by one´s own bootstraps”. que permite introducir la información necesaria para el funcionamiento del sistema. grupo editorial patria® 223 . tam- bién la señal de RD es una señal de salida. que permiten tener un monitoreo del proceso realizado. la cual significa “alcanzar el éxito por tu propio esfuerzo”. La palabra bootstrap se ha usado comúnmente en el ámbito computacional desde 1950.10 se representa el sentido de las principales señales de control de una CPU. En la figura 5. como los convertidores ADC y DAC. Es común que las señales de reloj y de reset se consideren parte del bus de control. para representar las señales de escritura y de lectura se usan las abreviaturas WR y RD. El bus de direcciones. 2.8 Por último. la CPU usa el bus de datos como medio para transferir infor- mación con dispositivos de memoria o puertos de entrada y salida. mientras que la figura 5.11 a) muestra la representación simbólica del bus de datos. vamos a considerar que la computadora tiene un bus de datos de 8 bits. el almacenamiento de instrucciones en una memoria ROM y de datos en una memoria RAM puede ser visto por la CPU como un conjunto de cajas. Para fines prácticos. en ambos sentidos. donde los puntos entre alambres significan una conexión. Hacia/desde Hacia/desde la RAM el resto del res s l a mb uale sistema A ivid ind Desde la ROM = Conexión Hacia un puerto Desde un puerto Hacia/desde el CPU a) b) =`^liX. la CPU tiene la posibilidad de leer el número escrito 224 ELECTRÓNICA • MIJAREZ .4 el bus de datos está representado como una entidad sólida. es decir. por los alambres que conforman este bus.%(( 9lj[\[Xkfj%X I\gi\j\ekXZ`ej`dYc`ZX%Y I\gi\j\ekXZ`eZfeXcXdYi\j% La información que se transfiere por el bus de datos es bidireccional. primero imaginemos la forma en que la CPU ve el mundo exterior. ya que en la realidad el bus de datos está formado por un grupo de alambres o líneas conductoras.%(' J\ek`[f[\cXjgi`eZ`gXc\jj\ŒXc\j[\Zfekifc[\leX:GL% El bus de datos En la figura 5. En cambio. Si la caja ya contiene un papel con un número escrito. y puertos de entra- da y de salida) para leer o escribir datos. La figura 5.11 b) ilustra la representación con alambres. con dispositivos externos (memorias RAM y ROM. la CPU se comunica. para la memoria RAM las cajas están abiertas. que es una representación simbólica. las cajas están selladas con un plástico transparente y cada caja contiene un número en un fragmento de papel que la CPU puede leer. por lo que la CPU puede escribir un número en un papel e insertarlo en la caja. Bus de direcciones Para describir el bus de direcciones. Para el caso de la memoria ROM. Por ejemplo. pero no puede modificar. 5 El popular microcontrolador WR RD CPU Reset Reloj INT =`^liX. según corresponda. 12 muestra esta representación de las memorias como conjuntos de cajas. Aunque parezca extraño. y que cada palabra tiene el ancho del bus de datos. 5 El popular microcontrolador 0 1 2 3 4 Cajas selladas (ROM) 0 1 2 3 4 Cajas abiertas (RAM) =`^liX. también puede borrar el número del papel y escribir un nuevo número. la CPU que estamos analizando tiene un bus de datos de 8 bits. se puede decir aquí que a cada localidad de memoria se le llama palabra. que utilizamos a manera de ejemplo para una mayor comprensión. o bien. la CPU puede no saber si escribe o lee un dato de una localidad de memoria o si escribe o lee un dato de un puerto de entrada o de salida. copiarlo y escribirlo en otra caja. Bus de control Dirección Memoria Bus de datos $0000 Bus de direcciones $0001 $0002 Apunta a la localidad $0003 PU de memoria o puerto de E/S $0004 C $0005 t se Re $0006 j $0007 lo Re $0008 Palabra de memoria $0009 $000A $000A 0 0 1 1 0 1 0 1 $000B $000C El carácter $ $000D indica un número $000E hexadecimal Bit 7 Bit 0 =`^liX. Estos bits se numeran del bit 0 al bit 7. la CPU ve el mundo exterior como un conjunto de cajas que pueden usarse para alma- cenar instrucciones y datos. como se ilustra grupo editorial patria® 225 . sin embargo. De esta manera. tal como se muestra en la figura 5. la CPU usa el bus de direcciones para apuntar a la localidad de memoria que le interesa. por ende. Cada localidad de memoria tiene un número de identificación único al cual se le deno- mina dirección.%() I\gi\j\ekXZ`e[\d\dfi`XjZfdfleZfealekf[\ZXaXj% en el papel. esto depende del di- señador y/o el programador. La figura 5. Por tanto.13. Incluso.%(* 9lj[\[`i\ZZ`fe\jXglekX[fXleX[`i\ZZ`e[\d\dfi`X% Con referencia a este mismo tema. el término formal que se utiliza es localidad de memoria en lugar de “cajas”. cada palabra en la memoria debe ser de 8 bits. resta. hay instrucciones que se ejecu- tan en un ciclo de máquina. internamente una CPU consiste en una serie de circuitos. sin embrago. 9 La razón por la cual se numeran los bits iniciando desde el número 0 la revelamos en el capítulo anterior. vamos a describir la arquitectura de su componente principal: la CPU.). también llamado ciclo de máquina. Para el ejemplo de la figura 5. Existen varias arquitecturas com- putacionales. La CPU es un componente complejo. el contenido de la palabra de memoria es 00110101%.10 A este conjunto de operaciones se le define como Ciclo de instrucción de la CPU.15. por lo que un halo de misterio rodea su funcionamiento. sin embargo. Donde cada instrucción representa una operación simple. división). otras en dos. como lo ilustra el diagrama de bloques simplificado de la figura 5. etc. Por tanto. de transferencia de datos o de operaciones de bifurcación (brincos condicionales o incondicionales).14. por lo general.9 Cada bit de una palabra de memoria puede almacenar un 0 o un 1. CICLO DE FETC H Búsqueda de la siguiente Decodificación de la Ejecución de la instrucción instrucción instrucción CI C LO D E I N STR U CC I Ó N =`^liX. pero antes de adentrarnos en su estudio. Este componente se caracteriza porque administra todas las actividades que se llevan a cabo en el sistema y realiza todas las operaciones sobre los datos. y todos los bits que conforman la palabra son propiamente leídos o escritos por la CPU en grupo de manera simultánea. NOT. Diagrama simplificado de una CPU De manera general. todas estas operaciones se representan por un conjunto de códigos binarios llamado con- junto de instrucciones. Repetir esta frase como mantra ayuda a des- mitificar el funcionamiento de la CPU. etc. Las instrucciones son codi- ficadas en forma binaria. el componente central de un sistema computacional es la CPU o microprocesador. Cualquiera que sea su tipo. el resultado final al ejecutar las instrucciones es el mismo.%(+ :`Zcf[\`ejkilZZ`e[\leX:GL% Algunos autores consideran a las operaciones de búsqueda y de ejecución como una operación conjunta a la que llaman ciclo fetch. lógicas (AND. ¿En cuánto tiempo se ejecuta un ciclo de instrucción? Bien. y se localiza en la dirección $000A. 10 La función principal de una CPU es buscar. Desmitificando a la CPU Ciclo de instrucción Como hemos apreciado hasta aquí. otras en cuatro. por ejemplo. OR. estas instrucciones son aritméticas (suma. A la capacidad total de la CPU de direccionar las diferentes localidades de memoria se le llama espacio de direc- ción y depende del bus de direcciones de la arquitectura computacional del sistema.13. decodificación y ejecución de instrucciones. 5 El popular microcontrolador en la figura 5. y el trabajo de la CPU es interpretarlas y ejecutarlas durante los ciclos de instrucción. está constituido por un determinado número de ciclos del reloj. ya que la CPU está compuesta por un conjunto de circuitos que ejecutan tres operaciones de manera continua: búsqueda. cuando describimos que podemos usar alambres para representar números. como se ilustra en la figura 5. la mayor parte de ese misterio no es justificado. multiplicación. decodificar y ejecutar instrucciones de manera cíclica.13. 226 ELECTRÓNICA • MIJAREZ . el ciclo de máquina es la unidad que representa el tiempo de ejecución de una determinada instrucción. el ciclo de instrucción. OR. Otros dos registros importantes son el puntero o apuntador de pila o stack pointer (SP) y el contador de programa o program counter (PC). en su totalidad. como llamadas a subrutinas. La figura 5. por sus siglas en inglés). por lo gene- ral. Por su parte. el cual es un área de memoria RAM reservada para guardar datos temporales o para almacenar datos que son resultado de la ejecu- ción de ciertas instrucciones. la cual realiza las operaciones numéricas con los datos almacenados. el hecho de que las operaciones de la ALU se realizan entre el registro acumulador (Acc) y un registro temporal (RTEMP) y. que los resultados son alimentados de regreso al acumulador a través de un bus interno. El registro PC es un registro de N bits. a todos los eventos internos de la CPU. negación. Destaca el hecho de que el registro SP contiene la dirección del stack o pila. decrementos. R3…). con el fin de identificar la instrucción e iniciar las acciones para ejecutarla.16 muestra el estado de los registros Acc y RTEMP antes y después de una operación lógica AND. corrimiento circular. . y. R2. estos circuitos se usan para el almacenamiento temporal de datos. por un lado. El microprograma de cada instrucción reside en la sección de decodificación de instrucciones y es ejecutado en dicha sección de tempori- zación y control. En esta sección.%(. en particular. 5 El popular microcontrolador Bus de datos VCC Buffer de datos Bus de datos interno ACC RTEMP PC SP IR R1 R2 R3 RN Conjunto de registros ALU Temporizador y control Señales internas Banderas de control Bus de direcciones GND Reset Bus de direcciones Bus de Oscilador control =`^liX. En este sentido. y un registro de instrucción (IR. complementos. XOR.`X^iXdXj`dgc`]`ZX[f[\Ycfhl\j[\leX:GL% Entre los circuitos más importantes de una CPU destaca un conjunto de registros de propósito general (R1. N es el ancho del bus de direcciones y su función es almacenar la dirección de memoria de la siguiente instrucción a ejecutar. en la sección de temporización y control. cada instrucción se divide en una serie de microinstrucciones llamado microprograma. ya que afecta y da se- cuencia. la ALU realiza operaciones como: sumas. por el otro. destaca. de una unidad aritmética y lógica (ALU. por sus siglas en inglés). al sistema computacional. limpiar y preestablecer. El con- tenido del registro IR pasa a un decodificador de instrucción. incrementos. donde. el cual almacena el código binario para cada instrucción a medida que se ejecuta. grupo editorial patria® 227 . El área de temporización y control es probablemente el elemento más complejo de la CPU. AND. como la operación AND de la figura 5. Se activa la señal de control de lectura. El contenido del contador de programa. es convenien- te hacer uso de la calculadora lógica que se incluye en el CD ROM que acompaña este libro. Calculadora lógica Para ganar intuición en el manejo de operaciones lógicas. y el RTEMP  F0H. IR.17 muestra la secuencia de señales y flujo de datos durante la búsqueda de una instrucción. La figura 5. el Acc  A3H. 5. El código de operación se almacena en el registro de instrucción. La descripción secuencial de cómo la CPU lleva a cabo el ciclo de instrucción es la siguiente: 1. RD. en este caso Acc  A0H. Ejecución del ciclo de instrucción La ejecución del ciclo de instrucción es una de las operaciones fundamentales efectuadas por una CPU. Involucra la búsqueda de una instrucción contenida en la memoria ROM y la decodificación y ejecución de la instrucción en la CPU.%(- <jkX[f[\cfji\^`jkifj8ZZpIK<DGXek\jp[\jgl„j[\leXfg\iXZ`ec^`ZX% En este ejemplo. antes de la operación lógica AND. 2. 5 El popular microcontrolador Acc RTEMP Antes de la Operación lógica 1 0 1 0 0 0 1 1 1 1 1 1 0 0 0 0 AND Operación lógica AND AND A. el cual puede corresponder a una operación muy simple como incrementar el registro Acc. Se generan las señales de control para permitir la entrada y la salida de datos de los registros internos de la ALU. 7. el código de operación es el número 86H. PC. 3. Por su parte. Las banderas sirven para la toma de decisiones cuando se utilizan instrucciones subsiguientes de bifurcación. PC. El contador de programa. El registro de banderas o de estados es un grupo de flip-flops individuales que pueden ponerse a 0 o 1 lógicos. operaciones más complejas requerirían la lectura de un segundo o tercer byte. el contenido de RTEMP se conserva y el contenido del acumulador se modifica. con base en las condiciones creadas por la última operación de la ALU. entre otros. Una vez almacenado el código de operación en el registro IR.18 muestra la pantalla de esta calculadora lógica. Sin embargo. se efectúa la decodificación o interpretación de dicho código. Los datos del código de operación de la instrucción se leen de la memoria ROM y se transfieren al bus de datos. 4. mientras que después de la operación lógica. el Acc contiene el resultado de la operación lógica. dentro de la CPU. ahora. en el extremo superior izquierdo se ubican los operadores 1 y 2 (operando 1 y operando 2). Como se puede observar en la figura. resul- tado negativo y acarreo. RTEMP Entre el Acc y el RTEMP Acc RTEMP Después de la Operación lógica 1 0 1 0 0 0 0 0 1 1 1 1 0 0 0 0 AND =`^liX. 6. La figura 5. En este ejemplo específico. además de que también se ejecuta en la ALU la operación especificada. que son equivalentes a los registro Acc y RTEMP de una ALU.16. respectivamente. en el 228 ELECTRÓNICA • MIJAREZ . como preparación para la siguiente búsqueda en la memoria ROM. se incrementa (PC  PC 1). se transfiere al bus de direcciones a través de un buffer. necesarios como parte de los datos para ejecutar la operación. Las banderas incluyen indicadores de cero. y por último. 5 El popular microcontrolador Bus de direcciones ROM Da tos CPU BUFF DIR DECO DIR FFFFH BUS BUFF PC INTERNO DATOS 8 6 CS R 0001H H Bus de datos 0000H RD D 86H IR Señal de lectura (código de operación) =`^liX. corrimiento a la derecha.% Lógica para establecer bits individuales en 0 lógico Una característica importante de la operación lógica AND es que el RTEMP de la ALU se puede usar como un registro que puede filtrar dígitos individuales del registro Acc. OR y NOT. dos operaciones de corrimiento de bits. grupo editorial patria® 229 . 8ZZ`fe\j[\cfjYlj\j[\[`i\ZZ`fe\j#[XkfjpZfekifc#[liXek\cXY’jhl\[X[\leZ[`^f[\fg\iXZ`e% extremo inferior izquierdo se distingue el resultado de la operación lógica. una operación lógica interesante llamada SWAP. en el extremo derecho se distinguen las operaciones lógicas que se pueden realizar. =`^liX.%(/ :XcZlcX[fiXc^`ZX[\jgl„j[\\a\ZlkXicXfg\iXZ`e8E. además de algunas operaciones lógicas comunes generadas a partir de las operaciones básicas: NAND.%(. la cual permite ver solo los bits de interés y poner en 0 los bits que no importan.19 muestra el esquema de la operación lógica AND usando el registro RTEMP como máscara. y corrimiento a la izquierda. Las operaciones lógicas que se decidió incluir en esta calculadora son las operaciones lógicas básicas: AND. RR. La figura 5. Cuando el registro RTEMP se usa de esta manera se dice que fun- ciona como una máscara. que en México se traduce como intercambio o cambalache. NOR y XOR. RL. que es equivalente al resultado del registro Acc después de la operación. 20 a) se muestra un ejemplo cuando el bit 4 del Acc es un 1 lógico. sin afectar el estado de los otros bits en el registro. solo queremos saber si el bit 4 es 0 o 1. se utiliza para poner en 1 lógico bits particulares en el Acc. X Y =`^liX. después de la operación lógica AND. la máscara que necesitamos en el registro RTEMP es el número 00010000B o 10H. si el bit 4 es 1 lógi- co.%(0 Fg\iXZ`ec^`ZX8E. el resultado en el Acc será 10H. 5 El popular microcontrolador Acc Máscara AND Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 =`^liX.20 muestra el resultado de la operación AND usando el operando 2 como registro máscara igual a 00010000 (10H).ljXe[f\ci\^`jkifIK<DGZfdfd}jZXiX% Por ejemplo.%)' Fg\iXZ`ec^`ZX8E.ljX[XgXiX[\k\id`eXi\c\jkX[f[\cY`k+\e\cfg\iXe[f(#\hl`mXc\ek\Xc8ZZ% X <a\dgcfZlXe[f\cY`k+4(c^`Zf%Y <a\dgcfZlXe[f\cY`k+4'c^`Zf% Lógica para establecer bits individuales en 1 lógico Si la operación lógica AND es útil para poner bits individuales del registro Acc en 0 lógico. mientras que en la figura 5. Ahora. su contraparte. En la figura 5.21 se observa el esquema de la operación lógica OR usando el RTEMP como máscara para establecer en 1 lógi- co los bits que se requieran. En la figura 5. o 00H si el bit 4 es un 0 lógico.20 b) se ilustra un ejemplo cuando el bit 4 del Acc es un 0 lógico. primero supongamos que el registro Acc  10011101B (9DH) y posteriormente. si en el registro Acc tenemos un número del cual únicamente nos interesa saber el estado del bit 4. en otra operación. asumi- remos que el registro Acc  01000100B (44H). 230 ELECTRÓNICA • MIJAREZ . La figura 5. lógica OR. Entonces. es decir. haciendo uso de la operación lógica OR y estable- ciendo el RTEMP igual a 10000000B (80H). sin modificar los bits restantes. Si no se recuerda este tema. =`^liX. En la figura 5. vale la pena que le demos un vistazo a esa sección de compuertas del capítulo 4.%)) Fg\iXZ`ec^`ZXFIljX[XgXiX\jkXYc\Z\i\e(c^`Zf\cY`k.%)( Fg\iXZ`ec^`ZXFIljXe[f\ci\^`jkifIK<DGZfdfd}jZXiX% Por ejemplo. Entonces. deberemos usar la operación lógica XOR y haremos que el contenido del registro RTEMP  10000001B (81H). vamos a asumir que el Acc  10110110B (B6H) y que deseamos complementar el estado de los bits 7 y 0 simultáneamente. en general. La figura 5. En la figura 5.24 se muestra este ejemplo usando la calculadora lógica. por supuesto sin afectar el estado de los bits restantes. Corrimiento de bits La calculadora lógica contiene dos operaciones que comúnmente tienen las ALU de los microprocesadores: grupo editorial patria® 231 . Es decir. Acc Máscara XOR Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 =`^liX. La magia de la operación lógica XOR para complementar bits o grupo de bits radica en su tabla de verdad. en particular. que es un 1 lógico. después de esta operación lógica.[\ci\^`jkif8ZZ#j`eX]\ZkXicfjY`kji\jkXek\j% Lógica para complementar bits individuales En algunos casos. el resultado del registro Acc. o de cierto grupo de bits. asumamos que el contenido del registro Acc  01100101B (65H) y que se requiere poner en 1 lógico el bit 7 del acumulador. 5 El popular microcontrolador Acc Máscara OR Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 =`^liX. que es un 0 lógico.%)* Fg\iXZ`ec^`ZXOFIljXe[f\ci\^`jkifIK<DGZfdfd}jZXiX% En este caso.22 ejemplifica este caso usando la calculadora lógica. podemos obtener el resultado deseado: Acc  11100101B (E5H). y el bit 0. se convierta en 0 lógico. será Acc  00110111B (37H). la operación lógica que nos permite alcanzar este objetivo es la operación XOR. cambie a 1 lógico. se requiere que un registro complemente o niegue el estado de un bit. Por tanto. Para realizar esto.23 se presenta el esquema de la operación lógica XOR usan- do el RTEMP como máscara para conmutar el estado de los bits o grupo de bits de interés. queremos que el bit 7. Entonces. Acc  11000101B (C5H). el contenido del acumulador tendrá el valor 11100010B (E2H). asumiremos que el Acc  11000101B (C5H).p'[\c8ZZ#j`eX]\ZkXicfjY`kji\jkXek\j% a) Los corrimientos o rotaciones de bits hacia la derecha. b) Los corrimientos a la izquierda. Operación lógica de cambalache SWAP La operación lógica SWAP intercambia los nibbles (grupos de 4 bits) de orden alto y bajo del acumulador (bits 7-4 y bits 3-0). al ejecutar la operación RR. al ejecutar la operación RL. por ejemplo.%). RR. Fg\iXZ`ec^`ZXIC#[fe[\\cY`k. 5 El popular microcontrolador =`^liX. La operación también puede ser vista como una operación lógica de rotación de 4 bits. como se aprecia en la figura 5.25. el contenido del acumulador tendrá el valor 10001011B (8BH). Como ejemplo. el bit 7 es rotado a la posición del bit 0. Usando la calculadora lógica. Así. asumamos el mismo valor del acumulador del caso anterior. Así. así. usando la calculadora lógica. al ejecutar la operación SWAP. Para la operación RL. =`^liX. los ocho bits del registro Acc son rotados un bit a la izquierda. es posible comprobar este resultado.27 muestra este ejemplo usando la calculadora lógica.\jifkX[fXcXgfj`Z`e[\cY`k'% Para el caso de la operación lógica RR. 232 ELECTRÓNICA • MIJAREZ . Como ejemplo. el bit 0 es rotado a la posición del bit 7. RL. si el acumulador contiene el valor 11000101B (C5H). La figura 5.%)+ Fg\iXZ`ec^`ZXOFIljX[XgXiXZfdgc\d\ekXi\c\jkX[f[\cfjY`kj. el resultado del acumulador será el valor 01011100B (5CH).26. es posible comprobar este resultado como se aprecia en la figura 5. los ocho bits del acumulador son rotados un bit a la derecha. 11 Como mencionamos antes.%). al describir la función del bus de direcciones. peor aún. con un bus de direcciones de 10 bits podemos direccionar 210  1 024 localidades o 1 Kbyte. Para el caso de la CPU que estamos analizando vamos a asumir que el bus de direcciones es de 16 bits. los cuales a su vez. por varias razones no es muy útil referirse a las localidades de memoria usando el sistema decimal. Como se puede observar. por lo grupo editorial patria® 233 .% =`^liX. o la letra B. es una práctica común empezar a contar desde el 0. Ambas notaciones son comunes en la literatura. 216  210 r 26  64 K localidades. Sin embargo.28 muestra esquemáticamente el espacio de dirección para una CPU de 16 bits. podemos extrapolar nuestro conocimiento a sistemas más complejos.%)- Fg\iXZ`ec^`ZXII#[fe[\\cY`k'\jifkX[fXcXgfj`Z`e[\cY`k. para la notación binaria puede ser el símbolo %. Por tanto. en tanto. mientras que en el caso de un bus de direcciones de 6 bits podemos direccionar 26  64 localidades. respectivamente. CXfg\iXZ`ec^`ZXJN8G`ek\iZXdY`Xcfje`YYc\j[\fi[\eXckfpYXaf[\c8ZZ% Organización de memoria y decodificación de direcciones Organización de memoria La arquitectura computacional que estamos describiendo refleja un sistema muy simple. No obstante. En vez de referirnos a la localidad 8 189 usando su valor decimal o. la figura 5.12 11 Las computadoras modernas. por lo que las localidades son numeradas desde 0 hasta 65 535. entre las que destacan: el símbo- lo $. a la totalidad de las localidades de memoria que una computadora es capaz de direccionar se le denomina espacio de dirección. que se denominan como byte de orden alto y byte de orden bajo. que fue utilizado en el diseño de las primeras computadoras digitales.28 indica que con este bus de direcciones es posible llevar a cabo 216 combi- naciones diferentes de 1 y 0. en este tipo de sistemas. como lo mencionamos en el capítulo 0. si empezamos a contar desde el número 1. usan buses y protocolos de comunicaciones más complejos. 5 El popular microcontrolador =`^liX. 12 Debemos recordar que existen varias formas para indicar si un número se encuentra en notación hexadecimal. La figura 5. como las PC. se dividen en dos bytes. por lo general. Asimismo. Por ejemplo. usando su equivalente binario 0001111111111101B. si aprendemos los fundamentos y educamos nuestra intuición. es muy común usar la abreviatura K (kilo) para referirnos a las localidades de memoria a las que se puede acceder. en este caso 1FFDH. No obstante. esto significa que la CPU puede apuntar a 65 536 localidades de memoria. resulta preferible y más práctico referirse a las direcciones usando la notación hexadecimal. o la letra H. en la segunda opción. en la primera opción.%)0 <jgXZ`f[\d\dfi`X[\-+BYpk\jj`dYfc`qX[fZfdflegXjk\c% que en este libro usaremos cualquiera de estos caracteres para indicar si la representación usa el sistema numérico hexadecimal o binario. IOR. IOW. los puertos pueden ser seleccionados vía terminales especiales de control de lectura. se asume que el número se encuentra en notación decimal. por lo que a este método se le llama E/S por memoria. Entonces. elegiremos la E/S por memoria porque ilustra aspectos importantes de la decodificación de direcciones. 5 El popular microcontrolador A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 μP 0000H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0001H 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 FFFEH 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 FFFFH 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 Byte de orden mayor Byte de orden menor =`^liX. Para realizar la selección de cada periférico. antes tenemos que partir el pastel y asignarle una rebanada a cada periférico. se asigna un espacio de direcciones a cada periférico. debemos decidir en dónde vamos a colocar los dispositivos.29 muestra un mapa de memoria que simboliza un pastel par- tido en rebanadas. podemos decir que para seleccionar los puertos existen dos opciones. de la CPU y de acuerdo con instrucciones dedicadas llamadas instrucciones de E/S aislada. ya sean memorias o dispositivos de E/S. a esto se le conoce como mapa de memoria. y puertos de E/S. En este caso. y de control de escritura. Pero. Considérese que cuando no se agrega ningún prefijo. La figura 5. res- pectivamente. memorias RAM y ROM. los puertos de E/S se seleccionan como si fueran memorias. De nuestro pastel de 64 Kbytes de direccionamiento total.%)/ <jgXZ`f[\[`i\ZZ`egXiXleX:GL[\(-cˆe\Xj[\[`i\ZZ`fe\j% Hasta el momento no hemos precisado cómo son seleccionados por la CPU los diferentes periféricos. 234 ELECTRÓNICA • MIJAREZ . ROM RAM 00 H Puertos de 00 E/S FH FFF =`^liX. por sus siglas en inglés). Las memorias ROM y RAM que necesita el sistema descrito deben ser de 4 Kbytes cada una. el mapa de memoria se dividió en 16 fragmentos de 4 Kbytes. El decodificador puede ser un CI. de 4 Kbytes y dos puertos.31 b) representa una de las opciones posibles para realizar el mapa de memoria.30 ilustra un mapa de memoria con forma rectangular. Como el bus de di- recciones de esta CPU es de 16 bits (A0-A15). En este caso. 5 El popular microcontrolador Sin embargo. por lo que debemos decidir dónde colocar los cuatro dispositivos. en el cual se asigna un espacio de direccionamiento de 4 Kbytes a cada dispositivo periférico. La memoria ROM ocupa el espacio de direcciones desde la grupo editorial patria® 235 . Adicionalmente. ROM y RAM. La figura 5. la figu- ra 5. como se observa en la figura 5. Por tanto. la decodificación puede ser parcial o total. que le permita a la CPU seleccionar un dispositivo a la vez. Decodificación parcial o total Para explicar las decodificaciones de direcciones parcial y total vamos a considerar un sistema simple basado en un microprocesador con dos memorias. Si se tienen varios dispositivos de memoria y de puertos.31 a). ya sea con CI discretos o con un dispositivo lógi- co programable (PLD. la CPU o μP realiza operaciones de transferencia de datos desde o hacia un dispositivo perifé- rico. resulta más fácil realizar el mapa de memoria en forma de bloques rectangulares. uno de entrada para realizar la interfaz a un teclado y uno de salida para efectuar la interfaz con un display de 7 segmentos. Dirección hexadecimal Contenido 0 0 0 0 0 0 0 1 4K bytes de ROM 0 F F E 0 F F F 1 0 0 0 4K bytes Puerto de entrada 1 F F F 2 0 0 0 2 0 0 1 4K bytes de RAM 2 F F E 2 F F F 3 0 0 0 4K bytes Puerto de salida 3 F F F 4 0 0 0 Direcciones abiertas (disponibles) F F F F =`^liX. se hace necesario utilizar un decodificador de direc- ciones. 74LS139 y 74LS159. o diseñarse con compuertas lógicas. como los 74LS138.%*' DXgX[\d\dfi`X\e\chl\j\Xj`^eXle\jgXZ`f[\[`i\ZZ`e[\+BYpk\jXZX[X[`jgfj`k`mfg\i`]„i`Zf% Como sabemos. se puede decir que tenemos un espacio de dirección de 64 Kbytes. 9002H… hasta la 9FFFH.33 y 5. Es decir. Para la selección del puerto de salida se asignó el espacio de direcciones desde 8000H hasta la 8FFFH. no causa ningún daño. de A0 a A11 como entradas de dirección de la memoria ROM o de la memoria RAM y de A12 a A15 para selección del dispositivo.%*( J`jk\dXj`dgc\YXjX[f\eleμG%X . únicamente se utilizaron las direcciones A15 a A12. Por tanto. cualquier direc- ción cuyos 4 bits más significativos se encuentren en 0 lógico. para seleccionar cualquiera de estos dos puertos se tienen 4 096 posibles direcciones.`X^iXdX[\Ycfhl\j%Y DXgX[\d\dfi`X% 0000H hasta la 0FFFH. En otras palabras. seleccionarán los 4 Kbytes inferiores del mapa de memoria. en este caso. Para la memoria RAM se puede usar el mismo principio. Por lo que para generar el /CS se requiere de un inversor adicional. A la lógica de decodificación de las memorias ROM y RAM de las figura 5. No obstante. Por su parte. en este caso la memoria ROM.32. 9001H. ya que se usa el bus de direcciones completo de la CPU para acceder a los datos de las memorias. la memoria ROM se podría seleccionar con cualquier dirección de 16 bits de la forma 0000 XXXX XXX XXXXB o 0XXXH. todas las direcciones son válidas. debe conectarse a una lógica combinacional que tuviera como entradas los 4 bits más significativos y como salida las señal de /CS.34 se les llama decodificación total de direcciones. La lógica de decodificación de estos puertos se denomina decodificación parcial de direcciones. En consecuencia. la habilitación de la memoria ROM denominada CS o chip select. 8002H… hasta 8FFFH. la memoria RAM ocupa desde la dirección 2000H hasta la 2FFFH. como se ilustra en la figura 5. 8001H. para escribir un dato al puerto de salida po- demos usar las direcciones 8000H. Usar cualquiera de todas estas direcciones para seleccionar un dispositivo. para leer un dato del puerto de entrada se pueden utilizar las direcciones 9000H. esta debe habilitarse con la dirección de 16 bits 0010 XXXX XXXX XXXXB o 2XXXH. como se ilustra en la figura 5. esto es. sin embargo. para el puerto de entrada se establecieron las direcciones desde 9000H hasta 9FFFH. Con la asignación de direcciones que se ilustra en la figura 5. en este caso activo BAJO.33. 236 ELECTRÓNICA • MIJAREZ . De la misma manera. el puerto de salida ocupa desde la dirección 8000H hasta la 8FFFH y el puerto de entrada ocupa desde la dirección 9000H hasta la 9FFFH.31 b). debido a que no se usa el bus de direcciones completo. 5 El popular microcontrolador 0000H ROM 0FFFH 1000H Totalmente 1FFFH decodificadas SI 2000H RAM (9000H-9FFFH) 2FFFH CS 3000H RD INT 3FFFH 8 4000H A0 4FFFH Decodificador 4 μP INT 5000H A15 5FFFH WR D0-D7 6000H 12 RD 6FFFH 7000H A0 7FFFH A1 1 D0-D7 (0000H-0FFFH) CS ROM 8000H Salida 8FFFH Parcialmente OE 9000H Entrada decodificadas A0 9FFFH A11 RAM (2000H-2FFFH) A000H CS D0-D7 AFFFH OE B000H R/W BFFFH (8000H-8FFFH) C000H WR CFFFH CS D0-D7 D000H DFFFH E000H EFFFH F000H FFFFH a) b) =`^liX. es posible tener 16 posibles salidas que se pueden usar como habilitaciones o selectores de chip.%*) >\e\iXZ`e[\c&:JgXiXcXd\dfi`XIFDljXe[fc^`ZXZfdY`eXZ`feXc[`jZi\kX% A0 Tabla de verdad Entradas Salidas A15 A14 A13 A12 /CS Bus de 0 0 1 0 0 direcciones Expresión booleana A12 /CS = A15 + A14 + A13 + A12 A16 RAM 4K /CS =`^liX. si se requiere una decodificación total de los puertos de entrada o de salida.34 a).%** >\e\iXZ`e[\c&:JgXiXcXd\dfi`XI8DljXe[fc^`ZXZfdY`eXZ`feXc[`jZi\kX% si se está diseñando un sistema basado en un microprocesador que pueda ampliarse en un futuro próximo. en la decodificación. los grupo editorial patria® 237 . al bus de direcciones completo del μP. de lo contrario. Conectando los 4 bits más significativos como entradas del decodificador. CS. De esta manera. la decodificación par- cial es plenamente funcional. La técnica más común de decodificación de direcciones es con el uso de un CI decodificador como el de la figura 5. se debe evitar la decodificación parcial. Pero.31 a). ya que inutiliza mucho espacio de direcciones. tendríamos que involucrar. 5 El popular microcontrolador A0 Tabla de verdad Entradas Salidas A15 A14 A13 A12 /CS Bus de 0 0 0 0 0 direcciones Expresión booleana A12 /C8 = A15 + A14 + A13 + A12 A15 /C8 ROM 4K =`^liX. tal como se muestra en la figura 5. Desde el punto de vista del diseñador de hardware. La figura 5. haremos uso de un decodificador de 2 a 4. ahora vamos a suponer que se nos pide diseñar el sistema con decodificación total para la memoria ROM y decodificación parcial para la memoria RAM.. El μP tiene 10 líneas de direcciones (A0-A9) y 8 líneas de datos (D0-D7). A0) /CS 1000 0000 0000 0000 0 Expresión booleana /CS = A15 + A14 + A13 + A12. En este caso.. asignamos la memoria ROM al primer bloque del mapa de memoria y en el segundo bloque involucramos todo el bus de direcciones para seleccio- nar la memoria RAM de 128 bytes.%*+ X . Por ejemplo.. no obstante... podemos seleccionar la memoria ROM o la memoria RAM con direcciones mayores a la capacidad de la memoria. desde el punto de vista del programador se podría pensar que dos direcciones diferentes leen dos localidades diferentes. cada uno. si queremos seleccionar el puerto de salida con la dirección 8000H.35.. esta localidad. Tabla de verdad Entradas Salidas (A35.. sin embargo.. como el 74LS139. Si se nos solicita una decodificación parcial.. Usando el mapa de memoria del ejemplo anterior. Para esto.. 5 El popular microcontrolador puertos de entrada o de salida serían seleccionados con una dirección única.. El espacio de dirección de este μP es de 210  1Kbytes. la cual se seleccionaría cuando A9 es un 0 lógico. debemos usar un decodificador de 16 entradas a 1 salida.. la última localidad de la memoria RAM es la 27FH..\Zf[`]`ZXZ`ekfkXcgXiX\cgl\ikf[\jXc`[X%Y @dgc\d\ekXZ`e[\le[\Zf[`]`ZX[fiZfeZfdgl\ikXjljXe[fcX[`i\ZZ`e/'''? gXiXj\c\ZZ`feXi\cgl\ikf% Asimismo.. Ahora. podría leerse tanto con la dirección 27FH como con la dirección 37FH.. Como el espacio de direc- cionamiento del μP es de 1 Kbyte y la memoria ROM es de 256 bytes. vamos a suponer que se requiere que el sistema basado en un microprocesador tenga una decodificación total tanto para la memoria ROM como para la memoria RAM. tendríamos que implementarlo con compuertas lógicas.... Considerando el mismo sistema basado en un μP.. dividimos el espacio de memoria del μP en 4 bloques de 256 bytes.34 b).. como lo mues- tra la figura 5. y a la parte alta le asignamos la memoria RAM de 128.. Por ejemplo. la cual se seleccionaría cuando A9 es un 1 lógico.36 muestra el mapa de memoria y el diagrama a bloques del circuito. Entonces. se hace necesario dividir el mapa de memoria en 4 bloques de 256 bytes.. Debido a que no se decodifican todas las direcciones del μP. Por ejemplo.37 muestra el mapa de memoria y el diagrama a bloques del circuito. como se muestra en la figura 5. La figura 5... podemos usar un solo bit del bus de direcciones (A9) y dividir el mapa de memoria en dos bloques de 512 bytes cada uno. también se puede realizar la decodificación parcial con memorias o con puertos. ya sea con CI dis- cretos o con un PLD. cada uno. Como este deco- dificador en CI no existe comercialmente.. A1 + A0 Decodificador Puerto μP A0 = A15 /CS de Decodificador salida /WR /WR A15 CS A14-A0 a) b) =`^liX.. a la parte baja le asignamos la memoria ROM de 256 bytes. Se nos pide realizar el mapa de memoria y el diagrama a bloques del circuito usando decodificación parcial. no importa qué direcciones se usen si se tiene conocimiento cabal del mapa de direcciones... vamos a suponer que tenemos un sistema basado en un microprocesador. 238 ELECTRÓNICA • MIJAREZ . el cual cuenta con una memoria ROM de 256 bytes y una memoria RAM de 128 bytes. se seleccionan los 128 bytes correspondiente a la parte baja de los 256 bytes. en cambio.%*- J`jk\dXYXjX[f\eleμGZfe[\Zf[`]`ZXZ`ekfkXcgXiXcXd\dfi`XIFDpZfe[\Zf[`]`ZXZ`egXiZ`XcgXiXcXd\dfi`XI8D% X . :. :.`X^iXdXXYcfhl\j[\cZ`iZl`kf%Y DXgX[\d\dfi`X% Hexa A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 uP 000H 0 0 0 0 0 0 0 0 0 0 ROM A9-A0 /WR /RD D0-D7 0FFH 0 0 1 1 1 1 1 1 1 1 100H 0 1 0 0 0 0 0 0 0 0 A9 A8 /RD RAM ROM 74LS139 1FFH 0 1 1 1 1 1 1 1 1 1 A7-A0 D0-D7 /Y3 /Y2 /Y1 /Y0 200H 1 0 0 0 0 0 0 0 0 0 /CS 2FFH 1 0 1 1 1 1 1 1 1 1 /RD RAM 300H 1 1 0 0 0 0 0 0 0 0 A6-A0 W/R D0-D7 /CS 3FFH 1 1 1 1 1 1 1 1 1 1 a) b) =`^liX.`X^iXdXXYcfhl\j[\cZ`iZl`kf%Y DXgX[\d\dfi`X% Del mapa de memoria de la figura 5. :. El diagrama a bloques de este grupo editorial patria® 239 . Cuando A7 es un cero lógico. :. para realizar la decodificación total usamos la salida /Y1 del decodifica- dor de 2 a 4 y la dirección A7 como entradas. mientras que la salida de este decodificador será la señal de habilita- ción /CS. J`jk\dXYXjX[f\eleμGZfe[\Zf[`]`ZXZ`egXiZ`XcgXiXXdYXjd\dfi`Xj%X . :. 5 El popular microcontrolador Hexa A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 uP 000H 0 0 0 0 0 0 0 0 0 0 001H 0 0 0 0 0 0 0 0 0 1 :.%*. :. :. A9-A0 /WR /RD D0-D7 0FFH 0 0 1 1 1 1 1 1 1 1 ROM : : : : : : : : : : : : : : : : : : : : /RD ROM 1FFH 0 1 1 1 1 1 1 1 1 0 A7-A0 D7-D0 1FFH 0 1 1 1 1 1 1 1 1 1 200H 1 0 0 0 0 0 0 0 0 0 /CS 201H 1 0 0 0 0 0 0 0 0 1 : : : : : : : : : : A9 27FH 1 0 0 1 1 1 1 1 1 1 : : : : : : : : : : RAM : : : : : : : : : : /RD RAM : : : : : : : : : : A6-A0 M/R D7-D0 3FFH 1 1 1 0 0 0 0 0 0 0 /CS 3FFH 1 1 1 1 1 1 1 1 1 1 a) b) =`^liX.37 b) es posible apreciar que la única dirección que no ha sido considerada en la decodificación de la RAM es A7. :. se seleccionan los 128 bytes de la parte superior. :. Por tanto. cuando A7 es un 1 lógico. 37 a). estableciendo la memoria RAM en la parte baja de los 256 bytes asignados a la RAM. Ahora. y a un puerto de salida mapeado a memoria. En consecuencia. El espacio de dirección de este μP es de 1 Kbyte. fue necesario realizar la conexión en paralelo para formar la palabra de 8 bits reque- rida.38 se representa el diagrama de bloques del circui- to y el mapa de memoria. además de un decodificador de 3 a 8 74LS138 y diferentes compuertas digitales. por lo que podemos dividir el mapa de memoria en 4 bloques de 256 bytes. usando memorias de 128 nibbles (4 bits). regresemos a nuestro μP de 8 bits de datos y 16 bits de direcciones. se requiere que el sistema basado en este microprocesador contenga un bloque de memoria de 32 Kbytes de RAM y 32 Kbytes de ROM. 240 ELECTRÓNICA • MIJAREZ . se muestra en la figura 5. El diagrama del circuito y su mapa de memoria se observan con claridad en la figura 5. pero no de su capacidad total.38. 5 El popular microcontrolador μP A9-A0 WR/ RD/ D0-D7 A9 A8 Hexa A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 RD/ ROM 000H 0 0 0 0 0 0 0 0 0 0 139 A7-A0 Y3/ Y2/ Y1/ Y0/ ROM /CS 0FFH 0 0 1 1 1 1 1 1 1 1 100H 0 1 0 0 0 0 0 0 0 0 RD/ RAM 17FH 0 1 0 1 1 1 1 1 1 1 A6-A0 180H 0 1 1 0 0 0 0 0 0 0 WR/ RAM 1FFH 0 1 1 1 1 1 1 1 1 1 A7 CS/ 200H 1 0 0 0 0 0 0 0 0 0 Y1/ A7 CS/ RAM 2FFH 1 0 1 1 1 1 1 1 1 1 Y1/ A7 CS/ RAM 0 0 1 300H 1 1 0 0 0 0 0 0 0 0 0 0 0 Parte baja 0 1 0 Parte alta 0 1 1 1 0 1 1 0 1 1 1 1 1 1 1 3FFH 1 1 1 1 1 1 1 1 1 1 a) b) =`^liX. En este caso. para obtener los 128 bytes de RAM necesarios para el sistema. Las memorias con las que se cuenta son: ROM de 8Kbytes. se requiere realizar el mapa de memoria y el diagrama de blo- ques del circuito usando decodificación parcial. se requirió usar dos memorias con su respectivo /CS. por tanto. RAM de 16Kbytes. En la figura 5. un bloque para la memoria RAM y un bloque para el puerto de salida. Existen sistemas basados en microprocesadores que requieren cierta cantidad de memoria RAM o ROM. en este caso.38. No obstante. Por ejemplo. de tal forma que la RAM 1 provee al bus de datos los bits D0 a D3 y la RAM 2 los bits D4 a D7.%*. un sistema basado en un microprocesador de 8 bits de datos y 10 líneas de direcciones. para el caso de la memoria ROM. contamos con el ancho de los bits necesarios. pero los dispositivos de memoria con los que se cuenta no proveen la cantidad solicitada en un solo CI. Como se puede observar en la figura 5.`X^iXdXXYcfhl\j[\cZ`iZl`kf%Y DXgX[\d\dfi`X% circuito con decodificación total.39. asignar dos bloques para la memoria ROM. como lo ilustra la figura 5. J`jk\dXYXjX[f\eleμGZfe[\Zf[`]`ZXZ`ekfkXcgXiXcXd\dfi`XIFDpleX[\Zf[`]`ZXZ`egXiZ`XcgXiXcXd\dfi`XI8D% X . por lo que se deben seleccionar diferentes dispositivos o bloques de memoria. requiere conectarse a un sistema de memorias de 512 bytes de ROM y 128 bytes de RAM. Por otro lado. solo se cuenta con memorias RAM de 128 nibbles y memorias ROM de 256 bytes. el/CS de la memoria RAM 1 y de la memoria RAM 2 se seleccionó al mismo tiempo. el ajuste de señales de voltajes y corrientes. como personas. en sí mismos. la compatibilidad se refiere a la temporización entre el μP y sus peri- féricos. siempre y cuando se realice su interfaz de manera correcta. que se define como la unión o el límite compartido entre miembros de un grupo que son capaces de funcionar de forma compatible y coordinada. tienen poco valor funcional. la RAM no toma cuenta cómo se genera su habilitación /CS. las memorias RAM que tenemos para el diseño son de 16 Kbytes. sincronizados. En el contexto que nos ocupa. por tanto.%*/ J`jk\dXYXjX[f\eleμGZfe[fjYcfhl\j[\d\dfi`Xj1IFDpI8D%X . Por tanto.39 es posible notar que al dividir nuestro mapa de memoria en 8 secciones. Sin embargo. Dichos grupos pueden estar integrados por diferentes elementos. A8 LS139 ROM1 8 D0-D7 A0-A7 ROM2 000H CS/ RD/ D0-D7 ROM1 CS/ 0FFH ROM RAM1 100H 7 4 ROM2 A0-A6 D0-D3 RAM2 1FFH CS/ RD/ 4 200H WR/ RAM RAM1 RAM2 D4-D7 2FFH Puerto de salida 300H CS/ D0-D7 8 Puerto WR/ de salida 3FFH a) b) =`^liX. de 8 Kbytes cada una. usamos dos habilitaciones del decodificador como entradas a una compuerta AND para generar el /CS de cada memoria RAM como salida. A la interconexión de partes de un sistema se le conoce como interfaz. Por otro lado. etc. Aunque constituyen el componente principal de los sistemas computacionales. en la figu- ra también es fácil observar que es posible acceder a los 16 Kbytes de datos de la RAM habilitando de forma indepen- diente cada bloque de 8 Kbytes. en otras palabras. la mayoría de estos no tiene una memoria interna sustancial y pocos po- seen puertos de entrada y salida que permitan conectarlos de forma directa con los dispositivos periféricos. la dirección de los datos transmitidos y. Interfaz con dispositivos periféricos La mayoría de los microprocesadores. En esta sección nos centramos en la sincronización y transmisión de datos desde y grupo editorial patria® 241 . como base de tiempo. 5 El popular microcontrolador Microprocesador WR/ RD/ A0-A9 D0-D7 2 Deco 8 A9. es sencillo asignar un bloque a cada memoria ROM. instrumen- tos. el μP opera como parte de un sistema y requiere interconectarse con las otras partes para obtener su valor práctico. Asimismo. sistemas. después de todo.`X^iXdX[\Ycfhl\j[\cZ`iZl`kf%Y DXgX[\d\dfi`X% En la figura 5. en algunas ocasiones. la coordinación o sincronía significa que todas las operaciones están controladas por señales provenientes de un reloj. porque contamos con memorias de esa capacidad. lecturas y escrituras. controladores pro- gramables de estaciones de despliegue. sin embargo. interfaz programables de comunicaciones o de puertos. toma la forma de: 1. además de memorias RAM y ROM. los buses de direcciones. controladores programables de teclados. como el DMA. de manera que este periférico puede tener acceso a la memoria principal del sistema sin tener que pasar a través del μP. en particular. Interrupciones. 242 ELECTRÓNICA • MIJAREZ . 3. Por lo general. 5 El popular microcontrolador 0000 H Microprocesador ROM1 /WR /RD A0-A15 D0-D7 1FFF H 2000 H ROM2 3FFF H 3 4000 H Deco ROM3 A15-A13 13 5FFF H LS138 6000 H ROM1 ROM4 ROM2 8 ROM3 7FFF H A0-A12 D0-D7 ROM4 8000 H CS/ D0-D7 RD/ D0-D7 9FFF H CS/ D0-D7 RAM1 A000 H CS/ CS/ RAM1 BFFF H 14 C000 H A0-A13 RAM2 CS/ D0-D7 DFFF H RD/ RAM2 D0-D7 E000 H WR/ 8 CS/ FFFF H a) b) =`^liX. en este apartado. Algunos de estos componentes incluyen. el μP y los puertos de E/S. Lectura/escritura de memorias. algunos componentes.+CJ(*/% X . controladores programables de acceso directo de memoria (DMA)13 y muchos otros. desempeñan un papel impor- tante en la interconexión del μP y sus periféricos. Es muy común que los fabricantes de CI produzcan componentes especializados de interfaz con los μP.`X^iXdX[\Ycfhl\j[\cZ`iZl`kf%Y DXgX[\d\dfi`X% hacia el μP. 2. Lectura/escritura de puertos de entrada/salida. e introducimos los conceptos de las interrupciones y la entrada/ salida programada o polling. alrededor de los buses. la transferencia de datos hacia y desde el μP. relevan al μP del control de los buses de direcciones y de datos. de datos y de control.%*0 J`jk\dXYXjX[f\eleμGZfe[fjYcfhl\j[\d\dfi`XjIFDpI8Dple[\Zf[`]`ZX[fi. En esta transmisión de datos. controladores programables de interrupciones. No obstante. 13 Usualmente el μP es el foco de todas las transferencias de datos. nos centramos en describir los principios básicos de la interfaz entre el μP y las memorias. Tiempo posterior el μP lee los datos que espera estén disponibles en el bus de datos. tAH. y terminar un tiempo. ocasiona que el bus de datos en el μP deshabilite su condición de alta impedancia y de esta forma acepte los datos del bus como entradas. Como se puede apreciar. en este caso la señal de /RD activo BAJO. los datos y las direcciones deben permanecer estables un tiempo tDH y un tiempo tAH. se observa un par de círculos con flechas. el bus de datos del μP cambia su estado a alta impedancia y detiene la aceptación de datos proveniente del bus de datos. Durante la activación del comando de lectura. tCMD . /RD. debe tener una duración. res- pectivamente. en la transición de BAJO a ALTO del comando de lectura. 5 El popular microcontrolador Interfaz con memorias Antes de iniciar la descripción de la interfaz del μP con las memorias. 3. para llevar a cabo un ciclo de lectura el μP se requiere: 1. Por tal razón. Colocar el contenido del contador de programa. /RD. Asimismo. Un parámetro importante es el tiempo que transcurre desde que el μP coloca las direcciones en el bus de direcciones. Por su parte. varían de forma considerable entre los microprocesadores comerciales. /WR. tAS. el dato que se va a escribir y la dirección donde ha de escribirse este. En tanto. el ciclo de escritura del μP se ilustra en el diagrama de tiempos de la figura 5. /RD. a ese tiempo se le conoce como tiempo de acceso. se ponen en los buses de direcciones y de datos. decodificar y ejecutar instrucciones. antes de modificar la dirección en el bus de direcciones. aproximadamente. La transición de ALTO a BAJO del comando de lectura. primero vamos a detallar la temporización de los ciclos de lectura y escritura de un μP. los cuales simboli- zan una importante relación causa-efecto en el diagrama de tiempos. Tiempo después. El comando de lectura. así como las señales disponibles. grupo editorial patria® 243 . tAS tCMD tAH Dirección (A0-A15) estable Comando de lectura (RD) Entrada Bus de datos (D0-D7) Datos estables tACC Alta impedancia =`^liX.40 se ilustra el diagrama de tiempos de las señales del μP durante la operación de lectura de datos. Recordemos que la operación continua de un μP es buscar. /RD. en el bus de direcciones. este tiempo es. hasta que los datos son válidos y están listos para ser leídos. En la figura 5. habilitar la señal de control. Las etiquetas y el valor de los tiempos. Por tanto.%+' :`Zcf[\c\ZkliX[\leμG% En el diagrama de tiempos que se representa en la figura 5. el que necesita la interfaz para decodificar las direcciones y seleccionar el periférico correspondiente. en este caso el comando de escritura. Este proceso se define como el ciclo de lectura y permite tener acceso a los datos de un periférico. PC. respectivamente. 2. se recomienda leer cuidadosamente los manuales de datos de los fabri- cantes para observar todos los detalles. /RD. se observa que las direcciones deben estar estables un tiempo.41. después que se desactivó la señal /WR. tACC. antes de que se active la señal de control. un tiempo tAS y un tiempo tDS . antes de que llegue el comando de lectura.40. el tACC de la memoria ROM es el tiempo que transcurre desde que se habilitó la selección del circuito.%+( :`Zcf[\\jZi`kliX[\leμG% Es importante hacer notar que las señales del microprocesador y de las memorias no se encuentran combinadas en los diagramas de tiempos de los manuales de datos de los fabricantes. tanto el del μP como el de la memoria ROM. como se ilustra en la figura 5.`X^iXdX[\Zfe\o`fe\j\eki\leμGpleXd\dfi`XIFD% Para determinar si la interfaz entre estos dispositivos es la correcta. /RD. 244 ELECTRÓNICA • MIJAREZ . A0 A0 ROM A15 A11 μP 4k x 8 A12 Deco A15 CS D0 D0 D7 D7 RD OE =`^liX.43. Interfaz con memorias ROM Una vez que conocemos los ciclos de lectura y de escritura de un μP. hasta que los datos se encuentran disponibles. se combinan los diagramas de tiempos. Al igual que con el microprocesador. Asumiendo que las direcciones son estables. tACC. también es una característica importante de la memoria ROM. el siguiente paso es analizar la interfaz entre nuestro μP de 8 bits de datos y de 16 bits de direcciones y una memoria ROM de 4 Kbytes. 5 El popular microcontrolador tAS tCMD tAH Dirección (A0-A15) estable Comando de escritura (WR) tDS tDH Salida Bus de datos (D0-D7) Datos estables Alta impedancia =`^liX. /CS. el tiempo de acceso. usando una decodificación total por medio de un decodificador de 4 a 16.%+) . por tanto. considerando que el comando de lectura.42 muestra el diagrama de conexiones entre estos dos dispositivos. los diagramas de tiempos se tienen que examinar de manera independiente para determinar si son compatibles. La figura 5. ya ha sido activado. Para comprobar si la interfaz entre estos dispositivos es la correcta. las cuales son más fáciles de interconectar. tPD. se combi- nan los diagramas de tiempos del μP y de la memoria RAM. como se muestra en la figura 5. para asegurar que la interfaz entre el μP y la memoria ROM se realice correctamente.44 se puede observar el diagrama de conexiones entre estos dos dispositivos. al igual que con la memoria ROM.`X^iXdX[\k`\dgfj\eki\\cμGpcXd\dfi`XIFD[liXek\leXfg\iXZ`e[\c\ZkliX% Un tiempo que es importante considerar en el análisis es el retardo de propagación. En esta sección en particular nos enfocamos en el análisis de las memorias RAM estáticas. Es decir: tPD(decodificador) tACC (memoria) < tACC(μP) Interfaz con memorias RAM En el capítulo anterior clasificamos a las memorias RAM como memorias volátiles de dos tipos: estáticas y dinámi- cas. para describir la interfaz entre el μP y una memoria RAM estática vamos a considerar nuestro μP de 8 bits de datos y 16 bits de direcciones. En la figura 5. Por ende. del decodificador. Por tanto. el tPD del decodificador más el tACC de la memoria debe ser menor que el tACC del μP. De esta forma. 5 El popular microcontrolador Señales del Lectura de ROM μp tAS tCMD tAH Dirección (A0-A15) estable Comando de lectura (RD) Entrada Bus de datos (D0-D7) Datos estables tACC Señales de Lectura de ROM la ROM tPD (Decodificador) Selector de chip (CS) Habilitación de lectura (OE) Salida de datos (O0-O7) Datos de salida tACC =`^liX.%+* . usando una decodificación total por medio de un decodificador de 4 a 16. y una me- moria RAM de 4 Kbytes. inicia- mos con la operación de lectura. comparadas con las memorias RAM dinámicas. donde el análisis de tiempo entre el μP y la memoria RAM es igual que el análisis con grupo editorial patria® 245 .45. /WR.`X^iXdX[\Zfe\o`fe\j\eki\le«GpleXd\dfi`XI8D% la memoria ROM. la única diferencia radica que en este caso es que la señal de escritura. permanece deshabili- tada durante todo el ciclo de lectura. 5 El popular microcontrolador A0 A0 RAM A15 A11 μP 4k x 8 A12 Deco A15 CS D0 D0 D7 D7 RD OE WR WE =`^liX. .%++ . Señales del Lectura de ROM μp tAS tCMD tAH Dirección (A0-A15) estable Comando de lectura (RD) Bus de datos (D0-D7) Datos estables tACC Señales de Lectura de RAM la ROM tPD (Decodificador) Selector de chip (CS) Habilitación de lectura (OE) Habilitación de escritura (WE) Salida de datos (O0-O7) Datos de salida tACC =`^liX.`X^iXdX[\k`\dgfj\eki\\cμGpcXd\dfi`XI8D[liXek\leXfg\iXZ`e[\c\ZkliX% 246 ELECTRÓNICA • MIJAREZ .%+. de la misma forma que la señal de /RD del μP. Después. y coloca a la memoria en modo de escritura. y un tiempo de preparación de los datos.`X^iXdX[\k`\dgfj\eki\\cμGpcXd\dfi`XI8D[liXek\leXfg\iXZ`e[\\jZi`kliX% En la figura 5. acti- va la entrada de selección de la memoria RAM. aunque en realidad. el ciclo de lec- tura del μP es de 1000 ns y el tiempo de acceso. /CS. en el bus de datos. los datos que se escribirán en la memoria RAM se colocan. respectivamente. tAS.%+- . el μP a través del pulso de escritura. Después de un lapso conocido como tiempo de preparación de la dirección. Estos últimos tiempos son muy similares a los tiempos de set up y de hold requeridos en los flip-flops descritos en el capítulo 4. después que se desactivó la señal /WR. el tiempo de prepara- ción de la dirección en la memoria RAM. este último. /WE. Es importante destacar que al mismo tiempo que el pulso de escritura está activo. tCMD . se cuenta con los componentes de la tabla 5. se considera el tiempo que transcurre después de que se activa la señal de /CS hasta que se activa el comando de escritura. llamado tiempo del comando de escritura. Dependiendo del μP. como en el caso del ciclo de lectura. los datos y las direcciones deben permanecer estables un tiempo tDH y un tiempo tAH . /WR. tDS. para leer los datos es de 300 ns. o tiempo del ancho del pulso. activa la entrada de escritura de la memoria RAM. grupo editorial patria® 247 . la memoria RAM acepta los datos del bus de datos y los escribe en la posición direccionada. 5 El popular microcontrolador Por su parte. Para ello.46. supongamos que tenemos un sistema basado en un microprocesador que requiere de una memoria EPROM de 8Kbytes. Señales del Escritura de RAM μP tAS tCMD tAH Dirección (A0-A15) estable ___ Comando de escritura (WR) tDS tDH Bus de datos (D0-D7) Datos de salida Señales de Escritura de RAM la ROM tPD (Decodificador) ___ Selector de chip (CS) ___ Habilitación de escritura (WE) ___ Habilitación de escritura (OE) Bus de datos D0 (S) Datos de entrada tAS =`^liX. con el menor costo posible.46 también es posible apreciar que el pulso de escritura debe ser habilitado por lo menos un tiempo mínimo. tAS. En este caso. de una dirección a la memoria RAM y al decodificador de direcciones. El μP tiene un bus de direcciones de 16 bits y un bus de datos de 8 bits. conceptualmente son los mismos. /WR. En tanto. el diagrama de tiempos para la operación de escritura en la memoria RAM se muestra en la figura 5. A manera de ejemplo. la secuencia de eventos durante la operación de escritura implica el envío.1 para diseñar el sistema requerido: Es importante hacer notar que el /CS de las EPROM se habilita en BAJO. en este caso se necesita una de- codificación total de la memoria. los fabricantes de memorias ROM indican un tiempo tDS y tDH de 0 ns. por medio del μP. tACC. /WR. por parte del μP. Por lo general. Pero. Como el μP tiene un espacio de direccionamiento de 64K bytes (216) y el sistema debe constar de 8 Kbytes de memoria EPROM y decodificación total. c) Diagrama de tiempos. Microprocesador Dir 1000 nseg /RD Datos Datos de entrada tACC 300 nseg Memoria Dir /CS tPD /RD Datos Datos de salida tACC EPROM =`^liX. tendremos que 248 ELECTRÓNICA • MIJAREZ . .47. y seleccionar la mejor opción de memoria. 5 El popular microcontrolador Componente tACC(ns) Precio ($) EPROM1 8 Kbytes 120 60 EPROM2 8 Kbytes 290 40 EPROM3 8 Kbytes 450 25 tPD(ns) 74HC139 (decodificador 2-4) 7 6 74HC138 (decodificador 1-8) 14 10 74HC32 (OR 2 entradas) 3 4 74HC04 (inversor) 2 4 KXYcX. usando los componentes disponibles. de 8 Kbytes cada una. realizando su: a) Mapa de memoria.`X^iXdX[\k`\dgfj\eki\leμGpleXd\dfi`X[\/BYpk\j% Una opción es dividir nuestro mapa de memoria en 8 fragmentos de 8 Kbytes. entonces.%+. cada uno. se pide seleccionar la mejor opción costo/funcionamiento de la interfaz entre el μP y la EPROM. antes haremos el diagrama de tiempos entre el μP y la memoria EPROM. Por tanto. si seleccionamos el decodificador 74HC138 y la memoria EPROM1. de 3 entradas y 8 salidas. como lo ilustra la figura 5.48. Para que opere correctamente la inter- faz entre el μP y la memoria EPROM se debe cumplir que tPD (decodificador) tACC (EPROM) <tACC (μP). dividiremos nuestro mapa en 8 secciones.%( :fdgfe\ek\j[`jgfe`Yc\jgXiXlej`jk\dXYXjX[f\eleμGZfe/BYpk\j[\d\dfi`XIFDp[\Zf[`]`ZXZ`ekfkXc% Con base en los datos de la tabla. como se muestra en la figura 5. usando un decodificador 74HC138. b) Diagrama de conexiones del decodificador. %. En tanto.' DXgX[\d\dfi`Xp[\Zf[`]`ZX[fi[`j\ŒX[fZfeZfdgfe\ek\j[`jZi\kfj% grupo editorial patria® 249 . con esta opción. además de que el costo de la interfaz al μP sería de 42 pesos. 5 El popular microcontrolador A15 A14 A13 0000H /CS EPROM /Y0 1FFFH A · 2000H · EPROM1 B · C /Y7 74HC138 14 ns 120 ns FFFFH E000H =`^liX. A15 A14 A13 0000H /CS EPROM 16 K /Y0 1FFFH A · 2000H bytes · EPROM1 B · 3F F F H /Y7 74HC138 7 ns 3 ns 290 ns FFFFH E000H =`^liX. Por otra parte. A15 A14 A13 0000H /CS 1FFFH EPROM 2000H EPROM2 3F F F H 3 ns 3 ns 290 ns FFFFH E000H =`^liX. la interfaz tampoco sería la correcta.%+0 DXgX[\d\dfi`Xp[\Zf[`]`ZX[fi. como se muestra en la figura 5. al usar la EPROM2 y componentes discretos para realizar la decodificación total del sistema.%+/ DXgX[\d\dfi`Xp[\Zf[`]`ZX[fi.49. con esta opción el sistema funcionaría de forma correcta y la interfaz al μP costaría 80 pesos. Desafortunadamente.+?:(*/% 14 ns 120 ns  134 ns < 300 ns. la opción anterior no es la mejor en cuanto a costo/funcionamiento.50. tendríamos que 10 ns 290 ns  300 ns  300 ns. como se observa en la figura 5. ya que la temporización se cumple adecuadamente: 6 ns 290 ns  296 ns < 300 ns.+?:(*0% Por último. si usa- mos la memoria EPROM2. la interfaz entre el μP y la memoria se realizaría de manera correcta. tendríamos que 14 ns 290 ns  304 ns > 300 ns y este sistema no funcionaría debido a que no se cumple la temporización adecuada. ya que la temporización no se cumple a la perfección. si usamos el decodificador 74HC139 y una compuerta OR para realizar la decodificación total. Interfaz de salida Para describir la interfaz de salida. primero describimos la interfaz simple de salida usando un bit y después utilizando un byte. o bien cuando la velocidad de transmisión debe ser elevada. con el fin de enfatizar el análisis que debe realizarse al efectuar la interfaz entre un μP y memorias ROM o RAM. Mientras tanto. donde n por lo general es el ancho de la palabra del bus de datos.14 En esta sección. los tiempos de propagación de los decodificadores y el tiempo de acceso de las memorias fueron ajustados. el cual se interconecta con una interfaz de salida elemental y un dispositivo periférico. En la entrada/salida en paralelo. Algunas de estas interfaces son la Inter-Integrated Circuit (I2C) y la Serial Peripheral Interfase (SPI). como se ilustra en la figura 5. por lo que la recepción o transmisión de un byte requerirá de ocho ciclos de lectura o escritura. detallamos la interfaz simple de entrada de un bit y de un byte. lo cual pare- cería muy poco. en la figura 5. el adaptador de interfaz es un flip-flop tipo D y el dispositivo periférico es un simple LED. Como consecuen- cia. luego. cuando la distancia entre μP y periféricos es reducida. la entrada/salida en paralelo tiene un tiempo de transmisión/recepción menor que la entrada/salida en serie. la velocidad de transmisión de estas E/S seriales es del orden de los 100 kHz. La diferencia en costo/funcionamiento de la primera respecto de la última opción es de 18 pesos. Adaptador de interfase Dispositivos se salida periféricos 0000H Microprocesador Puerto de 1 D0 salida D Q D0-D7 A15 7FFFH A0-A15 8000H 1 CK /WR FFFFH a) b) =`^liX. Aunque estos ejemplos son muy simples.( @ek\i]Xq[\jXc`[Xj`dgc\p[`jgfj`k`mfg\i`]„i`Zf%X :`iZl`kf%Y DXgX[\d\dfi`X% En la figura 5. esta dife- rencia tiene un efecto considerable. sin embargo. la entrada/salida en paralelo requiere una interfaz con un mayor número de alambres de conexión que la interfaz de entrada/salida en serie.51. Interfaz con puertos de entrada/salida El concepto de entrada/salida engloba la comunicación o transferencia de información entre el μP y el exterior. los fabricantes de dispositivos electrónicos han desarrollado interfaces de E/S en serie bidireccionales con solo dos alambres de conexión. vamos a considerar que contamos con un sistema basado en un μP de 8 bits de datos y 16 bits de direcciones. En la ac- tualidad. mediante un ciclo de lectura o escritura. la entrada/salida en serie exige un ciclo de lectura o escritura para cada bit que se desee transferir. 5 El popular microcontrolador En este ejemplo. llegando hasta los MHz. Esta comunicación puede efectuarse fundamentalmente en paralelo o en serie. La entrada/salida en paralelo se basa en la transmisión simultánea de un grupo de n bits.51 b) se 14 La E/S en paralelo es más rápida que la E/S en serie. sin embargo. En cambio. Sin embargo. el μP transfiere de manera simultánea la palabra completa del bus de datos hacia o desde los dispositivos periféricos.51 a) se observa un adaptador de interfaz y el dispositivo periférico. En este caso. Por otra parte. se prefiere la entrada/salida en paralelo.%. la entrada/salida en serie puede considerarse como un caso particular de la anterior en el que n  1. nos preparan para ingresar con prontitud al mundo de los microcontroladores. si se planea realizar el diseño en cantidades de 10 mil. 250 ELECTRÓNICA • MIJAREZ . 50 mil o 100 mil piezas. para simplificar la interconexión entre el μP y los dispositivos periféricos. Por consiguiente. `X^iXdX[\k`\dgfj\eki\\cμGple[`jgfj`k`mfg\i`]„i`Zf[liXek\leZ`Zcf[\\jZi`kliX% En el diagrama de tiempos de la figura 5. pero en este caso el μP trans- fiere ocho bits. al adaptador de interfaz de salida. funciona exactamente igual como el LED de la figura 5. Este dispositivo podría ser un latch tipo 74LS373. debido a que el adaptador de interfaz al- macena los datos de salida en un grupo de ocho flip-flops. Como entrada de datos. se proporcionará el flanco de subida en el flip-flop para almacenar el estado del dato D0 colocado previamente en el bus de datos. usando un solo ciclo de escritura. son 0 lógico. a-g.51 a). a través del bus de datos. en la figura 5. /WR. habilitado de forma permanente.01H) Adaptador de Escritura a LED interfase tPD (NOR) Entrada NOR (A15) ___ Entrada NOR (WE) ___ Salida NOR (CK) tPD (NOR) Bus de datos D (D0) 0 lógico o 1 lógico =`^liX. en consecuencia.53 se observa el mismo sistema basado en un μP de 8 bits de datos y 16 bits de direc- ciones. para encender o apagar el LED requeri- mos que el μP efectúe un ciclo de escritura. Por tanto. respectivamente.%. Señales del Ciclo de escritura μP tAS tCMD tAH Dirección (A0-A15) (0000H .) . El diagrama de tiempos para el circuito de la figura 5. un 1 lógico encendería cualquier segmento. Por ello.51.7FFFH) estable ___ Comando de escritura (WR) tDS tDH Bus de datos (D0-D7) (00H . 5 El popular microcontrolador distingue el mapa de memoria del sistema. si quisiéramos encender /apa- gar el LED de acuerdo con el estado de un byte. pero en este caso ahora se interconecta con una interfaz de salida de ocho bits y un dispositivo periférico. donde es posible apreciar que el puerto de salida se selecciona con un solo bit de dirección. A15. podemos escribir el estado de los ocho bits del byte en cuestión. Mientras que si usamos la interfaz de E/S en paralelo. con su control de salida. En tanto. Es importante hacer notar que hasta que la dirección A15 y la señal de control de escritura. el mapa de memoria se divide en dos bloques de 32 Kbytes y el puerto de sali- da se asigna a la parte baja del mapa de memoria. tendríamos que realizar ocho ciclos de escritura del μP. Cada segmento de LED.52 se observa el diagrama de tiempos entre el μP y el periférico de salida para el ciclo de escritura.52 se observa que la dirección válida para acceder al puerto de salida es de 0000H a 7FFFH y el dato válido en el bus de datos para encender o apagar el LED es XXXX XXX0B o XXXX XXX1B. desde 0000H hasta 7FFFH. /OE. D0. al adaptador de interfaz se le asignó el bit menos significativo del bus de datos. grupo editorial patria® 251 . Una de las opciones en el bus de datos sería 00H para apagar el LED y 01H para encenderlo. En la figura 5. El ejemplo anterior es una forma simple de describir la interfaz E/S serial.53 es igual al de la figura 5. 54 a). Por su parte. D0. la cual está relacionada con la programación de los μP.55 se muestra el diagrama de tiempos entre el μP y el periférico de entrada para el ciclo de lectura. se encuentran en 0 lógico. /OE. del circuito (buffer) de tercer estado. y lo mismo ocurre con la entrada de 252 ELECTRÓNICA • MIJAREZ .%. requerimos que el μP efectúe un ciclo de lectura. Al igual que con la interfaz de salida. Por su parte.55 es posible observar que la dirección válida para acceder al puerto de salida es de 0000H a 7FFFH y el dato a ser leído se asignó al bit menos significativo. como se muestra en la figura 5. se habilita la señal de salida. 5 El popular microcontrolador Adaptador de interfase Dispositivos 0000H de salida periféricos Microprocesador Puerto de 8 a salida Q1 D1-D8 Q2 b D0-D7 Q3 c 7FFFH d 8000H Q4 1 A15 Q5 e A0-A15 f LE Q6 g Q7 Punto Q8 /OE /WR FFFFH a) b) =`^liX. son 0 lógico. usado para seleccionar un estado lógico ALTO o BAJO. en la figura 5. activado a través de una compuerta OR cuando la dirección A15 y la señal de control de lectura. la compuerta OR va a un estado lógico ALTO.+ @ek\i]Xq[\\ekiX[Xj`dgc\ple[`jgfj`k`mfg\i`]„i`Zf%X :`iZl`kf%Y DXgX[\d\dfi`X% En este caso.54 b) se indica el mapa de memoria y el rango de direcciones asignado a este puerto de entrada. del bus de datos. /RD. Por tanto. el adaptador de interfaz es un dispositivo de tercer estado. /RD. D0. utilizamos un dispositivo periférico elemental y su adaptador de interfaz. Al terminar el pulso de la señal de lectura. Es importante distinguir que hasta que la dirección A15 y la señal de control de lectura. para conocer el estado del interruptor. en este caso también usamos un sistema basado en un μP de 8 bits de datos y 16 bits de direcciones. En la figura 5.%. Interfaz de entrada Con el objetivo de describir la interfaz de entrada. En la figura 5. con lo cual es posible leer el estado del interruptor a través de D0 del bus de datos.* @ek\i]Xq[\jXc`[XZfe[\jgc`\^l\[\j`\k\j\^d\ekfj%X :`iZl`kf%Y DXgX[\d\dfi`X% Las instrucciones básicas del μP para acceder a los periféricos las analizamos en una sección posterior. el dispositivo periférico es un simple interruptor. /RD. Dispositivos Adaptador de interfase periféricos se salida 0000H +5 V Puerto de entrada E S /OE 7FFFH 8000H Microprocesador A15 1 A0-A15 D0-D7 /RD FFFFH a) b) =`^liX. El dato de entrada es leído usando el bit menos significativo del bus de datos. %. conocido con el nombre de máscara (el cual se estudia con detalle en la sección: calculadora lógica). S. /OE. Dispositivos Adaptador de interfaz periféricos de salida 0000H Buffer Puerto (8 bits) 8 de entrada /OE 7FFFH Microprocesador 8000H A15 A0-A15 1 D0-D7 /RD FFFFH a) b) =`^liX. La figura 5. . provenientes de un teclado. el μP lee el byte completo.%.56 a) muestra un cir- cuito basado en un μP de 8 bits de datos y 16 bits de direcciones. regresa al estado de alta impedancia y no tiene efectos sobre otras trans- ferencias del bus de datos. por lo que es necesa- rio realizar un artificio lógico en la ALU. por lo que su salida. 5 El popular microcontrolador Señales del Ciclo de lectura μP Bus de datos (D0-D7) tAS tCMD tAH Dirección (A0-A15) estable ___ Comando de lectura (RD) Bus de datos (D0-D7) Datos de entrada tACC Adaptador de Lectura del interruptor interfase tPD (OR) Entrada OR (A15) Entrada OR (/RD) tPD (OR) Salida OR (/OE) tPD (Buffer 3er estado) Bus de datos D0 (S) Datos de entrada tACC =`^liX. El control de lectura y el direccionamiento son los mismos que se usaron en los ejemplos anteriores. son leídos de manera simultánea. donde 8 bits de datos.- @ek\i]XqZfelek\ZcX[fZfdf\ekiX[X%X :`iZl`kf%Y DXgX[\d\dfi`X% grupo editorial patria® 253 .56 b) indica el mapa de memoria y el rango de direcciones asignado a este puerto de entrada. Una extensión del ejemplo anterior es leer más de un bit en un ciclo de lectura. al realizar el ciclo de lectura.`X^iXdX[\k`\dgfj\eki\\cμGple[`jgfj`k`mfg\i`]„i`Zf[liXek\leZ`Zcf[\c\ZkliX% control del buffer. Mientras que la figura 5. Sin embargo.. si queremos averiguar si el bit leído por D0 es 1 o 0 lógico. 7) el timbre de la puerta suena. Para esto podríamos combinar los circuitos que se ilustran en las figuras 5. para referirse al polling. de Int. 3) utiliza un separador para marcar la página que estaba leyendo y se dirige a contestar el teléfono. la iteración continua del programa sería lectura-escritura-lectura-escritura. Una interfaz de polling muy simple. Para ejemplificarlo. podría leer el estado del interruptor y luego reflejarlo en el indicador de salida de LED. si el μP es el cerebro del sistema computacional. En cambio. es conceptualmente similar a la sucesión de acontecimientos que podemos tener un día en nuestra vida cotidiana. C\ZkliX[\lec`YifZfepj`e`ek\iilgZ`fe\j% 254 ELECTRÓNICA • MIJAREZ . el μP tendría que interrogar a cada dis- positivo sucesivamente. gracias al separador. sucesivamente. es decir. con frecuencia se requiere realizar el polling de varios dispositivos de entrada/salida. usando este sistema. 4) contesta el teléfono con un “bueno” para indicar que está preparado para iniciar la conversación. sin saber cuándo se interrumpirá el programa principal. E/S. si el bit fuera un 0 lógico. Por este motivo. el μP se dirigiría hacia el segundo dispositivo de E/S y así sucesivamente. el lugar en que se encontraba cuando se produjo la interrupción.54 a) mediante un solo μP. Algunos autores también utilizan la traducción: “encuesta o muestreo”.51 a) y 5. consideremos la siguiente secuencia de acontecimientos: 1) usted está leyendo un libro. entonces podemos decir que la atención mediante interrupcio- nes a los dispositivos periféricos. Si cada dispositivo tuviera un bit en 1 lógico actuando como bandera e indicando que tiene un dato válido. debido a que los dispositivos periféricos (como el teclado) no actúan a la misma velocidad que el μP. Esto le permite a un sistema computacional responder a un evento de manera asíncrona. es un dato válido. el μP atendería a ese dispositivo. Interrupciones El otro método para informar al μP que un dispositivo de E/S está “listo” y que debe emprender una acción son las interrupciones. sin embargo. supongamos que tenemos un sistema muy sencillo basado en un μP que utiliza como puerto de entrada un interruptor y como puerto de salida un LED. mientras otro programa se encarga de servir a dicho evento.%. entre las que destacan: entrada/salida por programa o polling y las interrupciones. localizando. el dato en esa posición se encuentra disponible y. 10) atiende a la Lectura sin Lectura de libro interrupciones Lectura Lectura de libro Lectura de libro de libro Lectura con interrupciones Int. 5) platica con la otra persona en la línea y termina su conversación. el μP interrogaría el estado del puerto de entrada mediante un ciclo de lectura y actualizaría su salida con intervalos de unos cuantos microsegundos. En este ejemplo. 9) abre la puerta. Para esto. Pero esto podría no ocurrir. La idea del polling es escribir o leer datos de forma repetitiva usando una iteración en el pro- grama. Podemos definir una interrupción como la sucesión de un evento que causa la suspensión temporal de un programa. 5 El popular microcontrolador Interfaz mediante interrupciones y mediante E/S por programa (polling) Hasta el momento hemos asumido que cuando el programa dirige al μP para leer un dato desde un puerto de entrada. Entrada/Salida. por ende. por programa La E/S por programa o polling es el método más sencillo para sincronizar las entradas/salidas y se utiliza en aplicacio- nes dedicadas pequeñas. existen varias técnicas para la sincronización de la transferencia de datos.. por parte del μP. utiliza el separador para marcar la página que estaba leyendo y se dirige a abrir la puerta. Ahora bien. En el ejemplo anterior se tiene solo un puerto de entrada y un puerto de salida. 6) regresa a leer su libro. de telefono timbre Tiempo =`^liX. 2) el teléfono suena. Para ejemplificar su uso. 8) una vez más. En este sentido. todos los recursos se dedican a atender la interrupción. como puede ser el hecho de que se funda un fusible que provoque una suspensión de la energía eléctrica. localizando el lugar en que se encontraba cuando se produjo la segunda interrupción. se dice que las interrupciones han sido bloqueadas. por ejemplo. si nos encontramos atendien- do esta interrupción y suena el timbre de la puerta. 5 El popular microcontrolador persona que está en la puerta y termina su asunto con ella. regresa a leer su libro. Cuando ter- minamos de atender la interrupción de la puerta./ <a\ZlZ`e[\legif^iXdXj`e`ek\iilgZ`fe\jpZfe`ek\iilgZ`fe\j% Las interrupciones también pueden ser anidadas. podemos elegir ignorarlos y desconectarlos o dejarlos sin servicio. A este tipo de interrupciones se les llama interrupciones no enmascarables (NMI). La figura 5. Ejecución sin Programa principal interrupciones Principal Principal Principal Ejecución con interrupciones RSI RSI Tiempo =`^liX.%. es probable que exista una interrupción que no permita ser ignorada. tendremos que informar a la persona con quien estamos hablando por teléfono que nos espere un momento. el flujo del pro- grama principal se interrumpe para llevar a cabo una rutina denominada: Rutina de Servicio de Interrupción (RSI). regresamos de nueva cuenta a atender la interrupción del teléfono y al finalizar con la persona con quien hablamos por teléfono.58 ilustra el flujo de ejecución de un programa sin interrupciones y con interrupciones respecto del tiempo. Supongamos que por algu- na razón no deseamos ser interrumpidos cuando estamos leyendo nuestro libro. En ese estado. La figura 5. grupo editorial patria® 255 . la cual toma el control. Lo anterior puede ser trasladado a nuestro sistema basado en un μP. en lugar de atender el te- léfono y el timbre de la puerta que nos están interrumpiendo. Por supuesto. adicionalmente.%.fjk`gfj[\`ek\iilgZ`fe\j\eleμG%X @ek\iilgZ`fe\j\edXjZXiXYc\jpef\edXjZXiXYc\j% Y @ek\iilgZ`fe\j\edXjZXiXYc\j[\leXjfcX\ekiX[X% No obstante. atender el teléfono. μP μP Dispositivo 1 INT1 Dispositivo 1 Dispositivo 2 INT2 Dispositivo 2 INT1 Dispositivo 3 INT3 Dispositivo 3 Dispositivo 4 MNI Dispositivo 4 MNI a) b) =`^liX. si estamos leyendo y se produce una interrupción.59 a). El programa principal continúa su ejecución en donde se quedó cada vez que regresa de la RSI. pero. asumiendo que el μP cuenta con varias entradas de interrupción. cuando se genera un acontecimiento (interrupción).57 muestra el flujo de lectura de un libro con interrupciones y sin interrupciones respecto del tiempo. realiza sus operaciones y termina al pasar de regreso el control a la rutina principal. Entonces. como se muestra en la figura 5. regresamos con nuestra lectura. 11) por último. nos dirigimos a abrir la puerta y atendemos dicha interrupción. Volviendo a nuestro sistema basado en μP. esto es. también existen alternativas a los escenarios anteriores.0 . lo cual le permite al μP saber cuál es el dis- positivo de E/S que está interrumpiendo. /INT. El teclado debe colocar un byte en la entrada del puerto y producir un pulso activo ALTO en la señal STB. sin embargo. el identificador puede ser una dirección o el primer byte de una instrucción. Al conjunto de interrupciones enmascarables se le pueden asignar prioridades que permitan que las tareas con mayor prioridad se realicen sin ser interrumpidas por las tareas de menor prioridad.60. como se muestra en la figura 5. puede que no sea deseable permitir que llamen a la puerta para interrumpir una conversación telefónica de larga distancia. el cual se interconecta con un teclado mediante un puerto de E/S con interrupción simple. los μP no cuentan con más de cuatro terminales de interrup- ción. una vez que los 8 bits de datos son almacenados en los flip-flops internos. por lo que se pueden usar CI externos. En la práctica. conocida como esquema de interrupción por programa o de polling. la entrada de borrar datos está inhabilitada con un nivel lógico ALTO. es imperante atender la interrupción. que puede ser programado tanto como puerto de entrada como de salida con la terminal de control de modo. y este solo cuenta con una entrada para las interrupciones. Por lo común. 5 El popular microcontrolador Por tanto. la circuitería del CI 8212 genera un pulso de interrupción de salida. a las interrupciones que consisten no solo de una señal de petición de interrupción. resulta sencillo explicar que las interrupciones no enmascarables tienen mayor prioridad que las in- terrupciones que podemos elegir ignorar.59 b).61. se agregó un 256 ELECTRÓNICA • MIJAREZ . Si varios dispositivos son capaces de interrumpir al μP. De acuerdo con el diagrama de tiempos de la figura 5. equivale al pulso de reloj de un grupo de flip-flops o a la ter- minal LE de un latch de 8 bits. las líneas de requerimiento de las interrupciones podrían ser unidas lógicamente mediante una compuerta OR.%-' J`jk\dXYXjX[f\eleμGZfeleX`ek\i]Xq[\k\ZcX[fgfid\[`f[\legl\ikf[\<&J@ek\c/)()Zfe`ek\iilgZ`ej`dgc\% Como se puede observar. En este sistema la entrada strobe. activo BAJO.61. como lo muestra gráficamente la figura 5. se conocen como interrupciones vectorizadas. MD. Los 8 bits de datos provenientes en paralelo del teclado se conectan a las entradas de datos DI0- DI7 del CI 8212. Por ejemplo. Por otro lado. Como ejemplo vamos a considerar un sistema basado en nuestro μP de 8 bits de datos y 16 bits de direcciones. indicando al μP que tiene un dato válido. para almacenar en los flip-flops el dato correspondiente. Con base en este ejemplo. que reciben el nombre de interrupciones enmascarables (INT). como el controlador de interrupciones por prioridad Intel 8259. en este caso. STB. reemplazando el fusible. antes de volver a la lectura del libro. sino también de un identificador que permite que el μP brinque de forma directa a la rutina de servicio de interrupción. Como en este caso el μP tiene una entrada de interrupción activo ALTO. lo que significa que opera como puerto entrada. el μP tendría que encontrar el dispositivo de E/S que causó la interrupción. mientras que las entradas /DS1 y DS2 equivalen a la habilitación de los buffers de tercer estado de salida de datos. la cual en este caso está en BAJO. El procedimiento para encontrar al periférico implica el uso de la técnica de polling mencionada antes. el adaptador de interfaz es un puerto de E/S 8212 de Intel. Dispositivo periférico (Teclado) Línea strobe Adaptador de interfaz STB DI0 DI7 Control del modo de entrada ( ALTO = salida BAJO = entrada ) BAJO ALTO MD CLR Flip flops Buffers DO0 · de tercer ·· (8) Línea selectora de dispositivo estado DO7 DS2 Línea de lectura de E/S ___ ___ DS1 Puerto de E/S Intel 8212 INT Línea de requerimiento de interrupción ___ RD D0 A15 · (8) μP · A7 · · Decodificador (16) · D7 de direcciones (8) · A0 A0 INT =`^liX. El diagrama de tiempos para analizar el funcio- namiento del puerto 8212 se muestra en la figura 5. Si bien la falla de un equipo es inevitable. se escuchan frases como “la computadora falló” o “la computadora cometió un error”. pero dichas frases no son del todo exactas. los microprocesadores son contro- lados por los programas. debido a que es la técnica más utilizada en aplicaciones de microcontroladores. Tras interrumpir al μP. estas instrucciones son aritméticas y lógicas. el sistema basado en un μP debe tener una serie de instrucciones. grupo editorial patria® 257 . listadas de manera muy clara y exhaustiva. Para realizar esto. por lo general. A la colección de estas instrucciones se le llama programa o software y a las personas que escriben y revisan esas instrucciones se les conoce como programadores o desarrolladores. de transferencia de datos y de bifurcación (brincos condicionales o incondi- cionales).%-( . como se verá cuando se analice el microcontrolador 8051 en el capí- tulo siguiente. Programación simple de una CPU o μP Programa o software Una de las cosas más importantes que se deben recordar acerca de los sistemas basados en microprocesadores es que estos pueden efectuar únicamente lo que se les instruye que hagan mediante un conjunto de códigos binarios. que activa la entrada DS1. este brinca a la RSI. usaremos algunas de las operaciones lógicas más comunes de una ALU usando la calculadora lógica del CD ROM que acompaña este libro. En esta sección solo nos resta describir la programación simple de un μP usando operaciones lógicas y ciclos de lectura y escritura. /RD. llamado conjunto de instrucciones. En esta sección describimos con más detalle el tratamiento de las interrupciones.60. se activa la señal de control. Dicho de otra manera. cada instrucción representa una operación simple.`X^iXdX[\k`\dgfj[\]leZ`feXd`\ekf[\cgl\ikf/)()[\@ek\c% inversor. deshabilitando el estado de alta impedancia de los buffers de salida y per- mitiendo leer el dato almacenado en el CI 8212. envía las direcciones. los resultados erróneos usualmente son indicaciones de programas poco eficientes o errores de los operadores. en seguida. para esto. como se aprecia con claridad en la figura 5. y no lo sofisticado que sea el microprocesador. que en este caso realizará un ciclo de lectura para leer los datos provenientes del teclado. las cuales a su vez generan la señal proveniente del decodificador que activa la entrada DS2. y cuando estos fallan podría considerarse un reflejo de los puntos débiles de sus autores.15 15 Por lo común. En este conjunto. 5 El popular microcontrolador Señales en el puerto Modo de entrada de E/S Intel 8212 Datos de entrada D0-D7 Datos de entrada Entrada strobe STB Flip flops de datos Almacenamiento en flip flops Controles DS1 de buffers de tercer estado DS2 Salidas hacia Aparece en D0-D7 las salidas el bus de datos Salida de ___ interrupciones INT =`^liX. La calidad de los programas o software es lo que determina el grado de eficiencia y exactitud con el que se ejecuta un programa. Para ejecutar una tarea útil. La figura 5. como se observa en la figura 5. incluso.% A diferencia de las máquinas. de la figura 5. 01010100 11110000 Código de Operando operación =`^liX.63 ilustra este proce- so para el código de operación y el operando de la instrucción AND A. respectivamente. (Registro de Memoria ROM IR 54 instrucción) Dirección Dato 0001H Bus de control 0010H Reset 0011H Bus de datos 0100H 0101H 0 1 1 0H 01010100B Reloj Bus de direcciones 0 1 1 1 H 1 1 1 1 0000B 1000H (Contador PC 0110 FFFEH de programa) FFFFH =`^liX.62. F0H anterior.%-) :[`^f[\fg\iXZ`epfg\iXe[fgXiXcX`ejkilZZ`e8E.%-* . podemos mostrar que los formatos del código de operación y del operando de esta instrucción son 01010100 dddddddd. un microprocesador en particular. Los mnemónicos no son otra cosa que una palabra codificada que representa un dato binario (en lenguaje de máquina) y con el cual resulta más fácil la programación del μP. Así. Esta es la razón por la que se inventaron las instrucciones mnemónicas. de aquí es donde se deriva el concepto de lenguaje ensamblador. el lenguaje ensamblador consiste en un conjunto de instrucciones mnemónicas y modos de direc- cionamiento. los humanos sufrimos para recordar una serie grande de números binarios. por lo común llamadas solo mnemónicos. Cada familia de microprocesadores tiene su propio lenguaje de máquina. que recibe el nombre de lenguaje de máquina. entre el acumulador y el número F0H. Tratar de recordar todos los códigos de operación.XkfjY`eXi`fjZfii\jgfe[`\ek\jXcX`ejkilZZ`e8E.8#='?#c\ˆ[fjgfileμGd\[`Xek\Z`Zcfj[\`ejkilZZ`e% 258 ELECTRÓNICA • MIJAREZ . en realidad.18: AND A. Por tanto. dado que podría incorporar características en hard- ware no disponibles en otros miembros de la familia. el conjunto de instrucciones para un microprocesador específico contiene su lenguaje de máquina particular. El código de operación es la función que ejecuta la instrucción. en este caso. Cada instrucción tiene dos posibles componentes: el código de operación u opcode y un operando. donde las instrucciones describen qué es lo que se tiene qué hacer y los modos de direccionamiento describen dónde hacerlo. Como ejemplo. F0H Ahora. ROM. mientras que el operando es el dato usado por el código de operación. retomamos la operación lógica AND. y son leídos por el microprocesador mediante los ciclos de instrucción. 5 El popular microcontrolador Lenguajes de máquina y lenguaje ensamblador Los sistemas basados en microprocesadores únicamente entienden un lenguaje representado en una serie codificada de números binarios. el cual por lo general no puede ser en- tendido por microprocesadores de otras familias. Los datos binarios representados por los mnemónicos se almacenan en la memoria de pro- grama. es muy dif ícil. podría utilizar un “dialecto” ligeramente diferente. aun en hexadecimal. Por su parte. para cada microprocesador. el operando es el número 11110000B. entre miembros de una misma familia. El desarrollador consideró que no tenía ningún sentido aprender el lenguaje ensamblador del μC si podía usar el lenguaje C. Una vez escrito el código en ensamblador. El código desarrollado no cupo en los 4 Kbytes. Los compiladores. algunos de los más comunes son los modos de direccionamiento de dato inmediato. Existen varios modos de direccionamiento. primero vamos a considerar que nuestro μP tiene el conjunto de instrucciones mostrado en la tabla 5. En la figura 5. Sin embargo. los programas en lenguaje ensamblador no son ejecutados de forma directa por el μP. 4000H. vamos a considerar que tenemos un sistema basado en nuestro ya conocido μP de 8 bits de datos y 16 bits de direcciones.64 se observa el diagrama esquemá- tico para este sistema y el mapa de memoria. grupo editorial patria® 259 . la instrucción MOVX A. sino también permiten la modificación de los programas de una manera más fácil. de acuerdo con su mapa de memoria. los cuales toman un código en lenguaje de alto nivel. 5 El popular microcontrolador Un modo de dirección. Para realizar este programa hacemos uso de la interfaz de E/S por programa. DPTR. La moraleja es tener siempre una idea de la cantidad de información binaria que se convierte a código. Si el interruptor es un 1 lógico.66 se observa el ciclo de lectura efectuado al ejecutarse la ins- trucción de transferencia de datos MOVX A. también muchos microcontroladores tienen compiladores para el lenguaje C. en la actualidad. con esta instrucción el μP ejecuta un ciclo de lectura. operaciones lógicas y operaciones de bifurcación. el listado de este programa se muestra en la figura 5. debido a que estos no solo incrementan la portabilidad y la claridad de los programas. con estas instrucciones realizamos programas sencillos que enfatizan los ciclos de lectura y escritura de un μP mediante instrucciones de transferencia de datos. requerimos de una rutina que lea el estado del interruptor y lo despliegue en el LED indicador. un interruptor y un LED indicador. Esta traducción la hace un programa llamado ensamblador. de direccionamiento directo. Esto es. DPTR. debido a que a pesar de que los compiladores son cada día mejores. este no sobrepasó 1 Kbyte de memoria. Lo anterior permite hacer uso de un lenguaje de alto nivel. el μP coloca el contenido del DPTR en el bus de direcciones y un tiempo después envía el comando de control. indirecto o indizado. Así. en este caso. trabaja de forma directa con la circuitería o hardware. el cual toma las palabras codificadas de las instrucciones mnemónicas y las cambia a sus valores en binario.16 Desarrollo de programas sencillos en lenguaje ensamblador Como comentamos antes. Para esto. creando un archivo que posterior- mente es el que se copia en la memoria ROM. aunque. es posible perder eficiencia en el camino. el sistema cuenta con una memoria EPROM de 8 Kbytes y dos periféricos como puertos de entrada y salida. con el que se puede estar familiarizado. para leer el dato proveniente del buffer de tres estados por el bus de datos. carga el contenido del registro apuntador de datos DPTR (Data Pointer) con una de las 16 mil posibles direcciones asignadas. a diferencia del lenguaje ensamblador. este es un caso extremo. En esta sección analizamos algunas instrucciones o mnemónicos en lenguaje ensamblador representativos para nuestro microprocesador genérico de 8 bits de datos y 16 bits de direcciones. respectivamente. para su comprensión vamos a describir cada instrucción. en realidad. Muchos microprocesadores y. /RD. en cambio. ya que también hay diseños muy eficientes usando el lenguaje C. y crean un código que se ejecuta en un sistema computacional. Aunque el programa de la figura 5. También existen otros programas llamados compiladores de código. por ejemplo el lenguaje C. MOV DPTR. Con base en el conjunto de instrucciones de la tabla 5. por su parte. 16 Conozco el caso de una aplicación que requería usar un microcontrolador de 4 Kbytes. No obstante. el dato leído se almacena en el registro acumulador. Para iniciar lo antes expuesto. de modo que solicitó un μC con mayor capacidad de memoria (y costo) para realizar el código en ensamblador. es simplemente el medio por el que se determina una dirección. los cuales analizamos con más detalle en la sección de microcontrola- dores. con el fin de programar al microprocesador o al microcontrolador. sino que deben traducirse a lenguaje de máquina. al que está conecta- do el microprocesador. pueden manejar tareas como el direccionamiento de memoria sin la necesidad de que el desarrollador se preocupe de ello. el LED se enciende y si es un 0 lógico el LED se apaga. Por supuesto. es una instrucción de transferencia externa. Como sabemos. Por su parte. En la figura 5.2. se recomienda ser cuidadoso cuando se usa este enfoque. en un principio los lenguajes de programación se crearon para reducir el tiempo de de- sarrollo de un programa. A. El lenguaje ensamblador. Esta es la razón por la que a estos lenguajes se les llama de alto nivel.2. La primera instrucción. los pe- riféricos son mapeados a memoria con una decodificación parcial.65.65 es muy simple. ya sea en C o en ensamblador. d8) Carga dato inmediato (16 bits) en el registro DPTR. el μP ejecuta un ciclo de escritura.d0) MOV R. A. la instrucción ANL A. dddddddd XRL A. MOVX DPTR. 5 El popular microcontrolador Código de operación Instrucción y operando Explicación MOV DPTR. 01H. OP1 10010000 (d15. (dddddddd) RETI 0011 0010 Fin de rutina de interrupción. DPTR 1110 0000 Transfiere el contenido de la dirección apuntada por el DPTR (A0-A15) al acumulador (ciclo de lectura). dddddddd MOV A. ya que es el único que nos interesa en esta aplicación. 8000H.% X :`iZl`kf%Y DXgX[\d\dfi`X% En tanto. OP2 puede ser un dato de 8 bits o un registro R.. que también es una instrucción de transferencia externa. Afecta registro de estados. OP2 0101 1000 AND lógico entre el acumulador y OP2. dddddddd MOVX A. Nota: OP1 es dato de 16 bits y DPTR es un registro apuntador de datos de 16 bits. dddddddd ORL A.. Por último. el μP coloca en el bus de direcciones el 260 ELECTRÓNICA • MIJAREZ . dddddddd JZ etiqueta 0110 0000 Brinca a etiqueta si el acumulador es cero.%-+ J`jk\dXYXjX[f\eleμGZfeki\jg\i`]„i`ZfjdXg\X[fjXd\dfi`X#leX<GIFD#le`ek\iilgkfipleC<. con la instrucción MOVX DPTR. La instrucción MOV DPTR. R3…). A14 Deco Microprocesador 2 74139 EPROM 13 3FFFH A0-A15 A0-A12 4000H D0-D7 D0-D7 +5 V Puerto de /CS entrada /RD /OE 7FFFH EPROM 8000H /WR D0 S E Puerto de 1 /OE salida BFFFH D0 C000H D Q CK FFFFH a) b) =`^liX. R puede ser un registro interno (R1. (d7.%) :fealekf[\`ejkilZZ`fe\jgXiX\cμG^\e„i`Zf[\/Y`kj[\[Xkfjp(-Y`kj[\[`i\ZZ`fe\j% 0000H A15. R 11101000 Carga dato del registro interno R al Acc. OP2 0110 1000 EX-OR lógico entre el acumulador y OP2. Afecta registro de estados. actualiza el valor del apuntador de datos con una de las direccio- nes asignadas en el mapa de memoria al puerto de salida. OP2 0100 1000 ORL lógico entre el acumulador y OP2. Afecta registro de estados. enmascara el bit D0 del bus de datos. ANL A. A 1111 0000 Transfiere el contenido del acumulador a la dirección apuntada por el DPTR (A0-A15) (ciclo de escritura). KXYcX. A 11111000 Carga dato del Acc al registro interno R. R2. 01H MOV DPTR. DPTR ANL A. Es importante remarcar que el contenido del bus de direcciones (A0-A15).GKI% contenido del registro DPTR. 5 El popular microcontrolador INICIO: MOV DPTR. al realizar los ciclos de lectura o escri- tura hacia periféricos mapeados de memoria.BFFFH) Contenido de DPTR ___ Comando de escritura (WR) tDS tDH Bus de datos (D0-D7) Datos de salida Datos se transfieren del Acumulador =`^liX. Una pregunta frecuente al comienzo de los estudios de microprocesadores o microcontroladores es: t ¿El contenido del bus de direcciones no tiene el contenido del contador de programa PC? Señales del μP Ciclo de escritura MOVX DPTR. /WR.%-. 4000H MOVX A. 8000H MOVX DPTR. DPTR tAS tCMD tAH Dirección (A0-A15) (4000H . A tAS tCMD tAH Dirección (A0-A15) (8000H . y un tiempo después activa el comando de control.%-- :`Zcf[\c\ZkliXXjfZ`X[fZfecX`ejkilZZ`eDFMO8#. para colocar en el bus de datos el contenido del registro acumulador.67 se observa el ciclo de escritura efectuado al ejecutarse la trans- ferencia de datos externa MOVX DPTR.%-.7FFFH) Contenido de DPTR ___ Comando de lectura (RD) tACC tDH Bus de datos (D0-D7) Datos de entrada Datos se transfieren del Acumulador =`^liX.%-+% Señales del μP Ciclo de lectura MOVX A. A. es el contenido que almacenamos en el registro apuntador de datos DPTR. En la figura 5. Gif^iXdXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX.GKI#8% grupo editorial patria® 261 . :`Zcf[\\jZi`kliXXjfZ`X[fZfecX`ejkilZZ`eDFMO. A END =`^liX. la colocación del contenido del PC en el bus de direcciones la realiza el μP de manera automática al efectuar el ciclo de instrucción de una CPU. un LED rojo.68 muestra el diagra- ma esquemático para este sistema y el mapa de memoria. ¿Por qué el bit D4? Bien. además de realizar una operación lógica y ejecutar una escritura a una localidad de la memoria RAM externa. corres- pondiente a las primeras cinco instrucciones del programa. son producto de la ejecución de las instrucciones de transferencia de datos externa. como para proporcionar la entrada del dato en los flip-flops que encienden los LED. tanto de lectura como de escritura.70. pero ahora tenemos mapeados a memoria un interruptor. consideremos que tene- mos nuestro microprocesador de 8 bits de datos y 16 bits de direcciones. de modo que se coloca en el bus de direcciones para apuntar a la memoria de programa. el bit que nos interesa. en este caso el bit D4. en el cual se lee el dato correspondiente al estado del interruptor. El es- quema de la operación lógica AND entre el acumulador y el número 00010000B (10H) como máscara se observa en la figura 5. vamos a describir este programa por bloques. que se encuentra en 0 lógico en el acumulador para colocarse en el bus de datos y almacenarse en los flip-flops. esto se debe a que en el diagra- ma del circuito de la figura 5. se efectúa el proceso de inicialización. 13 0000H A0-A12 RAM Deco 8 D0-D7 1FFFH A15-A13 2000H 74138 /CS EPROM MP /OE 3FFFH 3 4000H 12 Puerto de A0-A15 A0-A11 EPROM entrada 5F F F H D0-D7 D0-D7 6000H 1 LED /CS D4 rojo 7FFFH /RD /OE 8000H /WE RAM LED /WR +5 V verde 8FFFH A000H 1 /OE BFFFH D4 S E C000H D Q D Q DFFFH CK CK E000H FFFFH =`^liX. El programa de la figura 5. Sin embargo. 5 El popular microcontrolador La respuesta es sí. Por otro lado. asocia- dos con los registros DPTR y acumulador. una memoria de EPROM de 8 Kbytes y una memoria RAM de 4 Kbytes. requerimos establecer una rutina que apague ambos LED y lea el estado del interruptor. el uso de los buses de direcciones y de datos. en la salida del buffer de tres estados. como lo muestra el diagrama de flujo de la figura 5. el listado del programa requerido se representa en la figura 5. sin embargo. La figura 5. nos in- troduce en el uso de instrucciones de bifurcación (brinco condicional). El segundo bloque del diagrama de flujo inicia con la etiqueta LEE_SW del programa.%-/ J`jk\dXYXjX[f\eleμGZfeZ`eZfg\i`]„i`ZfjdXg\X[fjXd\dfi`X#leX<GIFD#leXd\dfi`XI8D#le`ek\iilgkfip[fjC<. ilustrado en la figura 5. Por esta razón.2. Entonces. Una vez que se tiene el dato en el acumulador.71. se realiza una operación lógica AND entre el acumulador y el valor 00010000B (10H). En el primer bloque del diagrama. pero si es un 0 lógico enciende el LED verde y escribe un 55H en la dirección 7FH de la memoria RAM. con el fin de tomar decisiones. la cual sirve como máscara del bit que nos interesa. el contenido del PC siempre apunta a la dirección de la siguiente instrucción que se va a ejecu- tar. Para resaltar el uso de las instrucciones de transferencia citamos otro ejemplo. Si el interruptor es un 1 lógico. es el bit D4 (XXX0XXXX). en este caso.% X :`iZl`kf%Y DXgX[\d\dfi`X% Con base en el conjunto de instrucciones de la tabla 5. De igual manera que en el ejemplo anterior.69 es muy simple y parecería no tener una aplicación específica. enciende el LED rojo. Con base en lo anterior.68 usamos el bit D4 del bus de datos tanto para leer el estado del interruptor.69. hacemos uso de la interfaz de E/S por programa. los periféricos son mapeados a memoria con una decodificación parcial. mediante la ejecución de un ciclo de lectura. ROM. que consiste en apagar ambos LED mediante dos ciclos de escritura. Para realizar estos ciclos de escritura. 262 ELECTRÓNICA • MIJAREZ . el valor que seleccionamos para almacenar en el registro acumulador es 00H. un LED verde.14. A JZ LEE_SW LED_VERDE: MOV DPTR. 6000H MKOVX DPTR. 4000H MOVX A. 10H JZ LED_VERDE LED_ROJO: MOV DPTR. A MOV DPTR. A RAM: MOV DPTR. 00H MOV DPTR. 6000H MOVX DPTR. 5 El popular microcontrolador INICIO: MOV A.%-0% grupo editorial patria® 263 . 6000H MOVX DPTR. 10H MOV DPTR. DPTR ANL A. 55H MOVX DPTR.%-0 Gif^iXdXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX.' .%. A LEE_SW: MOV DPTR.`X^iXdX[\]claf[\cgif^iXdX[\cX]`^liX. 00H JZ LEE_SW END Inicio =`^liX.%-/% Apaga ambos LEDs Lee estado del interruptor Interruptor Interruptor en 1 lógico en 0 lógico Enciende Enciende LED rojo LED verde Apaga Apaga LED verde LED rojo Escribe a la memoria RAM =`^liX. A MOV A. A MOV A. 8000H MOVX DPTR. 8000H MOVX DPTR. A MOV A. 007H MOV A. 00H MOV DPTR. 8000H MOVX DPTS. con el fin de encender un LED rojo.%. después de la operación lógica AND. Por ende. Por otro lado. Para comprender mejor los ciclos de lectura o escritura a la memoria RAM. Entonces. En seguida. se realizan dos ciclos de escritura: uno para encender el LED verde y el otro para apagar el LED rojo. el contenido deseado al registro Apuntador. asociadas con los registros acumulador (ACC) y Apuntador (DPTR). podemos usar la sección de transfe- rencia de datos internos y externos del μP que se desarrolla en el CD ROM que acompaña este libro.( Fg\iXZ`ec^`ZX8E. el programa brinca a la etiqueta LED_VERDE del programa. el resultado de esta operación lógica se almacena de regreso en el acumulador. nos aseguramos que el valor a es- cribir contenga en el acumulador un 10H. el programa brinca a la etiqueta LEE_VERDE. el programa continúa con la siguiente instrucción. Ahora. Es decir. escribimos un 00H en el acumulador para forzar al programa que brinque a la etiqueta LEE_SW. y un 00H. si el resultado del acumu- lador es un 0 lógico. para lograr esto. para forzar al programa que brinque a la etiqueta LEE_SW.%. correspondiente a la etiqueta LED_ROJO del programa. tal como se muestra en la figura 5. En esta sección. en este caso el valor 7FH. nos aseguramos de que el valor a escribir contenga en el acumulador un 10H. mediante la instrucción MOV.. 5 El popular microcontrolador Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0 Acc AND 0 0 0 1 0 0 0 0 Máscara =`^liX. y un 00H. vamos a suponer que el programa continúa de manera secuencial en la etiqueta LED_ROJO.) <a\ZlZ`e[\cX`ejkilZZ`eDFM8glekX[fi#. y posteriormente almacenamos el valor 55H en el registro acumulador.+% Como sabemos. si el resultado es un 1 lógico. debido a que el resultado en el acumulador fue diferente de cero (10H). para leer otra vez el estado del interruptor. Por último. En este bloque se realiza un ciclo de escritura. 6000H.ljX[XgXiX\edXjZXiXi\cY`k[\[Xkfj. en este caso MOV DPTR. para apagar el LED rojo. De igual modo.72. se pueden ejecutar las instrucciones MOV y MOVX. escribiendo el número 55H en la localidad 007FH. en este bloque se realizan dos ciclos de escritura: uno para encender el LED rojo y el otro para apagar el LED verde. El tercer bloque del diagrama de flujo es el símbolo de decisión. Considerando el ejemplo anterior.?#gXiXXcdXZ\eXi\jkfjmXcfi\j\ecfji\^`jkifj`ek\iefj[\cμG% 264 ELECTRÓNICA • MIJAREZ . =`^liX.=?#pDFM8::#. JZ (esto significa que brinca a etiqueta si el acumulador es un 0 lógico). En este bloque. después de la instrucción de brinco condicional. para encender el LED verde. con el objetivo de leer otra vez el estado del interruptor. si el bit 4 es un 1 lógico. para apagar el LED verde. el diagrama de flujo continúa con el bloque para escribir a la memoria RAM. si el resultado en el acumulador es 00H. o 00H si el bit 4 es un 0 lógico. Pero. primero almacenamos de manera secuencial. escribimos un 00H en el acumulador. el resultado en el acumulador será 10H. el cual corresponde a la instrucción de brinco condicional. Después de esto. software y firmware Por lo general. del conjunto de instrucciones de la tabla 5. pero a una escala mucho menor. son una opción ideal para resolver problemas. ACC. un automóvil. un microcontrolador es un circuito integrado programable que puede utilizarse para controlar un sistema o un proceso. con el hecho de escribir una carta. En esta era de vertiginoso avance tecnoló- gico. que los microcontroladores tienen recursos mucho más limitados que las computadoras personales. MICROCONTROLADORES DE 8 BITS ¿Qué es un microcontrolador? El microcontrolador ha estado entre nosotros por cerca de cuatro décadas. los sistemas basados en microprocesadores cuentan con una cantidad mayor de memoria RAM que de memoria ROM. mientras que la memoria RAM se usa para el almacenamiento temporal. ¿qué es en sí un microcontrolador? Bien. Apuntador. con la cual se realiza un ciclo de escritura. 5 El popular microcontrolador =`^liX. De esta forma. posteriormente. ejecutamos la instrucción MOVX. Pero.73 se ilustra la ejecución de esta instrucción de transferencia. los microcontroladores de la actualidad no son iguales a los que aparecieron a principios de la década de 1970. En la siguiente sec- ción. con frecuencia.* <a\ZlZ`e[\cX`ejkilZZ`eDFMO8glekX[fi#8::#\hl`mXc\ek\XcX`ejkilZZ`eDFMO.2. empezamos a examinar la familia de microcontroladores MCS-51. Su longevidad se atribuye a varias razones. en el 89C2051 de Atmel. un microcontrolador es una computadora autocontenida en un circuito integrado. la cual incorpora todos los componentes básicos de un sistema basado en un microprocesador o de una computadora personal. Por supuesto. en la memoria ROM. más rápidos. con esta sección concluimos los fundamentos de los sistemas basados en microprocesadores. Por este motivo. equivalente a la instrucción MOVX DPTR.GKI#8# [\cZfealekf[\`ejkilZZ`fe\j[\cXkXYcX. A. de manera permanente. Las aplicaciones típicas de los microcontroladores son como controladores embebidos o integrados en un proce- so o sistema grande. más baratos. Por tanto. ¿qué tipo de problemas pueden resolver estos?. En la figura 5. grupo editorial patria® 265 . Los sistemas pueden ser un electrodoméstico.%.%)% Una vez que los registros internos ACC y apuntador tienen los valores adecuados. Los de hoy en día son más pequeños. debido a que se encuentra almacenado firmemente. requieren menos potencia y ofrecen mayor cantidad de periféri- cos internos. Si hicié- ramos una analogía de lo antes expuesto. enfocándonos en el 80C31BH de Intel y. más fáciles de programar. y escribimos el valor 55H en la dirección 7FH de la memoria RAM. en términos funcionales. Para empezar. podríamos decir que la hoja de papel sería el hardware. Hardware. a los microcontroladores se les denomina dispositivos de un solo CI o microcomputadoras. Esto se debe a que los programas que controlan el hardware se almacenan en la memoria ROM. Al programa de control se le denomina firmware. donde los dispositivos electrónicos pueden llegar a ser obsoletos no mucho tiempo después de que se colocaron en el mercado. no obstante. las palabras escritas con lápiz serían el software y las palabras escritas con tinta serían el firmware. lo cual nos sirvió como introducción para entrar al universo de los populares microcontroladores. del cual controlan solo una parte. esto es notable. las computadoras tienen muchos padres y madres. Y son. De la manera más simple. entre otros. como se observa en la figura 5. de tal manera que su uso reduzca drásticamente los costos de diseño y el número de componentes de un proyecto. circuitería para interrupciones. las señales de petición de interrupción. Es importante hacer notar que los microcontroladores no funcionan aislados. buses. la Primera Guerra Mundial puso a la mayoría de estos hombres en uniforme y los sacó de esas oficinas. 5 El popular microcontrolador instrumentos científicos o médicos. conocidas en México como pines. Otro ejemplo es el control de un sistema. el microcontrolador es un sistema que toma decisiones basado en las condiciones de señales externas. puertos de E/S de propósito general y peri- féricos. CAN. EEPROM y/o EPROM. la señal de reset y las señales de control. Los microcontroladores por lo común incluyen una CPU. A lo largo del tiempo.74. o los periféricos de una computadora. Puertos Periféricos E/S Memoria CPU =`^liX. los periféricos más comunes son puertos seriales de comunicación (UARTs. esos hombres eran conocidos como los computers. I2C. etc. convertidores ADC. Físicamente. tiene terminales para buses de direcciones y de datos. donde la entrada de un microcontrolador podría ser el umbral 1 o 0 lógicos que detecta el nivel de un contenedor industrial. moduladores de ancho de pulso (PWM).). temporizadores/ contadores. para producir tablas balísticas. precisamente.+ <c\d\ekfjgi`eZ`gXc\jhl\Zfejk`klp\eled`ZifZfekifcX[fi% Las memorias pueden ser tipo Flash. la computadora que marcó el inicio de la carrera computacional moderna fue la computadora ABC. es decir. PCI. el reloj. Los microcontroladores se usan para proporcionar el voltaje de alimentación. en lugar de puer- tos de E/S.%. mientras que la salida podría ser un LED utili- zado como alarma en el tablero de control de una planta y la activación de una válvula que mantenga el contenedor con el nivel requerido. creada por el Dr. RAM. con base en sus decisiones. en el entonces Iowa 266 ELECTRÓNICA • MIJAREZ . Arquitecturas de procesadores Como la mayoría de los grandes inventos. usando ciertos procedimientos de operación estandarizados. Asimismo. memorias. de esta manera. acepta entradas provenientes de otros dispositivos y provee salidas a otros dispositivos dentro del mismo sistema. un microcontrolador puede aceptar como entrada una señal proveniente de un interruptor y activar como salida un LED. En sus inicios. un microcontrolador es un circuito integrado con terminales a sus lados. Por ejemplo. varias máquinas mecánicas y electromecánicas fueron creadas por diferentes personalidades con alta inventiva. por lo general. por lo co- mún un grupo de hombres agrupados en grandes habitaciones realizaban de forma manual cálculos. sino que controlan otros dispositivos. Atanasoff y su estudiante Clifford Berry. si el interruptor se presiona. Sin embargo. El diseño de los microcontroladores está orientado a proveer soluciones de bajo costo. como Charles Babbage y Konrad Zuse. donde el interruptor y el LED podrían ser parte de un sistema de reproducción de discos compactos (compact disc) en el sistema de sonido de un automóvil. En contraste. como su nombre lo sugiere. las mujeres fueron reclutadas para realizar esta clase de cálculos. No obstante. estos periféricos los que desempeñan un papel importante en la selección del microcon- trolador que se desea emplear. En tanto. derivado del inglés pins. la tierra. puede instruirse al microcontrolador para que se ilumine el LED. el microprocesador. circuitos osciladores internos. los puertos de E/S. Electronic Numerical Integrator and Computer). es decir. pero olvidó dar crédito a Mauchly o a Eckert por la idea. en la figura 5. Asimismo. es decir. requiriendo la salida de 500 plantas nucleoeléctricas como la Olkiluoto (la más grande del mundo en su clase). desarrollaron arquitecturas de computadoras que podían usarse para el cálculo de tablas relacionadas con artillería naval. La ENIAC era un monstruo de máquina de propósito general que contenía cerca de 18 000 tubos al vacío. de manera más frecuente. los cuales tienen desplazamientos de 100 mil toneladas. era programable. la unidad de interfaz de memoria es la responsable de arbitrar el acceso a este espacio de memoria. 18 Mauchly y Eckert propusieron una computadora más avanzada que la ENIAC. Universidad de Pennsylvania). los microprocesadores usan arquitecturas Von Neumann. Arquitectura Princeton o Von Neumann La característica principal de la arquitectura computacional desarrollada en la Universidad de Princeton era que esta computadora tenía una memoria común en la cual se podía almacenar el programa de control. desafortunadamente no la patentaron en su momento. tanto 17 De acuerdo con Jack Ganssle. A esta arquitectura se la llama Von Neumann. pero no era programable. desmotivaría a cualquiera. escribió un reporte acerca de la EDVAC resumiendo su diseño. en la Moore School of Electrical Engineering (hoy día. tiene un bus de datos mediante el cual se realizan las operaciones de lectura. investigadores de las universidades de Prin- ceton y Harvard. De esta forma. y una potencia del orden de los terawatts. entre los años 1939 y 1942. grupo editorial patria® 267 . así como otras variables y estructuras de datos. mientras que los microcontroladores utilizan. Estas arquitecturas han sido muy importantes en el desarrollo de las computadoras y. la cual incorporaba el concepto de almacenamiento de programa.%. en consecuencia. tampoco era programable. Por lo que a esta arquitec- tura se le llamó Von Neumann debido a que John von Neumann. Por supuesto. Decodificador Memoria de instrucciones de Datos programa Unidad Direcciones Memoria de de variables interfaz (datos) CPU de y memoria Control registros Memoria de estructura de datos =`^liX. bajo la dirección de John Mauchly y J. en su artículo “Microprocessors change the world”. pesaba 30 toneladas y consumía 150 kW de electricidad. enviar mensajes a casa usando un iPhone con tecnología ENIAC solo para decir voy en camino. se estima que el iPhone tiene alrededor de 32 mil millones de transistores. donde se construyó la ENIAC. Esta computadora usaba alrededor de 300 tubos al vacío (los elementos ac- tivos predecesores de los transistores). en el desarrollo de los microprocesadores y microcontroladores. quien escribió un reporte describiendo su funcionamiento. se desarrollaba y construía la primera computadora electrónica: la ENIAC (por sus siglas en inglés. Aunque funcionaba. En esta arquitectura. Por lo general. Aunque la ENIAC tenía una capacidad de cómputo mayor que cualquier máquina de su tiempo. su peso sería de alrededor de 2 500 portaviones de carga clase Nimitz.18 Para su comprensión. Presper Eckert.17 Con los años la evolución de las computadoras seguía su marcha. quien trabajaba como consultor de la Moore School of Electrical Engineering.75 se muestra el diagrama a bloques de la arquitectura Von Neumann. 5 El popular microcontrolador State Collage. ya que podía ejecutar 5000 sumas o restas por segundo. era programable. Por tanto. Si este error fue por omisión o deliberado no se sabe. conocida como la EDVAC. 8ihl`k\ZkliXMfeE\ldXee% Cabe resaltar que la arquitectura Von Neumann tiene un solo espacio de memoria en donde se almacenan las instrucciones del programa y los datos. así. pero mucha amargura y resentimiento resultó de esto. para determinar entre leer una instrucción o leer o escribir un dato con la CPU y sus registros. en honor de John von Neumann. Pero. describimos con más detalle estas arquitecturas. Mientras tanto.. el iPhone tendría el tamaño de un edificio de 170 pisos. en Estados Unidos de América. la arquitectura Harvard o Harvard modificada. si construyéramos un iPhone con los elementos activos (tubos al vacío) que se usaron para construir la ENIAC. fue descartada muy rápido. de datos instrucciones E/S CPU Bus de direcciones Bus de control Reloj =`^liX.. la CPU realiza la búsqueda-decodificación de instrucciones mediante el bus de instrucciones. es posible que posteriormente pueda realizar una operación de lectura o escritura de la memo- ria de datos. también se incrementa la complejidad en la circuitería o hardware.77. razón por la cual esta arquitectura es la más común en los microprocesadores. la CPU puede realizar la próxima búsqueda-decodificación de la instrucción del programa mientras usa el bus de datos. 5 El popular microcontrolador para las instrucciones como para los datos.- 8ihl`k\ZkliXMfeE\ldXeeZfecfjYlj\j[\[`i\ZZ`fe\j#[XkfjpZfekifcXii\^cX[fj[\cX]fidX\ehl\j\[\jZi`Y\ecfjj`jk\dXj YXjX[fj\ed`ZifgifZ\jX[fi\j% Arquitectura Harvard Comparando la arquitectura Von Neumann con la arquitectura Harvard. Lo anterior incrementa la velocidad del tiempo de ejecución.. La arquitectura Harvard tiene dos o más buses de datos internos que le permiten acceder de manera simultánea tanto a la memoria de instrucciones como a la de datos. En resu- men. la CPU debe esperar a que se terminen estas operaciones subsiguientes. Esto significa que cada vez que la CPU realiza un ciclo de instrucción de la memoria de programa. Así. pero su ventaja radica en su simplicidad y costo reducido.76 se muestra el diagrama de bloques de la arquitectura Von Neumann acomodando los buses de la manera en que analizamos los sistemas basados en microprocesadores. antes de ejecutar otro ciclo de instrucción (búsqueda-decodificación-ejecución) de la próxima instrucción contenida en el programa. Si la instrucción decodificada requiere una operación en la memoria de datos. con esta arquitectura no es posible leer instrucciones y datos de manera simultánea. destaca de esta última el hecho de que presenta espacios de memoria separados: uno para instrucciones de programa y otro para datos. para efectuar su operación en la memoria de datos. para realizar esto. En la fi- gura 5..%. Bus de Bus de instrucciones datos Bus de Bus de Memoria direcciones direcciones Memoria de CPU de programa Bus de Bus de datos control control =`^liX. como se observa en la figura 5. 8ihl`k\ZkliX?XimXi[%J\ZXiXZk\i`qXgfigi\j\ekXi[fj\jgXZ`fj[\d\dfi`X`e[\g\e[`\ek\j#lefgXiX`ejkilZZ`fe\jpfkifgXiX[Xkfj% 268 ELECTRÓNICA • MIJAREZ . Pero. Bus de datos Memoria Memoria Puertos de de . Nada es gratis.%. por sus siglas en inglés) son un tipo especial de procesadores que presentan arquitecturas Harvard y que. pero en la actualidad los lenguajes de alto nivel generan de forma automática el código adecuado para los requerimientos de hardware.JGi\Xc`qXe[ffg\iXZ`fe\j\e\c[fd`e`f[\ck`\dgfpcX]i\Zl\eZ`X% Y 8gc`ZXZ`ekˆg`ZX[\Zfekifc[\led`ZifZfekifcX[fi% Microcontroladores de 8. el microcontrolador de 8 bits se niega a dejar el mercado. arquitecturas y costos.%. debido a que permitía mayor flexibilidad en el desarrollo de software. No obstante. como el diseño de filtros digitales. Cada año se construyen y utilizan millones de microprocesadores y miles de millones de microcontroladores. si un dato se declara como constante y este se almacena en la memoria ROM. por lo que exceden en volumen a las computadoras personales y a los servidores. Resulta más económico resolver un problema usando un microntrolador de 8 bits que uno de 32 bits. Aunque la primera generación de microcontroladores inició de 8 bits. Ya que se encontró que la arquitectura de una sola memoria era más adecuada para las computadoras. la amplia disponibilidad y competitividad en precio de los microcontroladores de 32 bits ha hecho creer a algunos usuarios que estos sustituirán a los microcontroladores de 8 bits. Por tanto.0005 600 de control 0 0 400 100 200 200 300 Acción 400 Actuador ejecutada 500 X Y =`^liX. o parte del mismo. El costo manda. ¿por qué la mayoría de los microprocesa- dores no tiene esta arquitectura? Bien. se prefirió la arquitectura Von Neumann a la arquitectura Harvard debido a la falta de fiabilidad de la tecnología de ese tiempo. como se ilustra en el diagrama de bloques de la figura 5. la saga de este libro podría estar relacionada con los DSP y DSC. 16 y 32 bits Hoy día. Así.0015 Microcontrolador WT 0. sin embargo. por su parte. 5 El popular microcontrolador En resumen. los hay de diferentes tamaños. se usan cuando se requiere el control de un sistema o proceso. por lo general. Hoy día. Sin embargo. dado que el contenido del contador de programa (PC) y los datos eran accesibles al programador. en aplicaciones de sistemas integrados. en el mercado existe una gran variedad de microcontroladores. aunque pueden tener esta arquitectura. en el mercado existen circuitos integrados denominados DSC (Digital Signal Controllers). la arquitectura Harvard tiene como ventaja principal la ejecución de menos ciclos de instrucción que la arquitectura Von Neumann. son usados para realizar operaciones matemáticas comple- jas.79./ X 8gc`ZXZ`e[\le. En este sentido. con las características de control de un microcontrolador. los procesadores digitales de señales (DSP. entonces ¿cómo se accede a ese dato? Existen diferentes soluciones. la pregunta obligada es: entonces. Los microcontroladores. principalmen- te en el área de sistemas operativos en tiempo real. Recientemente. ¿Por qué? Bien.78 muestra una aplica- ción de un DSP y el diagrama de bloques de una aplicación de un microcontrolador. podemos enumerar algunas de las razones más importantes: 1. las arquitecturas Harvard asumen que únicamente almacenan instrucciones en el espacio asigna- do a la memoria de programa. en la actualidad existen en el mercado microcontroladores de 16 y hasta 32 bits. 19 En la actualidad.19 La figura 5. los microcontroladores de 8 bits son los más ampliamente usados. los cuales incluyen las características de procesamiento de un DSP.0010 800 Ecuación 0. Tiempo z] (μs) [kH Sensor 1 Sensor 2 cia uen Coeficientes Frec 0. grupo editorial patria® 269 . interruptores.0 . Algunas de las ca- racterísticas importantes a considerarse son: t Velocidad de operación. 3. sin embargo. los sistemas integrados que usan baterías normalmente usan microcontroladores de 8 bits. comunicaciones de relativa baja velocidad. ¡1 200 veces más rápido! Además. Por los motivos expuestos antes. sensores. interrupciones (periféricos internos).%. pero. 270 ELECTRÓNICA • MIJAREZ . en términos generales.`X^iXdX[\Ycfhl\jhl\`cljkiXXcfjd`ZifZfekifcX[fi\j[\/#(-p*)Y`kj% 2. Esta es una de las principales razones por la cual la arquitectura del 8051 continúa usándose en una gran cantidad de aplicaciones. también requiere cumplir con las necesidades de cómputo de la tarea específica a realizar de manera eficiente y económica. ahora existen microcontroladores 8051 que operan a 100 MHz y el ciclo de máquina equivale a un periodo del circuito de reloj. t Consumo de potencia. Por ejemplo. los microcontroladores de 8 bits son más fáciles de usar y sus herramientas de desarrollo tienen un alto grado de madurez y un costo muy bajo. Mercado en movimiento: microcontroladores de 8 bits A pesar de su amplia permanencia. temporizadores. invertido en escribir código solo para el 8051. se estima que hay aproximadamente 300 mi- llones de horas. 5 El popular microcontrolador Bus de datos (8. t Cantidad de memoria RAM/ROM interna. Los sistemas de control requieren interfaces de entrada simples. por ejemplo. t Número de pines de E/S. el mercado de microcontroladores de 8 bits continúa expandiéndose y los fabri- cantes siguen haciendo mejoras a sus componentes. 16 o 32 bits) CPU Memoria Bus de direcciones (cualquier número de bits) =`^liX. Los microcontroladores de 32 bits consumen más potencia. Por ejemplo. teclados. t Costo por unidad. es que existe una gran cantidad de código disponible (legacy code) para muchos microcontroladores. el microcontrolador original 8051 de Intel opera de 1-12 MHz. El conjunto de instrucciones de un microcontrolador de 32 bits es más grande que el de 8 bits. y su ciclo de máquina consiste de 12 periodos del circuito de reloj. Criterios para seleccionar un microcontrolador La selección de un microcontrolador depende de su aplicación. por ende. t Facilidad de migrar a un componente con mayores recursos. 4. en tiempo de desarrollo. t Empaquetado. En años recientes. relevadores. el código de las aplicaciones es aproximadamente 4 veces mayor. Por esta razón. las salidas normalmente son LEDs y actuadores bá- sicos como motores y solenoides. ha habido una gran innovación en estos. En la figura 5.%/' . entre otros.8031 Temporizador 0K . Los MCS-51 contienen dos sistemas básicos: uno constituido por la CPU y el otro por sus periféricos.8032 1 T1 Control de Otros 128 bytes 4K . Philips/Signetics. t Amplia disponibilidad de fabricantes de microcontroladores. En este sentido.(% grupo editorial patria® 271 . INT1 INT0 Temporizador 2 (8032/8052) Temporizador 1 Temporizador T2 Temporizador 0 128 bytes 2 Puerto serial ROM (8032/8052) T2EX de RAM (8032/8052) 0K .`X^iXdX[\Ycfhl\j[\cXXihl`k\ZkliX[\cd`ZifZfekifcX[fi/'. como ensambladores. entre los que destacan: Intel (original). 5 El popular microcontrolador Otros puntos importantes que también deben considerarse a la hora de seleccionar un microcontrolador son los siguientes: t Disponibilidad de las herramientas de desarrollo. que analizamos en el siguiente apartado. El popular microcontrolador 8051 Arquitectura de hardware del microcontrolador 8051 En 1981 Intel introdujo al mercado el microcontrolador 8051. AMD. emulado- res.8052 Temporizador T0 0 CPU Control Oscilador Puerto de E/S Puerto serial de bus EA ALE RST PSEN TX0 RX0 P0 P1 P2 P3 =`^liX. la familia del microcontrolador 8051 tiene el número más grande y diversificado de fabricantes o proveedores. etcétera. referido sencillamente como el MCS-51.80 se observa el diagrama de bloques de la arquitectura del microcontrolador 8051. Este microcon- trolador se hizo bastante popular después de que Intel le permitió a otros fabricantes diseñar y comercializar cualquier modalidad del 8051. simuladores. Atmel. siempre y cuando se conservara la compatibilidad de código. Infineon (antes Siemens).8051 interrupciones registros de RAM 8K . Matra y Dallas Semiconductor/Maxim. compiladores. Lo anterior sirve de preámbulo para describir al popular microcontrola- dor 8051. el cual tiene hasta 8 Kbytes de memoria ROM. t Hasta tres temporizadores/contadores. Es práctica común utilizar el término “8051” para referirnos a toda la familia de microcontroladores MCS-51. por lo general. la diferencia respecto de la versión ROM. la cual necesita que se le añada una memoria externa ROM/ EPROM al microcontrolador. llamada OTP (One-Time. la cual puede estar incorporada en el circuito integrado.3 como la familia 80C51BH. t Direccionamiento de 64 Kbytes de ROM t Direccionamiento de 64 Kbytes de RAM y/o puertos de E/S. t 32 líneas de E/S. t Unidad de procesamiento booleano. t Hasta 256 bytes de localidades de memoria RAM interna. Por este motivo. esta versión se utiliza cuando los pro- gramas ya han sido depurados de tal manera. Modos de Puertos Fuentes de ahorro Versión Versión ROM RAM de E/S Temporizadores/ interrupción de Dispositivo sin ROM EPROM bytes bytes (8 bits) contadores vectores energía 8051 8031 ---. t Un puerto serie asíncrono. cuando se está desarrollando una aplicación y se realizan modificaciones en los pro- gramas. que ya no habrá ningún cambio en ellos y se manda programar con el fabricante. y la versión sin ROM es el 8031. en la tabla 5.(d}ji\gi\j\ekXk`mfj[\cX]Xd`c`X@ek\c% Todos los microcontroladores de la familia MCS-51 de Intel ofrecen diferentes combinaciones de memoria de programa. También es muy frecuente usar la versión sin ROM (80C31BH). 4K 128 4 2 6/5 8051AH 8031AH 8751H 4k 128 4 2 6/5 8751BH 8052AH 8032AH 8752BH 8K 256 4 3 8/6 80C51BH 80C31BH 87C51BH 4K 128 4 2 6/5 V 80C52 80C32 ----. Asimismo. como el microcontrolador AT89C51. también existe una versión con mayor capacidad: el 8052. el cual toma alrededor de 20 minutos en borrar un dispositivo. cuentan con versiones con memorias de programa tipo flash. o la versión económica y de bajo voltaje de 272 ELECTRÓNICA • MIJAREZ . es práctica común usar la versión EPROM (87C51BH). Entonces.3 solo se listan los más representativos de la familia de Intel. es que la programación en la OTP se realiza después de que se construyó el microcontrolador. La memoria RAM incluida en el circuito integrado puede ser de 128 bytes. t Dos interrupciones externas. la versión con ROM es el 8051. con 4 Kbytes de memoria flash. cuando se diseña una versión mejorada de la básica suele usarse el número específico de circuito integrado. existe una gran variedad de circuitos integrados del microcontrolador 8051. Otros fabricantes. 256 bytes de memoria RAM y 3 temporizadores/ contadores. Dadas sus características y desempeño. cada miembro de la familia MCS-51 cuenta con una versión CMOS de bajo consumo de ener- gía.Programable). 8K 256 4 3 8/6 83C51FA 80C51FA 87C51FA 8K 256 4 3 14/7 KXYcX. Una variante de esta versión es la programable solo una vez.%* D`ZifZfekifcX[fi\jD:J$. Sin embargo. la versión con EPROM es el 8751. 2 temporizadores/contadores y dos interrupciones externas. como Atmel. Por otro lado. t Hasta 8 Kbytes de memoria ROM o EPROM interna o sin estas.5 MHz a 20 MHz. 5 El popular microcontrolador Las características más importantes en la arquitectura de la familia MCS-51 original son: t CPU de 8 bits. Pero. la cual requiere de un equipo programador y de un borrador de rayos ultravioleta UV-EPROM. t Reloj de 3. ¿cuándo se diseña con la versión 80C51BH? Bien. resaltada en la tabla 5. 7 P2. Con estas opciones de memoria flash no es necesario usar un equipo independiente para borrar la memoria. incluso la versión AT89LP2052 es in-system programable. and Timer Blocks Program PSW Counter _____ PSEN Timing ALE ___ Instruction and DPTR EA Register Control RST PD Port 1 Latch Port 3 Latch Oscillator Port 1 Port 3 Drivers Drivers XTAL1 XTAL2 =`^liX. memoria para datos tipo RAM y memoria para programa tipo ROM/EPROM/FLASH. P0.`X^iXdX[\Ycfhl\jZfedXpfi[\kXcc\[\cXXihl`k\ZkliX[\_Xi[nXi\[\cd`ZifZfekifcX[fi/'. 5 El popular microcontrolador alimentación (2. Serial Port.0-P2.%/( . registros. En el diagrama de bloques de la figura 5.(% La arquitectura de hardware del 8051 consta de una CPU de 8 bits.5 V): el microcontrolador AT89C2051 o AT89LP2052 con 2 Kbytes de memoria flash. un oscilador.4 V a 5. puertos de entrada/salida.7 Port 0 Port 2 VCC Drivers Drivers VSS ROM/ RAM address Port 0 Port 2 EPROM/ RAM FLASH Register Latch Latch Stack ACC Pointer B Program TMP2 TMP1 Address Register Register PCON SCON TMOD TCON T2CON TH0 TL0 TH1 Buffer TL1 ALU SBUF IE IP PC Incrementer Interrupt. Estos elementos se comunican median- grupo editorial patria® 273 . con lo cual es posible programar el microcontrolador una vez que se encuentra soldado y funcionando en una tarjeta.0-P0.81 se muestra con más de- talle la arquitectura de hardware del 8051. la lógica necesaria para rea- lizar las funciones de los periféricos y una sección de temporización y control. El 8051 tiene una unidad de control microprogramada. Esta sección de control es la parte más compleja del microcontrolador. como fuente de reloj para la CPU. SP. es decir. usan cristales de hasta 24 MHz. la de- codificación o la ejecución. Cada estado. cada instrucción en la CPU se divide y es im- plementada por una secuencia de una o más microoperaciones. CPU del 8051 La familia de microcontroladores MCS-51/8051 tiene una CPU de 8 bits. típica- mente son de 30 pF. si se desea. de dos periodos del oscilador. 5 El popular microcontrolador te un bus interno de 8 bits. un ciclo de máquina se com- pone de 12 periodos del oscilador. las cuales al activarse causan que se realice la microoperación. y la opción usando un generador externo. Por tanto. Asimismo. que trabajan hasta 16 MHz.82 muestra las fuentes de reloj para un 8051 cuando se usa un cristal de cuarzo o un resonador de cerámica. en este caso. como Atmel. el cual se comunica con el exterior haciendo uso de un puerto de E/S del microcontrolador (puerto 0). la frecuencia nominal del cristal es de 12 MHz. PSW. Asimismo. y dos registros de 16 bits: el PC (contador de programa) y el DPTR (apuntador de datos). como la instrucción INC A (incrementa el acumulador). otros fabricantes. cada uno. los capacitores de estabilización. con tres estados podemos ejecutar una instrucción completa (búsqueda-decodificación y ejecución). En el caso de los microcontroladores de Intel. B. por su parte.(% Ciclos de máquina Un cristal de 12 MHz genera 12 millones de ciclos de reloj por segundo. todos los microcontroladores MCS-51 tienen un oscilador interno. Por lo común. consta de una ALU y registros asociados de 8 bits como A. no obstante. se requiere de un estado S. ya sea la búsqueda. Cristal de cuarzo MCS-51 MCS-51 o resonador de cerámica Sin XTAL2 XTAL2 conexión C1 Señal de reloj externo C2 XTAL1 XTAL1 GND GND =`^liX. cuando se desea una expansión de memoria o de puertos de E/S. por lo general. están compuestos. numerados del S1 al S6. como el 80C31BH-1. Estos ciclos forman la base de sincronización para cada operación del 8051 y definen la secuencia de estados que conforman un ciclo de máquina. es decir. divididos como fase 1 y 2 (P1 y P2). C1 y C2. los tres primeros estados 274 ELECTRÓNICA • MIJAREZ . En otras palabras. este se controla a través de un cristal y capacitores de estabiliza- ción. hay versiones de Intel. está constituido por dos periodos del oscilador. el cual puede usarse. La vasta mayoría de registros es de 8 bits. y cuando se utiliza un resonador son de 47 pF. como se ilustra en la figura 5. Es importante resaltar que para llevar a cabo la operación discreta de una instrucción. por dos registros de 8 bits. cada microoperación se asocia con un conjunto de líneas de control. un ciclo de máquina consiste de una secuencia de seis estados. La figura 5.83. Cuando se utiliza un cristal de cuarzo. Si la instrucción es muy simple y consta de un solo byte.%/) =l\ek\j[\i\cfagXiXled`ZifZfekifcX[fi/'. incluso el PC y el DPTR. T.%/+ J\Zl\eZ`X[\cZ`Zcf[\`ejkilZZ`eY’jhl\[X$[\Zf[`]`ZXZ`e$\a\ZlZ`e gXiX\cd`ZifZfekifcX[fi/'. consiste en medir la frecuencia de la señal de ALE. no se incrementa. por tanto.84. 5 El popular microcontrolador Un ciclo de máquina S1 S2 S3 S4 S5 S6 S1 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 Osc =`^liX.(% del ciclo de máquina son suficientes para ejecutar la instrucción. Por ejemplo INC A Lee código Lee segundo Lee próximo código de operación byte de operación otra vez S1 S2 S3 S4 S5 S6 S1 2 BYTES. Como comentamos antes. la frecuencia típica de operación de los microcontroladores de Intel es de 12 MHz. se toman como referencia las señales de los pines XTAL2 del oscilador y una señal denominada ALE (Address Latch Enable). ALE es activada normalmente dos veces cada ciclo de máquina. su periodo. como lo ilustra la figura 5. Si la instrucción es de un byte. 1 CICLO DE INSTRUCCIÓN =`^liX. aún se lleva a cabo la búsqueda del siguiente byte en el estado S4. En este caso. Debido a que las señales de sincronización generadas por el oscilador interno del microcontrolador no son acce- sibles al diseñador en los pines disponibles.%/* :`Zcf[\d}hl`eX[\cD:J$. Sin embargo. esto es. y un ciclo de máquina duraría grupo editorial patria® 275 . si la instrucción es de dos bytes. la cual debe ser 1/6 de la frecuencia del oscilador.33 ns. Una de las formas de saber si el circuito oscilador se encuentra trabajando correctamente. de un ciclo de reloj está dado por T  1 /f  83. como consecuencia.(Zfejk`kl`[fgfi()g\i`f[fj[\cfjZ`cX[fi% Un ciclo de máquina S1 S2 S3 S4 S5 S6 S1 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 OSC (XTAL2) ALE Lee código Lee próximo código Lee próximo código de operación de operación (ignorado) de operación otra vez S1 S2 S3 S4 S5 S6 S1 1 BYTE. el se- gundo byte es leído en el estado S4 del mismo ciclo de máquina. PC. la frecuencia de la señal de ALE para un cristal de12 MHz sería de 2 MHz. pero el byte leído es ignorado y el contador de programa. durante los estados S1P2 y S2P1 y S4P2 y S5P1. 1 CICLO DE INSTRUCCIÓN. El acumulador puede ser fuente o destino para las operaciones lógicas de la ALU y para un número especial de instrucciones de transferencia. El acumulador es uno de los operandos. y a los μC de Dallas Semiconductors. multiplicación y división. Las operaciones aritméticas que puede ejecutar son suma. Por otra parte. que se utiliza con frecuencia para efectuar las operaciones de multiplicación y división. rotados. La pila o stack reside en cualquier parte de la RAM interna. mientras que un microcontrolador de Dallas trabajando con el mismo cristal podría efectuar las mismas instrucciones en tan solo 83. a excepción de las instrucciones de multiplicación y división. el registro B funciona como un re- gistro de propósito general. ¡Sorprendente! 276 ELECTRÓNICA • MIJAREZ . probados y usados en operaciones lógicas de bits. por ejemplo: rotar.20 La mayoría de las instrucciones del 8051 se ejecutan en un ciclo de máquina. OR. prueba de cero. los avances en la tecnología de circuitos integrados y de diseño de CPU han permitido a otros fabricantes del 8051. =fidXkf[\`ejkilZZ`e`e[`ZXe[fcfjfg\iXe[fj]l\ek\p[\jk`ef% Es importante resaltar que el acumulador es el único registro por el cual se puede tener acceso hacia el exterior del microcontrolador. por el precio de un café de Sanborns. Así.85. Un microcontrolador de Intel que opera con un cristal de 12 MHz realiza la mayoría de sus instrucciones en 1 μs. como el AT89C51. es un registro de 16 bits compuesto por dos registros de 8 bits: el DPL. y las operaciones lógicas son AND. Acumulador El acumulador es un registro de 8 bits. Otro registro. en particular. como en el μC P89C54X2. Además. que es el byte alto. El PSW contiene información relacionada con el estado del programa. y el DPH. bits individuales pueden ser puestos a cero (borrados). y de Atmel. de acuerdo con el formato que se muestra en la figura 5. el cual se abrevia como ACC o simplemente A. así como rotar. la ALU atiende las operaciones de brincos condicionales. cálculo de paridad. complementados. resta. puestos a uno. las cuales toman cuatro ciclos de máquina. etcétera. usar 4 periodos del oscilador. que es el byte bajo. Registro PSW El registro PSW (Program Status Word) es el registro de banderas y consta de 8 bits. Se utiliza para acceder los 64 Kbytes de la memoria RAM 20 Los microcontroladores 8051 de Intel. lo anterior causa que el stack empiece en la localidad 08H. Este registro se incrementa (SP  SP 1) cada vez que se realiza la instrucción PUSH o CALL y se decrementa (SP  SP – 1) cada vez que se realiza la instrucción POP o RET.3 ns. después de que se aplica una señal de RESET. Sin embargo. como el 80C51BH. Algunas operaciones se realizan solo con el acumulador. utilizan 12 periodos de oscilador para efectuar un ciclo de máquina. INSTRUCCIÓN DESTINO. el registro apuntador de datos. 5 El popular microcontrolador 83. Con otras instrucciones. es el registro B. usar 6 periodos del oscilador. borrar y complementar. como el DS5000. independiente del acumulador. Una característica importante y única de la arquitectura de hardware del 8051 es que la ALU puede manipular tanto datos de 8 bits como de 1 bit.86 se ilustra con detalle el registro PSW. usar solo un periodo del oscilador. trans- feridos.%/. En la figura 5. como Philips. DPTR. mientras que el SP es inicializado en la direc- ción 07H de la RAM interna. es el que recibe el resultado de todas las operaciones aritméticas. FUENTE =`^liX. y la serie DS89C420/30/40/50 también de Dallas Semiconductors. Otros registros de la CPU El registro apuntador de pila o SP (Stack Pointer) es un registro de 8 bits. lo anterior. ALU La ALU del MCS-51 realiza operaciones lógicas y aritméticas con variables de 8 bits.33 ns r 12  1 μs. EX-OR. %/- . Registros con funciones especiales Los sistemas integrados. localizados en la palabra de estado del programa PSW (registro de banderas). que corresponde al registro R0 del segundo banco. si se quisiera utilizar el banco 1 de registros. Los MCS-51 contienen 4 bancos de 8 registros. que es el byte alto. el DPTR se puede manipular como dos registros independientes de 8 bits. Estos bits indican el banco de registros que se está utilizando. t Medir con precisión el ancho de pulsos de entrada. esto es. El contador de programa. t Realizar un monitoreo estrecho de eventos externos asíncronos. Se usa para acceder a los 64 Kbytes de memoria de programa externa. Su función es mantener una dirección de 16 bits durante un ciclo de lec- tura o escritura del microcontrolador. RS0 Bits de selección de banco de registro. P CY Bandera de acarreo (Carry flag) Indica si hubo acarreo o no en el bit 7 como resultado de alguna operación aritmética. Estos es. Los sistemas basados en microprocesadores requieren de circuitos periféricos externos. y PCH. y la información se podría traslapar.. que es el byte bajo. que explicamos con anterioridad. Si se requiere. 0 0 Banco 0 En suma o resta este bit sirve para hacer operaciones con signo. se tendría que reposicionar el apun- tador del stack (SP). BANCO DE RS1 RS2 OV Bandera de sobreflujo (Overflow flag) REGISTROS Esta bandera indica si hubo un desbordamiento del bit 7 a causa de operaciones aritméticas. SP. El banco de registros se selecciona mediante la programación de los bits RS1 y RS2. debido a que al usar una instrucción PUSH o CALL. es el otro registro de 16 bits. basados en microcontroladores. para cumplir las necesidades arriba mencionadas. Se inicia en la dirección 0000H después que se aplica la señal de RESET. AC Bandera auxiliar de acarreo (Auxiliary Carry flag) Bandera de acarreo auxiliar. Esta bandera no se ve afectada con las instrucciones de INC o DEC. 5 El popular microcontrolador CY AC F0 RS1 RS2 0V . Por lo general. Los registros R0 y R1 se pueden utilizar para acceder hasta 255 bytes de direccionamiento indirecto. de igual manera que en cada uno de los bancos. F0 Esta es una bandera de propósito general designada para el usuario. se encontraría en la localidad 08H de RAM interna.Bit reservado 1 0 Banco 2 P Bandera de paridad (Parity flag) Indica si el número de unos en el acumulador es par o non. con el objetivo de hacerlos más versátiles. dichos registros se encuentran localizados en las primeras 32 localidades de RAM interna. integran este tipo de periféricos dentro del mismo circuito integra- do. de 8 bits cada uno. puertos seriales (USART). 0 1 Banco 1 . t Mantener la cuenta de ciertas transiciones de señales en determinados pines. etc. el apuntador de stack. como: grupo editorial patria® 277 . estos registros están numerados del R0 al R7. tienen que satisfacer ciertos requerimientos comunes para este tipo de aplicaciones. RS1. Los sistemas basados en microcontroladores. Es muy importante men- cionar que después de la reinicialización del programa del microcontrolador. esta bandera funciona igual que la bandera de CY. mediante un pulso de RESET.\kXcc\[\ci\^`jkifGJN% externa o periféricos mapeados a memoria. como contadores. tem- porizadores. Este registro también está conformado por dos regis- tros de 8 bits: PCL. estos requerimientos son: t Dar seguimiento al tiempo transcurrido. De los cuales. como la familia MCS-51. en un instante solo puede estar activado uno de los cuatro bancos. t Comunicarse con otros sistemas o personas. también sirve como acumulador de un bit. señala la paridad par. pero indica si hubo o no acarreo del bit 3 al 4 para operaciones BCD. PC. 1 1 Banco 3 =`^liX. el banco de registros seleccionado es el cero. Organización de memoria del 8051 En su gran mayoría. como el componente principal orientado a control. IE. en el cual se encuentran la me- moria de datos y los registros con funciones especiales (SFR) que controlan a los periféricos internos. un mapa de memoria RAM externo. Cada uno de estos periféricos internos contiene un grupo de registros asociado con ellos. pero antes describimos la organización de memoria de la arqui- tectura del 8051. IP y PCON. en particular cuando examinemos cada uno de estos periféricos internos. TMOD.%/. Esta es la razón principal por la cual la organización de memoria del microcontrolador 8051 cuenta con dos espa- cios separados de memoria externa: uno para memoria de programa (código) y otro para memoria de datos.87. La capacidad de memoria en los sistemas basados en microcontroladores es restringida. TH1. Detallaremos cada uno de estos en secciones posteriores de este capítulo. FFFFH FFFFH Memoria Memoria para código de datos (ROM/EPROM/Flash) (RAM/puertos de E/S) se habilita se habilita mediante _____ la mediante ___ las ___ señal PSEN señales RD y WR FFH Memoria de datos (RAM) 00H 0000H 0000H 0000H Memoria incorporada Memoria externa en el microcontrolador =`^liX. I\jld\e[\cfj\jgXZ`fj[\d\dfi`XgXiX\cd`ZifZfekifcX[fi/':*(9?% Los tres mapas de memoria del 8051 son: un mapa de memoria de RAM interna. los sistemas basados en microprocesadores efectúan su mapa de memoria compartiendo tanto me- moria de programa (ROM) como memoria de datos (RAM). que puede contener de manera compartida a la memoria de datos externa y a los dispositivos 278 ELECTRÓNICA • MIJAREZ . por lo que estos no cuentan con una unidad de disco o un sistema operativo en disco. a estos y otros registros especiales se les denomina SFR (Special Function Registers). 5 El popular microcontrolador t Temporizadores/contadores. como consecuencia. Lo anterior se debe a que con frecuencia los programas se almacenan en un disco y se cargan a la memoria RAM para su ejecución. los microcontroladores no se utilizan como los micropro- cesadores de sistemas computacionales. SBUF. TH0. el programa de control radica en la memoria ROM y los datos en la memoria RAM. TL1. como se lo ilustra la figura 5. esa es la razón por la cual tanto los datos como los programas se almacenan en la memoria RAM. Aunque en realidad. si consideramos a la memoria interna que contiene el microcontrolador. TL0. como son: TCON. estos más bien se emplean en sistemas integrados. t Fuentes externas de interrupciones. se puede decir que el 8051 cuenta con tres mapas de memoria. Asimismo. t Interfaz de comunicación serial. la diferencia entre estas familias puede causar confusión debido a que los microcontrolado- res 8052/8032 tienen un espacio de memoria adicional de 128 bytes que cubre las direcciones 80H a FFH. y. la parte baja es la única que se considera como RAM interna. este puede contar con memorias de programa interna. los microcontroladores mejorados. como el 8052/8032. La parte baja de la RAM interna (00H-7FH) se divide en bancos de registros (00H–1FH). t Que solo se utilice una memoria externa de hasta 64 Kbytes de direccionamiento. cualquier intento de ejecución de un programa con un direccionamiento mayor a los 4 Kbytes/8 Kbytes se dirigirá a la memoria externa. por este motivo. por último. Estos micro- controladores tienen especificados 128 bytes porque solo la parte baja (00H–7FH) se utiliza para datos de propósito general. En esta opción. Organización de memoria de programa externa Dependiendo del dispositivo de la familia MCS-51 que se va a utilizar. la parte alta de la RAM corresponde a grupo editorial patria® 279 . externa o ambas. dependiendo del dispositivo. en RAM direccionable por bits (20H-2FH) y en RAM de propósito general (30H–7FH).%// FgZ`fe\jgfj`Yc\j[\d\dfi`X[\gif^iXdXgXiXcX]Xd`c`XD:J$. Algunas veces. SFR. FFFFH FFFFH FFFFH ROM externa ROM externa 1 FFFH 1 FFFH 8K bytes 8K bytes ROM ROM 0FFFH interna 0FFFH interna 4K bytes 4K bytes 0000H 0000H 0000H =`^liX. mientras que normalmente la parte alta (80H-FFH) se utiliza para propósitos específicos y no para datos de uso general.88.(% Como se puede observar. especifican una memoria RAM interna de 256 bytes. el primer bloque de 128 bytes va de la dirección 00H a la 7FH. las opciones de memoria de programa disponibles que se plantean en la figura 5. Organización de memoria de datos interna En los MCS-51 que cuentan con una memoria interna de 256 bytes. por su parte. un mapa de memoria de código interno y/o externo que contiene la memoria de programa ROM/EPROM/Flash.89. el segundo bloque de 128 bytes corresponde a los registros con funciones especiales. y se puede direccionar de manera directa e indirecta. t Que se utilicen ambas memorias: la memoria interna de 4 Kbytes/8 Kbytes y una memoria externa con 64 Kbytes de direccionamiento en total. Lo anterior corresponde a los microcon- troladores que tienen especificados solo 128 bytes de memoria RAM interna. como se es posible observar en la figura 5. 5 El popular microcontrolador de entrada y salida. el cual tiene un espacio de dirección que abarca desde la dirección 80H a la FFH y únicamente puede direccionarse de manera directa.88 son las siguientes: t Que solo se utilice la memoria interna de 4 Kbytes/8 Kbytes. pero la forma de acceder a ellos es únicamente con direccionamiento indirecto. Por otro lado. como se muestra en la figura 5. No obstante. como el 8051/8751/8031. %/0 <jgXZ`f[\d\dfi`X[\cXI8D`ek\ieXgXiXcX]Xd`c`XDJ:$. D0 PSW 30 B8 . F6 F5 F4 F3 F2 F1 F0 IP 2F 7F 7E 7D 7C 7B 7A 79 78 2E 77 76 75 74 73 72 71 70 B0 F7 F6 F5 F4 F3 F2 F1 F0 P3 2D 6F 6E 6D 6C 6B 6A 69 68 2C 67 66 65 64 63 62 61 60 A8 F7 F6 F5 F4 F3 F2 F1 F0 IE 2B 5F 5E 5D 5C 5B 5A 59 58 2A 57 56 55 54 53 52 51 50 A0 F7 F6 F5 F4 F3 F2 F1 F0 P2 29 4F 4E 4D 4C 4B 4A 49 48 28 47 46 45 44 43 42 41 40 99 no accesible por bit SBUF 27 3F 3E 3D 3C 3B 3A 39 38 98 F7 F6 F5 F4 F3 F2 F1 F0 SCON 26 37 36 35 34 33 32 31 30 25 2F 2E 2D 2C 2B 2A 29 28 90 F7 F6 F5 F4 F3 F2 F1 F0 P1 24 27 26 25 24 23 22 21 20 23 1F 1E 1D 1C 1B 1A 19 18 8D no accesible por bit TH1 22 17 16 15 14 13 12 11 10 8C no accesible por bit TH0 21 0F 0E 0D 0C 0B 0A 09 08 8B no accesible por bit TL1 20 07 06 05 04 03 02 01 00 8A no accesible por bit TL0 1F 89 no accesible por bit TMOD Banco 3 88 TCON 18 F7 F6 F5 F4 F3 F2 F1 F0 17 87 no accesible por bit PCON Banco 2 10 0F 83 no accesible por bit DPH Banco 1 08 82 no accesible por bit DPL 07 Banco de registros por 81 no accesible por bit SP 00 defecto para R0 .(% Dirección Dirección de byte Dirección de bit de byte Dirección de bit 7F FF F0 F7 F6 F5 F4 F3 F2 F1 F0 B Memoria RAM de propósito E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC general D0 D7 D6 D5 D4 D3 D2 .(9?% 280 ELECTRÓNICA • MIJAREZ .R7 80 F7 F6 F5 F4 F3 F2 F1 F0 P0 RAM =`^liX.5 El popular microcontrolador FFH FFH Accesible solo Accesible solo 128 con el modo de con el modo de bytes direccionamiento direccionamiento superiores indirecto directo 80H 80H 7FH Registros 128 Accesible con bytes con los modo de funciones superiores direccionamiento especiales directo e indirecto (SFRs) 00H =`^liX.\kXcc\[\cXd\dfi`XI8D`ek\ieXgXiX\cd`ZifZfekifcX[fi/':.%0' . Las ocho líneas de cada puerto se pueden utilizar no solo como una unidad de interfaz en paralelo para dispositi- vos como ADC/DAC. P1.4. En importante resaltar que en el espa- cio entre las direcciones de la 20H a la 2FH se encuentra un segmento que puede ser direccionado como byte o como bit de propósito general. sino que cada línea también puede funcionar de forma independiente. es decir. Los MCS-51 cuentan con un total de 40 terminales. existen microcontroladores de la familia Atmel que operan con un rango de voltaje de 2. como LED. pero 24 de estas son de propósito dual (26 en el 8032/8052). las direcciones de la 30H a la 7FH pueden ser utilizadas por el usuario de manera compartida. como lo ilustra la figura 5. P2 y P3 4 puertos paralelos de 8 bits KXYcX. Estos registros incluyen el Acc. como se muestra en la tabla 5. Ahora. En la figura 5.91. el registro B. de interrupciones y de control de energía. Los registros con funciones especiales se encuentran en la parte superior de la RAM interna (80H-FFH). del puerto serie.(% En la figura 5. Descripción de terminales o pines En esta sección describimos la arquitectura del MCS-51 desde una perspectiva externa. para lo cual. el SP y los puertos. teclados. grupo editorial patria® 281 . XTAL1 y XTAL2. Dichas terminales se pueden agrupar.%+ . Núm. La conexión VCC se encuentra en la terminal 40 y la conexión VSS o tierra en la terminal 20. con exactitud 21 registros para el 8051 y 26 registros para el 8052. En las primeras 32 localidades de la memoria RAM interna del microcontrolador 8051 se encuentran los 4 bancos de 8 registros: R0-R7. Sin embargo. en este momento nos centramos en describir las termina- les restantes..4 podemos apreciar que de las 40 terminales disponibles en el 8051. bocinas (altavoces) y solenoides. asimismo.91 y en la tabla 5. ya fueron examinadas antes. estos registros ocupan las direcciones de la 00H a la 1FH. cuando describimos la CPU del 8051 y su temporización. 5 El popular microcontrolador las direcciones de los registros con funciones especiales. etc.90 se observa el detalle de la memoria RAM interna para el microcontrolador 8051. explicamos fun- cionalmente los pines o terminales del microcontrolador. Cada una de estas líneas puede funcionar como puerto de entrada/salida o bien como línea de control o de bus de datos o de bus de direcciones. Terminales Función de las terminales 2 VCC y VSS (GND) Alimentación 2 XTAL1 Y XTAL2 Entradas del cristal de cuarzo/resonador para el oscilador interno 1 RST Entrada de RESET o reinicio 1 /EA Entrada para seleccionar la memoria de programa: interna o externa 2 ALE y /PSEN Address Latch Enable (ALE) y Program Store Enable (PSEN): Señales de control para acceder a un programa externo 32 P0. transistores.4 V a 5. Conexiones de alimentación La familia MCS-51 de Intel funciona con una fuente de alimentación de 5 volts. displays.\jZi`gZ`e]leZ`feXc[\cXjk\id`eXc\j[\c/'. Por tanto. Por su parte. entre otros. 32 funcionan como líneas para puertos de entrada/salida. también contie- nen los registros de temporizadores. describiremos al microcontrolador 8051 desde un perspectiva externa. como memoria de datos y como área reservada para el stack o pila. como una interfaz para dispositivos de un solo bit. podemos direccionar 16 bytes o direc- cionar 128 bits (8 bits r 16 bytes) de manera independiente. el registro DPTR (DPL y DPH). dependiendo de la instrucción que se utilice.5 V. Las conexiones correspondientes a las terminales 18 y 19. 3 EA 3 P1. por lo menos dos ciclos de máquina. lo cual indica que después de recibir la señal adecuada de reset.5 A13 14 25 T0 ____ P3.1 P2.3 37 AD2 P0. RST. Considerando un voltaje de entrada (VH) de 5 V del circuito RC.1 RST 1 P1.92.6 P2. después de un pulso de reset.6 A14 15 26 T1 P3.4 A12 13 24 INT1 ____ P3. La función prin- cipal de esta señal es inicializar los registros internos del microcontrolador a los valores adecuados y efectuar un ciclo ordenando del sistema.4 36 AD3 P0.(% Reset o reinicio La señal de entrada en la terminal 9. 5 El popular microcontrolador 40 30 pF VCC 19 32 AD7 XTAL1 P0.2 A10 11 22 TXD P3.2 P2. o al momento de encender el sistema vía un circuito RC.7 12 MHz 33 AD6 P0.7 16 27 WR P3.0 ___ 17 RD P3. la ejecución del programa inicia en la primera localidad de la memoria de código. El contador de programa.5 se listan los valores de los registros internos del 8051.4 P2. En tabla 5.0 P2. Esta señal se puede poner en 1 mediante un interruptor.6 6 30 P1.0 _____ 8 29 P1.5.7 28 A15 ___ P2.3 A11 12 23 INT0 P3. y debe permanecer a nivel bajo durante la operación normal del microcontrolador. este se carga con el valor 0000H. PC.4 __ 4 31 P1.0 A8 VSS 20 =`^liX.%0( 8j`^eXZ`e[\k\id`eXc\j[\c/'. el pin de RST se mantiene en ALTO un tiempo dado por: VL  VH (1 – e–t/RC) 282 ELECTRÓNICA • MIJAREZ . como se muestra en la figura 5. en este caso en la dirección 0000H.5 35 AD4 30 pF P0.5 ALE 5 P1. es tal vez el registro más importante listado en la tabla 5.6 18 34 AD5 XTAL2 P0. La señal de reset se debe mantener a nivel alto.2 2 9 P1.1 A9 10 21 RXD P3.1 39 AD0 P0.2 38 AD1 P0. es la señal maestra de reinicio del microcontrolador 8051.5 P2.3 P2.7 PSEN 7 P1. proporciona la parte baja de las direcciones y escribe o lee un byte de datos a memoria externa. de otro modo.%. cada uno consiste de: un latch (registros SFR de P0-P3). MXcfi\j[\cfji\^`jkifj`ek\iefj[\c/'. se usan para acceder a memoria externa. un driver de salida y un buffer de entrada.(% Puertos del MCS-51 Los 4 puertos del MCS-51 son bidireccionales. y el buffer de entrada del P0.%0) :`iZl`kf[\i\j\kgXiX\c/'. es decir. Por su parte. 5 El popular microcontrolador +5 V +5 V + 100 ohms 10 μF Reinicio RST 8. El puerto P0 es un bus multiplexado en tiempo. Registro Valor de reset PC 0000H ACC 00H B 00H PSW 00H SP 07H DP TR 0000H P0-P3 FFH IP XXX00000B IE 0XX00000B TMOD 00H TCON 00H TH0 00H TL0 00H TH1 00H TL1 00H SCON 00H SBUF INDETERMINADO PCON (NMOS) 0XXXXXXXB PCON (CMOS) 0XXX0000B KXYcX. Los drivers de salida de los puertos P0 y P2.(#[\jgl„j[\leglcjf[\i\j\k% grupo editorial patria® 283 .2 K ohms =`^liX. se puede usar para propósito general. el puerto P2 proporciona la parte alta de las direcciones cuando el direccionamiento es de 16 bits. X Pin P1.\kXcc\[\cfjgl\ikfj[\cD:J$. Las funciones especiales del puerto P3 y (dos pines) del puerto P1 son: t P1. respec- tivamente.3 INT1 (interrupción externa 1) t P3.%0* .2 INT0 (interrupción externa 0) t P3.6 WR/ (pulso de escritura para RAM externa) t P3. Port 2 Bit d. Bus D Q P2.(% 284 ELECTRÓNICA • MIJAREZ .X Int.1* T2EXT (captura/recarga del temporizador/contador 2) t P3. Los puer- tos P1.5 T1 (entrada externa temporizador/contador 1) t P3.4 T0 (entrada externa temporizador/contador 0) t P3.X P1.X Latch Latch Write CL _Q_ Write CL _Q_ to Latch to Latch Read Read Alternate Pin Pin Input Function c.0* T2 (entrada externa del temporizador/contador 2) t P1. Bus D Q P2.93. si este es 1.X Pin P3.0 RXD (entrada del puerto serial) t P3. es controlado por el latch. son de multifunción. El puerto P3. Port 3 Bit =`^liX. Bus D Q Pin P0. Port 1 Bit ADDR/Data VCC Alternate Control Output VCC Read Read Function Latch Internal Latch Pullup* Internal Pullup* MUX P3. P2 y P3 tienen resistencia de “pull up” internas.7 RD/ (pulso de lectura para RAM externa) El circuito electrónico de cada uno de los puertos se muestra en la figura 5. esto es.X Pin Int. Port 0 Bit b.X Latch Latch Write CL _Q_ MUX Write CL _Q_ to Latch to Latch Read Read Pin Pin a. Los puertos P2 y P0 son controlados internamente para conmutar entre direcciones y datos (ADDR/Data). 5 El popular microcontrolador El puerto P3 y dos pines del puerto P1 en el 80C52.1 TXD (salida del puerto serial) t P3. la salida es controlada por la función alterna. ADDR/Data VCC Control Read Read VCC Latch Latch Internal Pullup* P0. operan como puertos de propó- sito general o con funciones especiales.X Int. y el puerto P0 tiene salida drenador abierto (open drain). Bus D Q Int. En tanto. los programas se ejecutan desde una memoria EPROM externa. ya que se pierde un pulso de esta señal. dependiendo de la zona donde se va a ejecutar el programa. EA La señal EA. cuando se ejecuta un programa en la memo- ria ROM interna. debido a que estos microcontroladores no cuentan con memoria de programa incorporada en el circuito integrado. Esta señal se mantiene en estado inactivo. la cual contiene memoria EPROM interna. permite almacenar en un registro externo el byte inferior del bus de direcciones (véase sección interfaz a memoria externa). FFFFH Memoria externa __ __ 1FFFH/0FFFH EA = 0 EA = 1 Memoria Memoria externa interna 0000H =`^liX.%0+ J\c\ZZ`e[\XZZ\jfXd\dfi`X[\gif^iXdXIFD `ek\ieXf\ok\ieX% Para los microcontroladores 8031/8032 la terminal /EA debe mantenerse a un nivel lógico bajo. hay una excepción cuando se usa la instruc- ción MOVX. En tanto. ejecuta sus programas en la memoria ROM interna. de esta forma. si el pin EA se encuentra a nivel lógico bajo. Señal para acceso externo. nivel alto. también utiliza la terminal /EA para aplicar un voltaje de 21 V (Vpp). 5 El popular microcontrolador ALE y PSEN La señal PSEN\ se activa a nivel bajo durante la búsqueda (fetch) de una instrucción almacenada en la memoria exter- na para programas. se mantiene ya sea a nivel bajo o a nivel alto.94. La señal ALE (Address Latch Enable) se utiliza para demultiplexar los buses de datos y las direcciones provenientes del puerto P0 en su función alterna. Al momento de ejecu- tar un programa con una dirección mayor a los 4/8 Kbytes asignados. EXPANSIÓN DE MEMORIA Y DISPOSITIVOS DE E/S La arquitectura de la familia MCS-51 tiene la capacidad de expandir sus recursos de memoria y puertos de entrada/ salida más allá de los recursos incorporados en el circuito integrado. como se observa en la figura 5. Esta capacidad permite evitar posibles restriccio- grupo editorial patria® 285 . se dirigirá automáticamente a la memoria exter- na. Esta señal. sólo se ejecutan los programas en la memoria externa. ALE envía pulsos a una tasa de 1/6 la frecuencia del oscilador y se puede usar como reloj de propósito general. necesario para programar dicha memoria. sin embargo. la versión 8751. Si EA se encuentra a nivel lógico alto. terminal 31. en contraste con un bus multi- plexado de direcciones (byte bajo) y datos. el puerto P0 se convierte en un bus multiplexado de direcciones (A0-A7) y datos (D0-D7).A15 Dirección D0 . X J`jk\dXefdlck`gc\oX[f[\[`i\ZZ`fe\jp[Xkfj%Y J`jk\dXdlck`gc\oX[f[\[`i\ZZ`fe\jYpk\YXaf p[Xkfj% La pregunta obligada es: ¿cuál es la ventaja de usar un bus multiplexado.A15 Dirección AD0 . con un total de 24 líneas o pines del microcontrolador. Adicionalmente. Durante la primera mitad del ciclo de memoria. ya que permite fijar el byte inferior de las direcciones al principio de cada ciclo de memoria externa.AD7 Dirección Datos b) Multiplexado (16 líneas) =`^liX. podemos apreciar que el sistema no multiplexado utiliza 16 líneas de direcciones y 8 líneas de datos. Durante la segunda mitad del ciclo de memoria.95b). Si es necesario. el puerto P0 se utiliza como bus de datos y los datos se leen o escriben dependiendo de la operación externa que se realice. La dirección baja permanece estable a la salida del latch durante todo el ciclo de memoria. Dichos dispositivos pe- riféricos forman parte del espacio de memoria asignado para la memoria de datos. Ahora volvamos al bus multiplexado de direcciones y datos.95a). el puerto P0 no está disponible como puerto de entrada/salida. es decir. en los diseños es posible añadir memorias ROM y RAM. los periféricos externos se mapean a memoria. Antes de describir con detalle el funcionamiento del bus multiplexado de direcciones y datos. como el que se muestra en la figura 5. se estudia el arre- glo de un bus de direcciones de 16 bits no multiplexado y un bus de datos de 8 bits. en la figura 5. 2. En este caso. como si fueran localidades de memoria RAM.95 muestra estos dos casos. 286 ELECTRÓNICA • MIJAREZ . como el 74HC573 o equivalente. con el fin de analizar cómo trabaja: 1. Los espacios de expansión de memoria son de 64 Kbytes para código y 64 Kbytes para datos y puertos de entrada/salida.%0. utiliza 8 líneas para el byte alto de direcciones y 8 líneas para el byte bajo de las direcciones y para el byte de datos. también es posible agregar dispositivos periféricos para incrementar la capacidad de entradas/salidas. Esta dirección se almacena por medio de la señal ALE en un latch externo de 8 bits. el puerto P0 provee el byte inferior del bus de direcciones (A0- A7). Cuando se accede a la memoria externa. Ciclo de memoria A0 . Mientras que el sistema con un bus multiplexado.D7 Datos a) No multiplexado (24 líneas) Ciclo de memoria A8 . ¡Con esto se ahorran 8 pines del microcontrolador¡ Este ahorro de pines permite que el microcontrolador pueda ofre- cer funciones adicionales en el mismo encapsulado de doble línea (DIP) de 40 pines. si con un bus no multiplexado es posible operar correctamente? Bien. Por otro lado. La señal de ALE juega un papel muy importante. y se lee o escribe a ellos. 5 El popular microcontrolador nes de diseño. con un total de 16 pines o terminales del microcontrolador. La figura 5. el puerto P2 por lo general se utiliza para proveer el byte superior del bus de direcciones (A8- A15). dirección de 8 bits MOVX A.A7 ALE LE /OE Puerto 2 A8 . un ciclo de máquina del 8051 consta de 12 periodos del oscilador. Es impor- tante destacar que el único acceso a la memoria de datos externa es a través de la instrucción MOVX. cuando se utiliza una memoria EPROM externa. @DPTR Ciclo de lectura.96 muestra las conexiones de hardware entre un microcontrolador 8031 y una memoria EPROM externa de 64 Kbytes. Acceso a la memoria externa de datos La memoria externa para datos es una memoria tipo RAM de lectura/escritura. en consecuencia.%0- :fe\o`fe\j[\_Xi[nXi\\eki\led`ZifZfekifcX[fi/'*(pleXd\dfi`X<GIFD\ok\ieX[\-+BYpk\j% Como sabemos. 5 El popular microcontrolador Acceso a la memoria externa de código La memoria externa para código es de solo lectura y se utiliza como señal de control de lectura la señal /PSEN.6 y P3. la cual se habilita mediante las señales de control /WR y /RD. A Ciclo de escritura. La figura 5. normal- mente se generan 2 pulsos de habilitación /PSEN y 2 pulsos de la señal ALE. el puerto P0 funciona como bus multiplexado de direcciones (byte bajo) y byte de datos. dirección de 16 bits MOVX A. dirección de 8 bits grupo editorial patria® 287 . @Ri Ciclo de lectura. El segundo byte se ignora si la instrucción que se realiza es de un solo byte. La instrucción MOVX (transferencia de datos externa) usada para acceder a la memoria de datos externa es: MOVX @DPTR. Puerto 0 D0 . La figura 5. respectivamente. los puertos P0 y P2 no se encuentran disponibles como puertos de entrada/salida. En estas circunstancias. correspondientes a las funciones alternas de los pines P3.97 muestra la temporización para la búsqueda del código de operación (fetch). la cual involucra el registro acumulador (ACC) y los registros apuntadores DPTR (16 bits) o los registros R0 o R1 (8 bits). A Ciclo de escritura. Durante cada ciclo.7.D7 8051 74HC573 EPROM ___ EA D Q A0 . y el puerto P2 como bus de direcciones (byte alto).A15 _____ ___ PSEN OE =`^liX. es posible leer 2 bytes de la memoria de programa. Por ejemplo. dirección de 16 bits MOVX @Ri. como regis- tros de dirección. 2 A10 ___ ___ RD ___ _OE __ WR _____ W ___ PSEN NC (sin conexión) CS =`^liX.(gXiX\]\ZklXicXY’jhl\[X[\cZ[`^f[\fg\iXZ`e% En este caso. de la misma manera que se usaron en la conexión de la EPROM externa. PCL = byte inferior del contador de programa.0 A8 P2. y la línea de control para escri- tura es /WR.98 muestra las conexiones entre un micro- controlador 8051 y una memoria RAM de 2 Kbytes. Ri puede ser R0 o R1. K\dgfi`qXZ`e[\c/'.1 A9 P2. la cual se conecta al pin /OE de la memoria RAM. Puerto 0 D0 . =`^liX. La única diferencia es que ahora la línea de control para lectura es /RD. Las conexiones del bus de datos y direcciones se realizan mediante los puertos P0 y P2. 5 El popular microcontrolador Un ciclo de máquina S1 S2 S3 S4 S5 S6 S1 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 Osc ALE _____ PSEN Puerto 2 PCH PCH Código de Puerto 0 PCL PCL Byte 2 operación Nota: PCH = byte superior del contador de programa.A7 ALE LE /OE P2.%0. la cual se conecta al pin /W de la memoria RAM.%0/ :fe\o`fe\j[\_Xi[nXi\\eki\led`ZifZfekifcX[fi/'. La figura 5.D7 8051 RAM 74HC573 (2 Kbytes) ___ EA +5 V D Q A0 .(pleXd\dfi`XI8D\ok\ieX[\)BYpk\j% 288 ELECTRÓNICA • MIJAREZ . como se muestra en la figura 5. 5 El popular microcontrolador Como mencionamos antes. de la misma manera que se uso con los sistemas basados en micropro- cesadores. solo que los datos en el acumu- lador serían los datos de salida. y se cuenta con memorias EPROM 27C64 y RAM 62C64 de 8 Kbytes.0. la señal de lectura /RD y los datos de la memoria son colados en el P0 y transferidos al registro acumulador.88.GKI% En la figura 5.99 apreciamos que una vez que el microcontrolador lee el código de operación de la instrucción MOVX A. la única ex- cepción es cuando se utiliza la instrucción MOVX. Para realizar el ciclo de lectura en este caso se usaría la instrucción MOVX A. @R0. @DPTR. si se requiere diseñar un sistema basado en el μC 80C31BH.100. donde se omite un pulso de cada una de estas señales y se reem- plaza por el pulso de la señal de control. DPL = byte inferior del registro apuntador. este ejecuta la instrucción. para almacenar esta parte de la dirección en un latch externo 74HC573 o simi- lar. la selección de un bloque sería usando los pines P2. Posteriormente. y utilizar solo 3 bits del puerto 2 o de otro puerto. Por ejemplo. los datos enviados por el puerto P0 se sincronizan con la señal de ALE. el microcontrolador envía la señal de control. se proporcionaría el byte superior del bus de direcciones. Si el sistema requiere acceder a una cantidad pequeña de memoria de datos (por ejemplo.1 y P2.99 y 5. @DPTR. El diagrama de tiempos para un ciclo de escritura a memoria RAM. la señal de ALE y /PSEN se generan dos veces en cada ciclo de máquina. con 24 Kbytes de memoria EPROM y 24 Kbytes de memoria RAM. la señal de control sería la señal de /WR y la señal de /RD permanecería a nivel lógico alto. o MOVX A @R0. es posible acceder a la memoria externa mediante direccio- nes de 8 bits usando los registros R0 o R1. se liberaría al puerto P2 de su función alterna. De esta manera. para dividir la memoria de 2 Kbytes en 8 bloques o páginas de 256 bytes. En este caso. es necesario usar un decodificador de direcciones.99 muestra el diagrama de tiempos para un ciclo de lectura usando la instrucción MOVX A. Por ejemplo. también se utiliza un decodificador de 3 entradas a 8 salidas 74HC138. A menudo. P2. como lo ilustra la figura 5.%00 K\dgfi`qXZ`egXiX`ejkilZZ`eDFMO8#7. 256 bytes) y se cuenta con 2 Kbytes de RAM. que se estudiaron en el apartado Organización de memoria y decodificación de direcciones de este capítulo. Un ciclo de máquina Un ciclo de máquina S1 S2 S3 S4 S5 S6 S1 S2 S3 S4 S5 S6 ALE _____ PSEN ___ RD Puerto 2 PCH DPH (byte superior del apuntador de datos) Código de Entrada Puerto 0 PCL DPL operación de datos Nota: DPH = byte superior del registro apuntador. entonces es necesario decodificar el bus de direcciones para seleccionar cada memoria de 8 Kbytes. usando las instrucciones MOVX A @DPTR. La figura 5. En este ejemplo. es decir. es muy similar a los diagramas mostrados en las figura 5. Para esto. por el puerto P2 envía el byte superior del registro DPTR (DPH) y por el puerto P0 envía el byte inferior del registro DPTR (DPL). Las entradas corresponden al bus de direcciones (puerto P2) y las grupo editorial patria® 289 . ya sea /RD o /WR.100.2. =`^liX. Si el sistema basado en un microcontrolador requiere de una interfaz para varias memorias RAM o EPROM. A12 A0 . P2.A12 ___ ___ CS CS ___ ___ CS CS ___ ___ CS CS 74HC138 A15 __ C _0_ A14 B _1_ A13 A _2_ _3_ _4_ Selección a otras memorias +5 V _G1 ____ _5_ o periféricos _G2A ____ _6_ G2B 7 =`^liX.%('( J`jk\dXYXjX[f\eled`ZifZfekifcX[fiZfe[\Zf[`]`ZXZ`e[\[`i\ZZ`fe\j% 290 ELECTRÓNICA • MIJAREZ .0. Bus de direcciones (P2 y P0) Bus de datos (P0) ___ ___ _____ ___ D0 .1 y P2.D7 RD OE D0 . 5 El popular microcontrolador Un ciclo de máquina Un ciclo de máquina S1 S2 S3 S4 S5 S6 S1 S2 S3 S4 S5 S6 ALE _____ PSEN ___ RD Puerto 2 PCH P2.D7 ___ __ PSEN OE 2764 WR W 6264 EPROM RAM (8 kbites) (8 kbites) A0 . de cada memoria.2 (para selección de bloque) Código de Entrada Puerto 0 PCL R0 operación de datos =`^liX. como se muestra en la figura 5.101.%('' K\dgfi`qXZ`egXiX`ejkilZZ`eDFMO8#7I'% salidas se conectan a la terminal de selección de circuito integrado. también llamado chip (/CS). La figura 5.104 muestra el listado del programa solicitado.103. ya que la memoria es de solo lectura y no puede ser modificado. un display de 7 segmentos a través de un latch 74LS573 y un arreglo de cuatro interruptores tipo DIP mediante un buffer 74LS244. como se ilustra en la figura 5. como si fuera código. ahora vamos a realizar un pequeño programa usando el hardware de la figura 5.102 usamos un truco para “engañar” al microcontrolador y leer tanto código como datos de una memo- ria RAM. si el valor leído es diferente de cero. grupo editorial patria® 291 . Acceso a periféricos (puertos de E/S) mapeados a memoria En la figura 5. Los periféricos forman parte del espacio de memoria de 64 Kbytes asignado para memoria de datos. otras alternativas son usar el 8031 y emplear memorias EPROM externas o usar el 8751 con memoria EPROM interna.2.102 se puede cargar un programa en la memoria RAM. Este decodificador tiene 2 entradas y 4 salidas. Por ejemplo. de esta manera.103a) es posible observar que se utilizó un decodificador de direcciones 74LS139 para mapear los periféricos a memoria. Para esto. es decir. nos permiten hacer uso de la instrucción MOVX y su relación con el hardware del sistema. al que se le escribe el código como si fueran datos y el cual se ejecuta accediendo a la RAM. como se muestra en la figura 5. 5 El popular microcontrolador El 8051 tiene dos espacios separados de direccionamiento de 64 Kbytes para memoria ROM y RAM o periféricos. vamos a suponer que tenemos un sistema basado en el microcontrolador 87C51. si se cuenta con el 8051 y se desea desarrollar software. que se tienen 16 mil posibles direcciones para acceder a cada uno de los periféricos. respectivamente.103 y algunas instrucciones usadas en la tabla 5. una memoria RAM puede ocupar espacio tanto para código como para datos mediante la conexión de su terminal /OE a una compuerta AND. Debido a que /PSEN se utiliza para leer código y /RD para leer memo- ria de datos.103b). a fin de incrementar la capacidad de entra- das/salidas. Por esta razón. podemos comprobar que se usó una decodi- ficación parcial. las memo- rias ROM y RAM de la figura 5. los cuales son habilitados por las señales de control: /PSEN y /RD.101 pueden tener el mismo espacio de memoria y compartir su habilitación (/CS). RAM ___ __ WR W ___ RD ___ _____ OE PSEN =`^liX. debe- mos escribir el número nueve en el display de 7 segmentos. no es posible depurarlo al escribir código. aunque parecen no tener aplicación. por lo que nuestro mapa de memoria se dividió en 4 segmentos de 16 Kbytes. Un truco similar se utiliza para agregar dispositivos periféricos. No obstante. las cuales. como se ilustra en la figura 5. En la figura 5. el cual tiene mapeados a memoria tres periféricos: una memoria RAM de 1 Kbytes. Es decir. requerimos leer el arreglo de interruptores. Sin embargo. Así. es posible usar un truco para traslapar los espa- cios de memoria externos para datos y código. Aunque la arquitectura de software del MCS-51 se estudia en el siguiente apartado. el cual contiene internamente memoria de solo lectura (ROM). se puede escribir o leer a un periférico usando la instrucción MOVX como si fueran localidades de memoria. y /WR. pero si el valor leído es cero debemos escribir el número 55H en la última localidad de la memoria RAM.%(') <jgXZ`fkXekfgXiXZ[`^fZfdfgXiX[Xkfj\eleXd\dfi`XI8D% En la configuración de la figura 5.102. Cuando se utiliza un microcontrolador 8051. A . sin embargo. De esta manera.1 A9 · segmentos PSEN ___ ___ P0.Carga el apuntador con la dirección del display MOV A. en realidad solo nos estamos adelantando un poco.Carga el apuntador con la dirección de los interruptores MOVX A. La tabla 5.Carga el apuntador con la última dirección de la RAM MOV A. Lee el contenido de los interruptores y lo carga en A ANL A.0 c f b P0 d ·· e Teclado · f e g c 74LS573 RAM P0.0 A8 ·· LED de 7 NC _____ P2. con el fin de determinar el número en binario que corresponde al número 9 en el display. @DPTR . #003FH . Carga dato en A que se pidió escribir a la RAM MOVX @DPTR. Enmascara nibble bajo JZ ESCR_RAM .3 RD OE ___ 4 000H ___ /OE 3 F F FH WR _W__ Arreglo de 74LS139 CS Memoria interruptores RAM P2. Brinca a la etiqueta si el ACC  00H MOV DPTR. ya que los programas ensambladores normalmente requieren un cero si el número a transferir empieza con una letra.Escribe dato al display de 7 segmentos JMP INICIO ESCR_RAM: MOV DPTR. En el programa que se muestra en la figura 5.A7 LED de 7 Arreglo de segmentos interruptores ___ 74LS244 8 000H +5 V ALE LE /OE EA 7 F F FH P2. 292 ELECTRÓNICA • MIJAREZ .104 se indica el valor a cargar en el registro acumulador como 0E6H.Carga dato en A que corresponde al número 9 en el display MOVX @DPTR. #8000H .0 P0.7 A1 /Y2 /Y3 a) b) =`^liX.A .#0E6H . la cual en este caso es el número binario 11100110B (E6H).%('+ Gif^iXdXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX.7 g (1 Kbites) dp C000H /OE dp d 8751 D 220 ½ BF F FH Q A0 .%('*% La secuencia de cargar un dato en el registro apuntador y posteriormente leer o escribir a los periféricos mapea- dos a memoria.#0FH . cuando analizamos los sistemas basados en microprocesadores. lo describimos con detalle en la sección Desarrollo de programas sencillos en lenguaje ensamblador (de este capítulo).D7 P0.. en el desarrollo de este programa fue necesario observar la correspondencia bit a bit entre el puerto P0 y los LED del display.6 muestra esta corres- pondencia.#4000H . 5 El popular microcontrolador 74LS573 +5 V a a b F F F FH D0 .6 A0 /Y0 0 0 0 0H /Y1 P2. Escribe dato a la memoria RAM JMP INICIO END =`^liX.(Zfe*dl g\i`]„i`ZfjdXg\X[fjXd\dfi`X%Y DXgX[\d\dfi`X% INICIO MOV DPTR.#55H .%('* X :`iZl`kfYXjX[f\eleμ:/. Por simplicidad. un teclado a través de un buffer de tercer esta- do 74HC244. que aun cuando la EPROM sea de 1 Kbytes.[\c[`jgcXp% Bien. la cual compara y brinca a etiqueta si los bytes comparados no son iguales (Compare and grupo editorial patria® 293 . Por otro lado.106b). Pero. es decir.0 P0.5 P0. se le asignan los 64 Kbytes para memoria de código. el sistema encenderá un LED verde y alimentará el solenoide. 5 El popular microcontrolador Display de 7 segmentos LED a b c d e f g dp Puerto P0. lo primero que debemos hacer es diseñar el hardware del sistema y realizar un programa que lea el código de acceso correcto (405 decimal). parece que ya empezamos a calentar motores. como se observa en la figura 5.%- :fii\jgfe[\eZ`X\eki\cfjY`kj[\cgl\ikfG'pcfjC<. como si estuvieran trabajando por interrupciones. Flip LED RST flop Rojo 1 80C31BH Flip LED EPROM 8 1 flop Verde Flip Buffer Solenoide 8 1 flop 8 =`^liX. La figura 5. debido a que esta es una memoria única. El siste- ma requiere de 1 Kbytes de memoria EPROM y mapeados a memoria.`X^iXdX[\Ycfhl\j[\lej`jk\dX[\XZZ\jfXleXgl\ikX\c\Zkie`ZXYXjX[f\ele:/'*(% En este caso. se encenderá el LED rojo y el sistema entrará en un lazo (loop) infini- to.@DPTR) cada vez que se presiona una tecla. donde se puede apreciar que la señal de habilitación de memoria de programa /PSEN se conecta a las terminales /CS y /OE de la memoria EPROM. como se apre- cia en el mapa de memoria para memoria de datos y puertos de entrada/salida.@DPTR) es suficiente para abrir la puerta.6 P0. Es importante hacer notar que la electrónica de potencia (driver) para manejar el solenoide no se muestra. y el tiempo en que se activa el solenoide con un ciclo de escritura (MOVX A. hasta que se abre la puerta.105 se muestra el diagrama de bloques del sistema solicitado. el cual se usa para dar acceso de manera electrónica a una puerta por medio de un código de seguridad. esta podría estar com- puesta por transistores BJT.1 P0. Ahora.106a) muestra el diseño de hardware del sistema requerido. en lugar de entrada/salida por programa.4 P0. donde a cada uno de estos se le asignan 16 Kbytes de direcciones. .%('. Darlington o FET. para realizar el programa introducimos una instrucción que analizaremos con detalle más adelante. Si el código es el correcto. dos flip flop que controlan dos LED y un flip flop que controla un solenoide (activo ALTO). Vamos a realizar otro sistema basado en un microcontrolador 8031. La instrucción se llama CJNE. si se activa un dígito erróneo. lo cual proporciona un pulso de RESET al sistema.7 P0 bit 1 1 1 0 0 1 1 0 KXYcX. se asume que los números presionados en el teclado se leen como datos en hexadecimal (00H- 09H) y que el microcontrolador realiza un ciclo de lectura (MOVX A.106 muestra el diseño simplificado de este hardware. En la figura 5.2 P0. se utiliza un decodificador 74LS139 para habilitar los 4 periféricos requeridos. sin embargo. para abrir el cerrojo de la puerta.3 P0. La figura 5. 7 A1 /Y1 /Y2 rojo /Y3 EPROM 01 0 F F FH 0 0H 0 0 0 0H 74LS139 a) b) =`^liX.m\i[\ DFM .ifaf DFM .D7 74LS74 P0 P0.GKI#''''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\cC<.GKI 2C\\\cZfek\e`[f[\ck\ZcX[f :AE< 8#'+?#<IIFI 2J`ef\j\c[ˆ^`kf\jg\iX[fYi`eZXX<IIFI DFMO 8#7.m\i[\ DFMO 7. Gif^iXdXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX.A7 74LS74 +12 V C000H 8031 P0.GKI#8 2<eZ`\e[\C<.1 A9 8 000H _____ ___ 74LS244 7 F F FH PSEN ___ OE ___ LED ___ WR CS P0.GKI#''''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\cC<.GKI#8 2.#constante.0 D Q EPROM F F F FH F F F FH 74LS573 RST ___ (1 Kbites) CK Teclado D EA Q A0 .GKI 2C\\\cZfek\ec[f[\ck\[X[f :AE< 8#'. la instrucción compara el byte del acumulador con el byte de una constante.0 BF F FH D Q Driver ALE LE /OE Solenoide P2.\jXZk`mXjfc\efc[\gXiXdXek\e\icXgl\ikXZ\iiX[X DFM .GKI#8 2<eZ`\e[\C<.m\i[\ DFMO 7.`j\Œf[\_Xi[nXi\[\lej`jk\dX[\XZZ\jfXleXgl\ikX\c\Zkie`ZXYXjX[f\ele:/'*(%Y DXgX[\d\dfi`X% Jump if Not Equal).ifaf C8QF1 DFM 8#''? 2CXqf`e]`e`kf#k\id`eX_XjkXhl\j\gifgfiZ`feXlei\j\kXcj`jk\dX AQ C8QF 29i`eZXXC8QF.(\c8::\jZ\if <E.GKI#8 28Zk`mXjfc\ef`[\gXiXXYi`icXgl\ikX ADG @E@:@F 2I\^i\jXXcXjZfe[`Z`fe\j`e`Z`Xc\j <IIFI1 DFM .GKI#8 28gX^XC<.m\i[\ DFM .GKI#:'''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\ck\ZcX[f DFMO 8#7. Para este ejemplo.ifaf DFM 8#'(? 2G'%'j\\jkXYc\Z\\e( DFMO 7. 5 El popular microcontrolador 74LS74 P0. esto es: CJNE A.7 3 F F FH P2.GKI#+'''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\cC<.GKI 2C\\\cZfek\e`[f[\ck\ZcX[f :AE< 8#''?#<IIFI 2J`ef\j\c[ˆ^`kf\jg\iX[fYi`eZXX<IIFI DFMO 8#7.%('.0 verde RD ·· · 4 000H P0.107 muestra el listado del programa solicitado.0 D Q CK D0 .%('- X . =`^liX.GKI#/'''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\cjfc\ef`[\ DFMO 7.GKI#+'''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\cC<. La figura 5.%('-% 294 ELECTRÓNICA • MIJAREZ .?#<IIFI 2J`ef\j\c[ˆ^ckf\jg\iX[fYi`eZXX<IIFI DFM 8#'(? 2G'%'j\\jkXYc\Z\\e( DFM .GKI#8 28gX^XC<. @E@:@F1 DFM 8#''? 2G'%'j\\jkXYc\Z\\e' DFM .0 A8 CK P2.6 A0 /Y0 /OE LED P2.GKI#/'''? 2:Xi^X\cXglekX[fiZfecX[`i\ZZ`e[\cjfc\ef`[\ DFMO 7.ifaf DFMO 7. varios modos de direcciona- miento para acceder a la RAM interna y facilitan operaciones a nivel byte en estructuras de datos pequeñas. dependiendo de las necesidades del programa. En suma. Es importante resaltar que el conjunto de instrucciones para cada familia de microcontroladores es único y que está compuesto por operaciones aritméticas. lógicas. Entonces. Los programas pueden ser rápidos y eficientes. ¡empecemos! Todos los miembros de la familia MCS-51 ejecutan el mismo conjunto de instrucciones.108.poly. usando ejemplos representativos de ambientes o tareas de programación.pdf ). febrero 1994. los códigos de operaciones de las instrucciones del MCS-51 tam- bién son de 8 bits. Inmediato 5. incluso elegantes. grupo editorial patria® 295 . Arquitectura de software del 8051 De la misma manera que las oraciones o párrafos de un escrito están compuestos por palabras. el cual está optimizado para aplicaciones de control de 8 bits. así como las definiciones del conjunto de instrucciones se puede encontrar fácilmente en Internet. a menudo se utiliza como registro principal de almacenamiento de resultados. la fuente o destino de los datos a utilizar. Con esta estructura. Además. sin embargo.edu/networks/ specs/27238302.108 muestra un resumen del conjunto de instrucciones del micro- controlador MCS-51. En especial. La mayoría de estas instrucciones (139 en total) son de 1 byte. sin embargo. el software o los pro- gramas de los sistemas basados en microprocesadores o microcontroladores se forman a partir de instrucciones. 5 El popular microcontrolador Aunque el programa de la figura 5. El registro acumulador. el MCS- 51 tiene ocho modos de direccionamiento: 1. Así como el lenguaje escrito refleja la personalidad del autor. 92 instrucciones son de 2 bytes y 24 instrucciones son de 3 bytes. (http://eeweb1. a través de sus modos de direccionamiento. este se puede consultar en la literatura de referencia de Wikipedia buscando Intel MCS-51.85. Como la mayoría de los procesadores de 8 bits. cada vez que se lleva a cabo una instrucción es conveniente conocer la sección de memoria interna o externa de los registros involu- crados o la localidad donde se almacenan los datos que resultan de la ejecución de la misma. Aunque en este apartado no veremos técnicas de programación. Por tanto. Por tanto. Los modos de direccionamiento se consideran una parte integral del conjunto de instrucciones. las instrucciones describen qué es lo que se tiene que hacer y los modos de direccionamiento describen dónde hacerlo. se recomienda el documento de Intel MCS® 51 Microcontroller Family User’s Manual. Directo 3. solo resta estudiar los periféricos internos del microcon- trolador. que proporciona una gran capacidad para manipular directamente variables de 1 bit. también pueden utilizarse otros operandos. si examinaremos el conjunto de ins- trucciones del lenguaje ensamblador del MCS-51. las instrucciones pueden estar formadas por el código de operación y 1 o 2 bytes adicionales para datos y direcciones. primero es necesario que conozcamos la arquitectura de software del 8051. como lo ilustra la figura 5. dependiendo del modo de direccionamiento. Del total de estas instrucciones. Ahora. La figura 5. y que es útil en sistemas de control y aplicaciones que re- quieren operaciones lógicas booleanas. este enfatiza el empleo de periféricos mapeados a memoria y sus instrucciones. Estos operandos pueden localizarse en los espacios de memoria del MCS-51: memoria de programa. los programas reflejan la persona- lidad de su creador. además de que proveen la flexibilidad para especificar.21 Modos de direccionamiento del MCS-51 Como ocurre en el lenguaje ensamblador de los sistemas basados en microprocesadores. de transferencia o de brincos condicionales o in- condicionales. Relativo 21 Una descripción general del hardware del MCS-51. Indirecto 4. memoria de datos interna. mismas que proveen. de varias formas. es posible tener 256 (28) instrucciones. Registro 2. si se crean utilizando secuencias de instrucciones lógicas y bien estructuradas. registros SFR y memoria de Bit.107 tiene algunas simplificaciones para funcionar. memoria de datos externa. como podemos apreciar en la figura 5. el conjunto de instrucciones del MCS-51 presenta un importante procesador de Boole. de manera rápida y eficiente. 255 están implementadas y una no se encuentra definida. número de publica- ción 121517. <I8JDF.\Zi\d\ekXI\^`jkif ( () J<K9 : <jkXYc\Z\\e(c^`Zf\c:Xiip ( () .\Zi\d\ekXYpk\[`i\ZkfpYi`eZXj`ef\jZ\if * )+ EFG EfFg\iXZ`e ( () Z KI8EJ=<I<E:@8. 8#[`i\Zk JldXYpk\[`i\ZkfZfe\cXZldlcX[fi ) () DFM: 8#78"G: KiXej]`\i\Ypk\[\Z[`^fi\cXk`mfXcG:Xc8ZZ ( )+ 8.: 8#[XkX JldX[Xkf`ed\[`XkfZfe\c8ZZZfe:Xiip ) () GFG [`i\Zk JXZXYpk\[`i\Zkf[\cjkXZb ) )+ JL99 8#Ie I\jkXi\^`jkif[\c8ZZZfe9fiifn ( () O:? 8#Ie @ek\iZXdY`Xi\^`jkifZfe\c8ZldlcX[fi ( () JL99 8#[`i\Zk I\jkXYpk\[`i\Zkf[\c8ZZZfe9fiifn ) () O:? 8#[`i\Zk @ek\iZXdY`XYpk\[`i\ZkfZfe\c8ZldlcX[fi ) () JL99 8#7I` I\jkXI8D`e[`i\ZkX[\c8ZZZfe9fiifn ( () O:? 8#7I` @ek\iZXdY`XI8D`e[`i\ZkXZfe\c8ZldlcX[fi ( () JL99 8#[XkX I\jkX[Xkf`ed\[`Xkf[\c8ZZZfe9fiifn ) () O:?.\Zi\d\ekXYpk\[`i\Zkf ) () J<K9 Y`k <jkXYc\Z\\e(c^`ZfY`k[`i\Zkf ) () .[\Ypk\[`i\ZkfZfe\c8ZldlcX[fi ) () \ FG<I8:@FE<J.@M 89 ..`i\Zk ()/cfZXc`[X[\j[\I8D`ek\ieX#ZlXchl`\igl\ikf[\<&Jfi\^J=I DFM 8#[`i\Zk KiXej]`\iXYpk\[`i\ZkfXc8ZldlcX[fi ) () 7I` .`i\ZZ`e[\jk`efgXiX8:8CCp8ADG#cXZlXcgl\[\\jkXi[\ekif DFM [`i\Zk#[XkX KiXej]`\i\[Xkf`ed\[`XkfXYpk\[`i\Zkf * )+ [\cd`jdfYcfhl\[\)BY`k\j[\d\dfi`X[\gif^iXdXZfdf\c DFM 7I`#8 KiXej]`\i\\c8ZldlcX[fiXI8D`e[`i\ZkX ( () gi`d\iYpk\[\j`^l`\ek\`ejkilZZ`e% DFM 7I`#[`i\Zk KiXej]`\iXYpk\[`i\ZkfXI8D`e[`i\ZkX ) )+ I\c JADGpkf[fjcfjYi`eZfjZfe[`Z`feXc\j`eZclp\eleYpk\[\f]]j\k DFM 7I`#[XkX KiXej]`\i\[Xkf`ed\[`XkfXI8D`e[`i\ZkX ) () [\/Y`kj%<ciXe^f\j[\"().<9I@E:F.\Zi\d\ekXi\^`jkifpYi`eZXj`ef\jZ\if ) )+ JN8G 8 @ek\iZXdY`Xcfje`YYc\j[\c8ZldlcX[fi ( () .\jZi`gZ`e 9pk\ dhX^aVYdg fjZ`cX[fi 8.<: 8 .FJGJN $98E. 8#7I` JldXI8D`e[`i\ZkXZfe\cXZldlcX[fi ( () DFMO 8#7I` KiXej]`\i\Ypk\[\I8D\ok\ieX[`i/$Y`kj Xc8ZZ ( )+ 8. 8#[XkX JldX[Xkf`ed\[`XkfZfe\cXZldlcX[fi ) () DFMO 8#7..<<JK8.\Zi\d\ekX8ZldlcX[fi ( () :CI Y`k C`dg`XY`k[`i\Zkf ) () .: 8#[`i\Zk JldXYpk\[`i\ZkfZfe\c8ZZZfe:Xiip ) () DFMO 7. 8#7I` @ek\iZXdY`Xcfj[ˆ^`kfj[\YXaffi[\e[\cXI8D ( () @E: 8 @eZi\d\ekX\cXZldlcX[fi ( () @E: Ie @eZi\d\ekXi\^`jkif ( () [ D8E@GLC8:@äE.@=@:8.AEQ Ie#i\c .8 8 8aljkXX[\Z`dXc\cXZldlcX[fi ( () 8EC :#&Y`k 8E.\Zi\d\ekI8D`e[`i\ZkX ( () :GC : :fdgc\d\ekX\c:Xiip ( () DLC 89 Dlck`gc`ZX8gfi9 ( +/ :GC Y`k :fdgc\d\ekXY`k[`i\Zkf ) () .( VDE:G68>DC:H6G>IBwI>86H Z KI8EJ=<I<E:@8.<.: 8#Ie JldXi\^`jkifZfe\c8ZZZfe:Xiip ( () DFMO 7I`#8 KiXej]`\i\\c8ZZXI8D\ok\ieX[`i/$Y`kj  ( )+ 8.`i\ZZ`feXd`\ekf`e[`i\Zkf[\I8D`ek\ieXmˆXI'fI( DFM 8#7I` KiXej]`\i\I8D`e[`i\ZkXXc8ZldlcX[fi ( () [XkX :fejkXek\[\/$Y`kj`eZcl`[X\ecX`ejkilZZ`e DFM 8#[XkX KiXej]`\i\[Xkf`ed\[`XkfXc8ZldlcX[fi ) () [XkX(- :fejkXek\[\(-$Y`kj`eZcl`[X\ecX`ejkilZZ`e DFM Ie#8 KiXej]`\i\\c8ZldlcX[fiXcI\^`jkif ( () 9`k ()/Y`kj[\[`i[`i\Zkf#ZlXchl`\ig`e[\<&JfY`kj[\i\^J=I DFM Ie#[`i\Zk KiXej]`\i\Ypk\[`i\ZkfXcI\^`jkif ) )+ DFM Ie#[XkX KiXej]`\i\[Xkf`ed\[`XkfXcI\^`jkif ) () DFM [`i\Zk#8 KiXej]`\i\\c8ZldlcX[fiXYpk\[`i\Zkf ) () EfkXji\cXZ`feX[XjZfecfjdf[fj[\[`i\ZZ`feXd`\ekf[\gif^iXdX1 DFM [`i\Zk#Ie KiXej]`\i\i\^`jkifXYpk\[`i\Zkf ) )+ X[[i(- .5 El popular microcontrolador :FEALEKF.<@EJKIL::@FE<J.`m`[\8gfi9 ( +/ 8EC :#Y`k 8E.<CD:J$.\jZi`gZ`e 9pk\ fjZ`cX[fi Ie I\^`jkifj[\kiXYXafI'$I.GKI KiXej]`\i\Ypk\[\I8D\ok\ieX[`i(-$Y`kj Xc8ZZ ( )+ 8.[\I8D`e[`i\ZkXZfe\c8ZldlcX[fi ( () G\i`f[fj 8EC 8#[XkX 8E.\jZi`gZ`e 9pk\ fjZ`cX[fi @E: ..<GIF>I8D8 8EC 8#7I` 8E.8KFJ G\i`f[fj EfkXji\cXZ`feX[XjZfecfjdf[fj[\[`i\ZZ`feXd`\ekf[\[Xkfj1 E\de`Zf .GKI ( )+ OIC 8#Ie OFI[\i\^`jkifZfe\c8ZldlcX[fi ( () AQ i\c 9i`eZXj`\c8ZldlcX[fi\jZ\if ) )+ OIC 8#[`i\Zk OFI[\Ypk\[`i\ZkfZfe\c8ZldlcX[fi ) () AEQ i\c 9i`eZXj`\c8ZldlcX[fief\jZ\if ) )+ OIC 8#7I` OFI[\I8D`e[`i\ZkXZfe\c8ZldlcX[fi ( () A: i\c 9i`eZXj`\c:Xiip\j(c^`Zf ) )+ OIC 8#[XkX OFI[\[Xkf`ed\[`XkfZfe\c8ZldlcX[fi ) () AE: i\c 9i`eZXj`\c:Xiip\j'c^`Zf ) )+ OIC [`i\Zk#8 OFI[\8ZldlcX[fiZfeYpk\[`i\Zkf ) () A9 Y`k#i\c 9i`eZXj`\cY`k[`i\Zkf\j(c^`Zf * )+ OIC [`i\Zk#[XkX OFI[\[Xkf`ed\X[`XkfZfeYpk\[`i\Zkf * )+ AE9 Y`k#i\c 9i`eZXj`\cY`k[`i\Zkf\j'c^`Zf * )+ :CI 8 C`dg`X\cXZldlcX[fi ( () A9: Y`k#i\c 9i`eZXj`\cY`k[`i\Zkf\j(c^`Zfpc`dg`X\cY`k * )+ :GC 8 :fdgc\d\ekX\cXZldlcX[fi ( () :AE< 8#[`i\Zk#i\c :fdgXiXYpk\[`iZfe8ZZpYi`eZXj`efjfe`^lXc\j * )+ IC 8 IfkX\cXZldlcX[fi_XZ`XcX`qhl`\i[X ( () :AE< 8#[XkX#i\c :fdgXiXYpk\`ed%Zfe8ZZpYi`eZXj`efjfe`^lXc\j * )+ IC: 8 IfkX\c8ZZ_XZ`XcX`qhl`\i[Xgfi\c:Xiip ( () :AE< Ie#[XkX#i\c :fdgXiX[Xkf`ed%Zfei\^%pYi`eZXj`efjfe`^lXc\j * )+ II 8 IfkX\cXZldlcX[fi_XZ`XcX[\i\Z_X ( () :AE< 7I`#[XkX#i\c :fdgXiX[Xkf`ed%Zfe`e[`i\ZkfpYi`eZXj`efjfe`^lXc\j * )+ II: 8 IfkX\c8ZZ_XZ`XcX[\i\Z_Xgfi\c:Xiip ( () ..GKI @eZi\d\ekX8glekX[fi[\[Xkfj ( )+ :CI : C`dg`X\c:Xiip ( () .[\cZfdgc\d\ekf[\Y`k[`i\ZkfZfe\c:Xiip ) )+ FIC :#Y`k FI[\Y`k[`i\ZkfZfe\c:Xiip ) )+ WDE:G68>DC:HAâ<>86H FIC :#&Y`k FI[\cZfdgc\d\ekf[\Y`k[`i\ZkfZfe\c:Xiip ) )+ EZg^dYdh DFM :#Y`k KiXej]`\i\Y`k[`i\ZkfXc:Xiip ) () CZb‹c^Xd 9ZhXg^ei^dc 7niZ dhX^aVYdg DFM Y`k#: KiXej]`\i\:XiipXY`k[`i\Zkf ) )+ 8EC 8#Ie 8E.%('/ I\jld\e[\cZfealekf[\`ejkilZZ`fe\j[\cd`ZifZfekifcX[fiD:J$.. DFM 8#Ie KiXej]`\i\\ci\^`jkifXc8ZldlcX[fi ( () ..[\8ZldlcX[fiZfeYpk\[`i\Zkf ) () 8:8CC X[[i(( CcXdX[fXYjfclkfXjlYilk`eX ) )+ 8EC [`i\Zk#[XkX 8E.<M8I@89C<J9FFC<8E8J @E: [`i\Zk @eZi\d\ekXYpk\[`i\Zkf ) () G\i`f[fj @E: 7I` @eZi\d\ekI8D`e[`i\ZkX ( () E\de`Zf .`i\ZZ`e[\jk`efgXiXC:8CCpCADG#cXZlXcgl\[\\jkXi[\ekif DFM [`i\Zk#[`i\Zk KiXej]`\i\Ypk\[`i\ZkfXYpk\[`i\Zkf * )+ [\cfj-+BY`k\j[\c\jgXZ`f[\d\dfi`X[\gif^iXdXIFD % DFM [`i\Zk#7I` KiXej]`\i\I8D`e[`i\ZkXXYpk\[`i\Zkf ) )+ X[[i(( .AEQ [`i\Zk#i\c .GKI KiXej]`\i\Ypk\[\Z[`^fi\cXk`mfXc.: 8#7I` JldXIXd`e[`i\ZkXZfe\c8ZZZfe:Xiip ( () GLJ? [`i\Zk :fcfZXYpk\[`i\Zkf\e\cjkXZb ) )+ 8.GKI 9i`eZf`e[`i\Zkfi\cXk`mfXc.GKI#[XkX(- :Xi^X\c..[\[Xkf`ed\[`XkfZfe\c8ZldlcX[fi ) () E\de`Zf .GKIZfeZfejkXek\[\(-$Y`kj * )+ [\cXj`^l`\ek\`ejkilZZ`e% I<>@JKIF. 8#Ie JldXi\^`jkifZfe\cXZldlcX[fi ( () DFM: 8#78"..<: 7I` .GKIXc8ZZ ( )+ 8.[\i\^`jkifZfe\c8ZldlcX[fi ( () 8EC 8#[`i\Zk 8E.&$()/Ypk\ji\cXk`mfXcgi`d\iYpk\ DFM .[\[Xkf`ed\[`XkfZfeYpk\[`i\Zkf * )+ C:8CC X[[i(- CcXdX[fcXi^fXjlYilk`eX * )+ FIC 8#Ie FI[\i\^`jkifZfe\c8ZldlcX[fi ( () I<K I\^i\jf[\jlYilk`eX ( )+ FIC 8#[`i\Zk FI[\Ypk\[`i\ZkfZfe\c8ZldlcX[fi ) () I<K@ I\^i\jf[\`ek\iilgZ`e ( )+ FIC 8#7I` FI[\I8D`e[`i\ZkXZfe\c8ZldlcX[fi ( () 8ADG X[[i(( 9i`eZf8Yjfclkf ) )+ FIC 8#[XkX FI[\[Xkf`ed\[`XkfZfe\c8ZldlcX[fi ) () CADG X[[i(- 9i`eZfcXi^f * )+ FIC [`i\Zk#8 FI[\8ZldlcX[fiZfeYpk\[`i\Zkf ) () JADG i\c 9i`eZfZfikfi\cXk`mfXcX[`i\ZZ`e  ) )+ FIC [`i\Zk#[XkX FI[\[Xkf`ed\X[`XkfZfeYpk\[`i\Zkf * )+ ADG 78".<: [`i\Zk .GKI#8 KiXej]`\i\\c8ZZXI8D\ok\ieX[`i(-$Y`kj  ( )+ 8.<: Ie .<.\jZi`gZ`e 9pk\ fjZ`cX[fi 8EC [`i\Zk#8 8E.8J 699 6998 6CA8!W^i 8?C: 8AG8 8EA8 96 9>K BDK8!W^i BJA DGA!8!W^i GA8 GG8 H:I78 HJ77 8N O O O O ' O O ' O ' O O O ( O 8N DK O O $ $ $ $ $ O $ O $ $ $ $ O DK 68 O O $ $ $ $ $ $ $ $ $ $ $ $ O 68 =`^liX.(% 296 ELECTRÓNICA • MIJAREZ .[\Y`k[`i\ZkfZfe\c:Xiip ) )+ .8KFJ:fek`elX EZg^dYdh G\i`f[fj CZb‹c^Xd 9ZhXg^eX^‹c 7niZ E\de`Zf . solo uno se encuentra activo en un momento dado. los cinco bits más sig- nificativos. En este caso. para transferir el contenido del registro R1 al acumulador. seleccionan el registro. Largo 8. se cuenta con 8 re- gistros funcionales numerados de R0 a R7. para seleccionar el banco 2 se utiliza la siguiente instrucción: grupo editorial patria® 297 . a) Direccionamiento Código n de operación (3) por registro (5) b) Direccionamiento Código de operación Dirección directa directo (8) c) Direccionamiento Código n de operación indirecto (1) (7) d) Direccionamiento Código de operación Dato inmediato inmediato (8) (8) e) Direccionamiento Desplazamiento Código de operación relativo relativo (8) (8) f) Direccionamiento Dir Código A8-A10 de operación Dirección A0-A7 absoluto (3) (5) (8) g) Direccionamiento Código de operación Dirección A8-A15 Dirección A0-A7 largo (8) (8) (8) h) Direccionamiento PC o DPTR Acc  indexado Registro base Desplazamiento Dirección resultante =`^liX.109. los cuales ocupan los primeros 32 bytes (00H a 1FH). es posible seleccionar cualquier otro banco usando los bits RS1 y RS0. De estos bancos. 5 El popular microcontrolador 6. donde n varía de 0 a 7. Al inicializar el sistema o al proporcionarse un pulso de RESET al microcontrolador. Por ejemplo. que correspon- den a las posiciones 3 y 4. R1 Entonces. del registro de banderas. Los registros utilizados corresponden a 1 de los 4 bancos de registros especificados en el mapa de memoria de la RAM interna del 8051. La codificación para las instrucciones que usan este direccionamiento es de un byte. Absoluto 7. 001.109 a). se utiliza la siguiente instrucción: MOV A.%('0 Df[fj[\[`i\ZZ`feXd`\ekf#`eZclp\e[fZ[`^f[\fg\iXZ`epfg\iXe[fj% Direccionamiento por registro El direccionamiento por registro se indica mediante el símbolo Rn. Indexado El formato de los modos de direccionamiento que incluye el código de operación de la instrucción y la dirección de sus operandos se muestran claramente en la figura 5. este activa el banco 0. sin embargo. respectivamente. Para especificar el registro preciso. el código de operación para la instrucción anterior es 11101001B. como se ilustra en la figu- ra 5. es decir. indican la instrucción y los tres bits menos significativos. PSW. 11101. Por ejemplo. se utilizan los tres bits menos significativos. Por ejemplo. Sin embargo. A 298 ELECTRÓNICA • MIJAREZ . mientras que la de la parte alta es de 80H a FFH. Direccionamiento directo Con el direccionamiento directo es posible acceder a cualquier variable o registro que se encuentre en algunos de los dos espacios de la RAM interna (256 bytes) incorporada en el microcontrolador. especificada por el regis- tro DPTR. su contenido indica la dirección de la memoria RAM interna en donde se escriben o leen los datos. ya sea R0 o R1. para el acumulador. el registro se indica en el mismo código de operación.108. al momento que se ensambla el programa. para el contador de programa.89. Las instrucciones que utilizan un registro específico se refieren a este mismo como: A. el direccionamiento indirecto se representa usando el símbolo arroba (@). A Esta instrucción transfiere el contenido del acumulador al puerto P1. como se aprecia en la figura 5. se utiliza como apuntador. A Así. La codificación para el direccionamiento indirecto contiene solo un byte. y los registros AB. como el acumulador. debido a que estos requieren que se conozcan las direcciones. ya que en estos casos. Por ejemplo. cadenas de caracteres o números de múltiple precisión. MOVX A @DPTR. únicamente se pueden utilizar los registros R0 y R1. 5 El popular microcontrolador MOV PSW. la mayoría de los programas ensambladores. la codificación completa de esta instrucción es: 11110101 para el código de operación 10010000 para la dirección directa del puerto P1. la instrucción es: MOV @R1.109c). PC. por tanto. en este direccionamiento se agrega un byte adicional al código de operación. Este direccionamiento es muy útil. si el contenido del registro R1 es 50H y el contenido del acumulador es 77H. es una instrucción que transfiere el contenido del registro acumulador a la dirección de memoria externa de 16 bits. donde el bit menos significativo indica cuál registro. En el lenguaje ensamblador del 8051. No obstante. Por esta razón y con el fin de especi- ficar la localidad a utilizar. como se muestra en la figura 5. Por ejemplo. En lenguaje de máquina. la dirección del puerto P1 es la 90H y se puede utilizar usando una instrucción de direc- cionamiento directo: MOV 90H. como se ilustra en el conjunto de instrucciones de la figura 5. como se muestra en la figura 5. valores indexados den- tro de tablas de memoria RAM. como prefijo para R0 o R1. como el ASM51 de Intel. Direccionamiento indirecto El direccionamiento indirecto se utiliza para manipular localidades secuenciales en memoria. en este caso. para el acumulador y registro B. para la bandera de acarreo o carry. esta instrucción también puede utilizarse como: MOV P1. no es necesario saber la direc- ción. aceptan y entienden las abreviaturas de los nemónicos. Lo anterior no es posible usando los direccionamientos por registro y directo. el apuntador de datos.109b). Donde el código de operación es de un byte y se indica como 11110000B. sin em- bargo. no se requieren bits de dirección. La parte alta corresponde a los registros SFR y se puede acceder a ellos usando sus direcciones directas. para el apuntador de datos. etcétera. ya que permite identificar una variable cuando su dirección se modifica o de- termina el momento de correr un programa (run-time).#00010000B Pero. F5H y 90H son los bytes que conforman la instrucción anterior. DPTR. como registros apuntadores. también existen instrucciones que operan con un registro específico. directa o de registro. C. La dirección directa de la parte baja de la RAM es de 00H a 7FH. de tal forma que la constante puede aña- dirse a la instrucción como un byte de dato inmediato. la instrucción usa un valor conocido al momento de ensamblar el programa.#19H Esta es una instrucción que carga el valor 19H en el acumulador. pero si se omite la notación hexadecimal. Por ejemplo: MOV DPTR.110. como se muestra en la figura 5. pero si se usa el registro R0 en lugar de R1. para construir la dirección de la siguiente instrucción a ejecutar. la nueva dirección del contador de programa es relativa a la siguiente instruc- ción. Asimismo. 77H. Por consiguiente. el programador no se ocupa del cálculo de la dirección usando el desplazamiento relativo. y el programa ensamblador realiza de manera automática este cálculo.110a). Direccionamiento inmediato Este direccionamiento se utiliza cuando el operando “fuente” es una constante en lugar de una variable. Debido a que se utiliza un número de 8 bits con signo (representación en 2 complemento). Direccionamiento relativo El direccionamiento relativo se relaciona con ciertas instrucciones de brinco. como se ilustra en la figura 5.110b). Por ejemplo. como se muestra en la figura 5. esta instrucción transferirá el contenido del acumulador. el ensamblador interpreta la constante y la incorpora en la instrucción. La codificación completa para la instrucción anterior es: 10010000 para el código de operación 10000000 para el contenido de DPH 00000000 para el contenido de DPL En lenguaje de máquina. si la etiqueta ADELANTE representa la dirección 2009H y la instrucción SJMP ADELANTE se localiza en las direcciones 2000H y 2001H de la memoria de programa. la constante anterior en decimal se puede escribir como #19D. sumar el valor 07H al byte bajo del PC. ya que el bit menos significativo determina el registro a usar.#8000H Esta es una instrucción que carga el contenido del apuntador de datos con el número 8000H. 5 El popular microcontrolador Así. Para efectuar el desplazamiento relativo.109e). el código de operación sería F6H. Por ejemplo: MOV A. donde se desea que se realice el brinco. el ensamblador asume que la notación se encuentra en deci- mal y cargaría el número 13H. esto es. De esta manera. Todas las instrucciones usan constantes de 8 bits. es decir. por esta razón. el contador se incrementa a la dirección a la que se dirige después de la instrucción de brinco. Por lo general. ya que por lo común utiliza etiquetas que indican la ubicación en el programa. En este caso. a la dirección 50H de la RAM interna. primero el PC se incrementa y se convierte en PC 1  2002H. grupo editorial patria® 299 . PC. Por tanto. H. 90H. En este tipo de direccionamiento. y se usa solo #19. no a la dirección de la instrucción de brinco. como se ilustra en la figura 5. como se ilustra en la figura 5. Para esto. esto es 2002H 07H  2009H. son los bytes que conforman esta instrucción. el ensamblador también interpreta las constantes en decimal cuando al número le sigue el prefijo “D”. 80H y 00H. Este tipo de direccionamiento agrega un byte con signo al contador de programa. Este mismo procedimiento se realiza si la etiqueta a donde se desea brincar se encuentra en una ubicación atrás del PC. El códi- go de operación para esta instrucción es F7H. a excepción del uso del registro DPTR. se añade un byte al código de operación. Para indicar un operando como constante. El valor de la constante es el número #19H.109d). se requie- re de una constante de 16 bits y la instrucción utiliza 3 bytes. el ensamblador requerirá realizar un desplazamiento relativo. este byte de desplazamiento se agrega al código de opera- ción. y posteriormente se agrega el byte de desplazamiento. los programas ensambladores usan el símbolo de número (#) precedido del operando. el desplazamiento o brinco es de –128 a 127 ubicaciones. En lenguaje de máquina. cada una de las cuales utiliza 2 bytes en su codificación completa. Por ejemplo. por tanto. Por tanto. 80H y 07H.%((' :}cZlcf[\cX[`i\ZZ`e[\cG:\ecXd\dfi`X[\gif^iXdX#ljXe[f[`i\ZZ`feXd`\ekfi\cXk`mf% X 9i`eZf_XZ`XX[\cXek\%Y 9i`eZf_XZ`XXki}j% La desventaja del brinco relativo es que el número de localidades a brincar es limitado. la codificación completa de la instrucción SJMP ADELANTE es: 10000000H para el código de operación 00000111H el valor del brinco relativo.109f ). el ensamblador indicará un error al momento del ensamblado. Direccionamiento absoluto y direccionamiento largo Las instrucciones de direccionamiento absoluto son únicamente AJMP y ACALL. como se observa en la figura 5. como la instrucción de destino deben estar localizadas en el bloque de 2 Kbytes. tal como se aprecia en la figura 5. tanto la instrucción que sigue de la instrucción de brinco. 11 bits son utilizados para proveer la dirección de destino: A10-A8 en el byte que contiene el código de operación y A7-A0 en el segundo byte. si tenemos una etiqueta definida como INICIO ubicada en la dirección 0064H y la instrucción AJMP INICIO se localiza en las direcciones 0400H y 0401H. por ende. 5 El popular microcontrolador 200BH 200BH FBH –1 200AH 200AH 7 80H –2 SJMP 2006H 2009H 2009H 6 –3 2008H 2008H 5 –4 2007H 2007H 4 El valor del –5 2006H brinco relativo 2006H 3 El valor del 2005H desde la localidad 2005H 2 2002H es 07H brinco relativo 2004H 2004H 1 (2002H + 07H = 2009H) desde la localidad 2003H 2003H 200BH es –05H o FBH 2002H 2002H (200BH – 05H = 2006H) 07H 2001H SJMP 2009H 2001H 80H 2000H 2000H 1FFFH 1FFFH 1FFEH 1FFEH Memoria de programa Memoria de programa a) b) =`^liX. constituyen los bytes que conforman esta instrucción. De esta manera. usando los 5 bits más significativos de la dirección de destino del contador de programa. PC.111. de estos. al usar las instrucciones AJMP y ACALL dividimos nuestro mapa de memoria de programa de 64 Kbytes en 32 bloques de 2 Kbytes. mientras que los 11 bits restantes determinan el rango de la dirección de origen y de destino. si se excede el rango. Lo anterior permite llevar a cabo brincos de hasta 2 Kbytes en la memoria de código. en consecuencia. AJMP o ACALL. el programa ensamblador codificará la dirección de destino de la siguiente forma: 00000001 Primer byte (A10-A8) y (código de operación) 01100100 Segundo byte (A7-A0) 300 ELECTRÓNICA • MIJAREZ . transfiere al acumulador un byte de código o constante del programa locali- zado en la memoria de código tipo ROM.109g). que las únicas instrucciones que utilizan este direccionamiento son LCALL y LJMP. PC. por ejemplo. 1 8 00H 17FFH Memoria de código Bloque 2 de 32 r 2K 2 Kbites 1 000H 0F F F H A15 A10 A0 Bloque 1 de 2 Kbites 08 00H Los 5 bits más Los 11 bits menos significativos 07 F F H significativos determinan el rango de la Bloque 0 de seleccionan el banco dirección origen y destino dentro 2 Kbites de 2 kbites del bloque de 2 Kbites 0000H a) a) =`^liX. el rango de la dirección de origen y de destino cubre los 64 Kbytes del espacio total de direccionamiento de la memo- ria de programa. Direccionamiento indexado El direccionamiento indexado se utiliza para la búsqueda de datos en tablas o para crear tablas de salto. Es importante resaltar. no se modifican cuando se ejecuta la instrucción y contienen la di- rección del bloque de los 2 Kbytes seleccionados (00000B).111a). compuesto por 1 byte para el código de operación y 2 bytes (16 bits) para la dirección de destino. como se ilustra en la figura 5. por lo que se requiere uti- lizar código que depende de su posición.. este es incre- grupo editorial patria® 301 . @A (registro base) o JMP @A DPTR.Y`kj[\k\id`eXe \cYcfhl\[\)BYpk\jp((Y`kj[\k\id`eXe\ciXe^f[\cX[`i\ZZ`e[\fi`^\ep[\[\jk`ef% Los 11 bits menos significativos contienen la dirección de destino. Por otro lado. 5 El popular microcontrolador FFFFH Bloque 31 de 2 Kbites F 8 00H F7FFH . el cual puede ser el DPTR o el PC. Por esta razón. DPTR. mientras que los 5 bits más significativos del contador de programa. Este direc- cionamiento emplea un registro base. 0000 0000 0110 0100B. Mientras que su desventaja es su rango limitado de la dirección de destino. La instrucción MOVC. de la forma en que se ilustra en la figura 5. Con estos registros. en este caso el bloque 0. Cuando se utiliza el PC. y un desplazamiento expresado por el acumulador. . La ventaja del direccionamiento absoluto es que este tipo de direccionamiento solo utiliza 2 bytes en su codifica- ción completa. o el registro apuntador de datos.109h). tal como se puede observar en la figura 5. el direccionamiento largo utiliza 3 bytes en su codificación completa. que puede ser el contador de programa. se forma una dirección para las instrucciones JMP y MOVC. PC. Estas instrucciones pueden ser MOVC A. La dirección del byte escogido es la suma de los 8 bits del contenido original del acumulador y los 16 bits del registro base.%((( :f[`]`ZXZ`eZfdgc\kXgXiX[`i\ZZ`feXd`\ekfXYjfclkf%X DXgX[\d\dfi`X%Y <ecX[`i\ZZ`e[\[\jk`ef#. consideradas como seudoinstrucciones. adicionalmente analizaremos de manera general las directivas más co- munes. soporta los siguientes modos de direccionamiento: ADD A. @A DPTR utiliza un solo byte. o bit por bit. La instrucción DA. La suma de los 16 bits es optimizada con esta instrucción. La figura 5. en cualquie- ra de los casos. Estos grupos contienen las siguientes instrucciones: t Aritméticas t Lógicas t De transferencia de datos t Booleanas t De brincos condicionales o incondicionales de programa Además de estudiar estas instrucciones.@R0 (Direccionamiento indirecto) ADD A. La dirección del byte de datos en la memoria de código se obtiene sumando el re- gistro índice (acumulador) con el registro base (DPTR).108b).108 constituye una referencia rápida muy útil para familiarizarse con el conjunto de instrucciones del MCS-51. la cual ajusta el acumulador a decimal. en este caso el número 93H. de multiplicaciones (MUL) y de divisiones (DIV).03H (Direccionamiento directo) ADD A. Instrucciones lógicas Las instrucciones lógicas del 8051 llevan a cabo las operaciones booleanas AND.#55H (Direccionamiento inmediato) Además. Dichas instrucciones se pueden ejecutar sobre bytes de datos. No obstante. por ejemplo: 302 ELECTRÓNICA • MIJAREZ . de incrementos (INC). Instrucciones aritméticas Las instrucciones aritméticas se encuentran agrupadas y descritas en la figura 5. ADD A.108a). especifica tanto la operación como el modo de direccionamiento. Por tanto. mientras que el código de operación. donde también se muestran las posibles formas de realizar una operación aritmética de acuerdo con los modos de direccionamiento que soporta. re- solveremos algunos ejemplos típicos usando las instrucciones más representativas de cada grupo. posteriormente. hacia el acumulador. A menudo. la cual utiliza dos ciclos de máquina. Por ejemplo. MUL AB y DIV AB. Clasificación de instrucciones Las instrucciones del microcontrolador MCS-51 se dividen en cinco grupos funcionales. Es importante hacer notar que todas las instrucciones aritméticas se ejecutan en un ciclo de máquina. OR y XOR. debido a que con esta base de tiempo los ciclos de máquina duran 1 μs. a lo cual haremos referencia en los ejemplos típicos. en esta sección examinaremos las instrucciones contenidas en cada grupo y. 5 El popular microcontrolador mentado a la dirección de la siguiente instrucción.R3 (Direccionamiento por registro) ADD A. a excepción de las instrucciones INC DPTR. Un acarreo de salida del byte de orden bajo se propaga al byte de orden alto. se utiliza un cristal de 12 MHz. y las reglas para las etiquetas. de acuerdo con sus modos de direccionamiento. y se utiliza en operaciones BCD. el registro base no es alterado. la instrucción de suma sin acarreo. debi- do a que el valor transferido desde la memoria tipo ROM sustituye el valor del índice. como lo muestra la figu- ra 5. 12 periodos del oscilador. En el caso de que las operaciones se efectúen sobre bytes.108. la instrucción MOVC A. antes de ser sumado con el acumulador. El valor del índice se pierde al ejecutarse la instrucción. que utilizan cuatro ciclos de máquina cada una. de resta (SUBB). el resultado se puede almacenar en el acumulador. como se ilustra en la figura 5. este grupo muestra las instrucciones de suma con acarreo (ADDC). de decrementos (DEC). se encuentra en este grupo. La instrucción transfiere. Por ejemplo. un byte de datos del programa almacenado en la memoria ROM. enmascarando el nibble bajo. como lo ilustra la figura 5. C. las instrucciones que no utilizan el acumulador requieren dos ciclos de máquina. Dicha transferencia puede realizarse entre cual- quier par de localidades de la RAM interna (00H–7FH) o registros SFR (80H–FFH). RAM interna Las instrucciones que involucran la transferencia de datos dentro de los espacios de direccionamiento de la RAM in- terna del microcontrolador se ejecutan en 1 o 2 ciclos de máquina. grupo editorial patria® 303 . y por último. por ejemplo: ANL C. Si se accede a esa área. el resultado se escribe en el puerto P1. o slash. por tanto. Por ejemplo. los datos escritos se pierden y los leídos son indeterminados. De esta manera. en las cuales el símbolo de diagonal (/). realiza la operación AND en cada uno de los bits leídos con cada uno de los bits correspondientes al dato inmediato.0 (OR de bit directo con el Carry) Existe un par de instrucciones interesantes para aplicaciones lógicas. pero el bit original no es afectado. la ins- trucción ANL P1. estas se pueden efec- tuar en cualquier byte del espacio asignado a la memoria RAM interna del microcontrolador. si las operaciones se realizan bit por bit. las cuales no tienen f ísi- camente implementada esa área de memoria.#0FH (direccionamiento directo con dato inmediato). Esta transferencia de datos se puede efectuar tanto en los espacios de direccionamiento de la RAM interna. las cuales limpian y complementan (operación NOT) los bits del acumulador. en este grupo también se incluyen las instrucciones CLR y CPL.0 (AND de bit directo con el Carry) ORL C. primero lee los 8 bits del puerto P1. en cambio. Esta instrucción lleva a cabo una operación con secuencia lectura-modificación- escritura. Instrucciones para transferencia de datos El grueso del conjunto de instrucciones del 8051 se relaciona con la transferencia de datos.#55H (Direccionamiento inmediato) Todas las instrucciones que utilizan el acumulador como uno de sus operandos se ejecutan en un ciclo de máqui- na.20H (Direccionamiento directo) ANL A. se indica que el complemento lógico del bit direccionado se usa como el valor fuente. Asimismo. Las instrucciones que usa el acumulador para corrimiento o rotación de bits (RR.P1. 5 El popular microcontrolador ANL A. establece en cero. el resultado se almacena en el bit de acarreo carry. Por otro lado. se recomienda tener cuidado con las versiones 8031/8051. RL.108c). Cabe recordar que solo las versiones 8032/8052 pueden acceder al espacio de 80H a FFH usando direc- cionamiento indirecto. las operaciones lógicas no necesariamente necesitan al acumulador para realizar sus operaciones.P1.@R0 (Direccionamiento indirecto) ANL A. el nibble alto del puerto P1.7 (OR del complemento de bit directo con el Carry) En el lenguaje ensamblador del 8051.R5 (Direccionamiento por registro) ANL A./P1. Estas instrucciones son: ANL C.7 (AND del complemento de bit directo con el Carry) ORL C. como en los espacios de direccionamiento de memoria externa y puertos de E/S. después. RLC) y SWAP operan de manera similar a lo explicado cuando usamos la calculadora lógica de la sección Desmitificando al microprocesa- dor. precede a uno de los operandos. RRC. Sin embargo./P1. sin la necesidad de usar el acumulador. aunque en este caso termina el programa. vamos a su- poner que se requiere leer 05H datos del puerto P1 y almacenarlos conforme se van leyendo en la RAM interna. y la cuarta instrucción compara el contenido del apuntador con la última localidad (más uno) que necesitamos usar. La transferencia de datos se puede llevar a cabo entre registros y localidades de la RAM interna. también se puede obtener el mismo resultado usando direccionamiento direc- to. podemos usar las siguientes instrucciones: MOV 40H. Si el resultado es diferente.A (Transfiere el acumulador a byte directo) MOV R0. si el puntero de pila SP  07H. esta instrucción usó el direccionamiento indirecto para transferir datos entre registros SFR. Por ejemplo. Dichas instrucciones son PUSH y POP. Como se puede ver.#20H OTRO: MOV @R0. En este caso. además de que se llevan a cabo en la RAM interna. para transferir el contenido del acumulador a la localidad 40H de la RAM interna y transferir el contenido de la localidad 50H de la RAM interna al registro R0.50H (Transfiere byte directo a registro) Otro ejemplo típico es transferir bloques de datos dentro de la memoria RAM interna. vamos a considerar que el registro B tiene el valor 55H. Por ejemplo.#75H PUSH ACC PUSH 0F0 304 ELECTRÓNICA • MIJAREZ . SP. De esta manera. podríamos usar el siguiente programa: TRANSFE_BLOQUE: MOV RO. si el resultado es igual. el cual sirve como apuntador de datos de la RAM interna. esto significa que ya leyó los 5H datos y continúa con la siguiente instrucción. empezando en la localidad 20H y terminando en la localidad 25H. si ejecutamos la instrucción XCH A. y tenemos la siguiente secuencia de instrucciones: MOV A. a partir de la localidad 20H. la tercera instrucción incrementa el apuntador de datos. como ocurre después de un RESET. la segunda instrucción transfiere el contenido del puerto P1 a la localidad de la RAM interna especificada por el registro R0. entonces el contenido del acumulador es A  55H y el registro es B  44H. Por ejemplo.0F0H (intercambio acumulador con byte directo). vuelve a leer del puerto P1.#26H. Las operaciones con el puntero de pila o stack pointer. el acumulador tiene el dato 44H y el registro R0 tiene el dato F0H (di- rección del registro B). La instrucción PUSH incrementa en 1 el puntero de pila (SP  SP 1) y después transfiere el contenido de la variable (byte indicado) a la localidad de la RAM interna direccionada por el SP. mediante la instrucción XCH A. la primera instrucción transfiere la constante 20H al registro R0.OTRO END En este ejemplo se transfieren 6 datos leídos del puerto P1 a la RAM interna. usan únicamente instrucciones con direccionamiento directo.P1 INC R0 CJNE R0.#99H MOV B. Para esto.@R0 (intercambio de RAM indirecta con el acumulador). 5 El popular microcontrolador Como ejemplo de transferencias de datos en la parte alta de la RAM incorporada en el μC (80H–FFH). pero. sin embargo. RAM externa Las instrucciones de transferencia de datos entre la RAM interna y la RAM externa del microcontrolador usan única- mente direccionamiento indirecto. estas señales se encuentran disponibles como terminales de E/S de propósito general. Así. esto es 64 Kbytes. por lo que A  22H.A INC DPTR MOV A. la quinta instrucción. dependiendo de la aplicación. normalmente con un nivel lógico 1. transfiere al registro B el contenido de la localidad apun- tada por el SP (IFH). Las primeras dos instrucciones transfieren las constantes 99H y 75H al acumula- dor y registro B. SP  1EH.#20H MOV 20H. la cuarta instrucción. respectivamente. POP ACC. SP  1FH. por tanto. a manera de ejemplo vamos a realizar una secuencia de instrucciones para transferir los datos de las loca- lidades 17FFH y 1800H de la memoria RAM externa a los registros R3 y R4. el acumulador A  33H y el registro B  22H. MOV DPTR #17FFH MOV A. Usando 16 bits de di- rección se cubre el espacio total de direccionamiento de la RAM externa y los puertos de E/S del microcontrolador. el valor del SP  09H y el valor de la localidad 08H y 09H de la RAM interna serán 99H y 75H.A grupo editorial patria® 305 . Por otro lado. al tiempo que el contenido del acumulador (99H) se transferirá a la localidad 08H de la RAM interna. Si esta instrucción no se utiliza. la segunda y tercera instrucciones almace- nan los datos 33H y 22H en las localidades 20H y 1FH de la RAM interna. como se explicó en la sección previa Acceso a la memoria externa de datos. deshabilitando el puerto P2 como puerto de E/S. POP B. sin embargo. por ejemplo.#33H MOV 1FH. /RD y /WR. después de ejecutarse la instrucción PUSH ACC. la desventaja de este direccionamiento es que se utilizan los 8 bits del puerto P2 para proporcionar el byte alto del bus de direcciones. Ahora. La primera instrucción transfiere la constante 20H al SP. si el direccionamiento es de 16 bits se emplea el registro DPTR (@DPTR). la instrucción POP transfiere el contenido de la localidad de la RAM interna direccionada por el SP a la variable (byte indicado) y después decrementa el SP en 1 (SP  SP–1). al eje- cutarse el PUSH 0F0H. pero no sacrifican el puerto P2. 5 El popular microcontrolador después de ejecutarse estas instrucciones. Cuando se utiliza 1 byte de dirección. y posteriormente decrementa el SP en uno. el SP  08H.#22H POP ACC POP B después de ejecutarse esta secuencia de instrucciones. se activan únicamente cuando se ejecuta la instrucción MOVX. el SP  1EH. al tiempo que el contenido del registro B (75H) se transferirá a la localidad 09H de la RAM interna. respectivamente. transfiere al acumulador el contenido de la localidad apuntada por el SP (20H). respectivamente. Todas las instrucciones de transferencia de datos externos utilizan el acumulador como registro fuente o destino y se llevan a cabo en 2 ciclos de máquina. por último. Como el SP  07H. Las señales de sincronización de lectura y escritura.@DPTR MOV R4. y después decrementa el SP en uno. si tenemos la siguiente secuencia de instrucciones: MOV SP.@DPTR MOV R3. por lo que B  33H. se emplea el registro R0 o R1 del banco de registros seleccionado (@Ri). las direcciones de 8 bits permiten el acceso a solo 256 bytes de memoria RAM externa. A la inversa. para inicializar el SP. La dirección indirecta puede ser especificada por 8 bits o 16 bits. el SP  09H. DPTR. El nemónico de estas instrucciones es MOVC o transfiere constante (move constant. La séptima instrucción compara el contenido del apuntador de datos de 8 bits. La primera instrucción inicializa el apuntado de datos. vuelve a leer de la RAM externa. la única diferencia es que el registro base es el con- tador de programa. para apuntar a la siguiente dirección de la RAM interna. y en la interna se almacenan a partir de la localidad 40H. para apuntar a la siguiente dirección de la RAM externa. Así. La segunda instruc- ción inicializa el apuntador de datos de 8 bits. con la última localidad (más uno) que necesi- tamos usar. en inglés). El apunta- dor de datos. desde la memoria de programa hacia el microcontro- lador se realiza mediante dos instrucciones. R0.A INC DPTR INC RO CJNE R0. consiste en transferir un bloque de datos entre la RAM externa y la RAM in- terna. se carga con la dirección inicial de la tabla.#0FF00H MOV R0. uno de 16 bits para la RAM externa y uno de 8 bits para la RAM interna.@A PC funciona de manera similar. organizados como tablas. En este caso. A menudo. como regis- tro base y el acumulador como registro que proporciona un desplazamiento de 8 bits. La tercera instrucción transfie- re al acumulador. pero si el resultado es igual significa que ya leyó los 10H datos y continúa con la siguiente instrucción. numerados desde 0 hasta 255. si el resultado es diferente. La cuarta instrucción transfiere el contenido del acumulador a la dirección de la RAM interna direccionada por el registro R0. R0. la instrucción MOVC A. La sexta instruc- ción incrementa el apuntador de datos. La tercera instrucción transfiere el contenido del acumulador al registro R3. La quinta instrucción lee el byte de la localidad de memoria externa 1800H y lo transfiere al acumulador. Por ejemplo. Estas instrucciones utilizan el contador de programa. con la dirección de la RAM interna. con la primera dirección. DPTR. Supongamos que requerimos transferir 10H datos de la memoria RAM externa a la memoria RAM interna. mientras que el elemento que se desea leer se carga en el acumulador. los datos se encuentran en la RAM externa. La secuencia de instrucciones para realizar esta tarea es: TRANSFE_EXT_INT: MOV DPTR. Una aplicación que es muy común. La instrucción MOVC A.@DPTR MOV @RO. La primera instrucción inicializa el apuntado de datos. La segunda instrucción lee el byte de la localidad de memoria externa 17FFH y lo transfiere al acumulador. la forma de acceder a una tabla de constantes es por medio de una subrutina. los datos solo pueden leerse debido a que se encuentran en localida- des de memoria tipo ROM.@A DPTR puede leer constantes de una tabla de 256 elementos. el contenido de la localidad direccionada por el registro DPTR. R0. Búsqueda de datos en tablas La transferencia de datos (constantes). PC.#51H.#40H OTRO: MOVX A. con la dirección de la RAM externa. Esta secuencia se puede implementar de la siguiente forma: 306 ELECTRÓNICA • MIJAREZ . La quinta instrucción incrementa el apuntador de datos. aunque en este caso aquí se termina el programa. primero se carga en el acumulador el elemento deseado de la tabla y posteriormente se llama a la subrutina. DPTR. DPTR. a partir de la localidad FF00H. Por último. los datos primero deben ser leídos de las localidades de la RAM exter- na al acumulador y después transferidos a los registros correspondientes. La cuarta instrucción incrementa el apuntador de datos para apuntar a la siguiente dirección. DPTR. 5 El popular microcontrolador Como podemos observar en este ejemplo.OTRO END En este ejemplo usamos dos apuntadores. A. En este caso. la sexta instrucción transfie- re el contenido del acumulador al registro R4. PC. o el registro apuntador de datos. debido a que al ejecutar la instrucción MOVC A. 07H. En esta condición. 19. 19H. 23H. Sin embargo. que el número deseado lo determina el estado del puerto P1. 03H.@A PC RET TABLA: DB DATO. DATO. las cuales describiremos de manera general en una sección posterior. 29). hemos estado leyendo los datos con el uso de una directiva llamada DB (define byte). por tanto. la tabla se coloca después de la instrucción RET (regreso de la subrutina). Como ejemplo. Por esta razón. DATO END En este caso. 5 El popular microcontrolador INICIO: MOV A. al iniciar el programa el puerto P1  07H. así. PC. P1 CALL PRIMO : : JMP INICIO PRIMO: INC A MOVC A. @A PC son de 00H a FEH. 11H. la cual. 5. Al incrementar el acumulador podremos sobrepasar la instrucción RET y llevar a cabo la búsqueda de datos de la tabla. 3. 7. el contador de programa. La correspondencia entre el número que cargamos en el acumulador con el número primo es la siguiente: Acumulador Número primo 00H 02H : : 08H 23H 09H 29H Al concluir la subrutina. al usar esta estrategia reducimos el número de elementos de la tabla de 256 a 255. como se muestra a continuación: INICIO: MOV A. vamos a suponer.@A PC. 11. el resultado sería 00H. el contador de programa. el acumulador nos permite de- terminar el número primo deseado. en este caso. En esta subrutina. esto es de 00H a FEH. la cual suma un 1 al acumulador.#ELEMENTO_DESEADO CALL BUSCAR_DATO : JMP INICIO BUSCAR_DATO: INC A MOVC A. @A PC RET TABLA: DB 02H. Lo anterior se debe a que cuando el contador de programa es FFH y se ejecuta la instrucción INC. intentaría ejecutar la instrucción RET. ahora vamos a realizar una subrutina llamada PRIMOS. 05H. 17H. 17. primero se carga en el acumulador un número que va de 00H a 09H y después se manda llamar la subrutina PRIMO. 13H. PC. en el acumulador se obtiene el número primo deseado. En este ejemplo. los elementos que podría- mos usar con la instrucción MOVC A. 23. DATO. sino comandos o seudoins- trucciones del lenguaje ensamblador. antes de llamar a la subrutina. Las directivas no son instrucciones. la cual nos proporciona en hexadecimal los primeros 09H números primos (2. apunta a la dirección de la siguiente instrucción que se va a ejecutar. En esta secuencia de ins- trucciones se requiere la instrucción INC A. 13. Por ejemplo. lo cual no es válido. puesto que el acumulador es de 8 bits. 29H grupo editorial patria® 307 . DATO. es la instruc- ción RET. dispositivos electrónicos como comparado- res o indicadores de estado. bocinas o la entrada proveniente de interruptores. tienen nemónicos predefinidos. Para variar. Por ejemplo. 5 El popular microcontrolador De acuerdo con lo anterior. solenoides. e incluyen tanto operaciones de transferencia de datos y brin- cos condicionales. en este caso la dirección 91H. al utilizar la instrucción MOVC se usarían más localidades de la memoria de programa. la cual se localiza en la sección de memoria de los registros SFR. los cuales podrían calcularse usando operaciones aritméticas. las cua- les corresponden a los registros SFR. Los 128 bits de la parte baja de la RAM interna se localizan desde las direcciones de byte 20H a 2FH. con el fin determinar el número primo requerido. su ejecución sería más eficiente que calcular cada número primo. Podríamos usar esta dirección en lugar del nombre del bit del puerto P1 y obtendríamos los mismos resultados. C. si queremos desactivar el timbre. La dirección del puerto P1. 308 ELECTRÓNICA • MIJAREZ .1 y realiza. como se ilustró en la figura 5. las cuales explicaremos una vez después de analizar las instrucciones booleanas.90. mientras que el es- pacio de los registros SFR (80H–FFH) contiene otros 128 bits direccionables más. también tiene una dirección directa definida como D7H. ya que aquí estamos usando ins- trucciones de brinco. alarmas. el nemónico para la bandera de acarreo no es C. podemos establecer en 0 este bit del puerto: CLR P1. Sin embargo. si conectamos un timbre al pin 1 del puerto P1.108d). no obstante. cada bit de los puertos es direccionable individualmente y puede tratarse como si fuera un puerto independiente de un bit. esto es D7H.1 es 91H. las tres instrucciones realizan la misma operación. reside en el registro PSW. la primera instrucción transfiere el número 07H al acumulador. se ejecuta la segunda instrucción CALL. Los bits del registro PSW. debería usar la instrucción JMP para brincar al inicio del programa y solicitar otro número. Todas las instrucciones por bit utilizan el direccionamiento directo con las 128 direcciones de bit de la parte baja de la RAM interna. usando el valor del número primo solicitado. la cual manda realizar la subrutina PRIMO. En el ejemplo anterior solo se utilizaron 10 datos. Puesto que el bit de acarreo. si la cantidad de números primos se incrementa a 1 000. 00H a 7FH. Instrucciones booleanas El 8051 contiene un potente procesador de Boole capaz de realizar operaciones sobre bits individuales. mientras que la segunda y la tercera son de dos bytes. debido a que los datos (constantes) se almacenarían en la memoria tipo ROM.90. Sin embargo. Enseguida. y las 128 direcciones de bit de la parte alta de la RAM interna. El byte adicional en las dos últimas instrucciones es la dirección directa del bit de acarreo. cada una. Como se ilus- tró en la figura 5. que el programa ensamblador acepta en vez de la dirección de bit. Sin embargo. 80H a FFH. timbres. como se ilustró en la figura 5. Las instrucciones que acceden a estos bits se ilustran en la figura 5. PSW. En este caso. la conversión a la dirección correcta. Por ejemplo. no obstante. así como otros registros SFR direccionables por bit. Este tipo de operaciones sobre bits es una de las características más importantes de la familia MCS-51. de manera automática.1.1. sino CY. nos estamos adelantando un poquito. LED. Vamos a considerar las siguientes instrucciones: CLR C CLR 0D7H CLR CY En este caso. como relevadores. el ensamblador puede entender ambos nemónicos. el ensamblador soporta el símbolo P1. la primera instrucción es de un solo byte. Las direcciones de estos bits se numeran de manera secuen- cial desde el bit 00H hasta el bit 7FH. De manera similar. Los dos puntos (:) indican que el programa continúa ejecutando código. Al terminar de ejecutarse la subrutina. el timbre podría activarse si establecemos en 1 este bit del puerto: SETB P1. capacidad para establecer en 1 o 0 lógicos y complementar. Posteriormente. en el acumulador se obtendrá el número 19H. motores. El procesador de Boole usa como acumulador de bit al bit de acarreo carry de la palabra de estados. como operaciones lógicas AND y OR. la parte baja (00H–7FH) de la RAM interna contiene 128 bits direccionables. los cuales corresponden al bit 0 de la dirección de byte 20H y hasta el bit 7 de la dirección de byte 2FH. y este es direccionable por bit. El control.86. Las instrucciones que usan el bit de acarreo se refieren a este como C y se ensamblan como instrucciones específicas para el acarreo. es muy frecuente para muchos dispositivos de E/S. usando bits individuales. esto es: SETB 91H o CLR 91H. la figura 5. ¡No son la panacea! Aún así./P1. P1. han sido mejorados con la incorporación de diferentes periféricos y tiempos de respuesta muy rápidos. La cuar- ta instrucción realiza un brinco al inicio del programa para proseguir realizando esta operación de manera continua. 2 ciclos de máquina En esta operación. 2 ciclos de máquina MOV P1. de 7 ns. La pregunta obligada es: ¿cuál sería el peor caso de retraso de propagación de la operación booleana si esta se realiza usando el programa que acabamos de describir? Bien. C.7. lo cual tomaría 11 ciclos de máquina. los microcontroladores no son los dispositivos más eficientes en el manejo de eventos que requieren respuestas extremadamente rápidas. esto sería de 11 μs.1 . la variable Y  P1. la primera instrucción transfiere a la bandera de carry. con estas variables queremos implementar la función lógica Z  X/Y. si una puerta no se encuentra bien cerrada grupo editorial patria® 309 . El cambio no se registraría en la salida hasta que se ejecute la primera. Es evidente que no hay comparación entre estas dos implementaciones. 8051 P1.F0 . 2 ciclos de máquina SJMP OPERACION . y el re- sultado se almacena en C. En un automóvil.22 22 La ventaja para los microcontroladores es que muchas aplicaciones no requieren tiempos de respuesta en extremo reducidos.1 P1. el cual se usa como bit de propósito general (véase figura 5. Si implementamos la operación booleana anterior usando una compuerta AND 74LS08 y una compuerta NOT 74LS04 que tienen un tiempo de retraso de propagación. P1. o tomar señales de entrada o salida de un puerto como variables de una ecuación booleana.7. el contenido del bit F0. los microcontroladores actuales. vamos a supo- ner que la variable X  F0. Si usamos el código del micro- controlador tomaría aproximadamente 1 000 veces más tiempo que si usamos las compuertas digitales discretas.7.1 con el carry. cada una. 1 ciclo de máquina ANL C. 5 El popular microcontrolador El procesador de Boole nos permite transferir con facilidad el estado de un bit o bandera a un pin de un puerto. Para una observación más clara. el peor caso sería que el bit F0 cambie inmediatamente después de ejecutarse la primera instrucción. C. hasta la aparición del nivel lógico correcto en la salida. tPD.112 nos muestra la implantación de esta opera- ción booleana simple de manera esquemática. Bien. por ejemplo. F0 es el nemónico del bit 5 del registro PSW. La segunda instrucción realiza la operación lógica AND del complemento del pin P1.7.7 F0 PSW =`^liX. en particular cuando los microcontroladores tienen que interactuar con humanos. Este es el tiempo que transcurre desde que sucede una transición en la entra- da.1.C . de modo que la operación anterior podría realizarse en el orden de las centenas de nanosegundos. Por ejemplo.1 y la variable Z  P1. incluyendo la fami- lia del 8051. Si usamos un cristal de 12 MHz. Donde. La tercera instrucción transfiere el contenido de la bandera de acarreo al pin P1.%(() @dgc\d\ekXZ`e[\leXfg\iXZ`eYffc\XeXj`dgc\% La secuencia de instrucciones necesaria para realizar esta operación booleana se muestra a continuación: OPERACION: MOV C.86). segunda y tercera instrucciones otra vez. el peor caso de retardo de propagación de la operación booleana sería de 14 ns. En resumen. del registro PSW. la cuarta instrucción se transfiere el valor de C al pin P1. y la otra es usar instrucciones de byte incluyendo la instrucción XRL. si usamos instrucciones de Boole.2.2  0. Asimismo. vamos a suponer que se requiere realizar el OR-EXCLUSIVO entre el pin P1. La sexta instrucción realiza la OR lógica entre la bandera de carry. pero no contiene la instrucción XOR. 310 ELECTRÓNICA • MIJAREZ .2 en la bandera de carry. Sin embargo. La séptima instrucción transfiere el resultado obte- nido de la ecuación booleana. C.2. una opción podría ser obtener la ecuación booleana de minitérminos de la forma Z  X/Y Y/X. X  P1. como en el caso de las instrucciones por byte. basándonos en la tabla de verdad de la XOR. 5 El popular microcontrolador El procesador de Boole incluye instrucciones AND y OR lógicas. La segunda instrucción realiza la primera AND lógica de la ecuación booleana entre C y el complemento del pin P1. La segunda instruc- ción realiza una operación de brinco condicional. la primera instrucción transfiere el contenido del pin P1. C. La quinta instrucción efectúa la segunda AND lógica de la ecuación boolea- na entre C y el complemento del pin P1.7. el código puede ser muy eficiente. reducir la cantidad de componentes a un solo CI o realizar cambios en el diseño con la sola modificación del software tiene sus ventajas. La tercera instruc- ción almacena el resultado parcial en la bandera de propósito general F0 del registro PSW. Sin embargo. Por último.1 JNB P1. Pero.1 se transfiere a la bandera de carry.2. de lo contrario continuará con la tercera instrucción que realiza el complemento de C para tener el valor correcto en C. y el resultado re- flejarlo en P1. P1.C : En la primera instrucción.1 ANL C. C.7. La octava instrucción efectúa un brinco al inicio del programa. y el bit F0 que contiene el resultado parcial de la primera AND lógica.C SJMP XOR_BOOL Aquí. y la secuencia de instrucciones podría ser la siguiente: XOR_BOOL: MOV C.P1.2 MOV F0.1 a la bandera de carry. almacenado en la bandera de carry. Aunque esta úl- tima no resulta tan eficiente en código. o la presión del aceite disminuye. si el pin P1. no necesitamos saberlo en los primeros nanosegundos. Si asignamos variables como Z  P1.1 ORL C. BRINCO CPL C BRINCO: MOV P1.2 ANL C. Por ejemplo.7.1 y Y  P1. con el fin de continuar realizando esta operación de manera permanente. entonces C tendrá el resultado correcto y brincara a la cuarta instrucción. junto con instrucciones de brinco con prueba de bit.7. Una de estas es usar instrucciones de brin- co con prueba de bit JB y JNB. La cuarta instrucción carga el valor de P1. como se muestra en la siguiente se- cuencia de instrucciones: XOR: MOV C.1. el contenido del puerto P1./P1. la operación XOR se puede implementar fácilmente por software. ya que en un ciclo de producción de un dispositivo el cambio podría ser mínimo.C MOV C.F0 MOV P1.7.2. incluso no lo necesitamos saber en los primeros micro- segundos. ya que es necesario enmascarar bits y usar instrucciones de brinco con el acumulador.P1./P1. existen otras dos maneras de resolver el problema anterior.7. al pin P1.1 y P1. C. JMP. el bit 5 de PSW puede ser puesto a cero por cualquiera de las siguientes instrucciones: BANDERA_USR BIT PSW.2  0.5 . ensambla la instrucción genérica JMP como AJMP. Por un número correspondiente al direccionamiento directo de bit (0-255). también se cuenta con la instrucción JBC.108e). Dependiendo del programa ensamblador que se utilice para ensamblar el código desarrollado. Además de estas tres técnicas. grupo editorial patria® 311 . En el caso de registros de control y de estatus. P1. está formada por las instrucciones SJMP. Uso del operador de punto. JNB). largo y absoluto. si el bit bajo prueba es un 1 lógico (JC. Direccionamiento absoluto CLR PSW. e incluyen las instrucciones de llamada y regreso de subrutinas como se ilustra en la figura 5. En el programa anterior. 2. CLR F0 . y por lo general se usa como referencia de otros programas de ensamblador. Definición de símbolo por el usuario CLR 0D5H . usadas para controlar el flujo de los progra- mas son muy variadas. con una sola instrucción se puede probar si el bit en cuestión es un 1 lógico y después establecerlo a 0 lógico.2  1 se realiza el complemento de C para obtener el resulta- do de acuerdo con la tabla de verdad de la compuerta XOR.7 0 0 0 1 0 complemento  1 0 1 1 1 1 complemento  0 En el ejemplo anterior usamos una instrucción de brinco condicional por bit.1P1.5 .2  0.1  P1.2 P1. las cuales corresponden a los modos de direccionamiento relativo. Esta variedad de instrucciones de brinco aumenta debido a los modos de direccionamiento. el símbolo de punto “. por ejemplo. la instrucción JMP se ensambla como LJMP. JB) o si es un 0 lógico (JNC.2 P1. respectivamente. como veremos a continuación. 3. y el bit de posición en el re- gistro (7-0). Por el nombre o dirección del registro que contiene el bit. condicionales o incondicionales. la cual ejecuta no solo el brinco si el bit bajo prueba es un 1 lógico. la cual se encuentra dentro de las instrucciones para prueba de bit del procesador de Boole. El nemónico gené- rico JMP puede usarse siempre y cuando lo soporte el programa ensamblador que se utilice para ensamblar los pro- gramas. Por ejemplo. CLR BANDERA_USR . los bits también pueden ser definidos por el usuario por medio de un nombre y la directiva del ensamblador “BIT”. si la dirección destino se encuentra dentro del mismo bloque de 2 Kbytes de memoria de programa donde se encuentra la instrucción de brinco. también restablece el contenido del bit a 0 lógico. t#SJODPTJODPOEJDJPOBMFT La instrucción genérica de brinco incondicional. 23 El ensamblador ASM51 de Intel soporta estas tres formas. si P1. y que al programador no le interese el número de bytes con el que se codifica la instrucción. Estas instrucciones ejecutan un brinco a la etiqueta (direc- ción) especificada. por ende. LJMP y AJMP. De lo contrario. El programa de ensamblador ASM51 de Intel. por los símbolos predefinidos del ensamblador. Símbolo predefinido del ensamblador. Adicionalmente. 5 El popular microcontrolador En otras palabras.1 si P1.2 P1. Entradas Salida Entradas Salida P1. Símbolo definido por el usuario Instrucciones de brinco Las instrucciones de brinco por byte.1 P1.”. el direccionamien- to directo de bit se puede especificar en tres formas:23 1.7 P1. se ignora la tercera instrucción (CPL) si el pin P1. La instrucción RET regresa la ejecución del programa a la instrucción que sigue de la instrucción CALL. disminuyendo dos veces el stack pointer. Recordemos que el contador de programa. si el contenido en el acumulador es cero o diferente de cero. como se ilustró conceptualmente en la figura 5. La diferencia entre RETI y RET. de 2 a 512 ciclos de máquina. y después el byte inferior. PCL. SP. Para ejecutar un ciclo N veces. si al programa- dor no le interesa cómo se codifica la instrucción. respectivamente.58. Una vez que el PC es cargado con la nueva dirección. contiene la dirección de la siguiente instrucción a ejecutarse. La instrucción DJNZ decremen- ta el registro o dirección directa indicada y brinca si el resultado es diferente de cero. En el apartado de ejemplos típicos se ve un ejemplo usando las instrucciones de CALL y RET. SP. mientras que en el apartado relacionado con los periféricos internos del microcontrolador se ven las interrupciones y la instrucción RETI. y después se introduce el byte superior. Primero. transfiere los dos últimos bytes almace- nados en el stack al contador de programa. esto es. Es importante hacer notar que todas las subrutinas deben iniciar con una instrucción CALL y terminar con una instrucción RET. PCH. desde la instrucción que sigue a la instrucción de brinco condicional. En la sección de Acceso a periféricos (puertos de E/S) mapeados a memoria se hace uso de este tipo de instrucciones mediante un par de ejemplos. existe un par de instrucciones de brincos condicionales DJNZ y CJNE. Además. es decir. Para esto. contiene la dirección de la siguiente instrucción después de la instrucción CALL al momento de almacenarse en la pila o stack de memoria RAM interna. por lo que sus brincos están restringidos de –128 a 127 bytes. por medio de una etiqueta. con la dirección especificada en la instrucción de CALL. las cuales brincan a una dirección. PSW. esto es. sin afectar ninguna bandera. registro contador CICLO: : . y se utiliza para regresar de una rutina de ser- vicio de interrupción (RSI). La instrucción RETI es funcionalmente igual a la instrucción RET. fin de ciclo DJNZ R1. se utilizan las instrucciones de brincos condicionales JZ y JNZ. estas dos instrucciones almacenan de manera automática el contenido del contador de programa. PCH. PC. se continúa con la ejecución del programa principal. inicio de ciclo : : : . es posible usar el nemónico genérico CALL. t#SJODPTDPOEJDJPOBMFT Las instrucciones de brincos condicionales en el microcontrolador 8051 especifican la dirección de destino usando el direccionamiento relativo. La dirección de destino a donde se desea brincar se define de la misma forma que con los brincos incondicionales. ya que el programa ensamblador se encarga de calcular la distancia correspondiente a la dirección que se desea. en el stack. en su registro de banderas. con una sola instrucción. De cualquier forma. mediante un ejemplo. La instrucción RET hace lo contrario a la instrucción CALL. El ensamblador del 8051 no contiene. indicándole que la interrupción en proceso ha terminado. CICLO 312 ELECTRÓNICA • MIJAREZ . 5 El popular microcontrolador t4VCSVUJOBTFJOUFSSVQDJPOFT De manera similar que con la instrucción JMP. PC. existen dos variaciones de la instrucción genérica CALL: ACALL y LCALL. ninguna bandera que indique si el resul- tado de alguna operación es cero. se transfiere el byte superior. mediante dos instrucciones PUSH. mediante dos instrucciones POP. PC. PCL. es que RETI envía señales al sistema de control de interrupciones del microcontrolador. la instrucción CALL carga el contador de programa. Adicionalmente. El programador no tiene que hacer nada más. cargamos un contador de un byte con un valor N y finalizamos el ciclo con una instrucción DJNZ apuntando al inicio del ciclo como se muestra a con- tinuación: MOV R1.#07H . las cuales in- crementan dos veces el stack pointer. se introduce en el stack el byte inferior del contador de programa. PC. en la instrucción siguiente a la instrucción que llamó a la subrutina (ACALL o LCALL). Con el programa ensamblador de Intel ASM51. Esto provee un medio para llevar a cabo control de ciclos de programa un número dado de veces o para añadir retardos. Primero. y consume un ciclo de máquina. y 13 μs en 0 lógico. entonces el tiempo que tarda en ejecutarse esta instrucción es de 98 ciclos de máquina (49 r 2). como se muestra en el siguiente programa: INICIO: CPL P1.113. de 100 μs.4 KHz de manera continua.0 de un microcontrolador 8051 con un cristal de 12 MHz. CICLO . 2 ciclos de máquina r 49  98 SETB P1. en 0 lógico. cada ciclo de máquina es de 1 μs. # 49D .#04H . Registro contador (1 ciclo de máquina) CICLO: DJNZ R2. La segunda instrucción carga el valor 49D al registro que hará la función de contador. la señal debe man- tenerse 13 μs en 1 lógico.1 ciclo de máquina DJNZ R0. La cuarta instrucción establece en 1 lógico el puerto P1. para generar un pulso. y este se va a repetir 49 veces.8 ciclos de máquina NOP . vamos a suponer ahora que se nos pide generar una señal cuadrada de 38.$ .2 ciclos de máquina END grupo editorial patria® 313 . Ahora.1 y tarda 1 ciclo de máquina en ejecutarse. usando el puerto P1.1 hasta que este regresa a 1 lógico. 1 . con un ciclo de trabajo de 50%. supongamos que tenemos un sistema basado en el microcontrolador 8051 operando con una fre- cuencia del cristal de 12 MHz y que se requiere un lazo de retardo por software. Por consiguiente. La tercera instrucción es el inicio y fin del ciclo del programa. 1 ciclo de máquina La primera instrucción establece en 0 lógico el puerto P1. como se muestra en la figura 5.0 . 5 El popular microcontrolador Por ejemplo.1 ciclo de máquina MOV R0. CLR P1.1 ciclo de máquina SJMP INICIO . como DJNZ consume 2 ciclos de máquina. en el puerto P1. si sumamos los ciclos de máquina justo después de que se estableció en 0 lógico el puerto P1. 8051 P1. Por tanto.0 f = 1/T =`^liX.%((* >\e\iXZ`e[\leXj\ŒXc[\fe[XZlX[iX[X[\*/%+B?q% El programa para generar esta señal considera que el periodo T  1/f  26 μs.1.1 MOV R2. Como el cristal es de 12 MHz.1. tendremos los 100 μs que nos solicitan. La tercera instrucción es el inicio y fin del ciclo del programa. en este caso 04H. no realiza ninguna operación y se encuentra agrupada en el bloque de ins- trucciones de brinco. vamos a suponer que de 1 lógico se hace 0 lógico. de lo contrario.#33H. La bandera de carry. 314 ELECTRÓNICA • MIJAREZ . es decir. y su ejecución tarda 1 ciclo de máquina. Como el cristal es de 12 MHz.0 y tarda 1 ciclo de máquina. este se emplea para producir retardos de manera intencional. genera una frecuencia de 38. se alcanzan los 13 μs desea- dos y el puerto P1. repitiéndose el ciclo continuamente. CY  0.CICLO (Compara dato inmediato con un registro) 24 Parecería que la instrucción NOP no sirve para mucho. OP_fuente. respiramos profundo. esta es el equivalente al tiempo que tomamos para pensar cuando se recibe una pregunta que requiere una respuesta exacta. en este caso se utiliza el símbolo de pesos ($) para indicar de una manera elegante “la dirección de esta instrucción” como DJNZ consume 2 ciclos de máquina.0 cambia a 1 lógico. y cualquier localidad de RAM interna indirectamente direccionada o registro (R0–R7) puede ser comparado con una constante inmediata.0 dura 13 μs en bajo) NOP . 1 ciclo de máquina (P1. utiliza 25 instrucciones y pierde toda la eficiencia y elegancia del programa anterior. El problema anterior puede resolverse usando una secuencia de instrucciones NOP. La instrucción CJNE (compara y brinca si no es igual) compara las magnitudes de dos operandos (bytes) y brinca si son desiguales: CJNE OP_destino. CY  1. 5 El popular microcontrolador La primera instrucción realiza el complemento del estado lógico del pin P1. por tanto 150 30  180. 1 ciclo de máquina (NOP número 1) : NOP . 1 ciclo de máquina (NOP número 1) : NOP . y permite cuatro combinaciones de operandos asociados a diferentes modos de direccionamien- to. La cuarta instrucción.0 . El tiempo que usamos antes de empezar a pensar (procesar) hacemos la cara de NOP.0 dura 12 μs en alto) END Este programa realiza la misma función que el anterior.0 cambia. se establece en 1 lógico. si repentinamente nos preguntan el resultado de multiplicar 15 r 12. Sin embargo. SETB y CLR. es el número de NOP que utiliza. y tarda en ejecutarse 1 ciclo de má- quina. como le co- mento a mis alumnos. sin embargo. sin usar la ins- trucción de brinco condicional DJNZ. Esta instrucción no afecta al contador del programa ni a los registros o banderas. sigue las reglas de la sustracción. CJNE A.CICLO (Compara byte inmediato con el acumulador) CJNE @R0. toma 12 μs en llegar nuevamente a la primera instrucción. 1 ciclo de máquina (NOP número 12) SETB P1. 2 ciclos de máquina (P1. como se ilustra en la figura 5.24 La quinta instrucción es un brinco incondicional al inicio del programa y consume 2 ciclos de máquina. para dar la respuesta tragamos saliva. NOP… Dependiendo de la persona. después que se ejecuta la primera instrucción el estado del puerto P1. La instrucción CJNE no modifica ningu- no de los operandos. Por ejemplo. La se- gunda instrucción carga en el registro R0 el valor del contador. Por tanto. 1 ciclo de máquina (P1. si el valor del operando destino es menor que el operando fuente. 1 ciclo de máquina ( NOP número 9) SJMP INICIO .4 KHz.0 . ya que no realiza ninguna operación y solo consume tiempo. entonces el tiempo que tarda en ejecutarse esta instrucción es de 8 ciclos de máquina (4 r 2).CICLO (Compara byte directo con el acumulador) CJNE A.#92H. los ciclos de máquina son de 1 μs. el acumulador puede compararse con cualquier byte directamente direccionado o con un dato inmediato. NOP (no operation). NOP.CICLO (Compara dato inmediato con un byte indirecto) CJNE R7. Una vez que está en 0 lógico. INICIO: CLR P1. CY. y este se va a repetir 4 veces. Por lo general. Al ejecutarse otra vez la primera instrucción. tomamos agua o simplemente fijamos la mirada antes de empezar a procesar 15 r10  150 y 15 r 2  30.0 dura 13 μs en alto) NOP .#27.108.20H. Interp: CJNE A.. y dejar que la instrucción JNC determine si se ejecuta el salto o no.#7FH. . Intp_1 .SIGUE SIGUE: JNC MAYOR (Continúa programa) En este ejemplo... como una instrucción CASE en lenguaje de alto nivel. si transferimos al acumulador los 8 bits del puerto P2 y deseamos continuar con el programa. . Por ejemplo. . Los dos operandos de la instrucción se to- man como enteros sin signo. usando la bandera de carry. pero los de control <DEL> <CR> <LF> <ESC> o <SP>.. Intp_3 .#0AH. CY. si se requiere brincar a la etiqueta MAYOR cuando el valor del registro R6 es mayor o igual a la constante 40H. que se ve modificada al ejecutarse esta instrucción. rutina especial < FEED > Intp_2: CJNE A.. solo si el dato leído es igual a 7FH.. usado como procesador de palabras. entonces podemos usar la instrucción CJNE de la si- guiente manera: LEE: MOV A. rutina especial <ESC> RET grupo editorial patria® 315 .P2 CJNE A. el programa continúa con la siguiente instrucción.. El objetivo de usar la instrucción CJNE es establecer en 1 o 0 lógico la bandera de carry.. como lo mostramos en los ejemplos de la sección Ins- trucciones para transferencia de datos. .. LEE (Continúa el programa) Otra aplicación muy común es usar esta instrucción en comparaciones de “mayor que” o “menor que”. supongamos que un μC 8051...#7FH. 5 El popular microcontrolador Esta instrucción también se utiliza para control de ciclos. American Standard Code for Information Interchange) en el acumulador.. deben especificar una rutina especial. Por ejemplo.. rutina especial DEL RET Intp_1: CJNE A. podemos usar la siguiente secuencia de instrucciones: CJNE R6. recibe caracteres en ASCII (por su nombre en inglés. Intp_2 .#0BH.. rutina especial <SPACE> RET Intp_3: CJNE A.. imprime . Por ejemplo. a través del puerto serie y maneja una impresora tér- mica.. JNC.#20H.#40H... Una rutina imprime los caracteres normales. CY.. después de ejecutarse la instrucción CJNE. Esta instrucción puede ejecutarse en repetidas ocasiones comparando una variable de código con una lista de valores de “casos especiales”. sin importar el resultado de la comparación. se usan como comandos del lenguaje ensamblador para definir símbolos. Símbolo que reemplaza un número CONTADOR EQU R5 . algunas son obligatorias. entre otros usos. Aunque las directivas se escriben en la columna reservada para las instrucciones. No obstante. Inicio de código a partir de la localidad 64H Directiva END La directiva END indica al ensamblador el fin del código del programa almacenado en un archivo fuente (extensión ASM). Directiva ORG La directiva ORG (origen) se usa para especificar una localidad en la memoria de programa. Directiva EQU La directiva EQU (equate) se usa para reemplazar un número por un símbolo. Símbolo usado para reemplazar símbolos predefinidos Después de usar la directiva EQU. la instrucción INC R5 puede sustituirse por: 316 ELECTRÓNICA • MIJAREZ . ya que si se omite o se escribe un código después de esta. Por ejemplo: END . significa que cualquier instrucción después de esta será ignorada por el programa ensamblador. la etiqueta CONTADOR puede usarse donde sea permitido usar el registro R5. Por ejemplo: ORG 64H . donde se ubicará el inicio del programa que sigue la directiva. el programa ensamblador desplegará una serie de errores. se usa al inicio de los programas. Esta directiva es la última línea de un programa del 8051. MAXIMO Por otro lado. Por ejemplo. entonces empecemos. definidos por el programador. Por ejemplo: MOV A. de símbolos predefinidos como el acumulador (A) y los ocho re- gistros de propósito general (R0–R7). por tanto. solo se permite una directiva por línea y estas no tienen influencia en la operación del microcontrolador. por lo general. símbolos. reservar diversos espacios de memoria. a diferencia de las instrucciones que son ensambladas y escritas en la memoria de programa. En los siguientes apartados de esta sección descri- bimos las directivas obligatorias y algunas de las directivas más usadas en el desarrollo de los programas. esta será interpre- tada por el programa ensamblador como el número 99. etiquetas y comentarios Directivas Las directivas del ensamblador del MCS-51. Esta directiva define constantes sin ocupar espacio de memoria. pero. Por ejemplo: MAXIMO EQU 99 . al igual que las instrucciones. Sin embargo. mientras que otras se usan únicamente para facilitar o acelerar la operación de los programas. cada vez que aparezca la etiqueta MAXIMO en el programa. almacenar constantes en la memoria de programa e identificar el inicio o el fin del programa fuente. 5 El popular microcontrolador Directivas. fin del programa Esta directiva es obligatoria en un programa del 8051. Aclarado lo anterior. también puede usarse para especificar nombres. como parte de cada programa. Por lo que se refiere a direcciones mayores a 255. Si el valor asignado se encuentra entre 0 y 127. Dichos datos pueden ser números en hexadeci- mal. apuntará al primer byte o constante listada. Por ejemplo: MSJ_DERECHOS: DB ‘(c) Copyright. Directiva BIT La directiva BIT asigna un símbolo a un bit de la memoria interna del 8051. Sin embargo. el bit que se reemplaza por un símbolo corresponde al mapa de direcciona- miento de la RAM interna. Pero. el bit que se reemplaza es una dirección de bit que corresponde a los registros de funciones especiales. El bit de la dirección 80H (P0) toma el nombre de RELE grupo editorial patria® 317 . no solo al inicio del mismo. si el bit está entre 128 y 255. 2012’ . el formato de esta direc- tiva puede usar una etiqueta. estos deben estar separados por comas. En esta directiva no importa cómo se escriban los números. Pero. estas no son válidas. Bandera de paridad en PSW SALIDA BIT 07H . Directiva SET La directiva SET se usa para reemplazar un número por un símbolo o uno de los símbolos predefinidos. por tanto serán señaladas con errores al ensamblar el programa. si se usa. Mensaje en ASCII CONSTANTES: DB 127.’abc’ . el programa ensamblador la cambiará en todas las partes del programa que se utilice. Tabla de constantes MEZCLA: DB 2*8.0. decimal. ya se desarrolló en la sección Búsqueda de datos en tablas.’MPG’. La diferencia con la directiva EQU es que la directiva SET puede usarse un número ilimitado de veces en un programa.2*16. Se emplea para escribir datos específicos en la memoria de programa. al utilizar la instrucción MOVC. el ensamblador asignará en forma automática el código ASCII para los números o caracteres utilizados. sin necesidad de realizar los cambios uno a uno. Al bit de la dirección 07H se le asigna el nombre SALIDA RELE BIT 80H . De manera opcional.54. si se especifica un arreglo ASCII. Por ejemplo: UMBRAL SET 49H UMBRAL SET 33H APUNTADOR SET R1 APUNTADOR SET R0 Directiva DB La directiva DB (Define Byte) es una de las directivas de datos más ampliamente usadas en el ensamblador del 8051. Algunos ejemplos de la directiva BIT son: BANDERA_PARIDAD BIT 0D0H . binario o ASCII. este debe escribirse entre apóstrofos (‘’). el ensamblador los con- vierte a hexadecimal.99 .18. direccionándolo de manera directa. cuyo valor. si se especifican varios valores. De esta manera. Mezcla de valores ASCII y números Un ejemplo de cómo se usa la directiva DB. 5 El popular microcontrolador INC CONTADOR La ventaja de usar la directiva EQU es que si se modifica su valor al inicio del programa. nombres de registros y directivas. etcétera. símbolos y etiquetas. Por ejemplo. las etiquetas se usan antes de cualquier instrucción o directiva que tenga una dirección f ísica asociada a esta. En forma auxiliar a las directivas. existen ciertos símbolos que son reservados y no pueden ser definidos por el pro- gramador. el lenguaje ensamblador también sopor- ta algunos controles. leer. como el símbolo de interrogación (?) o el símbolo de guión bajo (_). Para asegurarse de que el programa ensamblador distinga correctamente entre un símbolo y un número. No obstante. especialmente aquéllos relacionados con instrucciones. 25 Los dos puntos que requieren las etiquetas son un punto arriba del otro (:).16. el programa ensamblador convierte todos los símbolos.8. $DATE().32 MENSAJE: DB ´OPCION 1 o 2´ INICIO: MOV A. etcétera. Etiquetas Las etiquetas son un caso especial de los símbolos. direcciones. Su longitud es de hasta 255 caracteres. con la única diferencia de que estas requieren ir seguidas por dos puntos (:). Las etiquetas siguen las mismas reglas de los símbolos.. no un punto seguido del otro (. fecha. como título del programa. además de otros caracteres especiales. to- dos los símbolos deben empezar ya sea con una letra o con un carácter especial (? o _). entre otros. los siguientes dos símbolos serían vistos por el ensamblador como el mismo símbolo: Puerto_salida PUERTO_SALIDA Los símbolos pueden definirse solo una vez. Algunos ejemplos de símbolos permitidos por el ensamblador son: Puerto_salida LOCALIDAD_8192 ?_SEÑAL De esta manera. MOV. el ensamblador no distingue entre letras minúsculas y mayúsculas. 5 El popular microcontrolador La manera en cómo se usa esta directiva ya se mostró al final de la sección Instrucciones booleanas. Sin embargo.#87H La selección de nombres para símbolos y etiquetas que tengan un significado para el programa que se va a de- sarrollar. Como consecuencia.25 Algunos ejemplos válidos para las etique- tas son: TABLA__DE_CTES: DB 0.). depurar o mantener con mayor facilidad un programa en lenguaje ensamblador. solo los primeros 32 tienen significado. Los caracteres que soporta el ensamblador son el conjunto de letras mayúsculas o minúsculas (A…Z. BIT. macros. hace que el programador pueda realizar.2. a…z) y el conjunto de números decimales (0…9). he sabido de este error en programadores principiantes. número de caracteres en cada línea $PAGEWIDTH(). Aunque suene a broma. Símbolos Los símbolos son representaciones alfanuméricas de constantes. 318 ELECTRÓNICA • MIJAREZ . instrucciones y directivas en letras ma- yúsculas. entre otras. $TITLE. Por ejemplo DPTR. sin embargo. comentario] Los corchetes cuadrados indican que el campo es opcional.de/asem-51/final13. el uso tanto de controles como comentarios depende del programador. Por lo común. uno de estos es el ASEM-51. Por otro lado.). El proceso de en- samblado requiere un tercer paso. como Pascal o lenguaje C. además de que también usamos un programa ensamblador comercial para crear y ejecutar un programa. en los cuales se explica el propósito. Así. ahora que se ha definido el formato básico de un programa en lenguaje ensamblador. Aunque Keil μVision© tiene un simulador. entre otras cosas. los registros utilizados y las propiedades de la sección de software que sigue. No obstante. este estableció un estándar con el cual se comparan otros programas ensambladores. los cuales ayudan a la legibilidad de los programas. la cultura de documentar los programas. por esa razón no todas las líneas los tienen. el cual se puede obtener en el sitios web: http://plit. aunque algunos ensambladores usan la extensión SRC (source). En esta sección usamos el ensamblador comercial de Keil μVision©27 para crear. como lo muestra la figura 5. el programa ensamblador convierte las instrucciones del lenguaje ensam- blador a código de máquina y luego genera dos archivos llamados: objeto (OBJ) y de listado (LST). y normalmente se incluye en la documentación que proporciona el fabricante del microcontrolador específico que se esté usando. Uno de los más importantes era el programa ensamblador de Intel para la fami- lia MCS-51. en esta sección nos dedicamos al estudio de los campos que constituyen el formato que sigue el lenguaje ensamblador del microcontrolador 8051. De manera general. conformado por un conjunto de bytes binarios. se ensambla y se ejecuta un programa en lenguaje ensamblador. Este proceso se lleva a cabo en varios pasos. Operación de un programa ensamblador En el mercado existen comercialmente muchos programas ensambladores que facilitan el desarrollo de aplicaciones basadas en el microcontrolador 8051. y un lenguaje de máquina. Una vez creado el archivo ASM. grupo editorial patria® 319 . el 26 La lista completa de directivas y controles del 8051 es grande. el lenguaje ensamblador es un lengua- je de programación que se ubica entre los lenguajes de alto nivel.htm. en el usuario de microcontroladores. en el que interviene el programa denominado enlazador (linker). De esta manera. debido a que estos ayudan a explicar el objetivo y la secuen- cia de las instrucciones. Bien. como hemos visto en algunos ejemplos. sin embargo ya no se encuentra disponible en el mercado. Los comentarios siempre deben empezar con un punto y coma (. 5 El popular microcontrolador Comentarios Adicionalmente. siempre y cuando estos comiencen con un símbolo punto y coma. para simular los resultados de los programas previamente ensamblados. Lo impor- tante es crear. Por lo general. pero este no es el único. ensamblar y dejar listo para ejecutar un programa en lenguaje ensamblador. los programas para ensamblar la familia MCS-51 toman un archivo fuente en lenguaje ensam- blador y lo convierten en un archivo en lenguaje de máquina. Es posible usar líneas enteras para realizar comentarios. Formato de un programa en lenguaje ensamblador del 8051 El formato de un programa en lenguaje ensamblador consiste. De esta manera. el primer paso de este proceso es crear un archivo fuente que contenga el código del programa en lenguaje ensamblador. estamos listos para analizar cómo se crea. denominado TS Controls©.114. a este archivo se le asigna la extensión ASM. haremos uso de un simulador más versátil. las subrutinas y los bloques grandes de un programa inician con un grupo de líneas para comentarios. en una serie de líneas que contienen instrucciones en lenguaje ensamblador. 27 El programa ensamblador de Keil μVision© es muy popular y altamente recomendable. Por tanto. el lenguaje ensamblador también soporta el uso de comen- tarios. incluso existen programas en- sambladores para la familia de microcontroladores MCS-51 que se pueden descargar gratis. En esta parte.26 Programación en lenguaje ensamblador Como explicamos en la sección Lenguajes de máquina y lenguaje ensamblador. las instrucciones constan de cuatro campos: [Etiqueta:] nemónico [operando1][operando2] [. el ASM51TM. el segundo paso es alimentar al programa ensamblador. como segundo paso. Atmel. emerge otra ventana donde aparece un mensaje que nos pregunta si queremos añadir al proyecto 320 ELECTRÓNICA • MIJAREZ . el cual nos permite escribir. de la vasta base de datos. el cual es crear un proyecto nuevo. una herramienta de configuración y un depurador de programas. el dispositivo que se quiere utilizar. Los programas ensambladores actuales basados en el sistema operativo Windows. aparece una pantalla solicitando. mediante un programa ejemplo. por sus siglas en inglés). Para empezar a usar este programa IDE vamos a proporcionar una guía o un procedimiento rápido. Para esto seleccionamos un directorio e introducimos el nombre del proyecto. Por último. ensamblar. y que soporta una variedad grande de fabricantes como Intel.HEX =`^liX. En este ejemplo seleccionamos el microcontrolador 80C31BH de Intel. De la página principal del Keil μVision. mediante el uso del programa ensamblador comercial de Keil μVision.OBJ 3 OTROS PROGRAMA ARCHIVOS ENLAZADOR OBJ MI_ARCHIVO. el archivo ABS alimenta a un programa llamado OH (Object-hexadecimal). precisamente el programa ensamblador es el archivo que se graba en la memoria ROM del sistema basado en un microcontrolador. como el Keil μVision©. 5 El popular microcontrolador programa enlazador toma uno o más archivos objeto y produce un archivo objeto absoluto con extensión ABS. 1 PROGRAMA EDITOR MI_ARCHIVO .%((+ GifZ\jf[\\ejXdYcX[f[\legif^iXdX]l\ek\\elec\e^lXa\\ejXdYcX[fi% Ensamblador Keil μVision Este aparatado lo iniciamos describiendo. retomamos el primer paso. de manera general. entre muchos otros. Inmediatamente después de crear el proyecto. combinan todos los pasos en uno solo. un editor de texto.LST MI_ARCHIVO. el procedimiento para ensamblar un archivo fuente (ASM). Philips y Dallas Semiconductors.ASM (ARCHIVO FUENTE) 2 PROGRAMA ENSAMBLADOR MI_ARCHIVO. El programa de Keil μVision es un am- biente de desarrollo integrado (IDE. Acto seguido. Este programa IDE integra los siguientes componentes: un administra- dor de proyectos. el cual convierte un archivo obje- to en un archivo hexadecimal y genera un archivo con extensión HEX.ABS 4 PROGRAMA OH MI_ARCHIVO. compilar y depu- rar programas de la familia MCS-51. seleccionamos la opción no. más…! tendrás que esperar.%((. Entonces. más. ya que el alcance de esta edición del libro está delimitada a un determinado número de páginas. Pero si has llegado hasta estas al- turas del libro y pides a gritos: ¡quiero ver más. un archivo de código tipo plantilla. 5 El popular microcontrolador =`^liX. grupo editorial patria® 321 . debido a que dicho archivo se encuentra en lenguaje C para hacer uso del compilador de Keil μVision y nosotros tenemos centrada nuestra atención en el lengua- je ensamblador.28 =`^liX.%((- 28 La programación en Lenguaje C para el 8051 es tema de otro libro o cuando menos de otro capítulo extenso. seleccionamos save.%((/ 29 Se recomienda que el primer programa se realice lo suficientemente simple (pero. emerge la pantalla para editar nuestro programa en lenguaje ensamblador y entonces procedemos a escribir un programa fuente. Acto seguido. Hecho lo anterior. 5 El popular microcontrolador El tercer paso es seleccionar.%((. En este ejemplo. provocando que aparezca la opción Source Group1 en esta ventana. de la barra de iconos. El quinto paso consiste en seleccionar de la ventana Project window el Target1. =`^liX. damos clic derecho y emergerá otra ventana de la cual seleccionaremos Add files to Group ‘Source Group1’ y del directorio de nuestro pro- yecto añadimos el programa fuente (ASM) al proyecto (véase figura 5. El cuarto paso es crear un archivo fuente con el programa en lenguaje ensamblador. no más simple.118). para guardar este archivo fuente y le asignamos un nombre con extensión ASM. para visualizar el microcontrolador que escogimos como Target1 y sus archivos fuente asociados. 322 ELECTRÓNICA • MIJAREZ . la opción proyect window. seleccionamos la barra de iconos new file o la opción file del menú principal y después escogemos new.asm. Luego. de la opción View del menú principal. Debido a que el objetivo de este programa es probar que el hardware principal del microcontrolador se encuentra funcionando correctamente. donde se da doble clic. =`^liX. como reza una de las frases de Albert Einstein). escribimos un progra- ma muy simple29 de los que describimos en el apartado de Brincos condicionales. como oscilador interno. Para esto. área de temporización y control y puertos de E/S. seleccionamos Source Group1. por ejemplo: Prueba_minimo. y de este modo habremos concluido el proceso (véase figura 5. donde todas las opciones especiales están definidas automáticamente. y último. para tener otro archivo con el mismo nombre pero con extensión HEX (véase figu- ra 5. 5 El popular microcontrolador El sexto paso es seleccionar Project del menú principal y elegir Options for target ‘target1’. solo es necesario configurar la ventana de salida (Output). Por lo común. Se recomienda usar el mismo nombre del archivo fuente. emergerá la pantalla de herramienta de configuración. se generará el archivo HEX.%()' grupo editorial patria® 323 . Si el programa ensamblador no detecta errores. y de esta seleccionar la opción donde se acepta crear el archivo HEX y se introduce el nombre del archivo HEX que se va a generar.120).119). paso es seleccionar Project del menú principal y escoger Rebuild all target files o Build target. acto seguido. =`^liX. listo para grabarse en una memoria ROM. =`^liX.%((0 El séptimo. solo es necesario proporcionar los ajustes correctos. como escribir P1. es necesario corregir el programa para tenerlo libre de errores y que se genere el archivo HEX. el archivo LST es muy útil para el programador. Por ejemplo.hex con el editor de textos de Keil μVision. por lo general. el archivo Intel hex se produce automáticamente. es cuando el archivo OBJ se encuentra listo para ser la entra- da del programa enlazador y producir el archivo HEX. si se tiene un error al escribir el programa. 5 El popular microcontrolador Más sobre los archivos LST y HEX Aunque no se usa en el proceso de grabación de la memoria ROM. en Keil μVision. debido a que este lista todos los códigos de operación y sus direcciones. así como los errores y las advertencias que detectó el programa ensamblador. Se puede acceder a este archivo usando un editor de textos tipo Bloc de notas. En los programas ensambladores basados en Windows. Para esto. Como mencionamos antes. o usando el editor de texto del Keil μVision. para detectar errores de sintaxis. si abrimos el archivo Prueba_minimo. Este formato fue diseñado para estandarizar el grabado de códigos de máquina ejecutables en circuitos integrados tipo ROM. de Windows.8 en lugar de P1. Aunque. las líneas del programa y el lugar y el tipo de errores detectados. como el Keil μVision. esta es Create Hex file. el ensamblador indi- cará el error. El archivo en lenguaje de máquina con extensión HEX utiliza un for- mato ampliamente usado denominado Intel hexadecimal (Intel hex). solo hasta que se resuelvan todos los errores indicados por el archivo LST. simplemente se tiene que seleccionar una casilla. Esta es la razón por la cual los sistemas programadores de dispositivos ROM soportan este formato.%()( Como se puede observar en la figura. en este caso el ensamblador nos indica que el error ocurrió en la línea 10 y que es del tipo OUT OF RANGE OR NON-TYPELESS BIT-OFFSET. En este punto. el código objeto. Pero. =`^liX.0. podremos obser- var la siguiente secuencia de números: :09000000B2907804D8FE0080F7EC :00000001FF 324 ELECTRÓNICA • MIJAREZ . Ahora toca hablar acerca del archivo HEX. solo abriendo el archivo de listado (LST) se pueden averiguar la localidad de memoria. en este libro nos concentramos en las dos últimas. Cada línea empieza con dos puntos seguidos (:) Contador de bytes.. del cual hay muchas opciones. 3. descartamos el nibble con acarreo. Por ejemplo..indica : 90 0000 00 B2907804D8FE0080F7 EC el checksum de todo : 00 0000 01 FF lo que hay en la línea. Usar un sistema comercial emulador (in-circuit).%()) El checksum es un algoritmo que se usa para verificar que la información que se graba en la memoria ROM no ha sido corrompida. lo cual nos da como resultado el número 87. el resultado es 00. indica que hay más líneas después de esta línea. Dirección de 16 bits.indica localidad del primer byte en la memoria ROM.00. Inmediatamente después calculamos su 2 complemento. existen cuatro opciones para ejecutar este código en hexadecimal: 1. principalmente grupo editorial patria® 325 . vamos a realizar el checksum de la primera línea del archivo HEX y posteriormente verificamos si esta información no ha sido corrompida. Construir un sistema basado en el 8051.122. tenemos que: 79 687  700. Tipo. 4.. lo cual da como resultado el número 687: 09 00 00 00 B2 90 78 04 D8 FE 00 80 F7 EC  687 Posteriormente. 2. : CC AAAA TT DDDDDDDDDDDDDDDDDD SS Byte de suma. :09000000B2907804D8FE0080F7EC checksum 87 Este procedimiento consiste en sumar todos los bytes. es el número 6. el resultado de este algoritmo debe ser cero. con lo cual se verifica que la información de esa línea no ha sido corrompida. Si realizamos la suma entre el resultado del 2 complemento y el resultado de la suma de todos los bytes. =`^liX. Información de código o datos. Usar un software simulador del 8051. 01. Otra vez. Las primeras dos opciones requieren la adquisición de un hardware comercial basado en un microcontrolador 8051.indica cuantos bytes (00 a 16) hay en la línea. El grabador coloca esta información en localidades sucesivas de la ROM. si descartamos el nibble con acarreo. indica que es la última línea. en este caso.. que en este caso es el número 79.esta parte es máximo de 16 bytes. No obstante. Ejecución de programas Una vez que un programa en lenguaje ensamblador ha sido ensamblado adecuadamente y contamos con nuestro ar- chivo HEX. 5 El popular microcontrolador La información que provee este archivo es la que se transcribe en la figura 5. Usar un sistema comercial de evaluación del 8051. como el AT89LP2052 de Atmel. El HP 64000 podía tener de 1 a 6 estaciones de trabajo HP64100A. Hoy día. en las cuales usaremos el hardware propietario basado en un μC de la familia MCS-51. o ciertas frustraciones. del día siguiente. a dicho centro en México llegó a mitad de esa década. Esta arquitectura permitía que hasta seis diseñadores o desarrolladores pudieran usar su estación de trabajo. 2) Se ensambla (archivos HEX y LST). este se coloca en el hardware que construimos para ese propósito. sin embargo. se nos recomienda tener mucho cuidado al momento de alambrar nuestros 30 En 1989 tuve la gran oportunidad de usar el sistema de desarrollo HP 64000.(\elej`dlcX[fif\ele[`jgfj`k`mfYXjX[f\eled`ZifZfekifcX[fi% Para usar el simulador solo es necesario contar con una computadora personal y con los programas ensamblador y simulador. Luego.m. incluso entre ellos mismos se disputaban las horas de las estaciones de trabajo.123 muestra los elementos necesarios para transferir un archivo HEX a un simulador y a un sistema basado en un microcontrolador. aunque comercialmente existen muchas más opciones.31 Si es necesario hacer cambios.m. Primero. localizado en el laboratorio de electrónica del centro de investiga- ción donde realicé las prácticas para mi tesis de licenciatura. Una vez que se escribe y ensambla sin errores un programa en lenguaje ensamblador. conectadas a una computadora personal. después de verificar el funcionamiento del programa en el simula- dor. usaremos el simulador TS Controls© para simular los programas que realicemos. respectivamente. entre los que destaca la familia del MCS-51. Por este motivo. sin embargo. 1) Se escribe un programa 4) Se graba el archivo HEX en 5) Ejecución del código HEX en en lenguaje ensamblador. En Internet existe una gran variedad de programas y circuitos electrónicos para este propósito. integrada. esto es.). compartiendo la instrumentación de un bus HPIB. Los becarios como yo teníamos asignado un tiempo mucho mayor. que se pueden reprogramar mediante un conector especial. El HP 64000 era un sistema de desarrollo de hardware y software para varios microprocesadores y micro- controladores. aun después que fueron soldados en el dispositivo electrónico. el proceso anterior se repite el número de veces que se requiera. como lo dicta el aprendizaje basado en prácticas (ABPRA). con el objetivo de depurar nuestros programas. y posteriormente nos referiremos a las prácticas de laboratorio. claro. contienen todas estas características y las podemos tener sobre un escritorio. el cual se sugiere construir para realizar dichas prácticas. Programador =`^liX. 5 El popular microcontrolador porque se aprende haciendo. ensamblar. Llevar a cabo el proceso anterior genera en el diseñador la sensación de control absoluto de la electrónica que se diseña. los investigadores tenían prioridad de uso. Pero. el archivo HEX se transfiere al hardware del programador para grabar la memoria EPROM o el microcontrolador con memoria integrada. que soportan la programación in circuit. emular y grabar memorias o microcontroladores con memorias integradas. las cuales com- partían un disco duro. si el sistema funciona correctamente. La figura 5. caben en una caja de chocolates. a las 8:00 a. una memoria EPROM o en un un dispositivo basado en un microcontrolador con memoria microcontrolador. el disco duro y la impresora. Sin embargo.m. los ambientes de desarrollo integrado (IDE).m. a 5:00 p. En horas convencionales de tra- bajo (de 8:00 a. 326 ELECTRÓNICA • MIJAREZ . Un dispositivo de esta naturaleza es el programador universal SUPERPRO©. 31 Existen microcontroladores. Una vez grabado el dispositivo con memoria. se recomien- da usar un programador comercial para reducir errores en el proceso de grabación. 3) El archivo HEX y LST se usan para ejecutar el código en un simulador. ventaja que aprovechamos y en muchas ocasiones hasta disfrutamos. de tamaño un poco menor al de una lavadora. Este sistema fue introducido por Hewlett Packard en 1980. y no necesitan desmontarse para poder ser grabados.30 La secuencia de ejecución lógica de un código en hexadecimal es la que se describe a continuación.%()* <a\ZlZ`e[\Z[`^f]fidXkf@ek\c?<O[\c/'. lo cual produce reconfortantes satisfacciones. para grabar una memoria EPROM o la memoria Flash integrada en un microcontrolador se requiere de un hardware adicional llamado programador. de las 5:00 p. y porque haremos uso de nuestros conocimientos de electrónica para diseñar un módulo basado en un microcontrolador. si ocurre lo contrario. y una impresora. como el Keil μVision© y el TS Controls©. En este sistema se podía editar. los archivos HEX o LST se usan para ejecutar el código del programa en un simulador. El simulador del 8051 TS Controls no es la excepción. Pero. De la página principal del TS Controls. del menú principal seleccionamos Mode.LST (véase figura 5. un 8051 con un cristal de 12 MHz. DPTR. se puede obtener una versión de evaluación en la liga: http://bit. El segundo paso consiste en ejecutar propiamente el programa. 8051. los registros SFR y los registros más empleados en programas ensambla- dores. los cuales se pueden bajar de Internet. y establecemos la frecuencia a la cual se desea operar el microcontrolador (véase figura 5. Siguiendo el proceso descrito antes. el estado del puerto P1 es FFH.edu. Continuando con el mismo tenor del programa ensamblador. podemos apreciar que el número de ticks es 1 y que el estado del 32 En la actualidad existen varios programas simuladores del 8051. primero ejecutamos nuestros programas usando el simulador TS Controls. con el fin de aprovechar todas sus potencialidades. Para esto. =`^liX. primero seleccionamos los ajustes apropiados para el sistema basado en el microcontrolador que estamos usando.kuas. asimismo. Así. B. al ejecutar la primera instrucción. Pero.%()+ Una vez realizado el paso anterior. antes de ejecutar el programa. ahora si empecemos. del menú principal seleccionamos Run y Step o simplemente usamos el icono correspondiente o la tecla F11. como el acumulador. así como las localidades de la RAM interna y externa. Como sabemos. sin embargo. también podemos usar la opción file y seleccionar cargar los archivos HEX o LST.124).tw/~8051/emul8051. En este caso. podemos visualizar el archivo LST y el código (HEX) desensamblado.125). SP. Por tanto. En este ejemplo usamos los archivos Prueba_minimo. como el Keil μVision. grupo editorial patria® 327 . enseguida damos una guía rápida de cómo usar este simulador por medio de un ejemplo simple. PC. de la barra de iconos. 5 El popular microcontrolador circuitos. el cual efectuaremos siguiendo instrucción por instrucción. se reco- mienda usarlo en cada programa que se realice. por ende. el primer paso es seleccionar. otra vez nos estamos adelantando. de RESET los puertos del μC se encuentran en 1 lógico.HEX y Prueba_minimo. por tanto. Load HEX file o Load LST file. R0 a R7 y el número de ciclos de máquina (ticks) que toman las instruc- ciones que se ejecutan.zip. Entonces. Ejecución de programas usando el simulador TS Controls El programa simulador del 8051 TS Controls©32 provee la flexibilidad necesaria para simular los archivos generados por los programas ensambladores. puerto P1 cambio a FEH. lo cual generará la señal cuadrada de 38.%(). el primero es mantener el costo del sistema a un precio bajo.%()- Ejecución de programas usando un sistema mínimo En esta sección nos referimos a la ejecución de programas en ensamblador llevando a cabo el diseño de un sistema mínimo basado en un microcontrolador de la amplia familia MCS-51. El precio que hay que pagar es el tiempo que se tarda en borrar la 328 ELECTRÓNICA • MIJAREZ . 5 El popular microcontrolador =`^liX. y que permane- cerá así 12 ciclos de máquina (ticks). también requerimos un latch tipo 74HC373. El sistema mínimo es un sistema basado en un microcontrolador que se construye con los circuitos o componentes mínimos necesarios para ejecutar un programa. el cual requiere una memoria EPROM externa. ya que permite enfatizar los ciclos de búsqueda-decodificación-ejecución que realiza el micro- controlador. que de otra forma se asumen y en ocasiones no se entienden. En este momento podemos considerar que el estado del pin P1. primero seleccionamos el microcontro- lador que queremos usar. =`^liX. un 33 Seleccionar inicialmente una versión del 8051 sin EPROM tiene un doble propósito.0 se encuentra en estado lógico 0.4 KHz que se solicitó. hasta que se ejecute otra vez la instrucción CPL. mientras que el segundo es de carácter didáctico. esto toma otro ciclo de máquina y se completa el ciclo de 13 μs en estado lógico 1 y 13 μs en estado lógico 0. debido a que se realizó la instrucción de complemento de bit CPL P1. el cual se puede usar en varias aplicaciones posteriormente.0 (véase figura 5.33 Adicionalmente a la memoria EPROM. Al ejecutarse nuevamente la instrucción CPL. Para tal efecto.126). lo cual será en el ciclo de má- quina 13. En este ejemplo vamos a usar el microcontrolador 80C31BH de Intel.0 que cambia el estado del puerto P1. ¿en que dirección la CPU de un microcontrolador empieza a leer el primer código de operación? Sin embargo.hex en nues- tro dispositivo electrónico. M27C256B. El diseño del sistema mínimo nos lleva a realizar la primera práctica de laboratorio del micro- controlador 8051. el contador de memoria EPROM.4 P0.0 20-30 pF 20-30 pF GND GND d) =`^liX.2 K7 GND a) b) 10 A0 D0 11 9 A1 D1 12 3 D1 Q1 2 8 A2 D2 13 4 5 7 15 D2 Q2 5 V 6 A3 D3 16 7 D3 Q3 6 5 A4 D4 17 8 9 4 A5 D5 18 13 D4 Q4 12 P1. en el caso de la familia de microcontroladores MCS-51.7 P0.127.0 25 14 D6 Q6 15 P1. todos los microcontroladores son dife- rentes.2 OSC1 P2. Por tanto. funciona adecuadamente.+?:*.5 P3. ha llegado el momento de mostrar nuestras habilidades de electrónica.:).1 P0. como el 89C2051 de Atmel.1 A8 17 16 24 A9 18 D7 Q7 19 P1.4 e) P3.6 P3.7 P3.6 27 A14 RESET P0. un circuito oscilador y una alimentación de 5 V CD.M:. el microcontrolador. Una ventaja de estos microcontroladores es que reducen a segundos el tiempo para borrar y reprogramar la memoria flash. contar con muy pocas instruc- ciones.3 P2. el cual puede ser de hasta 20 minutos. debido a que requerimos unir los bloques tipo lego de electrónica usando ciertas directrices. el programa requerido también debe ser mínimo.5 P0.5 P2.2 21 A10 D8 Q8 P1. Los bloques que requerimos unir para construir nuestro sistema mínimo se muestran en la figura 5.3 OSC2 P2.4 2 A12 11 __ LE P1.4 P2. esto es.7 __ P3. La memoria sugerida es una EPROM de 32 Kbytes. 5 El popular microcontrolador circuito de reset. ya podemos ejecutar el programa Prueba_minimo.6 P2.5 26 A13 80C31BH 1 OE P1.*%[ D`ZifZfekifcX[fi/':*(9?pZ`iZl`kffjZ`cX[fiZfeZi`jkXc [\()D?q%\ D\dfi`X<GIFD8D). 9cfhl\j[\\c\Zkie`ZXi\hl\i`[fjgXiXZfejkil`ilej`jk\dXdˆe`dfYXjX[f\eled`ZifZfekifcX[fi/':*(9?[\@ek\c% X :`iZl`kf[\Xc`d\ekXZ`e[\. como el ejemplo del apartado anterior o incluso una sola instrucción.6 P0.0 EA 22 __ OE c) P3.3 23 A11 __ P1. todos los miembros de esta familia inician en la dirección 0000H al aplicarse un voltaje de 5 V al pin de alimentación y al pin de RESET.3 P0.2 P0. El objetivo es probar que el componente más “sexy” del módulo electrónico.2 ALE PSEN 20 CE 1 VPP P3.0 VCC A6 D6 D5 Q5 3 A7 D7 19 P1.-% Una vez diseñado y costruido el sistema mínimo. 5 V 5 V 6-12 V VCC 100 7 10 MF 5V Reinicio 120 VCA LM7805 RST 100 MF 10 MF 100 nF 8. Una pregunta que por lo regular nos hacemos acerca de cualquier microprocesador o mi- crocontrolador es: al momento de aplicarse el voltaje de alimentación.7 P2. es decir. grupo editorial patria® 329 . no obstante. que se ve posteriormente.%Y :`iZl`kf[\i\j\k%Z CXkZ_.1 12 MHz GND P2. Por fortuna podemos diseñar el sistema mínimo con microcontroladores con memoria Flash integrada. En este punto.1 P3.%(). Lo anterior nos permite avanzar en nuestros obje- tivos y. PCB123© y muchos otros.%()/ Por otro lado. como el sistema mínimo. 5 El popular microcontrolador programa. vamos a basarnos en una estrategia muy simple llamada incrementalista.`X^ejk`Zf KiXkXd`\ekf . se recomienda al diseñador ser muy cuidadoso al momento de alambrar su primer prototipo. Este procemiento tiene diferentes nombres. la cual consiste en el siguiente procedimiento: t Realizar cambios deliberados para obtener su objetivo. estos nombres coloquiales adquieren una apariencia respetable. etcétera. html?tagrb_content. se recomienda su aplicación de manera sistemática.cnet.130. easyPC©. por tanto. t Medir y evaluar los efectos de cada cambio realizado. que los simu- ladores de hardware dif ícilmente pueden detectar. los objetivos y decidir el próximo cambio. si es necesario. Por ejemplo. con el fin de realizar nuestro diagrama esquemático. Para diseñar nuestro sistema mínimo y unir los bloques de la figura 5.`X^ejk`Zf :liX kiXkXd`\ekf =`^liX.34 La práctica del sistema mínimo solicita esta y otra informa- ción relevante del circuito construido. Ahora. entre los más comunes se encuentran: “prueba y error”. adminis- tradores y otros profesionistas. capacitores de desacoplo. Cuando el procedimiento incrementalista se lleva a cabo en forma deliberada y con bases sólidas de conocimiento. aprender. Realizar cambios en el hardware de un sistema electrónico es laborioso y podría incrementar el costo del disposi- tivo.com/windows/pcb123/3260-20_4-103143. aunque entre amigos o colegas se conoce como “muévele y observa los cambios”. el software PCB123 puede descargarse del sitio http://download. al tratar a un paciente usan el siguiente procedimiento: 8aljkXi JˆekfdX . Estrategia de construcción y pruebas de un dispositivo electrónico Para construir y probar los dispositivos electrónicos basados en un microcontrolador. lo más importante.hex. tal como se ilustra en la figura 5. Esto significa que se espera que el primer código de operación se encuen- tre almacenado en la dirección 0000H de la memoria EPROM. pero antes debemos describir la estrategia incrementalista para probar circuitos electrónicos. se carga con el valor 0000H. incluso.\jXiifccf Gil\YX Gil\YX Fg\iXZ`e [`j\Œf =`^liX. como trayectorias de tierras. poniendo atención a los detalles sutiles. t Ajustar.contentBody 330 ELECTRÓNICA • MIJAREZ . efectuar cambios en software puede no incrementar 34 Existen paquetes de software comerciales para realizar diagramas esquemáticos y placas de circuito impreso o PCB (Printed Circuit Boards) como Orcad©.`j\Œf . como la verificación de la frecuencia de la señal de ALE y la comprobación del funcionamiento del programa Prueba_minimo. Por otra parte. continuamos con algunos ejemplos típicos de procesamiento y control. Por esta razón. la cual es usada por médicos. los ingenieros que desarrollan un producto o proceso de innovación usan el siguiente procedimiento: 8aljkX . los médicos. PC. en Internet están disponibles versiones de evaluación que pueden usarse para estos propósitos.127 se recomienda usar un software comer- cial.%()0 Este procedimiento es de gran utilidad al diseñar tanto hardware como software de manera integral durante el ciclo de desarrollo de un dispositivo electrónico. Por ejemplo. ingenieros. 5 El popular microcontrolador los costos de las partes del módulo, pero sí el tiempo invertido en depurar el programa; para esto, hacemos uso de si- muladores de software aplicando esta estrategia en forma metódica.35 Ajuste No Editar, Especificación Diseño de Pruebas ensamblar/ ¿Bien? de software software preliminares compilar Sí Integración Concepto y Producto verificación Sí Especificación Diseño de Creación Pruebas ¿Bien? de hardware hardware de prototipo preliminares No Ajuste =`^liX,%(*' <jkiXk\^`X`eZi\d\ekXc`jkX[liXek\\cZ`Zcf[\[\jXiifccf[\le[`jgfj`k`mf\c\Zkie`Zf% De acuerdo con la figura 5.130, la depuración de errores usando la estrategia incrementalista nos regresa a la eta- pa de diseño; sin embargo, dependiendo de la severidad del error, la corrección puede forzar al diseñador a regresar hasta la etapa de concepto. Por otro lado, la etapa más dif ícil del ciclo de desarrollo es la integración y verificación de hardware y software, donde algunos de los problemas que evadieron las pruebas preliminares pueden surgir durante la ejecución en tiempo real del dispositivo. Por último, la etapa de integración y verificación conduce a la aceptación del diseño como producto.36 Ejemplos sencillos de procesamiento y control En esta sección realizamos ejemplos sencillos, pero típicos en aplicaciones basadas en el microcontrolador 8051. Asi- mismo, describimos el funcionamiento de las operaciones aritméticas, hacemos uso de directivas, símbolos y llamadas a subrutinas y, por último, llevamos a cabo operaciones simples de control y transferencia de datos. Suma, resta, ajuste a decimal, multiplicación y división El microcontrolador 8051 puede realizar las cuatro operaciones aritméticas (suma, resta, multiplicación y división) con registros de 8 bits. No obstante, es importante subrayar que la CPU del 8051 no entiende si los datos son binarios, binarios sin signo, BCD, ASCII, etcétera. En este caso, el programador es el único que lo sabe, de acuerdo con su apli- cación. El mecanismo para manejar diferentes formatos de datos los proporcionan los bits del registro de banderas, PSW. 35 Cuando se construye un sistema basado en un microcontrolador por primera vez, siempre recomiendo a mis alumnos que sean cuidadosos con el alambrado y la distribución de los componentes. Es perfectamente válido realizar el procedimiento de prueba y error; sin embargo, como en el futbol, la diferencia entre un goleador bueno y uno talentoso es la certeza. 36 Las etapas posteriores a la aceptación del diseño no se muestran en la figura 5.127, ya que van más allá de las intenciones de este libro, pero in- cluyen procesos de manufactura, pruebas, distribución y comercialización. grupo editorial patria® 331 5 El popular microcontrolador :P 8: =' IJ( IJ) 'M $ G =`^liX,%(*( De esta manera, iniciamos con la descripción genérica de las instrucciones de la suma y la resta, indicando las banderas que se ven afectadas. ADD A, <byte> ; A  A <byte> ADDC A, <byte> ; A  A <byte y CY> Banderas efectuadas : CY AC OV SUBB A, <byte> ; A  A - <byte y CY> No está de más recordar las reglas de la suma y resta binaria que vimos en el capítulo 4 (véase figura 132). I\^cXjJldX I\^cXj[\cXI\jkX '"'4' 'Æ'4' ("' 4( (Æ( 4' '"( 4( (Æ'4( ("( 4('f 'Æ(4("gi„jkXdf ("( 4'"(Xcc\mXiXZXii\f =`^liX,%(*) Bien, ahora sí estamos listos. Vamos a suponer que requerimos saber el estado de las banderas C, AC y P después de sumar 38H y 2FH en las siguientes instrucciones. MOV A,#38H ; ADD A,#2FH ; A  67H Para conocer la solución, resolveremos la operación de manera manual. 38 00111000 2F 00101111 67 01100111 En este caso, la bandera de CY  0, porque no hay un acarreo en el bit D7; la bandera AC  1, debido a que hay un acarreo del bit D3 al bit D4; por último, la bandera P  1, porque el acumulador tiene un número impar de números 1, esto es tiene 5. En el ejemplo anterior, si la suma a realizar ahora es 88H y 93H, ¿cuál es el estado de CY, AC y P? MOV A,#88H ; ADD A,#93H ; A  1BH Otra vez, realizando la operación de manera manual. 88 10001000 93 10010011 1B 00011011 332 ELECTRÓNICA • MIJAREZ 5 El popular microcontrolador Ahora, la bandera de CY  1, porque hay un acarreo en el bit D7; la bandera AC  0, debido a que no hay un acarreo del bit D3 al bit D4; por último, la bandera P  0, porque el acumulador tiene un número par de números 1, esto es tiene 4. Las operaciones tanto de suma como de resta también pueden realizarse con representaciones de números con signo. Si el resultado se encuentra fuera del rango para números con signo de 8 bits, esto es, fuera del rango –12810 a 12710, entonces la bandera de sobreflujo, OV, en el registro PSW se establecerá en 1. Por ejemplo, si el acumulador y el registro R1 tienen los números con signo, 61H y 30H, respectivamente, y efectuamos la suma de estos registros mediante el siguiente programa: MOV A,#60H MOV R1,#30H ADD A,R1 ; A  90H ¿Cuál es el valor del acumulador y del registro PSW después de ejecutar este programa? El valor del acumulador es A  90H y del PSW  04H. Recordemos que estamos asumiendo que los valores de A y R1 son números de 8 bits con signo; la CPU del microcontrolador solo entiende 1 y 0. Por tanto, para entender los valores de A y PSW vamos a convertir a decimal sus representaciones en hexadecimal. 60H l 9610 y 30H l 4810, por tanto 96 48  14410 En este caso, el número 14410 se encuentra fuera del rango permitido para números con signo, es decir 14410 es mayor que 12710. Por tanto, la bandera de sobreflujo, OV, se establece en 1. Ahora, vamos a pasar a la resta. En el siguiente ejemplo realizaremos una secuencia de instrucciones en las cuales restaremos el contenido del registro R5 del contenido del registro R6 y el resultado lo colocaremos en el registro R0. MOV A,R6 CLR C SUBB A,R5 MOV R0,A Para las operaciones de resta, el bit de acarreo, CY, opera como el bit de préstamo. Por tanto, si no se conoce el estado del bit CY, este debe ponerse a cero antes de ejecutar la instrucción SUBB. Esta es la razón por la que debemos usar la instrucción CLR C en la secuencia de instrucciones anterior. Si R5  05H y R6  F5H, el resultado será R0  F0H, lo cual es fácil de verificar llevando a cabo la operación en forma manual. F5 11110101 - 05 00000101 F0 11110000 Sin embargo, si el valor de R5  F5H y el de R6  F3H, el resultado será R0  FEH y el estado de las banderas de CY  1, AC  1 y P  0. ¿Por qué? F3 11110011 -F5 11110101 FE 11111110 En este ejemplo hacemos uso de la estrategia de préstamo, usando la bandera de acarreo, CY, esto es 0 – 1  1 préstamo. CY  1 porque hay un acarreo del bit D7, AC  1 porque hay un acarreo del bit D3 al bit D4 y P  1, porque existe un número impar de 1 en el acumulador, esto es tiene 7. grupo editorial patria® 333 5 El popular microcontrolador Aunque el programa anterior es muy sencillo, podemos ensamblarlo con el Keil μVision© y simularlo con el TS Controls©, para verificar el estado del registro PSW y observar las banderas que se afectan. Para esto, cargamos los archivos LST y HEX en el simulador, después asignamos los datos del problema a los registros R5 y R6, dando doble clic en el registro en cuestión de la ventana de registros, por ejemplo a R5, de donde emergerá una pantalla que nos permite proporcionar un nuevo valor de dicho registro (véase figura 5.133). =`^liX,%(** Así, introducimos R6  F3H y R5  F3H, y observamos que el estado del registro PSW  00H. Entonces, ejecuta- mos paso a paso el programa, y observamos que después de ejecutar la instrucción de resta el registro PSW modifica sus banderas, ahora PSW  C1H, y al ejecutar la última instrucción apreciamos que R0  FEH, corroborando nuestro análisis anterior (véase figura 5.134). =`^liX,%(*+ El microcontrolador permite realizar sumas en decimal o en formato BCD (Digital Codificado en Binario). Para ello, se dispone de una instrucción denominada DA (Decimal Adjust), la cual se utiliza después de una suma en BCD. Muchas veces surge cierta confusión con respecto a esta instrucción. Sin embargo, esta instrucción no convierte un número hexadecimal a formato BCD, sino que ajusta un número BCD para que el resultado continúe en formato BCD. El resultado binario (8 bits) en el acumulador de una suma previa de dos variables, cada una empaquetada como un par de dígitos BCD, es ajustado para formar dos dígitos BCD de 4 bits cada uno. La instrucción DA lleva a cabo este ajuste tomando las siguientes consideraciones: 334 ELECTRÓNICA • MIJAREZ 5 El popular microcontrolador a) Si el contenido de los bits 0-3 del acumulador es mayor que nueve (XXXX1010–XXXX1111). b) Si la bandera AC se ha establecido en 1. Si cualquiera de estas dos consideraciones ocurre, la instrucción DA añade el número 6 al valor del acumulador, produciendo el resultado BCD correcto. Para aclarar cómo realiza este sortilegio la instrucción DA, vamos a realizar dos sumas con las dos consideraciones anteriores. Así, primero sumamos dos números en formato BCD, 56 y 27, y esperamos que el resultado sea otro número BCD, en este caso el número 83; sin embargo, el resultado que obtene- mos es 7D, el cual no es un valor BCD. En el segundo caso, sumamos los números en formato BCD 59 y 27, y es- peramos que el resultado sea 86; pero, obtenemos como resultado el número 80. Si a estas dos sumas le añadimos el número 6, que es lo que hace la instrucción DA, tendremos los resultados correctos. 56 ------- 0101 0110 59 ------- 0101 1001 27 ------- 0010 0111 27 ------- 0010 0111 83 0111 1101 (7D) 86 1000 0000 (80) 0000 0110 0000 0110 1000 0011 (83) 1000 0110 (86) En el primer caso, el nibble bajo del acumulador tiene un número mayor de nueve, mientras que en el segundo caso existe un acarreo del bit D3 al D4, activando la bandera de AC. La bandera CY se deja en 1, si originalmente era 1 o si la suma de 6 produce un acarreo del bit D7, indicando que la suma de dos variables BCD es mayor o igual a 100. Una vez que entendimos cómo opera la instrucción DA, ahora vamos a realizar la suma de dos constantes en formato BCD con dos registros. Para esto, se requiere sumar la constante 1234 al contenido de los registros R2 y R3, también en formato BCD, y el resultado almacenarlo nuevamente en R2 y R3, esto es: 12 34 R2 R3 R2 R3 Entonces, el programa sería el siguiente: SUMA_BCD : MOV A, R3 ADD A, # 34H DA A MOV R3, A MOV A, R2 ADDC A, #12H DA A MOV R2, A END En este ejemplo usamos la instrucción ADDC en lugar de ADD, para considerar un posible acarreo de la suma del byte bajo, entre la constante 34 y el registro R3. Ahora, de la suma y la resta vamos a pasar a la multiplicación y la división con el 8051. De esta manera, iniciamos con la multiplicación, MUL AB. Esta operación multiplica los 8 bits del acumulador y los del registro B. Debido a que la multiplicación es entre registros de 8 bits, el resultado esperado es un valor de 16 bits. El registro B almacena el byte de orden alto, mientras que el acumulador almacena el byte de orden bajo. Si el producto es mayor a 25510 (FFH), la bandera de sobreflujo, OV, se establecerá en 1, de lo contrario se limpiará y será 0. grupo editorial patria® 335 5 El popular microcontrolador En el siguiente ejemplo se solicita realizar la multiplicación entre el registro acumulador y el registro B, los cuales tienen los números 50H y 31H, respectivamente. Antes de realizar la multiplicación, tenemos que el PSW  00H. El programa para realizar esta multiplicación sería el siguiente: MULTI : MOV A, #50H MOV B,#31H MUL AB END ¿Cuál es el valor de los registros A, B y PSW después de ejecutar la multiplicación? Para entender cómo funciona la multiplicación en el 8051, vamos a realizar la multiplicación pero con números decimales en lugar de usar su repre- sentación hexadecimal; acto seguido, el producto de la multiplicación en decimal lo convertiremos a hexadecimal. 50H l 8010 y 31H l 4910, por tanto 80 r 49  392010 Ahora 392010 l 0F50H, por tanto, el registro B  0FH y A  50H. De acuerdo con el resultado anterior, el registro B y el acumulador almacenan los bytes de orden alto y bajo, res- pectivamente. Pero, el registro PSW  04H, lo que indica que la bandera OV se estableció en 1 lógico, porque el resul- tado es mayor al número 25510 (FFH). Si el acumulador es el multiplicando A  50H, entonces ¿cuál es el máximo valor del registro B, que hace las veces de multiplicador, para que el resultado en el programa anterior sea menor de 25510 y la bandera OV sea un 0 lógico? La respuesta es simplemente dividir 255/80  3.18. En consecuencia, si el registro B  3, el resultado será 24010 y OV  0. En cambio, si el registro B  4, el resultado será 32010 y OV  1. Luego, realizamos la división entre el acumulador y el registro B, DIV AB. Esta instrucción divide el entero sin signo del acumulador entre el entero sin signo del registro B (A/B). De esta manera, el acumulador recibe la parte entera del cociente y el registro B el residuo. Las banderas de acarreo, CY, y sobreflujo, OV, se establecen en 0 lógico. Ahora, supongamos que el acumulador y el registro B tienen los valores de 60H y 21H, respectivamente. Realice esta división y observe el estado de los registros A, B y PSW. DIVI : MOV A,#60H MOV B,#21H DIV AB END De igual manera que en la multiplicación, vamos a realizar la división con números decimales en lugar de su re- presentación hexadecimal. En tanto, al cociente y residuo que resulten de la división en decimal la convertiremos a hexadecimal. 60H l 9610 y 21H l 3310, por tanto 96/33 l cociente  0210 y el residuo  3010 Ahora 0210 l 02H, y 3010 l 1EH, por tanto, registro A  02H y B  1EH. Debido a que la división es entre registros de 8 bits, el resultado esperado es un valor de 8 bits en el cociente (acu- mulador) y 8 bits en el residuo (registro B). En este caso, el valor del registro PSW  01H, debido a que la bandera P se estableció en 1 lógico, indicando que hay un número impar de 1 en el acumulador. Como mencionamos antes, después de la instrucción de división, DIV AB, las banderas de CY y OV se limpian, es decir, se ponen en 0 lógico. La excepción a esta regla es la bandera de OV, la cual se establece en 1 cuando el divisor, registro B, es 00H. En este caso, el valor tanto del acumulador como del registro B será indefinido. La instrucción DIV es útil para manejar números en BCD. En este caso, supongamos que el acumulador tiene un número binario, el cual sabemos que es menor a 10010. Entonces, se requiere convertir este número a formato BCD y 336 ELECTRÓNICA • MIJAREZ 5 El popular microcontrolador almacenar las unidades, decenas y el número BCD en las direcciones 20H, 21H y 25H de la RAM interna, respectiva- mente. Por ejemplo, si el acumulador tiene el número 4FH, queremos que en la dirección 20H de la RAM interna se almacene el número 09H, en la dirección 21H se tenga el 07H y en la dirección 25H esté almacenado el número BCD 79H. Esto lo podemos realizar de la siguiente manera: NUM_BCD: MOV A,#4FH MOV B,#0AH DIV AB MOV 20H,A ;UNIDADES MOV 21H,B ;DECENAS SWAP A ADD A,B MOV 25H,A ;NÚMERO BCD END Si ensamblamos y simulamos este programa, podemos visualizar que en las direcciones solicitadas de la RAM interna del μC se encuentran los datos correctos, como se muestra a continuación en la figura 5.135. =`^liX,%(*, <e\jk\gif^iXdXZXi^Xdfj\cXZldlcX[fiZfe+=?#g\if\cXZldlcX[figf[iˆXk\e\iZlXchl`\ie’d\ifY`eXi`fd\efi[\(''('% Uso de directivas, símbolos y llamadas a subrutinas En esta sección hacemos uso de tres de las directivas más comunes y aclaramos la magia detrás de las llamadas a su- brutinas. La mejor forma de explicar algo es con un ejemplo; para ello, usamos el programa anterior, el cual convierte un número binario menor de 10010 a formato BCD. ORG 20H ; INICIO ARBITRARIO DE CÓDIGO UNIDADES SET 20H DECENAS SET 21H DATO_BCD SET 25H NUM_BCD: MOV A,#4FH MOV B,#0AH DIV AB grupo editorial patria® 337 5 El popular microcontrolador MOV UNIDADES,A MOV DECENAS,B CALL BCD ADD A,B MOV DATO_BCD,A JMP FIN BCD: MOV A,UNIDADES MOV B,DECENAS SWAP A RET FIN: END Como se puede observar, en este ejemplo usamos las directivas ORG, SET y END. Aquí, la directiva ORG nos indica la dirección donde iniciará el código del programa, en este caso se especificó a partir de la localidad 0020H de la memoria de programa; la directiva SET nos ayuda a reemplazar un número por un símbolo, en este programa los números son las localidades de la RAM interna; y la directiva END le indica al programa ensamblador el fin del códi- go del programa, esta directiva es obligatoria para todos los μC MCS-51. Para visualizar la operación correcta de este programa lo ensamblamos y posteriormente lo simulamos, como se muestra en la figura 5.136. =`^liX,%(*- Como podemos ver, la instrucción CALL se encuentra en la localidad 002BH y la etiqueta BCD de la subrutina se encuentra en la localidad 0033H. Para entender cómo sabe el μC a qué localidad brincar y cómo regresar a la siguien- te instrucción después de la llamada a subrutina, CALL, nos haremos un par de preguntas relacionadas con el estado de algunos registros después de que se ejecuta la llamada a la subrutina BCD. t ¿Cuál es el valor del SP y del PC? t ¿Cómo se explica el valor de las localidades 08H, 09H de la RAM interna? Para responder a estas preguntas es útil observar el archivo HEX desensamblado, el cual muestra las localidades de memoria tipo ROM donde se grabará el código de operación, el código de operación y la secuencia de instruccio- 338 ELECTRÓNICA • MIJAREZ SP  SP 1  08H. Cuando se ejecuta la instrucción CALL. SP  SP – 1  07H. ¿cómo sabe el μC cuál es la instrucción a la que debe regresar? La respuesta es la instrucción RET. esto es 00H. El diseño simplificado se ilustra en la figura 5. en lugar de la memoria RAM externa de 1 Kbytes. además. es un sistema basado en el microcontrolador 87C51. es decir 2DH. la cual corresponde a la dirección de la etiqueta donde se desea brincar para ejecutar la subrutina. al encender el sistema o después de un reset se encuentra en la dirección 07H de la RAM interna. mediante el uso de los puertos de E/S. vamos a resolver estos problemas explotando las capacidades de hardware y software del microcontrolador. continúa con la ejecución del programa principal. mapeando los periféricos como si fueran localidades de memoria. Estos son los pasos que realiza el μC para brincar a la dirección de la etiqueta coligada a la instrucción CALL. Pero. SP  SP 1  09H. Ahora. se decrementa el SP dos veces y se extraen (POP) del stack los bytes de orden alto y bajo y se almacenan en el PC. con el primer incremento.103. luego. el SP se incrementa (PUSH) dos veces. almacena en PCL el contenido del SP que es 2DH y lleva a cabo el segundo decremento.137.%(*. se debía escribir el número nueve en el display de 7 segmentos. pero si el valor leído era cero. una vez concluida la subrutina. en la instrucción siguiente a la instrucción que llamó a la subrutina BCD. En consecuencia.:. la CPU del μC carga el contenido del PC con la dirección 0033H. que se encuentra siempre al final de las subrutinas. almacena en el stack el byte de orden alto del PC. la dirección 08H de la RAM interna contendrá el número 2DH y la direc- ción 09H de la RAM interna tendrá el número 00H.0 c f b d P1 ·· e · f e g c RST P0. 5 El popular microcontrolador nes. se pedía escribir el número 55H en la última locali- dad de la memoria RAM. Al ejecutarse la instrucción RET.3 Sin conexión ALE Arreglo de interruptores =`^liX. primero.7 g dp /OE dp d 8751 220 7 LED de 7 segmentos P0. usamos la última localidad de la memoria RAM interna (128 bytes) del μC. Una vez que el PC es cargado con la nueva dirección. almacena en el stack el byte de bajo orden del PC.0 P3 ·· NC _____ · PSEN P0. 74LS244 +5 V +5 V ___ a a b EA P0. SP  SP – 1 08H. Por último. el PC se incrementa dos veces. por tanto. Después de la ins- trucción CALL. almacena en el PHC el contenido del SP que es 00H y realiza el pri- mer decremento. el SP  09H. tanto para leer los datos de los interruptores como para escribir los datos al display. Esto lo lograremos usando los puertos P1 y P3 del μC 87C51.`j\Œf[\lej`jk\dXYXjX[f\eleμ:/. con el segundo incremento. con lo cual apunta a la dirección de la si- guiente instrucción. el cual tiene mapeados a memoria tres periféricos: una memoria RAM de 1 Kbytes. ilustrado en la figura 5. Con este sistema se solicitó leer el arreglo de interruptores y si el valor leído era diferente de cero.B. SP. como se puede apreciar en la ventana de RAM interna del simu- lador. . Por su parte.(ZfeleX`ek\i]XqYXjX[X\ecfjgl\ikfj[\<&JG(pG*gXiXleXii\^cf [\`ek\iilgkfi\jple[`jgcXp[\. Operaciones de control y transferencia de datos En la sección Acceso a periféricos (puertos de E/S) mapeados a memoria realizamos algunos problemas sencillos de control. El primer problema de aquella sección.j\^d\ekfj% grupo editorial patria® 339 . También es importante recordar que el puntero de pila o stack pointer. En esta sección simplificamos el diseño de hardware. un display de 7 segmentos a través de un latch 74LS573 y un arreglo de cuatro interruptores tipo DIP mediante un buffer 74LS244. que en este ejemplo es la dirección 002DH y corresponde a la instrucción ADD A. reduciendo el número de componentes. dos flip flops que controlan dos LED y un flip flop que activa/desactiva un solenoide (activo ALTO). De esta manera. De esta manera. una memoria EPROM de 1 Kbytes. 405 decimal. @E@:@F1 FIC G*#'==? 2gi\gXiXG*Zfdf\ekiX[X DFM 8#G* 2c\\\cZfek\e`[f[\cfj`ek\iilgkfi\j 8EC 8#'=? 2\edXjZXiXe`YYc\YXaf AQ <J:VI8D 29i`eZXXcX\k`hl\kXj`\c8::4''? DFM 8#'<-? 2ZXi^X[Xkf\e8hl\Zfii\jgfe[\Xce’d\if0\e\c[`jgcXp DFM G(#8 2\jZi`Y\[Xkf\e\c[`jgcXp[\.137.%(*.=?#. La figura 5.0 P2. encender/apagar los LED y activar/desactivar el solenoide mediante un driver.2 =`^liX. lo cual proporciona un pulso de reset al sistema.%(*0 . un teclado leído a través de un buffer de tercer estado 74HC244. si se activa un dígito erróneo. Sin embargo. también se observa en el software. si este es correcto.0 P1 ··· P0. y los puertos P1 y P2 para leer los datos del teclado. el sistema se conformó por un μC 80C31BH.3 RST 8751 +5 V +5 V +12 V ALE Driver _____ PSEN ___ WR ___ RD P2. para controlar de manera automática el cerrojo de una puerta mediante un código de acceso.1 P2. el sistema debe encender un LED verde y alimentar un solenoide para abrir la puerta.%(*/ Gif^iXdXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX.`j\Œf[\_Xi[nXi\[\lej`jk\dX[\XZZ\jfXleXgl\ikX\c\Zkie`ZXYXjX[f\ele:/. 5 El popular microcontrolador La simplificación del hardware de la figura 5.106.139 se puede apreciar que la terminal EA se conecta a 5 V..(% 340 ELECTRÓNICA • MIJAREZ .? 2\jZi`Y\[Xkfjfc`Z`kX[f\ecXI8D`ek\ieX ADG @E@:@F <E. indicando que el microcontrolador ejecutará su programa en la memoria EPROM interna.. la figura 5.139 muestra el diagrama simplificado de hardware de este sistema. =`^liX. Pero. se pidió que el progra- ma lea el código de acceso de tres dígitos. para simplificar el hardware de este sistema ahora vamos a usar un μC 87C51. el cual contiene internamente una memoria EPROM de 8 Kbytes.% En el segundo problema se solicitó diseñar el hardware y software de un sistema basado en un Μc.138 muestra el listado del programa solicitado. Originalmente. no tenemos ningún dispositivo mapeado a me- +5 V ___ EA P0. se debe encender el LED rojo y el sis- tema entra en un lazo (loop) infinito hasta que se abre la puerta. En la figura 5. como se ilustró en la figura 5.j\^d\ekfj ADG @E@:@F <J:VI8D1 DFM . en esta caso. =`^liX.%(*. La figura 5. por simplicidad. comparándolo con el diseño de la figura 5. en este caso.140. el cual corresponde al valor 1FH proveniente de un convertidor análogo-digital (ADC) de 8 bits. usualmente 20 mA. Sin embargo. las primeras dos instrucciones podrían haberse sustituido por la instrucción MOV P2. d) Que el tiempo que se activa el solenoide mediante el establecimiento en 1 lógico. La simplificación de hardware en el diseño de la fi- gura 5. también podríamos haber usado instrucciones de byte con sus respectivas más- caras. el ADC se encuentra conectado al puerto P1 del microcontrolador y la salida de control del ventilador a la terminal P3. b) Que cada vez que el microcontrolador lee un dato por el puerto P1 es porque se presionó una tecla. Sin embargo. también hemos asumido retardos y funcionamiento de programas. con 0 lógico apaga el ventilador y con 1 lo enciende. Con grupo editorial patria® 341 . En tanto.139 es evidente.106.% En este ejemplo podemos observar que el procesador de Boole provee una gran facilidad para controlar tanto los LED como el solenoide. @E@:@F1 J<K9 G)%' 28gX^XC<. se apaga. como si el microcontrolador estuviera respondiendo a eventos de manera asíncrona.m\i[\ :CI G)%) 2. que proporcionar la corriente necesaria. es suficiente para abrir la puerta. pero podría estar compuesta por transistores BJT. Un cambio adicional en el presente diseño es que los LED se encienden con 0 lógico.#1111 1100B. El programa para realizar la acción de control de temperatura se muestra en la figura 5. razón por la cual no especificamos un mapa de memoria. de uno de los pines del puer- to P2. las señales de control del ADC son atadas a GND (conversión continua). para apagar inicialmente los LED. como si estuviera trabajando por interrupciones. para encender los LED. c) Que la electrónica de potencia (driver) no se muestra. 5 El popular microcontrolador moria.%(+' Gif^iXdXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX. Dar- lington o FETs.142. y si es me- nor.106. En esta sección enfatizamos las capacidades de hardware y software del microcontrolador mediante el uso de los puertos de E/S. Terminamos este apartado con un ejemplo típico de control. debido a que es más fácil controlar la corriente de sumidero sink del μC pro- veniente del voltaje de alimentación.141 ilustra el diseño simplificado de hardware.1.m\i[\ ADG @E@:@F <IIFI1 :CI G)%' 2<eZ`\e[\C<. El programa para realizar la acción de control requerida se muestra en la figura 5. Un sistema basado en el μC 8751 requiere de un programa que encienda un sistema de ventilación cuando el valor de la temperatura es mayor o igual a 25 grados cen- tígrados. asumimos lo siguiente: a) Que los números presionados en el teclado se leen como datos en hexadecimal (00H–09H). Por ejemplo.ifaf C8QF1 ADG C8QF 2\ekiXXlecXqf`e]`e`kf#_XjkXhl\j\gifgfiZ`feXleIJK <E. Aquí. Por sencillez.?#<IIFI 2J`ef\j\c[ˆ^`kf\jg\iX[fYi`eZXX\iifi% J<K9 G)%) 28Zk`mX\cjfc\ef`[\ :CI G)%( 2<eZ`\e[\\cC<.ifaf J<K9 G)%( 28gX^XC<. mediante interrupciones. como en el ejemplo de la figura 5.\jXZk`mX\cjfc\ef`[\gXiXdXek\e\icXgl\ikXZ\iiX[X DFM 8#G( 2C\\Zfek\e`[f[\ck\ZcX[f :AE< 8#'+?#<IIFI 2J`ef\j\c[ˆ^`kf\jg\iX[fYi`eZXX\iifi% DFM 8#G( 2C\\Zfek\e`[f[\ck\ZcX[f :AE< 8#''?#<IIFI 2J`ef\j\c[ˆ^`kf\jg\iX[fYi`eZXX\iifi% DFM 8#G( 2C\\Zfek\e`[f[\ck\ZcX[f :AE< 8#'. sin embargo.H 2JXckXXi\Xc`qXifkiXX[hl`j`Z`e <E. Un par de ejemplos son los μC P89LPC904 de Phillips o el AT89LP3240 de Atmel.%(+( . 5 El popular microcontrolador +5 V ___ EA Alimentación P3. comparadores analógicos.`j\Œf[\_Xi[nXi\[\lej`jk\dX[\Zfekifc[\k\dg\iXkliXYXjX[f\e\c:/.(% @E@:@F1 :CI G*%( 28gX^X\cm\ek`cX[fi FIC G(#'==? 2gi\gXiXG(Zfdf\ekiX[X 8. t Llevar la cuenta de transiciones de señales de entrada. cuenta con modos de operación para ahorro de energía.0 ··· Sensor P1 ADC de temperatura P1. PWM. Los periféricos inter- nos con los que cuenta el 8051 son las interrupciones. adicionalmen- te. etcétera. t Medir con precisión el ancho de ciertos pulsos de entrada. Por ejemplo: t Monitorear eventos externos asíncronos. DAC.37 37 Como ya lo habíamos dicho. la familia del microcontrolador MCS-51 integra todas estas capacidades internamente. =`^liX. t Ahorrar energía. con lo cual se cubren este tipo de re- querimientos en los diseños.H1 DFM 8#G( 2C\\[Xkf JL99 8#(=? 2J`cXk\dg\iXkliXK \jdXpfifd\efi[\cmXcfi :GC : 2J`K8ZZ 3*=?#:P4(#g\if[\Y\j\i`em\ijf DFM G*%(#: 2J`K5\ekfeZ\jZ4(p\eZ`\e[\\c m\ek`cX[fi#[\cfZfekiXi`fj\dXek`\e\XgX^X[f 8ADG 8. t Comunicarse con otros sistemas o con personas.1 Driver ventilador RST 8751 P1.%(+(% esto llegamos a la descripción de los periféricos internos del microcontrolador. Los sistemas basados en microprocesadores requieren de periféricos externos para realizar estas funciones. los contadores/temporizadores y el puerto serie. t Mantener el seguimiento de tiempo transcurrido de un evento en tiempo real.%(+) Gif^iXdX[\Zfekifc[\k\dg\iXkliXZfii\jgfe[`\ek\XcZ`iZl`kf[\cX]`^liX. tales como ADC. Periféricos internos Los sistemas basados en microcontroladores tienen que satisfacer ciertas necesidades comunes que les permitan ma- yor flexibilidad en los diseños. por mencionar 342 ELECTRÓNICA • MIJAREZ .7 /CS /RD _____ PSEN Sin conexión ALE =`^liX. existen otros fabricantes del original μC 8051 de Intel que incluyen más periféricos internos.. grupo editorial patria® 343 . FFFFH . . podremos migrar a cualquier otro microcontrolador con mayores capacidades.. las cuales incluyen sus habilitaciones. No obstante. 5 El popular microcontrolador Particularidades de las interrupciones del 8051 Los conceptos generales de las interrupciones para los sistemas basados en microprocesadores los describimos en la sección “Interfase mediante interrupciones y mediante E/S por programa (polling)”. Cada interrupción es asignada a una localidad fija en la memoria de programa. g) Que la RSI se termina con la instrucción RETI. y carga el PC con la dirección de la siguiente instrucción. es un evento interno o externo que interrumpe a la CPU del μC de manera asíncrona.143. el cual contiene la dirección de la siguiente instrucción.. del apartado Desmitificando al microprocesador. Una interrupción. después de la llamada (CALL) a la subrutina. c) Que el estado de la interrupción actual se almacene temporalmente.(% Cuando se acepta una interrupción. 002 3 H 00 1 B H 00 1 3 H 000B H 0003 H Reset 0000H MEMORIA DE PROGRAMA =`^liX. Ahora. el programa principal in- terrumpirá al μC. . El programa que se asocia a la in- terrupción se llama rutina de servicio de interrupción (RSI). sus prioridades y una secuen- cia de sondeo o “polling”. b) Que se almacene el contenido del PC en el stack. en un microcontrolador.%(+* @ek\iilgZ`fe\j[\cμ:/'. La instrucción para terminar una RSI es RETI. f) Que la RSI se ejecute y realice una acción en respuesta a la interrupción. . como se muestra en la figura 5. esto es. esta causa que la CPU salte a su localidad asignada. en esta sección describimos las particularidades de las interrupciones del 8051. el μC carga el PC con el valor de esa dirección. e) Que el PC se cargue con la dirección del vector de interrupción de la RSI. para informarle que un dispositivo necesita de sus servicios. d) Que otras interrupciones se bloqueen al nivel de la interrupción. los cuales se aplican perfectamente para los microcontroladores. que termina las subrutinas. si manejamos los periféricos básicos del 8051 de Intel. Lo anterior provoca: a) Que la instrucción que se esté ejecutando se termine. algunos. El microcontrolador 8051 cuenta con cinco interrupcio- nes enmascarables: dos externas y tres internas. la cual es conceptualmente muy similar a la instrucción RET. donde comienza a ejecutar la RSI. Cuando ocurre una interrupción y esta interrupción se encuentra habilitada. El reset se incluye debido a que esta señal interrumpe al programa principal y el microcontrolador carga el PC con la dirección 0000H. El valor cargado en el PC se conoce como vector de interrupción. la primera instrucción del programa principal es un salto por encima de esta área de memoria. correspondientes al puerto serie. estas banderas deben probarse en la RSI. la estructura sugerida para un programa. vamos a describir los dos tipos de in- terrupciones: internas y externas. El 8051 cuenta con un esquema de prioridades de dos niveles y una secuencia de sondeo “polling”. los vectores y los pines del μC asociados a estas. o si una interrupción ocurre cuando se le está dando servicio a otra interrupción. #BOEFSBRVFHFOFSB Dirección del vector Pin Interrupción la interrupción asociado asociado Reset RST 0000H (9) Externa 0 IE0 0003H P3. Por tanto. a excepción de las banderas TI y RI. por lo general. TCON. estos son el registro de control de temporizadores/conta- dores e interrupciones externas. mientras que las banderas del registro SCON se limpian por software. A partir de aquí.%(++ Las banderas del registro TCON se limpian por hardware de forma automática. Lo anterior lo detallaremos cuando describamos al puerto serie. Las prioridades de las interrupciones son programables y la secuencia de sondeo de las interrupcio- nes es fija. K:FE K=( KI( K=' KI' @<( @K( @<' @K' J:FE JD' JD( JD) I<E K9/ I9/ K@ I@ =`^liX. para determinar la fuente de interrupción y después borrar por software la bandera que causó la interrupción. lo cual le permite regresar al programa prin- cipal donde continúa su ejecución con la siguiente instrucción después de la interrupción. las dos interrupciones externas permiten a los periféricos trabajar con la CPU de manera independiente.(% Todas las interrupciones se deshabilitan después de aplicar un reset al sistema. a menudo el salto es JMP 0030. para el caso que dos o más interrupciones ocurran al mismo tiempo.7 se muestran estas interrupciones.2 (12) Contador/temporizador 0 TF0 000BH – Externa 1 IE1 0013H P3. Cada interrupción genera una bandera y esta se asocia con un vector de interrupción preestablecido. sus localidades se encuentran disponibles como localidades de propósito general en la memoria para código.144).3 (13) Contador/temporizador 1 TF1 001BH – Puerto serial TI RI 0023H – KXYcX. 9Xe[\iXj#m\Zkfi\jpg`e\jXjfZ`X[fjXcXj`ek\iilgZ`fe\j[\c/'. Las banderas que generan las interrupciones se encuentran en dos registros de la RAM interna situada en el área para los SFR. 5 El popular microcontrolador La instrucción RETI obtiene el valor del PC almacenado en el stack. Por lo general.%. además del vector de interrup- ción. ocurre que el μC brinca a una dirección específica dependiendo de la fuente de interrupción. Si las interrupciones no van a usarse. también se asocian con un pin del μC. El hardware del microcontrolador borra automáticamente la bandera que causó la interrup- ción. analizaremos cada bit de estos registros cuando describamos los periféricos internos a los que están asociadas estas banderas. una para la transmisión (TI) y otra para la recepción (RI). es la siguiente: 344 ELECTRÓNICA • MIJAREZ . Sin embargo. independientemente que use interrupciones. en el caso de las interrupciones externas (INT0 e INT1) y el reset. En la tabla 5. Por consiguiente. El puerto serie tiene solo una interrupción que se relaciona a dos banderas. Antes de detallar cómo asignamos prioridades a las interrupciones. incluyendo las banderas. Por otro lado. y el registro de control del puerto serie. Las tres interrupciones internas son generadas por cada uno de sus periféricos internos: dos temporizadores/ contadores y un puerto serial. SCON (véase figura 5. y se habilitan de manera individual por medio del software. No obstante. Siguiendo el ejemplo de la interrupción externa 0. esta puede residir en ese espacio de 8 bytes y regresar de la RSI al programa principal. Inicio de la interrupción externa 0 LJMP RSI_INT0 . Las localidades de las rutinas de interrupción se espacian 8 bytes. inicio de la interrupción externa a 0 RSI_INTO: . indicando que el programa principal inicia en esa dirección. la dirección a donde brinca es la 0030H. entonces se puede usar la instrucción JMP para saltar las localidades de las interrupciones subsiguientes. a su vez entre la localidad 000BH y la 0013H. inicio del programa principal : En este ejemplo.Inicio después de un reset JMP PRINCIPAL : . si se utilizan más interrupciones. y así sucesivamente. Por tanto. se tienen 8 bytes entre la localidad 0003H y la 000BH. En cambio.Punto de inicio del programa principal PRINCIPAL: . donde co- mienzan las RSI.Inicio después de un reset JMP PRINCIPAL ORG 0003H . si la RSI es mayor de los ocho bytes asignados. Inicio de código encima de los vectores de las RSI PRINCIPAL . Inicio del programa principal : : RSI_INT0: : . Si la RSI es lo suficientemente corta. RSI de la interrupción externa 0 : : . 5 El popular microcontrolador ORG 0000H . Regresa al programa principal PRINCIPAL . debido a que se utilizó solo la interrupción externa 0. por ejemplo: ORG 0000H . como sucede con frecuencia en aplicaciones de control. podemos observar que el programa principal inicia inmediatamente después de la instrucción RETI. se tiene que tener cuidado que la RSI de una interrupción no se sobrepase a las localidades de la siguiente RSI. en este ejemplo. es decir.inicio del programa principal : : END La primera instrucción brinca por encima de las localidades asignadas a los vectores de interrupción. este tipo de RSI generalmente inicia con un salto a otra área de la memoria para código. donde la RSI pueda realizarse sin la restricción de los ocho bytes. Inicio después de reset JMP PRINCIPAL ORG 0003H . podemos usar la siguiente estructura: ORG 0000H . en caso de que otras interrupciones estén en uso.Localidades para las RSI : : ORG 0030H . inicia RSI de la INTO : 8 bytes : RETI . Salto a la interrupción externa 0 ORG 0030H . : grupo editorial patria® 345 . Regreso al programa principal RETI . es necesario habilitar dos bits: el bit de habilitación individual y el bit de ha- bilitación global. también es posible usar solo una instrucción para habilitar la interrupción externa 0. EA. IE. al ocurrir una interrupción el programa principal se interrumpe temporalmente.Habilita interrupción externa 0 SETB EA . podemos usar las siguientes dos instrucciones: SETB EX0 .7 EA AFH Habilitación/deshabilitación global IE. La instrucción RETI al final de la RSI deja inactiva la rutina y regresa al programa principal. #JU Símbolo Dirección de bit Descripción (1 = habilitación. 5 El popular microcontrolador Para enfatizar el uso de las interrupciones y que todo el trabajo se lleve a cabo en la RSI.3 ET1 ABH Habilita interrupción del temporizador 1 IE. Por consiguiente. MOV IE.0 EX0 A8H Habilita interrupción externa 0 KXYcX. El registro IE cuenta con un bit de habilitación/deshabilitación global.Habilita interrupción externa 0 Ambas formas de habilitar la interrupción externa 0 producen el mismo efecto si provienen de una reinicializa- ción del sistema.5 ET2 ADH Habilita interrupción del temporizador 2 (solo en el 8052) IE. al inicio de un programa. el cual es direccionable por bit y se localiza en la dirección A8H. la primera opción no afecta ninguno de los otros cinco bits del registro IE.6 -. Habilitando y deshabilitando las interrupciones Cada una de las fuentes de interrupción se habilita o deshabilita de manera individual mediante el registro de función especial habilitador de interrupciones. si se requiere habilitar una interrupción cuando se está ejecutando un programa “run time”.1 ET0 A9H Habilita interrupción del temporizador 0 IE. la segunda opción borraría estos cinco bits.%(+.2 EX1 AAH Habilita interrupción externa 1 IE. 0 = deshabilitación) IE.Activa el bit de habilitación global Sin embargo.10000001B .%/ I\jld\e[\jZi`gk`mf[\ci\^`jkif_XY`c`kX[fi[\`ek\iilgZ`fe\j#@<% Para habilitar cualquier interrupción. y usar instrucciones de establecer en 1 un bit (SETB) o borrar bit (CLR) para habilitar/desabilitar una interrupción en “run time”. Pero. adicional a los bits individuales para cada fuente de interrupción como se muestra en la tabla 5.8. para habilitar la interrupción externa 0. @< <8 Æ <K) <J <K( <O( <K' <O' =`^liX. el programa principal podría constar solo de una instrucción: ESPERA: SJMP ESPERA Como sabemos. mientras se ejecuta la RSI. después de las instruccio- nes de inicialización. Por ejemplo.4 ES ACH Habilita interrupción del puerto serial IE. 346 ELECTRÓNICA • MIJAREZ . AEH Indefinido IE. se recomienda usar una trans- ferencia de byte para inicializar el registro IE. lo cual podría tener un efecto no deseado en el programa. en cambio. Lo anterior permite que una RSI pueda ser interrumpida por otra interrupción. se hace uso de una secuencia preestable- cida de sondeo “polling”. #JU Símbolo Dirección de bit Descripción (1 = prioridad alta. Temporizador/contador 0 3.3 PT1 BBH Prioridad de interrupción del temporizador 1 IP. AEH Indefinido IP.%0 I\jld\e[\jZi`gk`mf[\ci\^`jkif[\gi`fi`[X[[\`ek\iilgZ`fe\j#@G% Después de reinicializar el μC. si se habilitan tanto los bits individuales del temporizador/contador 0 y del grupo editorial patria® 347 . Temporizador/contador 2 (solo en el 8052) La figura 5.7 -. 0 = prioridad baja) IP. los niveles de prioridad relacio- nados con el registro IP y la secuencia de sondeo que acabamos de describir. 5 El popular microcontrolador Prioridades de las interrupciones Desde el punto de vista conceptual.6 -. las prioridades de las interrupciones se explicaron en la sección Interface median- te interrupciones y mediante E/S por programa (polling). De- bido a que se tienen solo dos niveles de prioridad.147 ilustra la organización general de las interrupciones. Por ejemplo. Si de forma simultánea ocurren dos interrupciones. El estado de todas las fuentes de interrupción se encuentra disponible a través de los bits de los registros de fun- ciones especiales IE e IP. si esta nueva interrupción es de una prioridad más alta que la interrupción que se está atendiendo. En el 8051.2 PX1 BAH Prioridad de interrupción externa 1 IP.5 PT2 BDH Prioridad de interrupción del temporizador 2 (8052) IP. el uso de las prioridades es simple. Si una RSI de baja prioridad se encuentra ejecutándose cuando ocurre una interrupción de alta prioridad. Puerto serial 6. @G Æ Æ GK) GJ GK( GO( GK' GO' =`^liX. Secuencia de sondeo (polling) de las interrupciones Cuando ocurren dos interrupciones de la misma prioridad simultáneamente. Temporizador/contador 1 5.%(+- La tabla 5. cada fuente de interrupción tiene dos niveles de prioridad programables de manera individual por medio del registro de función especial de prioridad de interrupciones.4 PS BCH Prioridad de interrupción del puerto serial IP.1 PT0 B9H Prioridad de interrupción del temporizador 0 IP.9 muestra el resumen de los bits que conforman el registro IP. AFH Indefinido IP. el mecanismo de habilitación individual y global correspondientes al registro IE. La secuencia de prio- ridad de sondeo de las interrupciones es: 1. la cual incluye las cinco fuentes de interrup- ción. primero se atenderá la interrupción de más alta prioridad.0 PX0 B8H Prioridad de interrupción externa 0 KXYcX. que determina a cuál de las interrupciones se le dará servicio primero. Una RSI con alta prioridad no puede ser interrumpida por una de baja prioridad. Externa 0 2. se borran los bits del registro IP. para que todas las interrupciones tengan el nivel de prioridad más bajo de forma predeterminada. del apartado Desmitificando al microprocesador. el cual es direccionable por bit y se ubica en la dirección D8H. la RSI se interrumpe y se atiende la nueva interrupción. Externa 1 4. IP. IP y el registro de control de TCON.2 (pin 12) y P3. en consecuencia. Fi^Xe`qXZ`e^\e\iXc[\cXj`ek\iilgZ`fe\j[\c/'. en caso de generarse las dos interrupciones simultáneamente.%(+0 <jhl\dX[\_XY`c`kXZ`egfi]cXeZfjfe`m\c\j[\cXj`ek\iilgZ`fe\j\ok\ieXj% 348 ELECTRÓNICA • MIJAREZ . ubicados en el registro TCON. Los registros asociados con el manejo de las interrupciones externas son IE. atenderá primero la interrupción del temporizador/contador 0.3 (pin 13). IT0 ____ 1 INT0 IE0 Interrupción 0 Bandera Activación externa INT0 IT0  0/IT0  1 Nivel/Flanco IT1 INT1 IT1  0/IT1  1 Nivel/Flanco ____ 1 INT1 IE0 0 =`^liX.%(+. En este re- gistro se encuentran también los bits IT0 e IT1. correspondientes a las funciones alternas de los puertos P3. que determinan si las interrupciones externas se activarán por niveles o por flancos negativos como lo ilustra la figura 5. Interrupciones externas Las interrupciones externas del 8051 son causadas por la transición de un flanco de bajada (negativo) o de un nivel lógico bajo en las terminales /INT0 e /INT1.%(+/ Las banderas que generan estas interrupciones son los bits IE0 e IE1. como el bit global correspondientes al registro IE y además se asigna una prioridad alta para ambas interrupciones. el μC hará uso de la secuencia de sondeo.149. 5 El popular microcontrolador Registro IE Registro IP Interrupción de alta IT0 prioridad ____ 1 INT0 IE0 0 TF0 Interrupción IT1 de baja ____ 1 prioridad INT1 IE1 0 TF1 Secuencia de sondeo de interrupciones R1 T1 (Solo en el 8052) TF2 EXF2 Habilitadores de interrupción Habilitador global Interrupción individuales de interrupciones aceptada =`^liX.(% temporizador/contador 1. respectivamente. K:FE K=( KI( K=' KI' @<( @K( @<' @K' =`^liX. si la fuente fue activada mediante un nivel lógico bajo. Esto es. cuando la CPU del μC carga en el PC el vector de interrupción que le corresponde y brinca a atender la RSI. el bit IE0 solicitará la interrupción. si IT0  0. los bits IE0 e IE1 se borran automáticamente por hardware.%(. ahora vamos a verificar el funcionamiento de las interrupciones externas activadas. En este caso. ____ ____ INT0 o INT1 ts ts ts ts ts  tiempo de ejecución de la RSI =`^liX. la interrupción de menor prioridad se pierde. ____ ____ INT0 o INT1 ts ts ts  tiempo de ejecución de la RSI =`^liX. se grupo editorial patria® 349 . cuando se genera una interrupción externa. un ciclo de máquina. Sin embargo. 5 El popular microcontrolador Por tanto. si la activación es por niveles y se presenta la situación anterior. durante la ejecución de la RSI se desactiva la interrupción externa. es decir. de acuerdo con las reglas de prioridad. INT0 e INT1. si la interrupción se genera mediante un cambio de nivel. y no el hardware del μC. la fuente externa debe mantener la terminal de petición en un nivel lógico alto. la fuente externa debe mantener activa la petición hasta que se genera la interrupción requerida.( <a\ZlZ`e[\leXIJ@XZk`mX[Xgfie`m\c\jc^`ZfjYXafj% En resumen. Con frecuencia. la rutina no se interrumpe.151. Por ejemplo. por lo menos. si la in- terrupción se genera por flanco. la fuente de petición externa (INT0 o INT1). y después mantener la terminal en un nivel lógico bajo. Posteriormente. la fuente externa debe ir a nivel alto antes de que termine la RSI o de lo contrario se generará otra interrupción. y se presenta una interrupción externa de prioridad baja. en este caso se conservan las reglas antes mencionadas. en consecuencia.150. se comienza la rutina de servicio de la in- terrupción que llegó después. En cambio. cuando menos un ciclo más para asegurar la detección del flanco negativo. se muestrea cada ciclo de máquina. ABPRA para las interrupciones externas Lo siguiente es hacer uso del ABPRA. pero una vez que se termina la rutina de servicio de mayor prioridad. la RSI se ejecuta una sola vez. t En cambio. que la interrupción de menor prioridad no se pierde.' <a\ZlZ`e[\leXIJ@XZk`mX[Xgfi]cXeZfje\^Xk`mfj% Por otro lado. después de haberse detectado un flanco en la terminal externa /INT0 o INT1 como se muestra en la figura 5. controla el estado de la bandera de solicitud de la interrupción. Pero. la selección de una interrupción por flanco o por nivel requiere de la programación de los bits IT0 e IT1 del registro TCON. aprender con prácticas o ejemplos. acto seguido. existen ciertas particularidades que vale la pena remarcar: t Si la activación es por flanco negativo y se está ejecutando una RSI externa de prioridad alta.%(. Después de esto. la bandera que la generó se borra por hardware si la in- terrupción fue activada mediante un flanco negativo. El estado de las terminales externas. Con respecto a las prioridades. tanto por flancos como por niveles. es decir. la interrupción externa 0 se disparará por un nivel lógico bajo detectado en la terminal INT0. si IT0  1 la interrupción externa 0 se disparará por un flanco negativo en la terminal INT0. como se muestra en la figura 5. para evitar que se produzcan interrupciones con- secutivas mientras la fuente externa permanece en un nivel lógico BAJO. En otras palabras. Salta a la RSI de la interrupción externa 0 ORG 0013H .#0FFH .#04H .Salta a la RSI de la interrupción externa 1 ORG 0030H .#0FFH . los cuales se conectan a dos pines del puerto 1 como se ilustra en el circuito de prueba de la figura 5.***Vector de la interrupción externa cero AJMP INTE0 . Las RSI deben encender un par de LED por 9 segundos. y poder comprobar el funcionamiento de las prioridades.0 .*** Rutina de servicio de la interrupción cero *** INTE0: CLR P1.#85H .Inicio del programa principal. dependiendo del botón interruptor “push button” que se presione. RET3: MOV R1.59 Mhz XTAL 2 5 V 5 V 30 pF 8751 220 7 220 7 INT 0 INT 1 P1.1 s aprox. .Se genera un retardo de 9.Se asigna una mayor prioridad a INT1 ESPERA: SJMP ESPERA .) :`iZl`kf[\gil\YX#YXjX[f\e\cμ:/..#15H .Habilita interrupciones externas cero y uno MOV IP.con un cristal de 3. La práctica consiste en generar las dos interrupciones externas usando un μC 8751.Espera a que llegue una interrupción .Se enciende el “LED” cero MOV R0. realizamos el progra- ma con la programación de las interrupciones por niveles y asignándole prioridad alta a la interrupción externa 1.152.PROGRAMA DE PRUEBA PARA LAS INTERRUPCIONES EXTERNAS ORG 0000H .59 MHz RET2: MOV R2.Inicio después del reset AJMP PRINCIPAL ORG 0003H .1 1K 7 =`^liX.(#gXiXm\i`]`ZXi]leZ`feXd`\ekf[\cXj`ek\iilgZ`fe\j% Aquí se requiere realizar un programa que encienda un LED por 9 segundos.%(.***Vector de la interrupción externa uno *** AJMP INTE1 .Inicio del código encima de las localidades de las RSI PRINCIPAL: . 350 ELECTRÓNICA • MIJAREZ . 30 pF XTAL 1 3. Ahora. 5 El popular microcontrolador recomendará verificar las reglas de prioridad.0 P1. MOV IE. aho- ra. el programa entra en un lazo de espera (loop).Retorno de la interrupción . por ejem- plo la interrupción externa 0 (INT0).RETT2 .Se enciende el “LED” cero MOV R0. donde inicia el código del pro- grama. RETT3:MOV R1.Se genera un retardo de 9.con cristal de 3. Las primeras instrucciones después de la etiqueta PRINCIPAL se encuentran relacionadas con la habilitación de las in- terrupciones externas y con la asignación de prioridades. para encender el LED rojo. el programa brinca a la etiqueta PRINCIPAL. Cuando llega una interrupción.1 segundos requeridos para encender el LED rojo. Si usamos el simulador TS Controls es posible verificar el funcionamiento de las interrupciones y de los tiempos de retardo esperados. en consecuencia. lo cual resulta en los 9.731.0 .Se apaga el “LED” cero RETI . hasta que ocurran las interrupciones externas.(255X2) 510 DJNZ R1.050 DJNZ R0. para apagar el LED rojo. Por otro lado.RETT1 . solo es necesario modificar el registro TCON (paso 3).RETT3 . en este caso la 0003H. para programar la activación de las interrupciones por flancos. lo cual se puede realizar por bit.050 SETB P1. La primera instrucción de la RSI es borrar (CLR) el pin P1.Se apaga el “LED” cero RETI . sobrepasando las localidades asignadas previamente a las interrupciones INT0 e INT1. En esta simulación se verificó el funcionamiento de la interrupción externa 0. Por consiguiente. Para esto.0.1 s aprox.1 . posteriormente.050 ciclos de má- quina.(255X255)X2  130. la instrucción que ejecuta es un brinco (AJMP) hacia la RSI que inicia con la etiqueta INTE0. el pin P1. después se genera un retardo de 9 segundos y finalmen- te la última instrucción es establecer en 1 lógico (SETB).731. 5 El popular microcontrolador RET1: DJNZ R2. la primera instrucción en la localidad asignada al vector de interrupción es una instrucción de brinco a un área del programa donde no se tengan restricciones de memoria de código. Como las RSI de las interrupciones externas requieren más de ocho bits. RETT1:DJNZ R2.(255X255)X2  130. el ciclo de máquina es de 3.731. realizamos los siguientes pasos ejemplificados en la figura 5.050 SETB P1. en el lazo de espera.342 μs.#0FFH .0 .*** Rutina de servicio de la interrupción uno *** INTE1: CLR P1.0.21(255X255X2) 2. es necesario establecer en 1 lógico las banderas IT0 e IT1. Así. Por ejemplo: grupo editorial patria® 351 .Retorno de la interrupción END Después de reinicializar el sistema. se modifica el programa después de la etiqueta PRINCIPAL.050 DJNZ R0.153.#15H . para simular el programa. el dato que hay que cargar en el registro TCON sería un 80H para habilitar la bandera IE1.RET2 . y brinca a la dirección especificada por el vector de interrupción.59 MHz. localidad 0030H. Como el cristal es de 3.(255X2) 510 DJNZ R1.RET3 .RET1 .59 MHz RETT2:MOV R2. pero igualmente puede verificarse el funcionamiento de la interrupción externa 1.21(255X255X2) 2. Una vez en esa localidad.#0FFH . el programa termina la instrucción que esté efectuando. se requiere realizar un retardo de 2. %(.5 El popular microcontrolador ( (% <ecXg\jkXŒXÈdf[\É#j\j\c\ZZ`feXcX]i\Zl\eZ`XX fg\iXi#pj\_XY`c`kXecXj`ek\iilgZ`fe\j% ) )% J\XŒX[\leYi\Xbgf`ekXek\j[\ XgX^Xi\cC<. #\jk\j\[\k`\e\\e\cYi\Xbgf`ek#cfZlXc `e[`ZX\ck`\dgf\ed`Zifj\^le[fj_XjkX\j\ dfd\ekf#\hl`mXc\ek\X0%(j\^le[fj% -% FYj\im\hl\\cgif^iXdXj\[\klmfleZ`Zcf .% 8c\a\ZlkXij\\cgif^iXdXj\c\ZZ`feXe[file =. [\d}hl`eXk`Zb Xek\j[\hl\\cgl\ikfG(%' j\\jkXYc\qZX\e(c^`Zf2gfikXekf#XgX^l\ \cC<.pi\^i\j\Xcgif^iXdXgi`eZ`gXc% =`^liX.#Xgc`ZXe[f[fYc\Zc`Z\e cX`ejkilZZ`eJ<K9G(%'gXiXm\i`]`ZXi \ci\kXi[f% * *% <e\ci\^`jkifK:FE#j\ _XY`c`kXcXYXe[\iX[\ `ek\iilgZ`e@<'#Zfele')?% K:FE K=( KI( K=' KI' @<( @K( @<' @K' + +% 8ek\j[\\a\ZlkXi\cgif^iXdX#\ck`\dgf kiXejZlii`[f[\\a\ZlZ`e\j'%'j\^le[fj% .* 352 ELECTRÓNICA • MIJAREZ . . desde que sus salidas son 000B hasta que son 111B. un temporizador de 3 flip flops divide la frecuencia de entrada entre 8. el cual a su vez divide la frecuencia.`X^iXdX[\k`\dgfj% grupo editorial patria® 353 . La salida del último flip flop se aplica a la entrada de reloj de un flip flop denominado de desbordamiento o sobre- flujo (overflow).Habilita interrupciones externas cero y uno MOV IP. Contadores/temporizadores En esta sección describimos los contadores/temporizadores integrados dentro del microcontrolador 8051. El valor binario de las salidas de los flip flops representa el número de pulsos de reloj (o eventos) que el temporizador puede contar.Espera a que llegue una interrupción Las interrupciones son la parte más truculenta y complicada de manejar en todos los microcontroladores. es decir. La bandera de desbordamiento se establece en 1 lógico cuando ocurre el desbordamiento de 111B a 000B. este podría contar ocho pulsos. 5 El popular microcontrolador ORG 0030H .%(. los temporizadores están compuestos por una serie de flip flops de división entre dos. Un número n de flip flops divide la frecuencia de entrada entre 2n veces.154. De manera general.`X^iXdX\jhl\d}k`Zf%Y . Por ejemplo. Continuando con nuestro temporizador de tres bits.#04H . Temporizador de 3 bits Flip flop de desbordamiento +5 V D Q D Q D Q D Q Bandera Reloj CK Q0 CK Q1 CK Q2 CK Q Bit menos Bit más a) significativo significativo Reloj Q0 (Bit menos significativo) Q1 Q2 (Bit más significativo) Contador 0 1 2 3 4 5 6 7 0 Bandera La bandera se establece en 1 en un b) desbordamiento de 7 a 0 en el temporizador =`^liX. como se muestra en la figura 5.Programa por flanco el disparo de la INT0 SETB IT1 . Por ejemplo. el cual genera un bit o bandera cuyo estado lógico 1 puede usarse para generar una interrupción. los cuales tienen como entrada una fuente de reloj. se recomienda realizar las prácticas sugeridas en el apéndice que se encuentra en el CD que acompaña este libro. MOV IE. y así sucesivamente.Se asigna una mayor prioridad a INT1 SETB IT0 .+ K\dgfi`qX[fi[\*Y`kj%X . La señal del reloj se aplica a la entrada del primer flip flop y su salida produce una señal con la frecuencia de entrada dividida entre dos. la cuenta 6 sucede cuando Q2  1.Programa por flanco el disparo de la INT1ESPERA: SJMP ESPERA . Estos tem- porizadores adquieren gran importancia debido a que se utilizan en una gran variedad de aplicaciones orientadas a control.Inicio del código encima de las localidades de las RSI PRINCIPAL: . Por esta razón. donde se es posible verificar las prioridades de las interrupciones. Q1  1 y Q0  0 (610  1102).#85H . La salida del primer flip flop se conecta a la entra- da del segundo flip flop.Inicio del programa principal. En las aplicaciones de temporización de intervalos. M1 M0 Modo Descripción 0 0 0 Modo de temporizador de 13 bits 0 1 1 Modo de temporizador de 16 bits 1 0 2 Modo de temporizador de 8 bits con recarga automática 1 1 3 Modo temporizador dividido: TL0 funciona como un temporizador de 8 bits controlado por los bits del modo temporizador 0. Un tercer contador/temporizador se añade en el μC 8052 de Intel y en microcontroladores de otros fabricantes de la familia MCS-51. >8K< :&K D( D' >8K< :&K D( D' =`^liX. KDF. se accede a cada C/T usando registros por separado de 8 bits: un byte de orden bajo y un byte de orden alto. en este libro nos centraremos en el microcontrolador 8051. El registro TMOD se divide en dos grupos de cuatro bits que determinan el modo de operación para los C/T0 y C/T1. la arqui- tectura del 8051 es de 8 bits. Los registros IE e IP los describimos previamente en la sección Particularidades de las interrupciones del 8051. estableciendo en 1 lógico la bandera de desbordamiento y. t Como contadores de eventos. Por otro lado. 5 El popular microcontrolador El microcontrolador 8051 cuenta con dos contadores/temporizadores (C/T) de 16 bits con cuatro modos de ope- ración. para generar la tasa de transmisión/recepción (baud rate) de datos para el puerto serie incorporado en el microcontrolador. Los C/T pueden usarse de la siguiente manera: t Como temporizadores. en una terminal preestablecida del microcontrolador.. sin embargo. t Como temporizadores. Para programar cada C/T del 8051. por lo que nos resta explicar el funcionamiento de los registros TCON. el último flip flop divide la frecuencia de reloj de entrada entre 216  65.%(. TMOD y los dos registros contadores asocia- dos a cada temporizador (C/T0 y C/T1). Los primeros cuatro bits del registro de TMOD corresponden al T/C0 y los otros cuatro al T/C1. M1 y M0 seleccionan el modo de operación de acuerdo con la tabla 5.10.%(' Df[fj[\fg\iXZ`e[\cfjZfekX[fi\j&k\dgfi`qX[fi\j% 354 ELECTRÓNICA • MIJAREZ . t Registro de control de los temporizadores (TCON). t Registros de modo de los temporizadores (TMOD). KXYcX. es necesario tener acceso a seis registros de funciones especiales: t Registros IE e IP. La RSI puede verificar el estado de las entradas de los puertos o enviar datos a las salidas de los mismos. para generar tiempos de retardo regulares o temporización de intervalos. generando una interrup- ción. Temporizador 1 detenido. por consiguiente. el conteo de eventos se utiliza para contar cuantas veces ha ocurrido un evento externo. Los temporizadores también pueden usarse para proveer el reloj de la tasa de transmisión/recep- ción del puerto serie. Un even- to externo es cualquier señal que proporciona una transición de 1 lógico a 0 lógico. Sin embargo. un temporizador se programa para causar un desbordamien- to a intervalos regulares. por ende. Para ambos casos.536. como lo es medir el ancho de un pulso. para contar eventos que ocurren fuera del microcontrolador. Como cada tempori- zador es de 16 bits. t Registros contadores del contador/temporizador 1 (TH1 y TL1). t Registros contadores del contador/temporizador 0 (TH0 y TL0). Otras implementaciones incluyen medir el tiempo transcurrido entre dos condiciones. y TH0 funciona como un temporizador de 8 bits controlado por los bits del modo temporizador 1. Por su parte. 6 C/ Ť 1 Bit de selección de contador/temporizador.%(( I\jld\e[\jZi`gk`mf[\ci\^`jkif[\df[f[\cfjk\dgfi`qX[fi\j#KDF.6 TR1 8EH Bit de control de ejecución del T/C1. pero este registro si es direccionable por bit.11 muestra el resumen descriptivo del registro TMOD.3 IE1 8BH Bandera de flanco de la interrupción externa 1. y si es 0 como temporizador. Bis. K:FE K=( KI( K=' KI' @<( @K( @<' @K' =`^liX. El bit GATE permite que cada C/T pueda ser arrancado con una interrupción externa si este bit se establece en 1. si C/Ť  1 la función es de contador. TCON. Continúa grupo editorial patria® 355 .4 TR0 8CH Bit de control de ejecución del T/C0.- Los bits TR0 y TR1 se utilizan para encender o apagar los T/C. el temporizador funciona solo si la terminal /INT1 se encuentra en 1 lógico. Si es 1.5 TF0 8DH Bandera de desbordamiento del T/C0. Si es 1.12 muestra el resumen descriptivo del registro TCON. Cuando se establece en 1. por lo general. 1 M1 0 Bit de selección de modo temporizador 0 (véase tabla 5. Cuando se establece en 1.%(.10) 3 GATE 0 Bit de compuerta. TCON. Bis. ya sea como temporizador o un contador.10) KXYcX. se pone en 0 por software o mediante hardware cuando la CPU brinca a la RSI correspondiente. En cambio. Se establece en 1 mediante el hardware cuando se detecta un flanco negativo en la terminal /INT1. 5 El popular microcontrolador El registro TMOD es uno de los SFR que no es direccionable por bit. Se borra por software o por hardware cuando se brinca a la RSI correspondiente. el temporizador funciona solo si la terminal /INT0 se encuentra en 1 lógico. este registro se carga por software al inicio de un programa para inicializar el modo de operación del temporizador.% El registro TCON. #JU Símbolo Temporizador Descripción 7 GATE 1 Bit de compuerta.7 TF1 8FH Bandera de desbordamiento del T/C1. Por lo general. al igual que el registro TMOD. La tabla 5. 2 C/ Ť 0 Bit de selección de contador/temporizador. y los bits TF0 y TF1 son las banderas de desbor- damientos de los temporizadores.10) 4 M0 1 Bit de selección de modo temporizador 1 (véase tabla 5. también se divide en dos grupos de 4 bits. #JU Símbolo Dirección de bit Descripción TCON. TCON. los bits del nibble alto del registro TCON contienen los bits de estado y de control de los tempo- rizadores. Se establece en 1/0 para encender/ apagar el T/C. y si es 0 como temporizador. TCON. funciona como contador. estos se usan para detectar e iniciar las interrupciones externas. como lo vimos en la sección Interrupciones externas. La tabla 5. con el bit C/Ť se selecciona la operación del C/T.10) 0 M0 0 Bit de selección de modo temporizador 0 (véase tabla 5. Se establece en 1 mediante hardware cuando ocurre el desbordamiento. funciona como contador. Los bits del nibble bajo del registro TCON no tienen relación con los temporizadores. 5 M1 1 Bit de selección de modo temporizador 1 (véase tabla 5. según correspondan.1 E0 89H Bandera de flanco de la interrupción externa 0. ocurrirá el desbordamiento que establecerá en 1 la bandera de desbordamiento TFx del temporizador. depen- diendo del temporizador. 5 El popular microcontrolador #JU Símbolo Dirección de bit Descripción TCON. excepto que utiliza todos los bits de ambos registros para formar un temporizador de 16 bits. el temporizador sigue contando hasta llegar otra vez al desbordamiento después de FFH. La importancia del modo 3 radica en que se dispone de un temporizador de 8 bits adicional. En el modo 0.%() I\jld\e[\jZi`gk`mf[\ci\^`jkif[\Zfekifc[\cfjk\dgfi`qX[fi\j#K:FE% Nos falta describir los registros contadores THx y TLx relacionados con cada C/T. por tanto puede contar hasta 65536 pulsos de reloj.157b).157c). Aún así. Modos de operación La figura 5. es un modo de recarga automática de 8 bits. mientras que el registro contador de orden alto THx almacena un valor de recarga. si THx  FDH. El modo de operación 3. Se establece en 1/0 por software para activar la interrupción externa por flanco negativo/ nivel lógico bajo. de acuerdo con su modo de operación. en el modo 3 el temporizador 1 se encuentra detenido. El modo 2. la restricción es que su bandera de desbordamiento TF1 no se activará.0 IT0 88H Bandera para selección del tipo de interrupción externa 0.157 muestra la organización de los registros TLx y THx y las banderas de desbordamiento TFx de los tem- porizadores 0 y 1. el temporizador contará continuamente desde FDH hasta FFH. es decir. se establece en 1 la bandera de desbordamiento TFx y se transfiere de manera automática el valor del registro THx al registro TLx. TCON. Puede accederse a los registros THx y TLx en cualquier momento por software. como veremos en un ejemplo. generando una interrupción periódicamente cada tres pulsos de reloj: de FDH a FEH. El temporizador sigue contando. Por lo general. respectivamente. al recibir los pulsos de reloj los contadores contarán de manera ascendente desde 0000H. ilustrado en la figura 5. 0001H. debido a que TF1 está conectada a TH0 en el modo 3. El bit más significativo (MSB) es el bit 7 del registro THx y el bit menos significativo (LSB) es el bit 0 del registro TLx. estableciendo en 1 lógico las banderas TF0 y TF1. es decir. es un modo de temporizador dividido. 0002H hasta FFFFH. por consiguiente. En la transición del conteo de FFFFH a 0000H. se divide en dos temporizadores de 8 bits que utilizan los registros TL0 y TH0. se carga el valor del registro THx al inicio del programa. El sufijo “x” lo utilizaremos para referirnos indistintamente a los temporizadores 0 o 1. el modo 3 predomina en el temporizador 1 sobre otros modos. El modo 1 hace uso de los mismos registros. ilustrado en la figura 5. Para el modo 1.2 IT1 8AH Bandera para selección del tipo de interrupción externa 1. El registro contador de or- den bajo TLx funciona como temporizador de 8 bits. El modo 0 y el modo 1 mostrados en la figura 5. por lo que funcionalmente el 8051 podría tener tres temporizado- res. Cuando la cuenta del registro TLx se desborda después de FFH. aunque podría inicializarse a uno de los otros modos. Por ejemplo. 356 ELECTRÓNICA • MIJAREZ . Aún más. El LSB cambia con una frecuencia de entrada divi- dida entre dos. por ejemplo.157a) disponen de una conexión en cascada de los registros TLx y THx. de FEH a FFH y de FF a 00H. KXYcX. “THx” significa bien TH1 o TH0. el temporizador 1 todavía puede utilizarse para generar la tasa de transmisión y recepción del puerto serie o en cualquier otra aplica- ción que no requiera que se produzca una interrupción. Tener interrupciones de forma periódica es muy útil para ciertas aplicaciones de generación de señales. Los tres bits más significa- tivo del registro TLx no se utilizan. y así sucesivamente. TCON. y el MSB cambia con una frecuencia de entrada dividida entre 216. los cuales actúan como temporizadores indepen- dientes. los ocho bits del registro contador de orden alto (THx) y los cinco bits menos significativos del registro contador de orden bajo (TLx) se utilizan para formar un temporizador de 13 bits. la cual puede ser accedida (leída o escrita) por software en el registro TCON. 5 El popular microcontrolador OSC v12 INTERRUPCIÓN — C/ T  0 TLx THx TFx C/— T1 Tx (PIN) CONTROL TRx GATE TLx THx Modo 0 TFx (5 bits) (8 bits) INTx (PIN) TLx THx Modo 1 TFx (8 bits) (8 bits) a) OSC v12 INTERRUPCIÓN — C/ T  0 TLx THx TFx C/— T1 Tx (PIN) CONTROL TRx RECARGA GATE THx (8 bits) INTx (PIN) b) OSC v12 — C/ T  0 TL0 TFx INTERRUPCIÓN (8 bits) C/— T1 T0 (PIN) CONTROL TR0 GATE INT0 (PIN) TH0 1/12 fOSC TF1 INTERRUPCIÓN (8 bits) CONTROL TR1 c) =`^liX.%(.. Df[fj[\fg\iXZ`e[\cfjZfekX[fi\j&k\dgfi`qX[fi\j%X Df[f'p(%Y Df[f)%Z Df[f*% grupo editorial patria® 357 . es decir. Para el caso del T/C funcionando como temporizador. cuando el temporizador se encuentra en operación. los registros se incrementan cada doce pe- riodos del oscilador interno. Cálculo y lectura de los registros TLx/THx Como ya se mencionó. un periodo de 2 μs. para un oscila- dor con un cristal de 12 MHz. Sin embargo. Tambiém es posible darle solu- 358 ELECTRÓNICA • MIJAREZ . Si C/Ť  1. para reconocer una transición. cada intervalo de tiempo determinado por el valor inicial cargado en los registros contadores TLx/THx. Esta señal de reloj pasa a través de una etapa de división entre 12 con el objetivo de reducir la frecuencia de entrada a valores requeridos en muchas aplicaciones. En el caso del T/C programado para funcionar como contador de eventos externos.TL)  65536 – NE Donde NE es el número de eventos que se desea contar. Asimismo. Los desbordamientos que generan la interrupción ocurrirán cada número fijo de pulsos de reloj.5 corresponde a T1 y se usa como entrada externa de reloj para el temporizador 1. El nuevo valor se almacena en los registros contadores durante la etapa S3P1 del ciclo posterior al que detectó la transición de 1 a 0 lógicos.TLx)  65536 – (t)(fosc)/12 Donde t es el retardo en segundos que se requiere. Por otro lado. si usamos un cristal de 12 MHz. las interrupciones en los T/C se generan por las banderas de desbordamiento. Por tanto. la frecuencia utilizada por el temporizador será de 1 MHz. a la mitad de las dos operaciones de lectura. es decir. Con las consideraciones anteriores. el temporizador recibe la señal de reloj por medio de una fuente externa. la cuenta se incrementa. la fórmula para obtener el valor de los registros contadores es: (TH. Por ejemplo. al realizar estas lecturas puede surgir un error de fase. A partir de esta. lleguen al desbordamiento en la cuenta deseada. después de 65536 cuentas se generará el desborda- miento. si C/Ť  0. posteriormente se transforma su valor a hexadecimal y finalmente se divide en parte baja y parte alta. 5 El popular microcontrolador Fuentes de reloj De la figura 5. es posible deducir la siguiente fórmula para obtener el valor de los registros contadores: (THx.4 corresponde a T0 y sirve como entrada externa de reloj para el temporizador 0. al irse incrementando. el valor de los registros contadores THx y TLx se obtienen de igual forma que en el temporizador. por esta razón el temporizador realiza operaciones como contador de eventos. en consecuen- cia. La terminal externa Tx es una de las funciones alternas del puerto P3. La fuente de reloj externa se utiliza para trabajar como contador de eventos y la fuen- te interna se usa para operar como temporizador de intervalos. se selecciona la operación como temporizador y este recibe de forma continua la señal de reloj del oscilador incorporado en el μC. Los valores de THx y TLx se calculan en decimal. Estas fuentes pueden programarse mediante la escri- tura al bit contador/temporizador (C/Ť) del registro TMOD. debido a que se requiere de dos ciclos de máquina. Como contador de eventos. Esta fuente proporciona un pulso de reloj cuando ocurre un evento externo. con lo cual podría llegar a leerse un valor que no existió. existen aplicaciones que requieren leer el valor de los dos registros contadores TLx/THx “al instante”. el puerto P3. si se inician los registros con cero. la máxima frecuencia que podemos detectar es de 500 kHz. los registros TLx y THx se deben iniciar con un valor tal que. incrementándose en uno los registros contadores TLx/ THx. esto ocurre cuando el byte del registro TLx se desborda hacia el byte superior del registro THx.157 se puede observar que los temporizadores tienen dos fuentes de reloj: una fuente de reloj es externa al μC y la otra fuente es interna. El puerto P3. la entrada de reloj externa se muestrea durante la etapa S5P2 de cada ciclo de máqui- na. fosc es la frecuencia del oscilador y THx/TLx es el valor que debemos cargar en los registros contadores. en consecuencia. El número de eventos se registra cada vez que se detecta un flanco negativo en la terminal externa Tx del μC. cuando el μC detecta en la entrada un nivel lógico alto en un ciclo y un nivel lógico bajo en el siguiente ciclo de máquina. y posteriormente se lee el registro de orden alto otra vez. pero. LEE_CONTADORES MOV R1.TL0 CNJE A.0 0. ¡Así que manos a la obra! En este ejemplo. para establecer el modo de operación requerido. En este caso. La práctica consiste en generar una onda cuadrada de 4 kHz utilizando el temporizador 0 en el modo más apropiado. El cálculo de los registros contadores lo realizamos de acuerdo con la siguiente fórmula: (THx. 5 El popular microcontrolador ción a este problema mediante software. desarro- llamos el programa requerido. La inicialización del temporizador la describiremos con un ejemplo. el valor de los registros con- tadores se obtiene sustituyendo estos valores: (TH. después se lee el registro de orden bajo. etcétera. ya que no re- querimos contar ningún evento externo. THx.TH0 MOV R0. lo que resuelve el problema. como se muestra en la figura 5. 30 pF XTAL1 12 MHz XTAL2 30 pF P1. Posteriormente. Por tanto. antes definimos que el T/C0 lo utilizaremos como temporizador. El siguiente código es capaz de leer el conte- nido de los registros TL0/TH0 y almacenarlo en los registros R0/R1. según lo requiera la aplicación./ :`iZl`kf[\gil\YX#YXjX[f\e\cμ:/.TH0 Inicialización y ABPRA con los temporizadores Por lo general. dentro del programa. THx. primero realizamos el cálculo de los registros contadores y.:*(#gXiX^\e\iXileXj\ŒXc[\+b?qljXe[f\ck\dgfi`qX[fi'% Para resolver esta práctica. los registros contadores se pueden leer o actualizar.0. La señal debe generarse en la terminal P1.125 ms 0. se repiten las dos operaciones de lectura. la frecuencia del oscilador es de 12 MHz y el tiempo que requerimos nos interrumpa el temporizador 0 es de 125 μs para establecer en 1 y después poner en 0 al pin del puerto P1.TL)  65536 – (125 μs)(12 MHz)/12  6541110  FF8316 grupo editorial patria® 359 .158.0. LEE_CONTADORES: MOV A.TH0. las banderas de desbordamiento se pueden leer y borrar. vamos a hacer uso del ABPRA y a aprender con una práctica/ejemplo.%(. TLx.TLx)  65536 – (t)(fosc)/12 En este caso. primero se lee el registro de orden alto. la inicialización de los temporizadores se realiza al iniciar el programa principal. posteriormente.125 ms f = 4 kHz 80C31 =`^liX. Si el byte superior cambió después de la segunda lectura. los temporizadores se pueden iniciar o detener. en el programa principal. ejecuta la instrucción RETI que borra la bandera de desbordamiento y regresa nuevamente al lazo de espera. Sin embargo.Espera a que termine el retardo y se genere la interrupción END El análisis del programa es el siguiente: después de reinicializar el sistema. el cual utiliza un contador de 8 bits con recarga automática. y así sucesivamente. registro TMOD  02H. el programa brinca a la etiqueta PRINCIPAL. hasta que ocurra la interrupción del temporizador. sobrepasando la localidad asignada previa- mente al temporizador 0. alternadamente y de forma continua. En este ejemplo se espera que el temporizador genere la interrupción sin errores. Las primeras instrucciones.PROGRAMA PARA USAR EL TEMPORIZADOR 0 del μC 8051 ORG 0000H AJMP PRINCIPAL ORG 000BH CPL P1. De esta manera. se recomienda realizar las prácticas sugeridas en el CD que acompaña este libro.0 RETI . realizamos el programa requerido.38 38 Por razones de espacio. se cargan los registros contadores con el valor calculado. de tal manera que el único registro que se incrementa- rá será el TL0.#83H . y la programación del C/T0. en esta edición no se presentan ejemplos con los otros modos de operación de los contadores/temporizadores del 8051.Carga parte baja MOV TH0. siguiendo la tónica de este libro. Los errores en un temporizador se generan por el tiempo que se tarda el microcontrolador en recargar los registros por software. La RSI del temporizador 0 requiere menos de 8 bits.0 . una vez asimilado el funcionamiento básico. como requerimos que la interrupción se genere de manera automática durante intervalos de tiempo regulares. el puerto P1. el valor del registro TH0 debe ser FFH. A con- tinuación. TL0  TH0  83H. y principalmente educando nuestra intuición.Retorno de la interrupción ORG 0030H PRINCIPAL: MOV IE. registro IE  82H. por tanto. dividimos el byte de orden alto y bajo y lo asignamos a los registros contadores: TH0  0FFH y TL0  83H Como se observa.#83H . y en 0 lógico 125 μs.#82H . para generar una in- terrupción cada 125 μs.0 se establecerá en 1 lógico 125 μs. son relacionadas con la habilitación de la interrupción del C/T 0. Para ello. cuando llega la inte- rrupción el PC se carga con el valor 000BH correspondiente al vector de interrupción del T/C0. Para los modos que no tienen recarga automática. Una vez en esa loca- lidad. selec- cionamos el T/C como temporizador en modo 2. Por otro lado. no requerimos los dos registros contadores.Carga parte alta SETB TR0 . como temporizador en el modo 2.0. luego. donde inicia el código del programa en la localidad 0030H. 360 ELECTRÓNICA • MIJAREZ . el programa entra en un lazo de espera (loop). puesto que la recarga es auto- mática y por hardware. Por último.Cambia de estado la terminal P1. 5 El popular microcontrolador Ahora. es necesario considerar dicho retardo en el cálculo del valor del registro.Arranca el temporizador ESPERA: AJMP ESPERA . un registro de 8 bits es suficiente. la RSI ejecuta la instrucción CPL. la cual conmuta el estado del puerto P1.Habilita la interrupción del C/T0 MOV TMOD. por tanto.#02H . para esperar otra interrupción. después de la etiqueta PRINCIPAL. . e incluso llevar a cabo la programación de temporizadores de cualquier otro microcon- trolador. se puede realizar la programación de cualquier otro modo.Programa T/C0 en modo 2 y con control interno MOV TLO. generando una onda cuadrada con un periodo de 250 μs o 4 kHz. acto seguido. 159 podemos apreciar que el puerto serie contiene un registro de desplazamiento o corrimiento (shift). está constituido por dos registros de 8 bits que sirven como buffers de entrada o salida del puerto. las siguientes instrucciones transfieren datos f ísicamente hacia o desde los diferentes registros SBUF: MOV SBUF. por sus siglas en inglés) y para la expansión síncrona de entradas/salidas.159. y cada vez que se transmiten o reciben datos por el puerto serial es necesario acceder a estos buffers. No obstante. lo anterior permite que cuando se estén recibiendo los bits de entra- da. como lo muestra el diagrama de bloques del puerto serie de la figura 5. El puerto serie tiene una tasa de transmisión/recepción (baude rate) o frecuencia de operación que puede ser fija o variable. terminal 11 (TXD). Pero. transfiriendo dato de SBUF al Acc Por otro lado. SBUF . 5 El popular microcontrolador Puerto serie El microcontrolador 8051 cuenta con un puerto serie como parte importante de sus periféricos internos. Aunque ambos registros tienen la misma dirección. terminal 10 (RXD) y P3. La operación full dúplex significa que la transmisión y recepción de datos en serie se puede realizar de manera simultánea. t Cuatro modos de operación. al escribir en el registro SBUF se cargan los datos a transmitir. el hardware del 8051 permite recibir un bloque de datos que se almacena en un registro buffer. Sus principales características son: t Comunicación full dúplex. De manera general. Este registro contiene tanto los bits de estado como los bits de control del puerto serie. El registro SBUF se localiza en la dirección 99H de la RAM interna perteneciente a los registros de funciones es- peciales. mientras se recibe otro bloque de datos. En la figura 5. sin usar un reloj como referencia. La comunicación serial síncrona transmite un bloque completo de datos sincronizados a través de un reloj de referencia. f ísicamente son dos registros separados. El puerto serie es útil para interconectar en serie dispositivos asíncronos tipo receptor/transmisor asíncrono universal (UART. Registro SBUF y registro SCON El acceso en hardware al puerto serie se realiza a través de dos terminales del puerto P3. en cualquier momento. t Baud rate programable. El registro SBUF. los bits de datos de entrada se transfieren al registro de entrada SBUF únicamente hasta que hayan sido recibido todos. De manera general. bit por bit. y al leer del registro SBUF se accede a los datos recibidos.1. que convierte los datos de entrada serie a paralelo. habilitando el buffer transmisor MOV A.habilita al buffer receptor. el control del puerto serie y el monitoreo de su estado se lleva a cabo por medio del registro SCON. usando solo una línea de comunicación. para esto. con el fin de sincronizar los datos recibidos antes de que se transfieran al registro de recepción SBUF. las comunicaciones seriales pueden clasificarse como síncronas o asíncronas. las cuales forman parte de sus funciones alternas: P3.Transmite el contenido del Acc.0. La comunicación serial implica la transmi- sión de datos. La tasa de transmisión/recepción fija se obtiene de la frecuencia del oscilador interno del μC y la tasa de transmisión/recepción variable la proporciona el temporizador 1. A . Los datos no se pierden si la CPU del μC logra leer el primer bloque de datos antes de que el segundo bloque se haya recibido por completo. Mientras que el acceso al puerto serie por software se lleva a cabo mediante dos registros de función especial: el registro buffer del puerto serie (SBUF) y el re- gistro de control del puerto serie (SCON). El registro SCON es un registro direccionable por bit ubicado en la dirección 98H de la RAM interna del μC. grupo editorial patria® 361 . los datos recibidos previamente se conserven intactos en el registro de lectura SBUF. El puerto serie del 8051 puede operar en varios modos sobre diferentes rangos de frecuencias. mientras que la comunicación serial asíncrona transmite un bloque de datos en forma aleatoria. por lo que esta debe programarse adecuadamente. Por ejemplo. la función principal de la comunicación serial en los microcontroladores es transferir datos usando solo una o dos terminales del microcontrolador mediante una conversión paralelo a serie para los datos de salida y de serie a paralelo para los datos de entrada. `X^iXdX[\Ycfhl\j[\cgl\ikfj\i`\% J:FE JD. REN debe ser 1 para recibir datos. RI se activa hasta que se recibe el bit de stop. Es el noveno bit de datos que se transmite en los modos 2 y 3. #JU Símbolo Dirección de bit Descripción SCON.3 TB8 9BH Bit 8 de transmisión.4 REN 9CH Habilita la recepción serial. y pueden probarse por software o pro- gramarse para generar una interrupción. SCON. Se debe limpiar por software. Las tablas 5. y al inicio del bit de stop en los otros modos.13 y 5. Activada por hardware al final del octavo bit en modo 0.0 . 5 El popular microcontrolador T1 Transmisión de datos CLK SBUF (Tx) TXD (P3. RB8 no se usa.0) =`^liX.1) SCON Bus interno 8051 SBUF (Rx) Frecuencia del oscilador CLK Registro de ÷ 12 D desplazamiento R1 Recepción de datos RXD (P3. SCON. especifica el modo de operación del puerto serial. RB8 es el bit de stop recibido.1 TI 99H Bandera de interrupción de la transmisión. En estos modos.%(-' Los bits de estado indican el fin de la transmisión o recepción de un dato. En el modo 0. Se debe limpiar por software.14 muestran el resumen descriptivo del registro SCON. En los modos 2 y 3. especifica el modo de operación del puerto serial. se activa RI hasta que RB8  0 (noveno bit es recibido). En el modo 0. En el modo 1. SM2 debe ser 0. SCON. es el noveno bit de datos que fue recibido. SCON. SCON. Mientras que los bits de control establecen los modos de operación del puerto serie a través de su escritura. SCON. En el modo 1.5 SM2 9DH Bit 2. si SM2  0. Se establece en 1 o 0 lógicos por software. KXYcX. JD( JD) I<E K</ I<J K( I( =`^liX.6 SM1 9EH Bit 1.0 RI 98H Bandera de interrupción de la recepción.2 RB8 9AH Bit 8 de recepción. si RM2  1. habilita la comunicación entre múltiples procesadores en los modos 2 y 3. SCON.%(. Activada por hardware al final del octavo bit en modo 0. y al inicio del bit de stop en los otros modos.7 SM0 9FH Bit 0.%(* I\jld\e[\jZi`gk`mf[\ci\^`jkif[\Zfekifc[\cgl\ikfj\i`\#J:FE% 362 ELECTRÓNICA • MIJAREZ . 8 entradas adicionales 8 salidas adicionales Registro de Registro de RXD desplazamiento RXD desplazamiento CLK CLK 8051 8051 TXD TXD =`^liX. establece en 1 REN y TI Modos de operación De acuerdo con la tabla 5. 1 0 2 UART de 9 bits. mien- tras TXD envía los pulsos de salida del reloj para el registro de desplazamiento. La estructura de datos es de 8 bits. mediante pulsos de reloj enviados por medio de la terminal TXD. este debe inicializarse a través del registro SCON. En el modo 0.%(-( Df[f'[\cgl\ikfj\i`\#\ogXej`ejˆeZifeX[\<&J% En el modo 0. baud rate  Variable. Baud rate fijo.Puerto serie modo 1. Los 8 bits de datos se desplazan uno a uno a través de la terminal RXD. el puerto serie opera de forma síncrona. y por último establece en 1 la bandera de interrupción de la transmisión.14. al registro SBUF. KXYcX. MOV SCON. REN  1. La velocidad o baud rate está fija a un doceavo de la frecuencia del oscilador interno. donde el bit menos significativo (LSB) es el primero en transmitirse o recibirse. 52H . Sin duda. como un registro de des- plazamiento o corrimiento. la transferencia de datos en serie (entrada y salida) se realiza a través de la terminal RXD. TI  1. habilita al receptor. 1 1 3 UART de 9 bits. proporcionando al μC una expansión síncrona de entradas/salidas. Modo 0 El modo 0 configura el puerto serie para operar con registros de desplazamiento de 8 bits. En cambio. la transmisión se inicia cuando se escribe un dato. Frecuencia de oscilación ÷ 12. En este modo. Cada bit transmitido es válido solo durante un ciclo de máquina. SM0  0 y SM1  1. por medio de una instrucción. en los modos 1. 5 El popular microcontrolador SM0 SM1 Modo Velocidad (baud rate) 0 0 0 Registro de desplazamiento. baud rate fijo. Por ejemplo. También durante cada ciclo de grupo editorial patria® 363 .161. donde cada dato transmitido o recibido tiene una estructura (frame) de 10 bits (modo 1) o de 11 bits (modos 2 y 3). la siguiente instrucción inicializa el puerto serie en modo 1. el puerto serie puede programarse a través de los bits SM0 y SM1 del registro SCON para operar en cuatro diferentes modos.%(+ Df[fj[\fg\iXZ`e[\ci\^`jkif[\Zfekifc[\cgl\ikfj\i`\J:FE% Para utilizar el puerto serie en el modo adecuado. para indicarle a la CPU del μC que el trans- misor se encuentra listo para empezar a transmitir. como lo ilustra la figura 5. 0 1 1 UART de 8 bits. lo anterior llega a confundir. 2 y 3 las comunicaciones se efectúan de forma asíncrona. Frecuencia de oscilación ÷ 32 o ÷ 64. debido a que en los otros modos RXD es solo para recibir datos seriales y TXD es solo para transmitirlos. baud rate  Variable. %(-* J`eZife`qXZ`e[\[Xkfj[\\ekiX[XgXiX\cdf[f'[\cgl\ikfj\i`\[\c/'. terminales RXD y TXD.(% máquina la señal de reloj cambia de 1 lógico a 0 lógico en el S3P1. Además. y regresa de 0 a 1 lógico en el S6P1. para empezar una operación de entrada serial de datos.(% En resumen.161. es posible conectar en cascada otros registros de desplazamiento para aumentar aún más la expansión de E/S del 8051.163. La recepción se inicia cuando el bit de habilitación de la recepción REN  1 y el bit de interrupción de la recepción RI  0. al conectar un registro de des- plazamiento (corrimiento) a las terminales RXD y TXD del μC. la comunicación serial simultánea. terminal RXD. Pero. el bit REN se activa al inicio de un programa. como parte de la inicialización del puerto serie. Los pulsos de reloj salen de la terminal TXD al borrarse la bandera RI. Esta sincroniza- ción de datos de salida se muestra en la figura 5. La sincronización de los datos de recepción ocurre durante los flancos positivos de TXD.162. A esta comunicación en serie se le llama half dúplex. es posible usando dos líneas. full dúplex. ya sea para transmitir o para recibir. este modo posibilita la expansión de las capacidades de E/S del 8051. 5 El popular microcontrolador Un ciclo de máquina S1 S2 S3 S4 S5 S6 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 P1 P2 Osc. al tiempo que los datos se sincronizan en la terminal RXD. como lo muestra la figura 5. Un ciclo de máquina ALE Salida de datos D0 D1 D2 D3 D4 D5 D6 D7 (RXD) Reloj de desplazamiento (TXD) =`^liX. la transmisión y recepción seriales no son simultáneas. Por lo general. ALE Salida de datos Bit de datos válido Reloj de desplazamiento S3P1 S6P1 Visita expandida ALE Salida de datos (RXD) D0 D1 D2 D3 D4 D5 D6 D7 Reloj de desplazamiento (TXD) =`^liX. lo cual comienza el siguiente ciclo de máquina. 364 ELECTRÓNICA • MIJAREZ . debido a que usamos una sola línea.%(-) J`eZife`qXZ`e[\[Xkfj[\jXc`[XgXiX\cdf[f'[\cgl\ikfj\i`\[\c/'. 2 y 3. Sin em- bargo. como lo ilustra la figura 5. y RI se borra. como se describe en los modos 1. la estructura de datos se compone de un bit de inicio. DATOS Detención Inicio =`^liX. un grupo de bits de datos y un bit de detención. Durante la recepción. en bauds. el bit de detención. se agrega un bit de paridad entre el último bit de datos y el bit de detención. aunque otros microcontroladores de Intel (8052) o de otros fabricantes usan los temporizadores adicionales que incluyen en sus periféricos internos. En ocasiones.165. La transmisión se inicia por cualquier instrucción que utiliza el registro SBUF como destino. 2 y 3 del puerto serie. la cual establece el bit de inicio en TXD. el detector de bit muestrea el valor de RXD. De esta forma. respecti- vamente.%(-+ <jkilZkliX[\[Xkfj[\cgl\ikfj\i`\\e\cdf[f(% Los 10 bits de la estructura de datos del modo 1 se transmiten y reciben por las terminales TXD y RXD. grupo editorial patria® 365 . Los datos se introducen por la derecha del registro de desplazamiento. como se ilustra en la figura 5. el 1 lógico que fue cargado inicialmente en la novena posición. los datos (DATA) son activados. el con- tador de división por 16 es reinicializado y 1FFH es introducido al registro de desplazamiento de entrada. le indican al bloque de control de recepción RX realizar un último desplazamiento. 8 y 9 del contador (de cada bit). En los modos 1. De este manera. el cual proporciona la velocidad del puerto serie.166. el cual divide por 16 después de escribirle a SBUF. Si el primer bit aceptado no es cero. Los 16 estados del contador dividen la temporización de cada bit en 16 partes.167. Cuando una transición es detectada. la sincronización de los registros de desplazamiento se realiza a través de un contador. 5 El popular microcontrolador Modo 1 En el modo 1. El valor aceptado es el visto en 2 de las 3 muestras. sin importar el baud rate establecido.164. el circuito de recepción se reinicializa y regresa a es- perar otra transición de 1 a 0. este se recorre dentro del registro de desplazamiento de entrada y la recepción del resto de los datos será procesada. y la entrada al conta- dor se selecciona activando un bit por software como lo describiremos posteriormente. como lo ilustra el diagrama de tiempos de la figura 5. La salida de este contador es la velocidad en bauds del puerto serie. por medio del cual ocurre lo siguiente: a) El noveno bit. Para este propósito RXD es mues- treado con una razón de 16 veces. la velocidad en bauds se establece por medio del desbordamiento del temporizador 1. Esto ocurre en el décimo desborda- miento del contador. b) Se carga SBUF con los 8 bits de datos. el bit de detención se transfiere al bit RB8 del registro SCON. La escritura a SBUF también carga un 1 lógico al noveno bit del registro de desplazamiento de transmisión y le indica a la unidad de control TX que requiere una transmisión. cuando el bit de inicio y los 8 bits de datos han sido sincronizados por medio de los pulsos de reloj. 8 bits de datos y un bit de detención. de 4 bits. variable. desactivar SEND y establecer en 1 la bandera de interrupción TI. esto ayuda a evitar falsos bits de inicio. esta empieza hasta el siguiente desbordamiento del contador de división entre 16. En los estados 7. Los bits de datos son desplazados (shift out) a la derecha. se localiza a la izquierda del MSB y todas las posiciones a la izquierda de este son cero. lo cual ayuda a evitar problemas de ruido. El periodo de cada bit es el recíproco de la velocidad en bauds programada en el temporizador para la transmisión. sin embargo. como se ilustra en la figura 5. La recepción es iniciada por la detección de una transición de 1 a 0 en RXD. La unidad de control TX inicia la transmisión habili- tando la señal /SEND. Un bit después. se transfiere al bit RB8 del registro SCON. En el 8051. Esta condición le indica a la unidad de transmisión TX realizar: un último desplazamiento. introduciendo ceros a la izquierda. Un dispositi- vo UART es capaz de recibir/transmitir datos seriales con una estructura de datos compuesta por un bit de inicio. como lo ilustra la figura 5. de división por 16. la temporización del bit es sincronizada por el contador de división por 16 y no por la señal de escritura a SBUF.168 muestra el diagrama de tiempos para la recepción en este modo. Cuando el MSB está por ser desplazado. La figura 5. el puerto serie del 8051 opera como un UART de 8 bits con velocidad. Si el bit de inicio es válido. DESPLAZAM (9 bits) RXD CARGA SHIFT SBUF NOTA: TCLK.`X^iXdX[\k`\dgfjgXiXcXkiXejd`j`e[\[Xkfj[\cgl\ikfj\i`\\edf[f(% c) La bandera de interrupción de la recepción Se activa en 1 lógico. RI.%(-- . Lo anterior sucede siempre y cuando existan las siguientes condiciones: t RI  0 t SM2  1 t El bit de detención  1 o SM2  0 366 ELECTRÓNICA • MIJAREZ .%(-. RCLK y el temporizador 2 están presentes solo en el SBUF microcontrolador 8052 LEE SBUF BUS INTERNO DEL 8052/51 =`^liX. <jhl\dX[\kiXejd`j`e&i\Z\gZ`e[\cgl\ikfj\i`\\edf[f(% TX CLOCK ESCRIBE EN SBUF SEND DATA S1 P1 TRANSMISIÓN SHIFT BIT DE TXD START D0 D1 D2 D3 D4 D5 D6 D7 BIT DE STOP T1 =`^liX.5 El popular microcontrolador TEMPORIZADOR 2 BUS INTERNO DEL 8052/51 TEMPORIZADOR 1 DESBORDAMIENTO DESBORDAMIENTO TB8 ESCRIBE EN SBUF D S Q v2 SBUF CL TXD SMOD = 0 SMOD = 1 DETECTOR DE CERO “0” “1” START SHIFT DATA TCLK CONTROL TX v16 TX CLOCK TI SEND INTERRUPCIÓN “0” “1” PUERTO SERIE RCLK v16 MUESTREO CARGA SBUF DETECTOR RX CLOCK RI TRANSICIÓN START CONTROL RX SHIFT DE 1 A 0 IFFH DETECTOR DE BIT REG. `X^iXdX[\k`\dgfjgXiXkiXejd`j`e&i\Z\gZ`e[\cgl\ikfj\i`\\edf[f(% El requisito de RI  0 asegura que el software haya leído el dato anterior y por consiguiente que RI se haya resta- blecido en 0 lógico. los modos 1. con velocidad en bauds fija cuando se programa SM1  0 y SM0  1.1) D0 T1 (SCON. El segundo requisito parece confuso.%(-/ . La velocidad en bauds es de 1/32 o 1/64 de la frecuencia del oscilador interno del μC y lo determina el bit SMOD del registro PCON. En realidad. pero tiene aplicaciones cuando se utilizan esquemas de múltiples procesadores en los modos 2 y 3.%(-0 <jkilZkliX[\[Xkfj[\cgl\ikfj\i`\\e\cdf[f)% El noveno bit es igual al contenido de TB8 en el registro SCON. DATOS Detención Inicio =`^liX. grupo editorial patria® 367 . como lo mues- tra la figura 5. el cual puede usarse como bit de paridad en la transmisión. 8 bits de datos. Durante la recepción. los cuales describimos después. solo difieren en la velo- cidad en bauds y el número de bits de datos. Modos 2 y 3 En el modo 2. el puerto serie del 8051 opera como un UART de 9 bits. el cual des- cribiremos en una sección posterior y en el apartado relacionado con los modos de ahorro de energía. Este también opera como un UART de 9 bits de datos. 5 El popular microcontrolador 1 ———————————— Bit de Bit de Velocidad en bauds detención inicio TXD (P3. respectivamente: 1 bit de inicio (0 lógico). 2 y 3 son modos de comunicación full dúplex y asíncronos con funcionamiento muy similar.169. Por su parte. el noveno bit se transfiere al RB8 del registro SCON.%(-. En este modo se transmiten y se reciben 11 bits por las terminales TXD y RXD. el modo 3 es funcionalmente igual al modo 2. la única diferencia es que la velocidad en bauds es programable mediante un temporizador. 1 bit programable (noveno bit) y un bit de detención (1 lógico).1) Interrupción de transmisión (se leen más datos) =`^liX. <cg\i`f[f[\ZX[XY`k\j\ci\ZˆgifZf[\cXm\cfZ`[X[\eYXl[j% RX CLOCK v16 RESET BIT DE START D0 D1 D2 D3 D4 D5 D6 D7 BIT DE STOP RECEPCIÓN =`^liX. %(. se determina por medio del bit SMOD. dividida entre 12.171 muestra un protocolo simple de comu- nicación multiproceso. indica que la frecuencia del oscilador se dividirá entre 64. los esclavos no direccionados dejan en 1 sus bits SM2 y prosiguen su operación normal. el puerto serie puede programarse para que la interrupción se active únicamente si RB8  1.(% Cuando el procesador maestro desea transmitir un bloque de datos a uno de sus esclavos. PCON. cuando se recibe el bit de detención. según se especifica en la tabla 5. y prepararse para recibir los bytes de datos que siguen. el objetivo de esto es que cada esclavo pueda verificar si es el esclavo destino seleccio- nado. No obstante. la comunicación es half dúplex y unidireccional maestro a esclavos. ya que si SM2  1. para indi- carle. el noveno bit de datos se al- macena en el bit RB8 del registro SCON. mientras que en el modo 1 se puede utilizar para corroborar la validez del bit de detención. poniendo especial atención en no utilizar el noveno bit. la interrupción no se activará hasta que reciba un bit de detención válido. la frecuencia del oscilador incorporado en el μC. 5 El popular microcontrolador Comunicación multiproceso Los modos 2 y 3 permiten la comunicación de múltiples procesadores. como se observa en la figura 5. La figura 5. ya que accidentalmente podría seleccionar a otros esclavos. en los modos 2 y 3 el bit SM2 puede usarse en aplicaciones de co- municación multiproceso. como se aprecia en la figura 5. La selección de una u otra velocidad. Asimismo. bit 7. donde se utilizan múltiples μC 8051 en una configuración maestro/esclavo. el bit SMOD  0. En el modo 0. las cuales se relacionan con las conexiones a redes. Los procesadores esclavos serán interrumpidos nuevamente cuando el procesador maestro envíe un nuevo byte de dirección. En este ejemplo.14.172 a). del registro de control de potencia. el cual identifica al esclavo destino. SM2  0. entonces la velocidad en bauds será de 1 MHz. Sin embargo. Por otro lado. si el cristal del microcontrolador tiene una frecuencia nominal de 12 MHz. MCS-51 Maestro MCS-51 MCS-51 MCS-51 Esclavo Esclavo Esclavo 1 2 n 32 líneas de E/S 32 líneas de E/S 32 líneas de E/S =`^liX. con un byte de dirección se in- terrumpen todos los esclavos. igno- rando los bytes de datos siguientes. Esta 368 ELECTRÓNICA • MIJAREZ . determina la velocidad en bauds del puerto serie. por ejemplo. El bit SM2 no tiene ningún uso en el modo 0. El esclavo direccionado puede borrar su bit SM2. Un byte de dirección difiere de un byte de datos en cuanto a que el noveno bit es igual a 1 en la dirección e igual a 0 en el byte de datos. Este rasgo distintivo de los μC 8051 se habilita al activar el bit SM2 del registro SCON. La velocidad en bauds en el modo 2 es el resultado de dividir la frecuencia del oscilador entre 32 o 64.' :fe]`^liXZ`edX\jkif&\jZcXmfljXe[fd’ck`gc\jμ:/'. primero envía un byte de dirección. que el mensaje fue recibido adecuadamente. Selección de velocidades en bauds del puerto serie Los modos 0 y 2 del puerto serie presentan una velocidad en bauds fija. cuando se reinicia el sistema. En cambio. No obstante. En estos modos.170. existen aplicaciones donde el esclavo seleccionado le puede responder al maestro. Por ejemplo. si se desea establecer en 1 lógico el bit SMOD del registro PCON. la activación del bit SMOD. requiere de una operación de lectura-modificación-escritura. dirección Verifica es N seleccionado Espera Confirma respuesta que recibí de selección confirmación Envía Espera bytes bytes de de datos datos Espera Confirma respuesta que recibí de todos los confirmación bytes =`^liX. Por ejemplo.) J\c\ZZ`e[\m\cfZ`[X[\j[\cgl\ikfj\i`\%X Df[f'%Y Df[f)%Z Df[fj(p*% El registro PCON no es direccionable por bit. sin modificar los otros bits. podemos realizar la siguiente secuencia de intrucciones: grupo editorial patria® 369 . SMOD  1. 5 El popular microcontrolador Procesador Procesador maestro esclavo N Recibe Enviar dirección. Oscilador Velocidad incorporado en el v 12 en bauds microcontrolador a) Modo 0 Oscilador v 64 SMOD  0 Velocidad incorporado en el en bauds microcontrolador v 32 SMOD  1 b) Modo 2 v 32 SMOD  0 Desbordamiento Velocidad del temporizador 1 en bauds v 16 SMOD  1 c) Modos 1 y 3 =`^liX.( GifkfZfcfj`dgc\[\Zfdle`ZXZ`eZfed’ck`gc\jgifZ\jX[fi\j% velocidad puede duplicarse hasta 1/32 de la frecuencia del oscilador si SMOD se establece en 1 lógico. por esta razón. como se ilustra en la figura 5.%(.%(.172b). TH1  256 – [(1)(fosc)/(384)(Baud rate) Por ejemplo.172c). Temporizador 1 como reloj de velocidad en bauds En el microcontrolador 8051. Aunque. Por lo común.PCON . cuando se reinicializa el sistema. 5 El popular microcontrolador MOV A. Asimismo. para obtener velocidades en bauds más exactas. esta es la razón principal por la que es muy común su uso. La tabla 5. Sin embargo.059 MHz. se utiliza un cristal de 11. el valor de TH1 es: TH1  256 – [(1)(12 MHz)/(384)(2400 bauds)  242. En estos modos.15 presenta algunos valores de recarga para TH1 y su porcentaje de error usando cristales de 12 MHz o 11. por tanto. para generar la velocidad en bauds se inicializa el registro TMOD en el modo 2. debido a que este modo no tiene recarga automática. puesto que los registros TH1 y TL1 deben reinicializarse cada vez que ocurra un desbordamiento. el bit SMOD del registro PCON se utiliza para dividir el desbordamiento del temporizador entre 32 o 16.lee el valor presente en el registro PCON SETB ACC.7 . los modos 1 y 3 usan el temporizador 1 para generar el reloj que determina la velocidad en bauds del puerto serie. por lo general un error de 5% es tolerable en las comunicaciones con UART. para las velocidades en bauds más comúnmente utilizadas.9  F3H No obstante. esto causa una pequeña pérdida de tiempo y de recursos en el software. con lo cual se provee del desbordamiento adecuado para la velocidad en bauds requerida. en estos modos. Sin embargo. la velocidad en bauds se determina con la velocidad de desbordamiento del temporizador 1. No obstante. ya que es posible alcanzar velocidades muy bajas usando el modo 1. de 16 bits. es necesario programar tanto los registros del puerto serie como los del temporizador 1. como se muestra en la figura 5. existe un ligero error al redondear el valor obtenido de TH1. modo de recarga automática de 8 bits. programando el registro TMOD con 0001XXXXB. lo cual podría llevarse a cabo en una rutina de servicio de interrupción. conocemos la velocidad de operación en bauds y la frecuencia del oscilador interno fosc. La fórmula para determinar la velocidad en bauds en los modos 1 y 3 es la siguiente: 2 SMOD fOSC Baud Rate  • 32 12 • (256 TH1) Por lo general. 370 ELECTRÓNICA • MIJAREZ .#0010XXXXB Los bits del temporizador 0 se representan por X y se sustituyen con el nibble adecuado.059 MHz. si se requiere una frecuencia de operación del puerto serie de 2400 bauds y se cuenta con una fre- cuencia del oscilador interno de 12 MHz. en MHz. y se establece el valor de recarga previamente calculado en el registro TH1. antes de generar el reloj que provee la velocidad en bauds al puerto serie. lo anterior no es necesario en el modo 2 del temporizador 1. necesitamos obtener el valor del registro TH1. El modo 2 del temporizador 1 no es la única opción.escribe valor al registro PCON Para los modos 1 y 3. según lo requiera este temporizador.establece en 1 lógico el bit 7 del acumulador MOV PCON. Para inicializar el registro TMOD en modo 2 se utiliza la siguiente instrucción: MOV TMOD.A . %(. potencialmente.#’C’ .500 12.400 12.16 19.7 . intuición.202 0. de 7 bits. E O O O O O O O     :Xi}Zk\i8J:@@ =`^liX.200 0 KXYcX. si se cuenta con un cristal de 12 MHz y se desea una velocidad de operación de 2400 bauds. P 1 CLR ACC.A .059 MHz 0 E8H 1. Véase figura 5.000 MHz 1 FFH 62.059 MHz 0 F4H 2.000 MHz 0 E6H 1.059 MHz 1 FDH 19. de 7 bits.0D?q% Por consiguiente.También puede utilizarse MOV TCON.Copia el contenido del bit de paridad a la bandera de acarreo MOV ACC.%(.400 0 1.#00100000B .200 11.P .600 0 2. modo 2 MOV TH1.C . por consiguiente.200 12. el cual se establece en 1 o en 0 lógico cada ciclo de máquina. P.Carga la letra C mayúscula en ASCII. En el modo 1 del puerto serie.000 MHz 1 F9H 8.400 11. como es el caso de los caracteres ASCII. M\cfZ`[X[\j\eYXl[jd}jZfdle\jZfefjZ`cX[fi\j[\()D?qp((%'. Como sabemos.16 1. PSW. igual a 43H (0100 0011B). más un bit de paridad.temporizador 1.Borra el MSB del acumulador MOV C.200 0 9. y no en bauds precisamente. contiene el bit de paridad.600 11. el registro de ban- deras o de estados.#0F3H .173. vamos a realizar algunos ejemplos sencillos que emplean el puerto serie para ganar una mayor comprensión y.valor de recarga SETB TR1 . como bit más significativo (MSB). existen algunas aplicaciones que requieren transmitir un bit de paridad.200 11. #40H Como puede comprobar.Transmite carácter.928 7 2. 5 El popular microcontrolador Velocidad Frecuencia #JU4. para determinar si existe una paridad par en los 8 bits de datos del acumulador.7. MOV A.059 MHz 0 FDH 9. Ejemplos de programación del puerto serie Hoy día.600 12.Almacena bit de paridad par en el bit MSB del acumulador MOV SBUF. sino en nuestro proceso de entendimiento del puerto serie del 8051. la secuencia de instrucciones para programar el temporizador 1 en modo 2 es la siguiente: MOV TMOD.404 0. los 8 bits de datos pueden estar formados por 7 bits de datos.* La siguiente secuencia de instrucciones nos permite transmitir un carácter ASCII.000 MHz 0 F3H 2. con paridad par en el bit 8. ¡ya estamos agarrando velocidad!.0% Valor de recarga Velocidad real Error en bauds del cristal (registro PCON) para TH1 en bauds (%) 62.500 0 9. más el bit de paridad par grupo editorial patria® 371 . Transfiere 8 bits de datos al acumulador En este ejemplo en particular.P . donde se observa que el bit TB8 del registro SCON se establece en 1 (SCON  08H). P 1 CLR ACC.Transfiere bit de paridad a bit de acarreo CPL C .Convierte a paridad impar MOV TB8. es necesario añadirle este 1 al bit más significativo.A .+ Si requerimos transmitir una paridad impar. 372 ELECTRÓNICA • MIJAREZ . MOV A.Carga la letra C mayúscula en ASCII. bit TB8 del registro SCON. el cual sabemos debe cargarse en TB8.Almacena bit de paridad par en el bit MSB del acumulador MOV SBUF.Borra el MSB del acumulador MOV C. debido a que el número 27H (0010 0111B) tiene un número par de 1 y queremos transmitir paridad impar. igual a 43H (0100 0011B). donde podemos apreciar que antes de ejecutar la última instrucción el acumulador ya contiene el dato a transmitir con paridad par. Por tanto. MOV A. C3H (véase figura 5. la cual es igual a 43H y contiene un número impar de 1. en consecuencia. el bit transmitido es un C3H.#’C’ .Bit de paridad se convierte en el noveno bit  TB8 MOV SBUF. el bit TB8 debe ser igual que 1.P . modos 2 y 3 del puerto serie. Véase figura 5. más el bit de paridad par En aplicaciones de múltiples procesadores. por medio de software. El programa es muy sencillo. como se aprecia en la si- guiente secuencia de instrucciones.#27H .Transmite carácter. podemos transmitir los 8 bits de datos del acumulador con una paridad impar agregada en el noveno bit. =`^liX. se transfiere al acumulador la letra C mayúscula. el número 27H. Esto lo podemos apreciar usando el simulador TS Controls.Conversión a paridad impar MOV ACC.A .7 .175. la bandera de paridad se establece en 1.Copia el contenido del bit de paridad a la bandera de acarreo CPL C . y añadimos paridad impar en el no- veno bit de datos.174). antes de transferir el dato al registro SBUF. 5 El popular microcontrolador En este ejemplo.C .%(. pero si se desea corroborar su funciona- miento se puede ensamblar con el Keil μVision y ejecutarlo usando el simulador TS Controls.Carga DATO a transmitir MOV C.7.C . En el siguiente ejemplo enviamos un dato de 8 bits. bit 8 del acumulador. Como queremos transmitir los datos con paridad par. solo es necesario añadir una instrucción. de 7 bits. para poder transmitir el siguiente. para finalmente poder leer el dato almacenado en el registro SBUF. Bien. respectivamente. buffer lleno CLR RI .Restablece RI. como veremos a continuación. para indicar al progra- mador que el buffer de transmisión se encuentra vacío. Ahora. Estas banderas se establecen en 1 lógico automáticamente.176. La bandera de RI se establece en 1 al final de la recepción de un dato para indicar que el buffer de recepción se encuentra lleno.Permanece en este ciclo hasta que TI  1.Restablece TI.%(. Es decir. 5 El popular microcontrolador =`^liX. la bandera TI se establece en 1 lógico al final de la transmisión de un dato. como se muestra en la siguiente secuencia de instrucciones: ESPERA: JNB RI. si se envía un dato por el puerto serie y posteriormente se requiere enviar otro dato. Si se desea enviar un dato al dispositivo conectado al puerto serie. entre un sistema basado en el microcontrolador 8051 y un programa monitor. la cuales forman parte de este registro. ESPERA . SBUF . El estado de esta bandera se verifica por software o se programa para generar una interrupción. RI  0 MOV A. el programa debe verificar que el primer dato se acabó de transmitir. con el fin de realizar la entrada o salida de datos por el puerto serie. el software tiene que esperarse hasta que el bit RI se establezca en 1 lógico y después restablecerlo en 0 lógico.Lee dato del registro SBUF De igual forma. supongamos que tenemos un esquema de comunicación UART de 8 bits de datos. con frecuencia las rutinas de transmisión y recepción se manejan por polling. si se desea recibir un dato del dispositivo conectado al puerto serie. La siguiente secuencia de instrucciones realiza la transmisión de un dato por el puerto serie: ESPERA: JNB TI. como se ilustra en la figura 5. la comunicación se realiza mediante el grupo editorial patria® 373 . En este.. TI  0 MOV SBUF. ESPERA . mediante hardware. Por claridad. Por tanto. ahora que hablamos del registro SCON. cuando ocurre una interrupción. como se verá posteriormente en el desarrollo de un ejemplo. sin embargo.Permanece en este ciclo hasta que RI  1. a través de la verificación del estado de estas banderas. deben ser puestas en 0 lógico por medio de software. se tiene que verificar mediante software que el registro SBUF de transmisión del puerto serie se encuentre dis- ponible. tipo hiperterminal de Windows.Escribe dato a transmitir al registro SBUF Las secuencias de instrucciones anteriores se utilizan con frecuencia como subrutinas. A . buffer vacío CLR TI . de una computadora personal (PC). a una velocidad de 2400 bauds. vamos a describir el uso de las banderas de interrupción de la trans- misión y la recepción. TI y RI. esto es.#40H . dato de 7 bits. con lo cual se configura el puerto serie como UART de 8 bits.(plegif^iXdXdfe`kfi [\leXZfdglkX[fiXg\ijfeXc% Para responder la pregunta planteada antes. cuya operación nos da como resultado los 240 caracteres por segundo. Para este registro se establecen los bits SM0  0 y SM1  1.16 ms. La pregunta es: ¿cuántos caracteres se transmitirían/re- cibirían en un segundo? 8051 TXD RXD RXD TXD Interfase Computadora personal =`^liX. tene- mos que 2400 bps/10 bits.16 ms.177: J:FE JD' JD( JD) I<E K9/ I9/ K@ I@ ' ( ' ( ' ' ( ' =`^liX.#0F3H .- <jhl\dX[\Zfdle`ZXZ`eL8IK[\/Y`kj\eki\lej`jk\dXYXjX[f\e\cμ:/'.Temporizador 1 modo 2 (recarga automática) MOV TH1. 240 caracteres por segundo. Cada carácter es transmitido como un bit de ini- cio. para indicar que el buffer de transmisión SBUF se encuentra vacío y se puede transmitir el primer dato. debemos a hacer referencia a la figura 5. 5 El popular microcontrolador puerto serie en modo 1 y emplea caracteres alfanuméricos (ASCII).. cada carácter está compuesto por 10 bits. TI  1.Habilita timer 1 La primera instrucción se relaciona con el registro SCON. Debido a que cada carácter está compuesto por 10 bits. En el siguiente ejemplo se pide realizar un programa para inicializar el puerto serie a 2400 bauds en modo 1. Los valores que requieren estos registros y la secuencia de instrucciones del programa se muestran a continuación: MOV SCON.#52H . se establece en 1 lógico el bit TI. Otra forma de ver este problema es entender los bauds de velocidad como bits por segundo (bps). es nece- sario programar los registros SCON. el microcontrolador opera con un cristal de 12 MHz. en la cual se ilustra que el periodo de cada bit es el recíproco de la velocidad en bauds. TCON. cada carácter tendría un periodo de 416. por último.67 μs. El dato que requiere este registro se muestra en la figura 5. TMOD y TH1 que explicamos en las secciones del temporizador y los registros del puerto serie. es decir como UART de 8 bits. establece en 1 REN y TI MOV TMOD.167. En este ejemplo. 1 bit de paridad par y un bit de detención. por consiguiente. y su frecuencia de transmisión/recepción sería de 1/4. Entonces.178: 374 ELECTRÓNICA • MIJAREZ .#20H .Puerto serie. Pero. La habilitación de la recepción de datos se realiza con el bit REN  1. f Cristal  12 MHz MOV TCON. el cual usa el temporizador 1 para proveer el reloj de velocidad en bauds.%(. 2400 bauds son 2400 bps. en este ejemplo. Para realizar este programa e inicializar el puerto serie. es decir 4. Los valores que requiere en este registro se resumen en la figura 5.67 μs r 10. un bit se tardaría en transmitirse o recibirse 1/2400 segundos o 416.baud rate 2400 bps.%(. La segunda instrucción se refiere al registro TMOD. / Para este registro. El esquema de co- municación que se solicita se ilustra en la figura 5.15 de esa misma sección. >8K< :&K D( D' >8K< :&K D( D' ' ' ( ' ' ' ' ' =`^liX. debido a que incorpora varias de las subrutinas relacionadas con el puerto serie. El objetivo es transmitir letreros con menús de con- trol para encender/apagar un LED de prueba de un sistema basado en un microcontrolador 8051. Aun cuando las prácticas son sencillas. además de que también incluye instrucciones de comparación. ambas tienen el mismo efecto en el registro. El valor calculado para 2400 bauds es F3H usando un cristal de 12 MHz.181. El programa se muestra a continuación: ORG 0000H EOL EQU 00H. Los bits restantes se establecen en 0 lógico debido a que controlan características o modos no requeridos para este ejemplo. En este caso.(End-of-line) fin de línea grupo editorial patria® 375 . TR1  1. se establecen los bits M1  1 y M0  0. conformados por caracteres ASCII. El bit GATE  0. se pide realizar un programa que transmita letreros alfanuméricos. sin habilitar las interrupciones. Este programa es del tipo integral. por tanto también puede usarse la instrucción SETB TR1. K?( ( ( ( ( ' ' ( ( =`^liX. con lo cual se provee del desbordamiento adecuado para la velocidad de 2400 bauds. se activa el temporizador 1.%(.%(/' Cuando el bit TR1 se establece en 1 lógico. la cual utiliza una instrucción de transferencia por byte (MOV TCON. incluyen los principales bloques de software que pueden trasladarse a aplicaciones específicas de uso práctico.0 La última instrucción es la inicialización del registro TCON. En esta práctica. y el bit C/T  0.%(. Para esto. el control del puerto serie se realiza mediante el “polling ” de las banderas de interrupción TI y RI. sin embargo. El cálcu- lo de este registro se obtiene usando la fórmula descrita en la sección Temporizador 1 como reloj de velocidad en bauds o de la tabla 5.#40H) para establecer en 1 lógico un bit del registro. se programa el contador/ temporizador 1 como temporizador en modo 2 de recarga automática de 8 bits. de transferencia de datos y directivas. 5 El popular microcontrolador KDF. usaremos las rutinas más comunes que se emplean en sistemas basados en microcontroladores con interfaz de comunicación RS232 o recientemente con interfaz USB. La comunicación que se requiere es entre un sistema basado en un microcontro- lador y una computadora personal con un programa monitor tipo hiperterminal de Windows. como se muestra a continuación. con el objetivo de permitir activar el temporizador con un bit del registro TCON. La tercera instrucción se relaciona con el valor de re- carga del registro TH1. Para esta ABPRA. Con esto. K:FE K=( KI( K=' KI' @<( @K( @<' @K' ' ( ' ' ' ' ' ' =`^liX. ABPRA para el puerto serie En esta sección reforzamos lo aprendido acerca del puerto serie por medio del aprendizaje basado en prácticas. este registro es direccionable por bit. .#40H .inicio arbitrario PRINCIPAL: CLR A MOV SCON.#20H .... establece en 1 REN y TI MOV TMOD.. OPCION2 CLR P1..#01010010B .#SEPARACION CALL TX_LETRERO MOV DPTR.#’2’.(linefeed) salto de línea JMP PRINCIPAL ORG 30H .#’1’.(carriage return) retorno de carro LF EQU 0AH.. frecuencia del cristal  12 MHz MOV TCON.Habilita temporizador 1 MOV DPTR.#INFORME CALL TX_LETRERO MOV DPTR.1>>> RXD <<<APAGA LED DE PRUEBA.Enciende LED JMP PRINCIPAL OPCION2: CJNE A..0 .@A DPTR 376 ELECTRÓNICA • MIJAREZ .****** RUTINA PARA TRANSMISIÓN DE LETREROS A LA PANTALLA ****** TX_LETRERO: CLR A MOVC A.5 El popular microcontrolador +5 V 220 <<PRUEBA DEL PUERTO SERIE>> 8051 <<ELEGIR UNA OPCION DEL MENU>> TXD <<<ENCIENDE LED DE PRUEBA.baud rate 2400 bps.0 RXD LED de TXD prueba Interfase Computadora personal =`^liX..Apaga LED JMP PRINCIPAL .0 .PRINCIPAL SETB P1.[\gil\YX% CR EQU 0DH.Puerto serie.#0F3H .....#MENU CALL TX_LETRERO CALL RX CJNE A.%(/( <jhl\dX[\Zfdle`ZXZ`egXiXgil\YX[\cgl\ikfj\i`\#ZfekiXejd`j`e[\c\ki\ifjpd\e’j[\Zfekifc gXiX\eZ\e[\i&XgX^XiC<.2>>> P1..Temporizador 1 modo 2 (recarga automática) MOV TH1.. ”<<<ELEGIR UNA OPCION DEL MENU>>>”. TX_LETRERO.LF. se termina la rutina. En consecuencia.1>>>”.******* RUTINA PARA RECIBIR CARACTERES POR EL UART del μC ** RX: CLR RI RX_D: JNB RI.. El primer dato en este caso es 0DH correspondiente al byte CR. primero borra el acumulador y posteriormente transfiere al acumulador el dato al cual apunta la di- rección de la etiqueta INFORME. transfiere la dirección de la memoria de código al DPTR donde se encuentra la etiqueta INFORME.LF. el cual proporciona un retorno de carro en el programa grupo editorial patria® 377 . usando una frecuencia de os- cilación interna de 12 MHz.. 5 El popular microcontrolador JZ TERMINA CALL TX INC DPTR JMP TX_LETRERO TERMI- NA: RET . se manda llamar la rutina TX_LETRERO..LF..LF..”<<<PRUEBA DEL PUERTO SERIE>>>” DB CR.. Esta rutina...*******LETREROS VARIOS A MONITOR************* INFORME: DB CR.”<<<ENCIENDE LED DE PRUEBA...”<<< >>>”. el cual se refiere a la inicialización del puerto serie en modo 1..RX_D .. La siguiente instrucción verifica si el resultado es 00H.Si RI  1.. #INFORME. fin de línea (End of line) y..TI  0 para reiniciar transmisión MOV SBUF. si el resultado es diferente de cero. El tercer bloque contiene las rutinas que transmiten los letreros hacia el monitor de la computadora personal. el bit de STOP fue transmitido por SBUF CLR TI ..SBUF RET . por tanto. el bit de detención esta en SBUF MOV A..EOL MENU: DB CR. el segundo bloque corresponde al primer grupo de instrucciones.Si TI  1.....LF..2>>>”. corroborando previamente que el registro SBUF se encuentre vacío...TX . entonces esta rutina manda llamar a la subrutina TX. Si la instrucción es 00H significa que el byte que leímos fue EOL.A RET . la cual es la encargada de transmitir el primer dato que se leyó en el acumulador. como lo describimos en el ejemplo anterior.. La primer instrucción de este bloque MOV DPTR. al final del programa. retorno de carro (carriage return). programado a 2400 bauds..EOL END El primer bloque del programa son directivas relacionadas con el control de los letreros que transmitiremos hacia el monitor de la computadora personal. En tanto.TI se inició igual a 1 JNB TI.EOL SEPARACION: DB CR.”<<<APAGA LED DE PRUEBA……. como ocurre con el primer dato.EOL DB CR.. Después de esta instrucción..******* RUTINA PARA TRANSMITIR CARACTERES POR EL UART del μC ** TX: ... el primer dato transmitido será 0DH. Pero.. El proceso se repite. dicha terminal se restablece en 0 lógico.1 (TXD) se utilizan para transmitir y recibir los datos seriales.. y posteriormente manda llamar la rutina TX_LETRERO. Esta rutina prosigue transmitiendo todos los bytes que corresponden a los caracteres ASCII...... retorno de línea (Linefeed). Después de ejecutar la subrutina RX. que corresponde a LF. que indica el fin de línea. Después de encender/apagar el LED de prueba.. El objetivo es transfe- rir un dato en paralelo de 8 bits en forma serial de un microcontrolador a otro en modo full dúplex. en cambio.. se transcribe el programa de la práctica: 39 Como los bits P3..... para reiniciar el programa.. 5 El popular microcontrolador monitor de la PC....39 8051 8051 TXD RXD RXD TXD P1 P3 P3 P1 =`^liX. el programa brinca a la etiqueta PRINCIPAL..0 (RXD) y P3. entonces se establece en 1 lógico la terminal P1.. o si no fue ninguna de las opciones solicitadas.. si es un 2.. se compara qué opción presionó el usuario. después de 0DH. en esta si se habilitarán las interrupciones.. se recomienda que P1. hasta llegar al byte 00H..%(/) <jhl\dX[\Zfdle`ZXZ`ej\i`XcZfeYXl[iXk\]`af% En esta práctica. borrando previamente el bit RI y verificando que el registro SBUF se encuentre lleno.. La subrutina TX termina y el programa continúa en la rutina TX_LETRERO. incluyendo los símbolos de menor que (<) y mayor que (>).. la instrucción siguiente carga en el registro DPTR la dirección de la etiqueta MENU. en este caso. ya que el bit RI se establece en 1 cuando el bit de detención se encuentra en el registro SBUF. Con la ejecución de la rutina anterior se despliega en la pantalla de la PC lo siguiente: <<<ENCIENDE LED DE PRUEBA. Hasta este momento.. A continuación. con velocidad en bauds fija...1 se conecten perma- nentemente en alto.... solo que en este caso únicamente se desplegará una línea de espacio en la pantalla de la PC.0 del μC.. la cual incrementa el valor del registro DPTR y brinca a leer el siguiente byte. De igual forma. encendiendo el LED de prueba. El puerto 1 de los microcontroladores se utiliza para leer los datos en paralelo y el puerto 3 se utiliza para escribir los datos leídos por el puerto serie.182 representa gráficamente este esquema de comunicación serial con baud rate fijo. la cual ejecuta la rutina de recepción de datos por el puerto serie.. 0AH. La subrutina RX es la encargada de recibir el dato que se encuentra en el acumulador... Si es un 1.1>>> <<<APAGA LED DE PRUEBA…………………. por lo que se desplegará en la panta- lla de la PC: <<<PRUEBA DEL PUERTO SERIE>>> <<<ELEGIR UNA OPCION DEL MENU>>> La siguiente instrucción carga en el registro DPTR la dirección de la etiqueta SEPARACION y después se manda llamar otra vez la rutina TX_LETRERO.0 y P1. con el fin de evitar un conflicto en la comunicación. el programa transmitió a la PC el letrero INFORME. A diferencia de la práctica anterior. apagando el LED de prueba. La figura 5. EOL. el puerto serie se programa en modo 2 para establecer la comunicación serial con una velocidad en bauds en modo fijo.2>>> El cuarto bloque de instrucciones inicia con la llamada de la subrutina RX. 378 ELECTRÓNICA • MIJAREZ . En el siguiente ABPRA se pide utilizar dos sistemas basados en un microcontrolador 8051. borra RI y brinca a leer dato de SBUF MOV SBUF.Si RI  1. Para obtener un mejor entendi- miento de este programa. Si la bandera RI  0.#98H . como el caso de equipos portátiles que operan con ba- terías.Habilita interrupciones MOV SCON. La interfaz depende de la selección adecuada de un circuito integrado para que la comunicación se realice con los niveles de voltaje y velocidad de la interfaz seleccionada. En esta práctica.Regresa al programa PRINCIPAL END El programa principal inicia en la dirección 0000H. para iniciar la transmisión por el puerto serie. las primeras dos instrucciones habilitan las interrupciones y el programa el puerto serie en el modo 2.40 Modos de ahorro de energía Existen aplicaciones donde el consumo de potencia es crítico.P1 . significa que la in- terrupción la generó la bandera de transmisión TI.P1 . lo más recomendable es simularlo usando el software TS Controls y habilitando las in- terrupciones TI y RI en el registro SCON.SBUF . el programa entra en un lazo de espera.#90H .Escribe en puerto 3 el dato recibido RETI .Espera a que ocurra la interrupción ORG 0023H JBC RI. RS485. mediante un PC que envía o recibe mensajes. con el objetivo de que estos se transmitan por el puerto serie. debido a que solo se utiliza la interrupción concerniente al puerto serie. direc- ción 0023H. 5 El popular microcontrolador ORG 0000H . grupo editorial patria® 379 . En la tercera instrucción. se recomien- da realizar las prácticas sugeridas en el apéndice que se encuentra en el CD que acompaña este libro. Si es así.Regresa al programa PRINCIPAL RECIBE: MOV P3. RI  1.Inicio después de reinicializar PRINCIPAL: NOP MOV IE.Programa puerto serial en modo 2. los microcontroladores permanecen inactivos por periodos muy largos. como se muestra en la figura 5.Trasmite el dato presente en el puerto 1 ESPERA: SJMP ESPERA . La si- guiente instrucción de la RSI borra la bandera TI. el mismo programa se ejecuta en ambos microcontroladores. TI  1. La interrupción hace que el programa brinque al vector asignado de la RSI. TI  0 y termina la RSI. hasta que llega una interrupción generada bien por la bandera RI o bien por la bandera TI.183.RECIBE . Las rutinas del puerto serie se usan en numerosos sistemas basados en microcontroladores con interfaces RS232. REN  1 y TB8  1 MOV SBUF. no hay nada como tener control de nuestro hardware. Por tanto. la siguiente ins- trucción transfiere el contenido del puerto P1 al registro SBUF. generadora de la interrupción RETI . y en tiempos recientes USB.Si RI  0. Una vez transmitidos los datos. indica que la interrupción la generó TI  1 CLR TI . nues- tro sistema basado en el 8051. La RSI del puerto serie verifica si la interrupción fue por recepción. Esto indica que el puerto serie terminó de enviar su dato por el puerto serie y que el registro SBUF se encuentra vacío para poder transmitir otro dato. esperando a que una 40 La práctica del puerto serie es muy interesante y por demás estimulante. los datos que se encuentran en el puerto P1 se transfieren al registro SBUF. De este modo. donde se pide realizar variaciones de los ejemplos mostrados en este texto. el cual opera con una velocidad en bauds fija. Por lo general. Por este motivo. el dato recibido de forma serial en el registro SBUF se escribe por el puerto P3 y termina la RSI. Por tanto.Borra la bandera TI. como se muestra a continuación. Lo anterior reduce la energía disponible en la fuente de alimentación cuando se usan baterías. los microcontroladores 8051 pueden consumir alrededor de 25 mA.7 SMOD Bit para generar double baud rate PCON. No implementadas. respectivamente. el cual puede permanecer sin usarse por meses y cuando se usa solo le toma unos milisegundos enviar un comando al receptor de la televisión. algunos modos óptimos para reducir la energía de operación. El resumen descriptivo de los bits que constituyen el registro PCON se muestra en la tabla 5. el cual no es direccionable por bit.4 -. 0 = deshabilitación) PCON. Un ejemplo típico es el control remoto de la televisión. Los teléfonos celulares son otro ejemplo donde el sistema basado en un microcontrolador puede durar inactivo por mucho tiempo. PCON.#cfZlXc\jkXYc\Z\I@4( [\kiXejd`j`e2gfikXekf#K4( =`^liX. #JU Símbolo Descripción (1 = habilitación.41 En ope- ración regular. no es necesario que ilumine la interfaz de despliegue. el teléfono celular iPhone tiene un sensor de proximidad. 380 ELECTRÓNICA • MIJAREZ . que indica al sistema de ahorro de energía que el usuario está hablando por teléfono y que tiene el teléfono cerca de su oído.6 -.5 -.\jgl„j[\\jZi`Y`i\eJ9L=#j\\jg\iX KXdY`„ej\gl\[\^\e\iXicX`ek\iilgZ`ej` Xhl\j\^\e\i\cX`ek\iilgZ`e[\]`e cc\^Xle[XkfIO.16. reservadas para uso futuro PCON. Di- chos modos son el modo desocupado idle y el modo de baja potencia power down. $$$$ $$$$ $$$$ >=( >=' G.%(/+ Los modos de ahorro de energía se activan estableciendo en 1 lógico los bits IDL y PD. G:FE JDF. 5 El popular microcontrolador . como una característica más. reservadas para uso futuro 41 Por ejemplo. El registro relacionado con los modos de ahorro de energía es el registro de control de potencia. @. reservadas para uso futuro PCON. localizado en la dirección 87H de los SFRs. por tanto. Sin embargo. con el fin de activar los modos idle o power down. No implementadas. las versiones CMOS del MSC-51 proveen. No implementadas.C =`^liX.%(/* señal externa haga su aparición. Toma de 2 a 3 ciclos de máquina para que el reset interno se lleve a cabo.%(- I\jld\e[\jZi`gk`mf[\ci\^`jkif[\Zfekifc[\gfk\eZ`X#G:FE% En caso de que ambos bits. se activa estableciéndose en 1 lógico PCON. En el modo idle.5 mA. la señal interna de reloj de la CPU es desactivada. 5 El popular microcontrolador #JU Símbolo Descripción (1 = habilitación. se activa estableciéndose en 1 lógico KXYcX. Al terminarse el modo mediante una interrupción. una instrucción que activó el modo idle también puede establecer a 1 lógico uno o los dos bits GF0 y GF1. después de la instrucción RETI.3 GF1 Banderas de propósito general PCON.0 sería la última instrucción ejecutada antes de entrar en este modo de ahorro de energía. Los pines mantienen los estados lógicos que tenían al momento que se activó el modo idle. En el modo idle. t Reset por hardware. El estado de la CPU se preserva en su totalidad: el SP. . sin embargo. Se dará servicio a la RSI y.1 PD Bit para modo power down. se recomienda que la instrucción siguiente a la que invoca el modo idle. pero no a los puertos. el modo preponderante es power down.0 se borre por hardware. grupo editorial patria® 381 .185. el hardware inhibe el acceso a la RAM. el Acc y otros registros mantienen sus datos. Por lo normal.2 GF0 Banderas de propósito general PCON.(gXiXcfjdf[fj`[c\pgfn\i[fne% Activación del modo idle Al activar el modo idle. Al recibirse un pulso de reinicialización en el pin RST. la instrucción que establece en 1 lógico el bit PCON. IDL y PD se establezcan en 1 lógico. no sea de acceso a RAM externa o puertos. las interrupciones. el puerto serie y los temporizadores continúan operando. XTAL2 XTAL1 Osc Interrupciones. Du- rante este tiempo. Existen dos maneras de terminar el modo idle: t La activación de cualquier interrupción previamente habilitada. Por ejemplo. mientras que ALE y PSEN se establecen en niveles lógicos altos. la RSI puede examinar estos bits.185 muestra el diagrama lógico del hardware del 8051 para los modos idle y power down.`X^iXdXc^`Zf[\c_Xi[nXi\[\c/'.%(/. el PSW. las banderas GF0 y GF1 pueden usarse para indicar si una interrupción ocurrió en operación normal o cuando se encontraba en modo idle. 0 = deshabilitación) PCON. el PC. internamente se limpia el bit IDL de manera directa y asíncrona. Lo anterior causa que el bit PCON. Por ende. Generador puerto serie. terminando el modo. como se aprecia en la figura 5. el consumo corriente en este modo es de aproximadamente 6.0 IDL Bit para modo idle. de reloj temporizadores ___ CPU ___ IDL PD =`^liX. La figura 5. la próxima instrucción a ser ejecutada será la instrucción subsiguiente de cuando se activó el modo. simultáneamente. La combinación de memoria Flash con la versatilidad del CPU del 8051. Los pines P1. 42 Estas se utlizan para aplicaciones que requieran menor o mayor capacidad de memoria Flash que el AT89C2051. 5 El popular microcontrolador Activación modo power down Al igual que el modo idle.0 a P3. Entre las características principales de la arquitectura 2051 destacan: t Dos Kbytes de memoria Flash.0 y P1. Asimismo. como el original 8051. El consumo de corriente en este modo es de aproximadamente 40 μA. y el bit 6 del puerto 3 (P3. ya que también sirven como las entradas positivas y negativas del comparador analógico.6 no se encuentra disponible como E/S de propósito general. la instrucción que establece en 1 lógico el bit PCON.2 y P1. ya que VCCe debe restablecerse a 5 V antes de terminar el modo. Por otra parte. aunque esta característica es un poco truculenta. aproximadamente 10 ms. presenta características de bajo consumo. sería la última instrucción ejecutada antes de entrar en este modo.5 y P3. En cambio. el periférico interno adi- cional del microcontrolador AT89C205142 es un comparador analógico. sin embargo.6 se encuentra alambra- do como una entrada de la salida del comparador y no se puede acceder a él.6 en 1 lógico. y ALE y PSEN se establecen a un nivel lógico bajo. y por tanto todas las funciones. La arquitectura del 2051 cuenta con 15 líneas de E/S. Una vez en modo power down.0 (AIN0) y P1. El fabricante Atmel cuenta con los uC AT89C1051 y el AT89C4051. Arquitectura del AT89C2051 Existen muchos microcontroladores compatibles con la arquitectura del MCS-51. cuando AIN0 es mayor o igual a la entrada analógica AIN1. el ciclo de máqui- na y la mayoría de sus instrucciones se pueden ejecutar en 0. Por esta razón.8 USD). como se observa en la figura 5. correspondientes a los puertos P1 y P3.5 μs. P3. El reset no se debe activar antes de que se restablezca VCC y debe permanecer activo lo suficien- te para permitirle al oscilador inicializarse y estabilizarse. buen desempeño y costo com- petitivo (1. el pin P3. t Tiene 15 líneas de E/S. t Cuenta con 128 bytes de RAM. el puer- to P1 es un puerto de E/S bidireccional. son de E/S bidireccional. t Un comparador analógico. En tanto. t Dos niveles para bloquear la memoria Flash. el voltaje de alimentación (VCC) se puede reducir a 2 V. tiene una memoria flash de 2 Kbytes en un empaquetado de solo 20 terminales. el ciclo de máquina de la arquitectura AT89C2051 consiste en 12 periodos del oscilador. t Frecuencia de operación de hasta 24 MHz. La única forma de desactivar el modo power down es mediante un reset por hardware. P3. este comparador usa las terminales P1. sin embargo P1.6) como salida del comparador.186. la RAM interna y los SFRs se mantienen activados. Precisamente. pero no cambia los valores de la RAM interna. los cuales incluyen mayor cantidad de periféricos internos y mejor desempeño operativo que el original 8051 de Intel. de igual manera que el original 8051.1. Como mencionamos antes. t Dos temporizadores/contadores|. Los pines del puerto P3. t Seis fuentes de interrupción.7. de Atmel.7 contienen pull-ups internos.1 (AIN1) como entradas analógicas. el oscilador interno es detenido.1 requieren pull-ups externos. t Un UART. además de contar con los periféricos internos de la arquitectura 8051. como lo muestra el diagrama de bloques de la figura 5. AIN0 y AIN1. con 1 Kbytes y 4 Kbytes de memoria Flash. 382 ELECTRÓNICA • MIJAREZ . Debido a que el AT89C2051 no cuenta con los puertos P0 y P2. Unos de estos microcontroladores es el μC CMOS de 8 bits AT89C2051. Este. al activar el modo power down. respectivamente.187. respectivamente. Las salidas de los pines de los puertos mantienen sus valores establecidos por sus respectivos registros de funciones especiales. la construcción del sistema mínimo requiere de un número reducido de componentes. En su caso. sin embargo. El reset redefine todos los SFRs.7 a 6 V. proveen la flexibilidad necesaria para resolver diversas aplicaciones de control en sistemas embebidos. como su frecuencia de operación máxima es de 24 MHz. En el modo power down. t Voltaje de operación de 2. el CPU del μC establece la salida P3. 187.2 kΩ.0 (AIN0) Temp. a través un capacitor de 10 μF. aunque su pre- sencia no afecta su funcionamiento.(% En las versiones HMOS.2 kΩ. 5 El popular microcontrolador VCC Reg. a través de una resistencia de 8. el reset automático se obtiene conectando el voltaje de alimentación VCC a la terminal RST.0-P1.2 PSW programa (T0) P3.4 serie y temporizadores (INT0) P3.6 Incremento XTAL2 4 17 P1. Por tanto. 2 Temp. Buffer RST/VPP 1 20 VOC Temp.5 P3.2 6 15 P1. GND 10 11 P3.%(/- 8ihl`k\ZkliXp[`jki`YlZ`e[\k\id`eXc\j[\c8K/0:)'.3 7 14 P1. grupo editorial patria® 383 . en consecuencia.3 Contador de (INT1) P3.(% VCC 30 pF XTAL1 VCC 24 MHz 1 F XTAL2 RST 30 pF AT89C2051 GND =`^liX. las versiones CHMOS.7 P3.0 2 19 P1.0-P3. Reg.5 ALU del PC (PC + 1) Interrupciones. como el AT89C2051. Sin embargo. Reg.1 (AIN1) (PC) (T1) P3.%(/.7 =`^liX.1 3 18 P1. tienen una resistencia de pulldown conectada a la terminal RST. Dir GND RAM FLASH RAM Registro Acumulador Stack Reg.5 9 12 P1. y a GND. puerto XTAL1 5 16 P1.4 8 13 P1.7 Reset y Instrucción DPTR (RST) Control (IR) Comparador LATCH LATCH analógico P3 P3 + – Oscilador Puerto P1 Puerto P3 P1.92.7 (TXD) P3. J`jk\dXdˆe`dfljXe[f\cd`ZifZfekifcX[fi8K/0:)'. como se observa en la figura 5. podemos eliminar esta resistencia y reducir el valor del capacitor a 1 μF. 1 (RXD) P3. Dir B (ACC) Pointer de programa (SP) Reg. como se mostró en el circuito de reset del 8051 de la figura 5. no requieren de la resistencia de 8. la corriente ICC es 15 mA/5. un brinco a una etiqueta con dirección A07H.0 V VCC  6. asimismo.0 V I 15 I I 15 C C 2 C VCC  5. se debe tener en mente que este dispositivo solo tiene 2 Kbytes de memoria flash.189. será una instrucción válida. con voltajes de alimentación de 1. el programa de control es muy simple. 43 Aunque el AT89C2051 es competitivo en ahorro de energía.0 V VCC  5. No obstante. En este caso. Para esto. Sin embargo.43 ABPRA para hacer uso del comparador El siguiente punto consiste en analizar cómo hacer uso del ABPRA. existen microcontroladores como la familia MPS 430.)#gXiXcfjdf[fjXZk`mf#`[c\pgfn\i[fne% Las características anteriores de ahorro de energía del μC AT89C2051. Asimismo.1 μA.188 muestra este tipo de gráficas en los modos activo. De igual modo. en el modo idle la corriente ICC es de 5 mA/1 mA con voltajes de 6 V / 3 V.0 V 1 m 5 m ½ 5 A A VCC  3. Por ejemplo. por ejemplo un motor de CD de 12 V. si el voltaje de alimentación o la frecuencia de operación son diferentes a los especificados en las características de CD. las cuales muestran ejemplos de consumo de corriente de alimentación (ICC) a 12 MHz. operando a 6V y 3 V en modo activo. En la actualidad. la memoria flash puede borrarse y pro- gramarse. operando a 6 V / 3 V. 5 El popular microcontrolador Como sabemos.6 V. las cuales pueden ser programados al momento de grabar un programa en la memoria flash.189 se utilice para controlar una carga. corriente de alimentación de 220 μA en modo activo y los modos de ahorro de energía presentan corrientes ICC de 0. para saber la potencia que consume el dispositivo. En tanto.0 V C 10 C C 10 VCC  3. y un voltaje de referencia. este no es el único. idle y power down.5 mA operando a 6 V/ 3 V.0 V 5. Si estos bits se dejan sin programar. En el modo power down.0 V A 0 0 0 0 6 12 18 24 0 3 6 9 12 3. el cual incluya una fotorresistencia.5 μA y hasta 0. Pero.0 V Frecuencia (MHz) Frecuencia (MHz) Voltaje (VCC) =`^liX. se deben consultar las gráficas de desempeño de potencia. se solicita que la configuración de la figura 5.0 V 4. y no se desea tener más cambios en la memoria. ¡Fascinante! 384 ELECTRÓNICA • MIJAREZ . el μC AT89C2051 es totalmente compatible con la arquitectura del MCS-51 y puede ser progra- mado con el mismo conjunto de instrucciones. LJMP 709H. En este caso. debe desactivar el motor y apagar el LED cuando entre la luz ambiental a la fotorresistencia. idle y power down. En el modo activo. las instrucciones con MOVX tampoco serán válidas. se deshabilitará la capacidad de reprogramar dicha memoria. ICC modo activo (85°C) ICC modo activo (85°C) ICC modo activo (85°C) 20 3 20 VCC  6. la cual podría ser ½ VCC. si estos se programan. posteriormente. por tanto es responsabilidad del programador no realizar brincos mayores a los 7FFH. se requiere que las entradas del comparador consten de un divisor de voltaje.0 V 6. un brinco a una etiqueta localizada en la dirección 709H. el AT89C2051 cuenta con dos bits internos. modo idle y modo power down.8 V a 3. primero vamos a verificar el funciona- miento del periférico interno adicional en la arquitectura del AT89C2051. El programa que realiza esta tarea de control es el siguiente. pero. no lo será. Ahora. es necesario consultar la hoja de datos rela- cionada con las características de CD. lo convierten en un atractivo candidato para aplicaciones con equipos portátiles que requieran operar con baterías. Sin embargo. la corriente ICC es 100 μA/20 μA. Lo anterior es útil cuando ya se tiene completamente de- purado y probado un programa. como se ilustra en la figura 5. debido a que este μC no cuenta con los puertos P0 y P2.%(// MXcfi\jkˆg`Zfj[\Zfii`\ek\[\Xc`d\ekXZ`e@:: [\c8K/0:)'. este debe activar el motor y encender un LED cada vez que se cubre la fotorresistencia de la luz ambiental. se llevará a cabo la programación de la memoria flash y. LJMP A07H. el comparador analógico. que tienen características superiores de ahorro de energía. de Texas Instruments. La figura 5. Los modos de ahorro de energía en este microcontrolador son los mismos que en el original 8051. Algunas de estas interfaces seriales son: grupo editorial patria® 385 .Desactiva motor JMP INICIO .2 .Si CY  0. Interfaces de E/S seriales En la actualidad existe una gama amplia de interfaces de comunicación serial.6 . de E/S digitales y E/S analógicas. 5 El popular microcontrolador VCC AT89C2051 330 ohms 5 V P1.Establece AIN1 como entrada SETB P1.inicio SETB P1. se cubre fotorresistencia.2 .0 .3 .Apaga LED CLR P1.Brinca a leer el estado del comparador PRENDE: CLR P1.5 V Vx 12 AIN0 10 k7 1 K7 P1. las cuales permiten comunicar un mi- crocontrolador con otros dispositivos. Vx>2. Las interfaces que mostramos incluyen ejemplos de interfaces de E/S seriales.%(/0 Gil\YX[\cZfdgXiX[fiXeXc^`Zf`ek\^iX[f\e\cμ:8K/0:)'.5V.Establece AIN0 como entrada SETB P1.Enciende LED SETB P1.3 .2 .3 .Brinca a leer el estado del comparador END Interfaces sencillas de hardware En esta sección ilustramos de manera simplificada.(% ORG 0000H .Activa motor JMP INICIO .Desactiva Motor INICIO: MOV C.5V Apaga LED CLR P1. algunas interfaces sencillas de hardware. SETB P1.Lee estado del comparador JNC PRENDE . por razones de espacio en esta edición.CY 1.1 .3 15 12 V FR 13 AIN1 2.P3. que pueden utilizarse con los microcontroladores MCS-51.2 14 =`^liX. Vx< 2. esta ha sido apabullantemente reemplazada por otras interfaces seriales. las señales que viajan del 8051 al puerto serie de la PC requieren seguir el estándar RS232. uno de los periféricos internos con los que cuenta el μC 8051 es un puerto serie. Debido a que no Conector Controlador de línea DB9 (driver) RS232 1 TXD 2 (RXD) RXD 3 (TXD) GND 5 (GND) 4 6 AT89C2051 7 8 9 =`^liX. y de –3 V a –15 V para un 1 lógico. De esta manera. La función del estándar con- siste en especificar. analizamos de manera general la interfaz serial RS232 y posteriormente bosquejamos la ahora omnipresente interfaz USB. de TTL a RS232 y de RS232 a TTL. La interfaz RS232 fue muy usada durante la década de 1990. los niveles lógicos de voltaje son de 3 V a 15 V para un 0 lógico. Como se observa en el ejemplo de la figura 5. ±5 V.(Zfe`ek\i]XqIJ)*)% 386 ELECTRÓNICA • MIJAREZ . las conexiones entre el 8051 y la PC deben llevarse a cabo mediante un controlador de línea o driver. Debido a esta diferencia. ±10 V y ±15 V.%(0' D`ZifZfekifcX[fi/'. esto es. A cambio.181. el puerto serie de la PC es compatible con el estándar de comunicación serial RS232 o EIA 232. como la USB. respectivamente. los valores de voltaje más utilizados son ±3 V. La función de los controladores de línea o drivers consiste en realizar la conversión entre los diferentes niveles de voltaje. típica- mente de 0 a 5 V. por lo que sería extenso describirlas todas. a través de un controlador de línea como el MAX1489. Lo anterior tiene como objetivo continuar con la misma tónica de este libro: adquirir un entendimiento intuitivo de las comunicaciones seriales. 5 El popular microcontrolador t USB (Universal Serial Bus) t CAN (Controller Area Network) t SPI (Serial Peripheral Interface) t I2C (Inter Integrated Circuit) t UART (Universal Asynchronous Receiver Transmitter) t LIN (Local Interconnect Network) t Ethernet También existen interfaces inalámbricas como: ZigBee. Bluetooth y WiFi. a circuito abierto. los niveles de voltaje de hasta ±25 V.190 muestra la conexión de un μC 8051 a la interfaz serial RS232. Es importante destacar que estos niveles de voltaje no son compatibles con los niveles de voltaje TTL que utiliza el μC 8051. un 8051 se conecta al puerto serie de una PC. La importancia de la interfaz RS232 radica en que durante muchos años fue una característica es- tándar en los puertos de comunicaciones seriales. Estos conectores tienen la forma de la letra D mayúscula y tienen 25 o 9 terminales. Cada una de estas interfaces tiene diferentes aplicaciones. por consiguiente. Interfaz RS232 Como aprendimos en el apartado anterior. los cuales dependen de las fuentes de alimentación. sin embargo. por consiguiente. como los módems de muchas computadoras. La figura 5. sin embargo. El cable que conecta a los dispositivos termina en ambos extremos con un conector denominado DB25 o DB9. con el fin de utilizar después cualquier otro tipo de comunicación que requieran nues- tras aplicaciones. se conectan a la alimentación de la com- putadora. lo cual limita tanto la inmu- nidad al ruido. Velocidad 1200/2400/9600/ bauds #JUTEFEBUPT 8 Paridad Ninguna #JUEFEFUFODJØO 1 bit KXYcX. Lo anterior causa los deno- minados “lazos de tierra”. ocasionando que la terminal GND. ter- minal de datos disponible (DTR) y un conjunto de datos disponibles (DSR). y la terminal GND. como maquinaria. el conector más común es el DB9. Para enfatizar cómo trabaja la interfaz RS232. El uso de tierra común limita el estándar RS232 a aplicaciones con cables relativamente cortos. las conexiones de tierra en cualquiera de los extremos tendrán diferentes voltajes. MXcfi\jkˆg`Zfj\e\cgif^iXdXdfe`kfiZfdfcX_pg\ik\id`eXc[\N`e[fnj% Las señales de transmisión y de recepción en el estándar RS232 son referidas a tierra. Este ruido puede ser inducido por el cable. RXD y GND.191. las terminales más utilizadas son TXD. que en este caso afectarían las comunicaciones. de la figura 5. en uno de los extremos. como la distancia de transmisión. 5 El popular microcontrolador todas las terminales son utilizadas. pueden ocurrir ciertos problemas. Esto se debe a que ambos extremos de los circuitos RS232 dependen de que la señal GND sea 0 volts. estos niveles de voltaje son transmitidos al controlador de línea y después a través de un cable son transmitidos a la PC. como lo ilustra la transmisión del carácter ASCII para la letra ´J´. como se muestra en la figura 5. Cuando fuentes de ruido.%(0( :fekifcX[fi[\cˆe\Xhl\Zfem`\ik\leXkiXejd`j`e[\cXc\kiXËAË[\e`m\c\jKKCXe`m\c\jIJ)*)% Los valores típicos de programación en el programa monitor de la PC. El puerto serie del μC 8051 genera un tren de bits TTL (0 – 5 V) en la terminal TXD. Esta interfaz incluye líneas de control para ha- bilitar protocolos de comunicación como petición para enviar (RTS).185.%(. en este caso a ±12 V. retomamos el ejemplo de la figura 5.190. 4AH. Si los dos dispositivos se encuentran separados a distancias muy grandes. no tengan 0 volts. El controlador de línea convierte los niveles TTL a nive- les RS232. en el otro extremo. el cual concede permiso para enviar (CTS). Sin embargo. esta diferencia es la que grupo editorial patria® 387 .17. como la hyperterminal de Windows. se muestran en la tabla 5. Valor lógico 1 0 0 1 0 1 0 0 1 0 1 1 12 V 5 V t Niveles TTL en la terminal de salida (TXD) de UART 12 V t 12 V Niveles RS232 en la terminal de salida del controlador de línea Estructura de datos B0 B1 B2 B3 B4 B5 B6 B7 Inicio Detención =`^liX. com/Support/Documents/ DataSheets/Modules/DS_MM232R. los conectores tipo A se encuentran en host y hubs como las PC. Windows Vista. El estándar define cables. La interfaz USB fue diseñada con el propósito de estandarizar la conexión de periféricos en las computadoras. 388 ELECTRÓNICA • MIJAREZ .25 V. RS485 y la interfaz USB.0 introdujo un mini USB tipo B. y nueve en la versión USB 3. Esta interfaz. provee el voltaje de ali- mentación. se encuentran en los “dispositivos” como nuestro sistema basado en un microcontrolador MCS-51. la especificación USB 2. Este circuito constituye una interfaz serial USB-UART. la cual se puede obtener en la liga: http://www. XP.44 El MM232R es un módulo miniatura. impresoras. entre otros.ftdichip. los denominados smartphones. comunicación y alimen- tación entre computadoras y dispositivos electrónicos.%(0) :fe\Zkfi\jLJ9k`gf8p9pjl[`jki`YlZ`e[\k\id`eXc\j% Por lo común. tal es el caso de las interfaces RS422. t Velocidad de 300 bps a 3 Mbps (RS422/RS485 y TTL) y de 300 bps hasta 1 Mbps RS232. la in- terfaz USB ha reemplazado a otras interfaces seriales y puertos paralelos. Los datos son empaquetados de acuerdo con la especificación del estándar en cuestión y la velocidad de transmisión es de 1. La solución a este problema es utilizar señales seriales diferenciales que no estén referidas a tierra. t Driver de puerto virtual (software libre). por lo que no son necesarias las fuentes de alimentación de los equipos portátiles. En la actualidad. aparte de realizar la comunicación entre dispositivos.0 y USB 2.192.0.pdf. equipos portátiles y discos duros. como teclados. etcétera.5/12/480/5000 Mbps. Las especificaciones generales del estándar USB incluyen una longitud de transmisión de 5 metros. Una de estas opciones es el módulo MM232R mini USB-serial UART.3 V a 5. Las señales eléctricas son de 5 V (±5%) con una corriente de 500 mA a 900 mA dependiendo de la versión. por sus siglas en inglés) y vi- deojuegos. como lo ilustra la figura 5. Existen dos tipos de conectores USB llamados tipo A y tipo B.0. por lo general. permiten conexión con los sistemas alimentados (hot pluggable) y el cable está constituido por 4 alambres en las versiones USB 1. t Alimentación por bus y por fuente externa. también dependiendo de la versión.0. Conector tipo B D Conector tipo A 1 2 Terminal 1 VCC ( 5 V) D D Terminal 2 Dato Terminal 3 Dato Terminal 4 GND 4 3 2 1 4 3 D =`^liX. Algunas de sus características principales son: t Interfaz UART de 7 u 8 bits. Interfaz USB La interfaz USB (Universal Serial Bus) es un estándar de la industria desarrollado en la década de 1990. conectores y protocolos de comunicaciones usados en un bus para su conexión. la cual puede extenderse con un hub como tarjetas madre o PC. La forma más fácil de realizar una interfaz serial entre un sistema basado en el microcontrolador 8051 y una PC es usar un módulo que nos convierta las señales TTL o RS232 de nuestro sistema al popular estándar USB y viceversa. cámaras digitales. 5 El popular microcontrolador reduce el margen de ruido en las señales. Mientras que los conectores tipo B. Debido a la existencia de dispositivos electrónicos en miniatura. asistentes personales digitales (PDA. el cual usa el circuito integrado FT232RQ de FTDI. 44 Se recomienda revisar la hoja de datos del módulo MM232R. ya que se encuentra en dispositivos como teléfonos celulares. t Velocidad compatible con el estándar USB 2. t Alimentación de 3. Usando microcontroladores MCS-51 con ADC o comparadores como parte de los periféricos internos del μC.04 WHQL Certified que contiene el driver virtual. Sin embargo.04-WHQL-Certified. 45 El archivo CDM 2.html.194. como se ilustra en la figura 5. Algunas de las salidas digitales simples más importantes se ilustran en la figura 5. grupo editorial patria® 389 .`X^iXdX[\Zfe\o`e\eki\led`ZifZfekifcX[fi/'. Una de estas páginas es: http://www.193 nos permite realizar el ABPRA de la figura 5.02.02.(pled[lcfDD)*)I% La conexión de la figura 5. con nuestro humilde sistema basado en el microcontrolador 8051. en esta sección solo mostramos las conexiones de hardware y se dejará al talento de los lectores. si esta tiene Windows XP debe de identificarlo. por medio del uso del puerto USB de la PC.filecrop. los microcontroladores 8051 pueden interconectarse a estos dispositivos. y estableciendo previamente los valores de comunicación en la hyperterminal de Windows. como se muestra en la figura 5. Así. Programar la hyperterminal para recibir la información proveniente del sistema basado en un microcon- trolador.45 2.%(0* .com/ CDM-2.1 (TXD) 11 7 RXD SLEEP# 10 K7 CTS# CLK12M =`^liX.04 WHQL Certified puede descargarse de Internet en varias páginas. es posible realizar interfaces de hardware para entradas analógicas sencillas. Esto nos permi- tiría dejar atrás la ahora anacrónica interfaz RS232 y entrar a la modernidad.193 ilustra la conexión entre un microcontrolador 8051 y un módulo MM232R.0 (RXD) RTS# 11 RESET# P3.196. realizar las adaptaciones pertinentes al hardware y desarrollar el software que corresponda. es importan- te que revise las hojas de datos del dispositivo MSC-51 que esté usando. Una interfaz digital muy común se relaciona con los motores de pasos. ejecutarlo en la PC y definirle una trayectoria. 5 El popular microcontrolador El procedimiento para realizar la interfaz de hardware entre un sistema basado en el 8051 y el MM232R es el siguiente: 1. +5 V MM232R SHIELD SHIELD 80C51 2 15 VCC USBPWR 3 14 VCC10 VCC50 VCC30 13 4.197.7 K7 GND 10 5 TXD PWREN P3. 3. como se muestra en la figura 5.181.02. La figura 5. Descomprimir el archivo CDM 2.rar. concón respecto a la capacidad de voltajes y corrientes que el μC puede proveer (source) o absorber (sink).195. Interfaces de hardware para E/S digitales y analógicas Las terminales del microcontrolador 8051 pueden conectarse en forma directa a diversos dispositivos. Conectar MM232R a la PC. también es posible conectar directamente los puertos de un microcontrolador MCS-51 a convertido- res analógicos tipo ADC o DAC. los diseñadores. Asimismo. Sin embargo. los cuales pue- den ser digitales o analógicos.  @ek\i]Xq[\_Xi[nXi\[\leμ:/'.%(0- @ek\i]Xq[\_Xi[nXi\[\leμ:/'. existen sistemas híbridos (analógicos y digitales) integrados en circuitos de 8 terminales.0 Q M VCC Negro 1 K½ Motor de pasos Airopax 5 V.198.%(0+ @ek\i]XZ\j[\_Xi[nXi\jgXiXjXc`[Xj[`^`kXc\j[\leμ:% Motor P1 de pasos VCC 80C51 Rojo Rojo Café Naranja 10 K½ Amarillo Fase 1 (motor de pasos) D P1. Control 65 ohms 10 K½ P1.%(0. 5 El popular microcontrolador VCC 12 V 12V 47uF Relé de estado sólido Relé 1 K7 A una salida A una salida A una salida A una salida digital digital digital digital =`^liX.(Zfeledfkfi[\gXjfj% Voltaje de entrada 5V de CD 5V Ent R1 10 K7 Sal Pot LM34 10 K7 10 K7 R2 75 7 10 K7 A entrada A entrada 1 MF A entrada analógica analógica analógica =`^liX. Tal es el caso del sensor de temperatura DS1620 o el potenciómetro digital DS1267 que se muestran en la figura 5. 390 ELECTRÓNICA • MIJAREZ .1 Q D 1 K½ =`^liX. los cuales pueden programarse en forma serial.(Zfe\ekiX[XjXeXc^`ZXj% Además. como sensores o potenciómetros digitales. 1 CLK P3. Dallas/Maxim.2 4 4 2 25 15 CLK IN +5 V 13 VCC I0 4 6 P1.5 Vin( ) de ajuste P1. el DQ80251.0 RST P3. Silicon Labs.(Zfe`ek\i]Xqj\i`XcX[`jgfj`k`mfjXeXc^`Zfj$[`^`kXc\jZfdfj\ejfi\j [\k\dg\iXkliXfgfk\eZ`d\kifj[`^`kXc\j% Futuro del 8051 y los microcontroladores La arquitectura del 8051 no solo ha permanecido.3 P1.1 P1.3 9 D3 1 Vref 9 nc 10 nc 4.2 RST P1.%(0.0 12 26 16 ADC 10 K7 D0 7 P1.4 24 14 150 pF 16 10 COMP 3 8 LM301 P1. del fabricante Microchip y la arquitectura MPS430.1 11 27 17 D1 12 V 12 V P1.(Zfe`ek\i]XqjXc`[X&\ekiX[XXeXc^`ZX% 80C31BH AT89C2051 VCC H1 P1.2 D2 DAC P1. grupo editorial patria® 391 . el cual ofrece resultados 56 veces mejores que el estándar 8051 de Intel y 70% más eficiencia que cualquie- ra de sus competidores.4 D4 P1. NXP. asegurar su permanencia en el mercado por muchos años más. solo por mencionar algunas opciones. sino ha madurado con el transcurso del tiempo.5 23 13 D GND 8 2 1 22 12 15 pF GND P1. del fabricante Texas Instruments. D`ZifZfekifcX[fiD:J$.0 28 18 CLK R P1. se han encargado de mejorar sus especificaciones técnicas.2 DQ P3. también existen excelentes arquitecturas de mi- crocontroladores en el mercado.7 K7 19 P1.6 6 D6 1 7 15 1 K7 CS 7 pequeño P1. Hoy día las mejoras continúan y la tendencia indica que seguiremos siendo testigos de los avances en la humilde. esta arquitectura no es más vieja sino cada vez es mejor.5 D5 Vref– 2 RD Vin( ) 8 10 K7 P1. pero versátil arquitectura de 8 bits del 8051 de principios de la década de 1980.%(0/ D`ZifZfekifcX[fiD:J$.4 DQ L1 TH1 TL0 DS1237 TCOM DS1620 =`^liX.3 CLK W1 Vsal P1. Algunas de estas arquitecturas son la ARM.6 A GND P1. la arquitec- tura MIPs. De esta manera. recien- temente Digital Core Design anunció el microcontrolador con arquitectura del 8051 más rápido del mundo. ST. 5 El popular microcontrolador ADC0804 MC1408L8 1 K7 3 VCC 20 +5 V P3.7 D7 Vref+ 5 V P3. Atmel. como Atmel. la cual tiene como fabricantes NXP.4 WR potenciómetro 5 14 5 INTR 6 P1. Rabbit y otros. Freescales.7 21 11 VEE 33 pF 3 AT89C2051 80C31BH –12 V =`^liX. Pero el 8051 no es la única arquitectura de microcontroladores. ST. Infineon. Como los buenos vinos. de las cuales podemos beneficiarnos si se tienen los conocimientos básicos. entre otros. La existencia de fabricantes con licencia de la arquitec- tura 8051. Asimismo. en la actualidad podemos obtener microcontroladores por el costo de un café en cualquier restauran- te. ± Los microprocesadores eran el componente princi. Dos ± El primer microprocesador de 8 bits comercialmen. El tamaño también prosigue su camino de miniaturización. Consideremos que en los últimos cuarenta años el desarrollo de los microprocesadores y micro- controladores ha sido impresionante. y muy probablemente continuará siendo válida por algunas dé- cadas más. además de que también pierde la visión del ojo derecho a causa de una infección. Esta ley asume que la potencia computacional se duplicará cada 18 meses. ± Un sistema computacional básico está conformado pal de las denominadas computadoras en una sola por el μP o CPU. incluir- los una cámara de televisión y un imán. es muy probable que estos circuitos integrados los podamos encontrar alojados como parte de estructuras metálicas o de concreto. hoy en día tenemos microcontroladores casi del tamaño de la punta de un lápiz. fabricado con tecnolo. dos. avio- nes. en un futuro estemos cerca de convertirnos en hombres nucleares. Los microcontrolado- los microprocesadores con sus modelos 6501 y 6502. Los teléfonos celulares y videojuegos de hoy en día tienen más potencia compu- tacional que la NASA. Por ejemplo. Sin embargo. sino también funcionalidades de procesamiento digital de señales (DSP). tiempo real. Es muy probable que la ley de Moore. podemos vislumbrar razonablemente bien lo que pueda suceder en los años 2020 o 2030. En la actualidad. Aún más. Teniendo como base la ley de Moore. nos ofrece muchas y novedosas oportunidades. Hoy día. los cuales incluyen no solo memoria flash. incluso en lugares donde hoy no los esperamos. como el caso de los sistemas embebi- crocomputadoras. permitiendo monitorear constantemente su integridad mecánica. existen microcontroladores de 32 bits a precios muy accesibles. gía NMOS y mayores capacidades que su predecesor ± Los microprocesadores se utilizan en aplicaciones el 8008. Lo anterior permite que un paciente trague la píldora y su descenso sea guiado con el imán para monitorear con la cámara el interior del cuerpo. existe la tendencia fuerte para la proliferación de múltiples CPU de microcontroladores. enfocan sus recursos al control en los cuales provocaron un auge en el mercado de mi. como el caso de las computadoras personales. innovado- ras e intuitivas. DATOS IMPORTANTES DEL CAPÍTULO ± El número de transistores en un CI se usa como me. etcétera. 392 ELECTRÓNICA • MIJAREZ . puertos de entrada/salida. tal vez con ayuda de lentes con cómputo integrado. res. Bien. que en México recibió el nombre de El hombre nuclear. “Intel inside”. Como resultado de este. Su ojo. existen circuitos integrados que se pueden alojar en una píldora. El aumento de la muy alta escala de integración continúa. El desarrollo de la electrónica. En dicha serie. continúe su vigencia. 46 Cuando era niño existía una serie televisiva llamada The Six Million Dollar Man. los médicos deben amputarle ambas piernas y el brazo derecho. Los circuitos integrados podrían estar en los lentes de contacto corrigiendo problemas de visión o aumentado sus capacidades. Intel y el 6805R2 de Motorola. memorias tipo ROM o RAM y tarjeta (SBC). Esto significa que los microprocesadores y los microcontroladores podrán encontrarse en todos lados. las oportunidades requieren mentes preparadas. ± A las primeras microcomputadoras de un solo CI se dida de su complejidad funcional. A estos últimos disposi- tivos se les ha denominado Digital Signal Controllers (DSC. pero se espera que el precio de estos dispositivos continúe disminuyendo. un astronauta y piloto de pruebas sufre un terrible accidente durante un vuelo experimental. tenía capacidades telescópicas e infrarrojas. cuando en 1969 Neil Armstrong y Buzz Aldrin pisaron la Luna. edificios. las cuales forman parte sustancial en la construcción de puentes. en particular. automóviles. les llamó posteriormente microcontroladores. donde se requiere el manejo de grandes volúmenes ± Motorola abatió en forma considerable el costo de de información como las PC. Esto le daría otro significado a la popular frase de las computadoras personales. El daño en su cuerpo fue reemplazado por partes cibernéticas que le proporcionaron poderes espectaculares.46 La tecnología para minia- turizar ya se encuentra aquí. en cambio. de los primeros microcontroladores son el 8048 de te exitoso fue el 8080 de Intel. por sus siglas en inglés). y de los microcontroladores en particular. aun cuando no es una ley f ísica. 5 El popular microcontrolador La tendencia de los microcontroladores continúa siendo la reducción de los voltajes de alimentación y del consu- mo de potencia mediante los modos de ahorro de energía. Todas estas cuencia de reloj utilizan cristales con características operaciones se representan por un conjunto de códi- piezoeléctricas como el cuarzo. es determinado por el bus de direcciones. de transferencia de datos o de ± Los circuitos osciladores que proporcionan la fre. control. y través de ciclos de lectura/escritura a memorias. nuamente ciclos de instrucción. puertos seriales/paralelos o incluso (CS). brincos condicionales o incondicionales. como localidades de memoria. los datos de un periférico. esta datos. ± Los puertos de entrada y salida permiten a un μP co. Todas las operaciones están controladas por ciones del sistema. consistentes en la búsqueda. tiempo de ejecución de una determinada instruc- ± La frecuencia del reloj se usa como base de tiempo ción. CPU son la ALU y su registro de banderas. y se les llama oscila. ± Los circuitos más importantes que constituyen una ± Las memorias tipo ROM almacenan datos de mane. tajes/corrientes. ± Las operaciones que realiza un μP y sus periféricos ± El espacio de dirección de una CPU es la capacidad son transferencias de datos desde o hacia el μP a de direccionar diferentes localidades de memoria. datos. trol. la señal de control de lectura grupo editorial patria® 393 . ± Cuando la CPU accede a los puertos como si fueran municarse con el mundo exterior. se consideran parte del bus de una señal de reloj como base de tiempo. es decir. bus de direcciones. lógicas. SP y PC. cuando se accede a puertos de E/S. 5 El popular microcontrolador ± La CPU tiene dos señales de entrada que se generan ± Un ciclo de máquina está constituido por un número externamente: la señal reset y una señal de reloj (os. cuando se enciende una PC por primera vez. ± Los dispositivos que se encuentran en la periferia de la CPU y permiten la comunicación con el mundo ± Los decodificadores de direcciones se usan para que exterior se les llaman dispositivos periféricos. sincronizada. de. localidades de memoria. ± Al espacio de dirección de una CPU se le asignan ± En las memorias tipo RAM se puede escribir y leer los periféricos. los regis- ra permanente durante su construcción. y pueden tros IR. el bus de direcciones y el bus de ción parcial usa algunas líneas de direcciones. de forma leccionar otros dispositivos en el sistema. por la CPU seleccione un dispositivo periférico a la vez. ± La decodificación de direcciones por parte de la ± El término bus se usa para referirse a un grupo de CPU puede ser parcial o total. ± El bus de direcciones es usado por la CPU para se. ± La interconexión de partes de un sistema. aritméticas. ejemplo. circuitos de temporización y con- usarse para almacenar las instrucciones de inicializa. y la dirección (entrada/salida) de ± Las señales de reset y reloj. de direcciones para acceder a los datos de un perifé- ± Los principales buses de un sistema basado en un μP rico. así como un grupo de registros de propósito ción de una computadora. indicadores visuales. otros μP. preestablecido de ciclos del reloj. se control se usa para indicar si se desea escribir o leer conoce como interface o interfaz. y el bus de datos es un medio ± La interface entre un μP y sus periféricos involucra para transferir información a los dispositivos de me. se les denomina puertos de E/S mapeados por memoria. teclados. alambres que transfieren información digital desde ± La decodificación total utiliza todas las líneas del bus una o varias fuentes a cualquiera de varios destinos. gos binarios llamado conjunto de instrucciones. y las rutinas de control general. lectura/escritura a puertos y por medio de las inte- ± La función principal de una CPU es ejecutar conti. su correcta temporización. pero pierden su información cuando se les asignación de espacios se conoce como mapa de quita la alimentación. el bus de compatible y coordinada. rrupciones. también llamados ± Un ciclo de lectura de un μP permite tener acceso a ciclos de máquina. dores de cristal. convertido. así como las interrup. la compatibilidad de vol- moria o puertos de E/S. datos de un dispositivo. y representa el cilador). activando la línea de selección del CI o Chip select res ADC/DAC. memorias y/o puertos de E/S. e involucra las señales del codificación y ejecución de instrucciones. de la CPU y proporciona la excelente exactitud con ± Las instrucciones en un μP realizan operaciones la que operan estos dispositivos. memoria. como control. La decodifica- son el bus de datos. es decir.. ± La E/S por interrupción es asíncrona. ± Existen dos tipos de interrupciones: enmascarables ca el fabricante en sus hojas de datos. ejecutados directamente por el μP. (INT) y no enmascarables (NMI). Cuando se genera ± Los programas en lenguaje ensamblador. sino que son tra- na denominada Rutina de servicio de interrupción ducidos a lenguaje de máquina por un programa co- (RSI). bres. La temporización la especifica el fabri. cada μP tiene un conjunto ± La interface con puertos de E/S se realiza en serie o de instrucciones específico y por tanto contiene su en paralelo. le ROM. rias de programa tipo ROM. Lo anterior le permite saber al μP cual dispositivo de mas de tiempos que proveen los fabricantes. la me. para sincronizar su sulta más fácil la programación del μP. que representan un ± Los periféricos normalmente no operan a la misma dato binario en lenguaje de máquina. bros de una misma familia. incluso entre miem- paralelo es n. inclusive. la segunda. con el cual re- velocidad del μP. archivo que posteriormente se graba en las memo- na principal. donde el grupo de datos a transferir en lenguaje de máquina particular. sino también de un bus de datos. Dicho identificador puede ser una ± Las señales de temporización de un μP y de las me. morias no se encuentran combinadas en los diagra. el μP le pregunta a cada periféri. instrucciones mnemónicas y modos de direcciona- diante ciclos de lectura/escritura. pueden ser deshabilitadas por programa. que permitan que las tareas con mayor prioridad se loca las direcciones en el bus de direcciones hasta realicen sin ser interrumpidas por las tareas de me- que los datos son válidos y están listos para ser leí. normalmente el ancho del bus de da. A las interrupcio- ± El tiempo de acceso.5 El popular microcontrolador (RD) y el bus de datos. en la primera. en el ciclo de lectura de un nes enmascarables se les pueden asignar prioridades μP. identificador que permite que el μP brinque directa- cante en sus hojas de datos. y son leídos por el μP mediante los ciclos de permite al μP responder a un evento externo sin sa. cos se almacenan en la memoria de programa. co si tiene un dato válido para tomar una acción (lec. ± Los datos binarios representados por los mnemóni- tura/escritura) determinada. no son principal se interrumpe para llevar a cabo una ruti. El código de operación es la función que datos en forma repetitiva usando una iteración en el ejecuta la instrucción. componentes: el código de operación u opcode y un ± La E/S por programa o polling realiza la lectura de operando. el flujo del programa dos por los diseñadores o programadores. mientras el operando es el programa. máquina. 394 ELECTRÓNICA • MIJAREZ . tos. e involucra las señales del bus de di. donde las instrucciones describen qué es lo usando el bus de datos completo del μP. ber cuando pueda ocurrir este. es el tiempo que transcurre desde que el μP co. transferencia de datos se utilizan las técnicas de E/S ± Cada instrucción en ensamblador tiene dos posibles por programa o polling y las interrupciones. miento describen dónde hacerlo. y en serie n es 1. miento. ORL. Las inte- moria debe proveer estos datos con un tACC menor rrupciones no enmascarables no permiten ser igno- que el del μP. realiza sus operacio. etc. algunas interrupciones dos. por tanto. tACC. dato usado por el código de operación. Por lo general. Para asegurar la transferencia correcta. por lo que ± Las instrucciones mnemónicas son palabras codifi- es más lenta pero con un alambrado simplificado. la señal de control de escritura (WR) y el ñal de petición de interrupción. de la lógica combi- un lenguaje representado por una serie codificada de nacional requerida y de los parámetros de tempori- números binarios a los que se les llama: lenguaje de zación como el tACC. dirección o bien el primer byte de una instrucción. es decir. el cual genera un nes y termina al pasar de regreso el control a la ruti. cadas como ADD. usa 1 bit del bus de datos. ± Un ciclo de escritura de un μP permite escribir datos a un periférico. se conocen como interrupciones vec- torizadas. ± El lenguaje ensamblador consiste de un conjunto de ± La interface en paralelo y en serie se lleva a cabo me. la cual toma el control. instrucción. mercial llamado ensamblador. La temporización la especifi. radas y tienen mayor prioridad que las interrupciones enmascarables. nor prioridad. desarrolla- un evento (interrupción). diagramas se deben combinar tomando en cuenta ± Los sistemas basados en μP entienden únicamente los tiempos de propagación. mente a la RSI. Estos E/S lo está interrumpiendo. ± Las interrupciones que no solo consisten de una se- recciones. por lo que la que se tiene que hacer y los modos de direcciona- transferencia es más rápida pero utiliza varios alam. tPD. el 8051 es la más código. da siempre tener una idea de la cantidad de ± El ciclo de máquina del 8051consiste de una secuen- información binaria que se convierte a código ejecu. de direcciones (A8-A15) como función alterna. 2 temporizadores/ como direccionamiento de memoria sin la necesidad contadores. el puerto P3 tiene funciones de control alternas. ya sea en C o en ensamblador. ± Los μC de 8 bits por lo general son más baratos. uno para memoria de programa ex- ± Las aplicaciones típicas de los μC son como contro. ± El puerto P1 es el único dedicado para E/S. aunque estos programas ma. un puerto serie. el mismo conjunto de instrucciones. dos a memoria). y cada estado está constitui- table. ± La ALU del 8051 puede manipular datos tanto de 8 cribir una carta aclara este concepto: una hoja de bits como de 1 bit debido a su procesador de Boole. el 8751 es la versión EPROM y el 8031 ± El lenguaje ensamblador trabaja directamente con la es la versión sin ROM interna. moria RAM y 8/4K/0K bytes de memoria de progra- bargo. memoria de datos externa (RAM/periféricos mapea- sonal a una escala mucho menor. Sin embargo. ± Al programa de control que se almacena f írmemente un ciclo de máquina se compone de 12 periodos del de manera permanente en la memoria ROM se le oscilador. de ahí el ahora di. Philips. o hardware. entre mu- ducción de código ejecutable que un compilador. mayor número de periféri- dos de direccionamiento. PC. papel sería el hardware. referido como MCS-51. del oscilador y por lo general se utiliza para verificar ± La familia del μC 8051. como el len. y el P0 pro- ± Aunque existen μC de 8. ALE se genera a 1/6 de la frecuencia sus contrapartes de 32 bits. conjuntos de instruc- de datos/direcciones proveniente del puerto P0 en su ciones reducidos y consumen menos potencia que función alterna. entrada. programa y 64 Kbytes para memoria de datos y peri- man un código en lenguaje de alto nivel. 5 El popular microcontrolador ± Los programas llamados compiladores de código to. y crean un código que se ejecuta en un ± Los periféricos principales son 4 puertos de E/S de 8 sistema basado en un μP. do por 2 periodos del oscilador (P1. en la dirección 07H y los pines de ± Un μC es una computadora autocontenida en un CI los puertos de E/S se establecen en 1 lógicos (FFH). ± Existen otros fabricantes con licencia del 8051como Esta cercanía le provee mayor eficiencia en la tra. salida (transistor FET) y un buffer de tres estados de ± Los μC típicamente incluyen una CPU. por lo general ocupan ± En la familia original MCS-51 de Intel. los μC de 8 bits porciona la operación de bus multiplexado datos/ se usan en forma amplia y exceden en volumen a las direcciones (A0-A7) y el P2 provee el byte superior computadoras personales y a los servidores. stack pointer. memorias. Atmel. Sin em. nales. que incorpora todos los componentes básicos de un ± El 8051 cuenta con tres mapas de memoria: uno para sistema basado en un μP o de una computadora per. cos y mayor velocidad de operación. a la que está conectado el μP. de programa tipo Flash. por direccionamiento de 64 Kbytes para memoria de tanto. cada uno consiste de un latch. el serían el firmware. 128/256 bytes de me- de que el desarrollador se preocupe de ello. bits. con. SP. guaje C. el 8051 inicializa el piz serían el software. terna (ROM) y uno para memoria RAM interna. un circuito oscilador interno. ladores embebidos en un proceso o sistema grande ± Los 4 puertos de 8 bits del MCS-51 son bidireccio- del cual controlan solo una parte. 2 interrupciones externas. la correcta temporización del μC. son cada día más eficientes. un driver de fundido término de sistemas embebidos. 16 y 32 bits. denomina firmware. un procesador de ± Los programas compiladores pueden manejar tareas Boole. chos otros que cuentan con versiones con memorias pero requiere un conocimiento del hardware y mo. circuitería. Por tanto. versión ROM. las palabras escritas con lá. se recomien. en la dirección 0000H. puertos de E/S de propósito general y periféricos. Los códigos de ± La CPU del 8051 es de 8 bits con una capacidad de operaciones de las instrucciones son de 8 bits. se pueden tener hasta 256 instrucciones dife- grupo editorial patria® 395 . cia de 6 estados (S1-S6). tie- ± La señal de ALE se utiliza para demultiplexar el bus nen interfaces de E/S simples. féricos mapeados a memoria. P2). y las palabras escritas con tinta contador de programa. tienen dos sistemas básicos: uno constituido por la ± Todos los miembros de la familia MCS-51 ejecutan CPU y el otro por sus periféricos. esto tiene un precio. Dallas Semiconductors. La analogía con la acción de es. ± Después de una señal de reset. sería: el μC mismo. leyendo las ho- usarse líneas enteras para realizar comentarios si se jas de datos del fabricante. entre otros usos. Es decir. Define cómo fun- 5. máscara en operaciones lógicas. 5. trol de una CPU. cara del bit más significativo (MSB) del registro quina de un μP.5 Describe los componentes principales de una com. Explica de forma simpli- miento. Recuerden poner atención ± En algunos ensambladores del 8051. NOR y XOR entre el Acc  circuitos osciladores (de reloj) de un sistema digital. sus circuitos principales.3 Describe lo que eran las tarjetas electrónicas SBC. su componente principal y sus primeras aplicaciones. 5. NAND. los comentarios en su arquitectura.8 Define el sentido de las principales señales de con. guaje ensamblador para definir símbolos. 5. 5.10 Dibuja el diagrama de bloques de una CPU con toso lanzado por Intel y su capacidad de direcciona. instrucciones y proveen la flexibilidad para especifi.2 Describe el efecto que causó en el mercado de los μP 5. 5 El popular microcontrolador rentes. de una ALU. a utilizar. la fuente o destino de los datos cuito de reset y un voltaje de alimentación. Por tanto. todos los micro- ± Las etiquetas son un caso especial de los símbolos.13 Realiza la descripción secuencial de la ejecución del ciclo de instrucción por una CPU. Estas se usan como comandos del len.4 Describe la diferencia entre un μP y un μC y cuáles son sus aplicaciones. temporal. PROBLEMAS DEL CAPÍTULO 5 5.9 Define qué es el ciclo de instrucción o ciclo de má. Claro. se requiera utilizar cualquier otro. el proceso de ca asociada.6 Describe el efecto en el que se basan los cristales de los nes AND. 80H y RTEMP  22H. 5. Se recomienda siempre comentar los programas. macros. ± Desde el punto de vista funcional. RTEMP. corrientes y voltajes de los puer- deben empezar con un punto y coma (. direcciones. controladores son similares. etcétera. 396 ELECTRÓNICA • MIJAREZ . de instrucciones.11 ¿Qué es el mircroprograma de cada instrucción? el lanzamiento de los μP 6501 y 6502 de Motorola. de varias formas. Para el 8051. y pueden tos de E/S y su temporización. aprendizaje sea rápido.12 ¿Para qué se utiliza el registro de banderas? 5. 5. y la ± El sistema mínimo es un sistema basado en un mi- mayoría (139) son de 1 byte. ficada su funcionamiento. Realiza las operacio- 5. operador 2 representan el registro Acc y el registro putadora digital. la memoria EPROM externa (si se requiere). 5. el cir- car. de ser posible una sola instrucción. constantes. ± El sistema mínimo se prueba con un programa míni- ± Las directivas del ensamblador del 8051 no son ins. datos y control de un μP. componentes mínimos necesarios para ejecutar un les se consideran una parte integral del conjunto de programa.14 Usando la calculadora lógica el operador 1 y el 5. cuando instrucción o directiva que tenga una dirección f ísi. acumulador para cuando Acc  95H y Acc  65H.1 Describe cuál fue el primer μP comercialmente exi. las etiquetas se usan antes de cualquier da aprender muy bien uno de ellos. almacenar constantes todología “incrementalista” de prueba y error. ciona este registro máscara y cuál es su uso.15 El registro RTEMP de una ALU puede usarse como nes. mo.16 Usando la operación lógica AND. el cristal.). realiza la más- 5. de ellas se tienen implementadas 255. para que. los cua. un programa con un número reducido trucciones. en la memoria de programa. identificar el inicio o fin ± Los programas para ensambladores y simuladores del programa fuente. comienzan con un punto y coma. 5. son muy útiles y se recomienda ampliamente usarlos ± Los símbolos son representaciones alfanuméricas de y familiarizarse con ellos. reservar Se recomienda utilizar de manera sistemática la me- diversos espacios de memoria. 5. crocontrolador que se construye con los circuitos o ± El 8051 tiene 8 modos de direccionamiento. se recomien- Sin embargo.7 Describe el funcionamiento de los buses de direccio. OR. direcciones y una memoria EPROM de 8 Kbytes. Reali.21 Se cuenta con un μP con 8 bits de datos y un bus PB1 LEDs de direcciones de 12 bits. sin afectar los otros bits de este registro para ma a bloques del circuito y el diagrama de tiempos cuando Acc  48H. 5.%(00 codificación parcial para la memoria RAM. La timo. se asocian con los registros acu- 74LS138 y diferentes compuertas digitales. para leer los datos es de 300 ns. prender un LED verde y apagar el LED rojo bytes de RAM. y el diagrama a bloques del circuito usando deco. respectivamente. tACC. su ambas memorias. ba el número 66H y 77H en las dirección 81H y el ciclo de lectura del μP es de 800 ns y el tiempo 82H de la RAM externa. 5. grupo editorial patria® 397 . Interruptores BUFFER HC125 5. un decodificador de 3 a 8 (véase tabla 5. El μP tiene un bus de 80H de la memoria externa. Por úl- de acceso. ½P cos. 5.22 Un sistema basado en un μP de 8 bits de datos.28 Las instrucciones MOV. respectivamente. mulador (ACC) y Apuntador de datos (DPTR) de za el mapa de memoria y el diagrama a bloques del los ciclos de lectura y escritura de un sistema basa- circuito usando decodificación parcial. mapa de memoria con decodificación parcial y un 5.17 Usa la operación lógica OR para establecer en 1 el y lógica combinacional con tiempos de retraso de bit menos significativo (LSB) del registro acumu. y a un puerto de salida mapeado a vía un Latch 74HC373. Se requiere que el programa o de polling en un sistema basado en un sistema contenga un bloque de memoria de 16 μP. lee el contenido de la dirección 81H de la memoria EPROM tiene un tiempo de acceso de memoria externa y almacénalo en el registro acu- 250 ns. b) Realiza el mapa de memoria y el diagrama a blo.23 Se tiene un sistema basado en un μP de 8 bits de 5. entre la memoria EPROM y el μP para determinar 5.18 Usa la operación lógica XOR para realizar el com. de E/S por programa y por interrupciones. paña el libro. a) Usando un OE decodificador 74HC139. y 5.199.20 Realiza la operación lógica SWAP cuando el ope- rador 1 (Acc) en la calculadora digital es 27H y EPROM compara el resultado con el resultado obtenido en VCC 8K bytes la pregunta anterior. 5 El popular microcontrolador 5. figura 5. 2) solo si uno de los tres memoria. Las señales de control de OE D0-D7 A0-A15 LATCH PB2 373 lectura /RD y escritura /WR. Posteriormente escri- direcciones de 16 bits y un bus de datos de 8 bits. Realiza el diagrama del circuito. si su funcionamiento será el adecuado. 5. Usando el software del CD que acom- 5.24 Un sistema basado en un μP requiere de una me.2. plemento de nibble bajo del registro acumulador 5. do en un μP. realiza el mapa de me- moria y el diagrama a bloques del circuito usando decodificación total para la memoria ROM y de- =`^liX. Realiza el mapa de memoria bos LEDs.26 Indica las ventajas y desventajas de las interfaces dificación parcial. Se tienen una memoria ROM de 1 Kbytes y PB3 OE LE RD/ WR/ RST una memoria RAM de 500 bytes. de tal manera a memoria de manera independiente por medio de tres buffers 74HC125 como se muestra en la que el resultado sea un 72H. Realiza el diagra- lador. Las memo. se activan con 0 lógi. requiere conectarse a un terruptores se encuentran en 1 lógico (presiona- sistema de memorias de 1 Kbytes de ROM y 256 dos).25 Se cuenta con un μP de 8 bits de datos y 16 bits de cuando Acc  85H. transferencia de datos externa RAM de 16 Kbytes. terna y MOVX. transferencia de datos in- rias con que se cuenta son ROM de 8 Kbytes.2). Se cuenta con memorias RAM de 256 interruptores está en 1 lógico prender el LED rojo nibbles y memorias ROM de 1 Kbytes y diferentes y apagar el LED verde. y 16 bits de direcciones.27 Describe cuál es el esquema de interrupción por datos. se desea que el μP lea tres interruptores mapeados tro acumulador cuando Acc  27H. Kbytes de RAM y 32 Kbytes de ROM. El conjunto de instrucciones de este μP se muestra ques del circuito usando decodificación total para en la tabla 5. y se cuenta con un decodificador 74HC138 mulador. escribe el número 55H en la dirección moria EPROM de 8 Kbytes.19 Realiza cuatro corrimientos a la derecha del regis. De otra manera apagar am- compuertas digitales. y programa que realice lo siguiente: 1) Si los tres in- 11 líneas de direcciones. 30 ns y 10 ns. 5.39 Describe las opciones que corresponden al mapa Utiliza decodificación parcial.37 Describe la secuencia del ciclo de instrucción ma multiplexado de direcciones y datos. con 16 Kbytes de memoria EPROM y 5. ohms 5.35 La familia de microcontroladores MCS-51tiene una =`^liX. Un periféri- sus modos de direccionamiento y el detalle de la co es de entrada y está formado por un interruptor parte baja de memoria (00H-7FH).7 A1 IY2 0000H IY3 =`^liX.30 Indica qué son los DSPs y los DSCs. por lo menos dos ciclos de máquina.7 f g e c C000H (1K bytes) dp BFFFH 8751 LE IOE 220 ohms dp d D Arreglo de Q A0 .0 : LED de 7 NC P2. 5.41 La señal de reset del 8051 debe mantenerse en cos de salida: uno para activar un LED vía un flip- 1 lógico. Enumera sus principales registros de 8 bits de acuerdo con su diagrama de bloques. con 8 Kbytes de memoria EPROM y de memoria de datos interna del 8051.201. Calcula el tiempo 5. 100 ohms 5.46 De acuerdo con el circuito y mapa de memoria de en 1 lógico del siguiente circuito de reset.A7 LED de 7 interruptores segmentos 74LS244 8000H +5V ALE LE IOE EA 7FFFH P2. y dos periféri- 5.36 Haz una lista de los registros de funciones espe- puertos P1 y P0 del μC 8051. incluyendo tres periféricos mapeados a memoria. 5.40 Describe las opciones que corresponden al mapa 80C31BH.%)'( 398 ELECTRÓNICA • MIJAREZ . menciona algunas de las razones por las cuales los μC de RST 8 bits siguen siendo los más usados en sistemas 8.3 RD OE 4000H WR W IOE 3FFFH Arreglo de 74LS139 CS interruptores Memoria P2.29 Describe la diferencia entre las arquitecturas Von 5 V 5 V Neumann y Harvard.45 Realiza el diseño de un sistema basado en el μC 5.2 K embebidos.0 d f b : e g 74LS573 RAM P0. la figura 5.43 Explica la diferencia de sistema de procesamiento no multiplexado de direcciones y datos y un siste- 5. 10 ½ F Reinicio 5.6 A0 IY0 IY1 RAM P2. 5. ciales asociados a los periféricos internos del 8051. 16 y 32 bits.%)'' CPU de 8 bits. 5. y buffer de tercer estado 74HC125. y se cuenta con me- el μC 8051. normal del microcontrolador.0 A8 P0.1 A9 segmentos PSEN P0. 5.44 Realiza el diseño de un sistema basado en el μC 80C31BH.34 Describe los criterios para seleccionar un micro- controlador. morias EPROM 27C64 y RAM 62C64 de 8 Kbytes.D7 P0.38 Describe los mapas de memoria que constituyen 32 Kbytes de memoria RAM.31 Aunque existen μC de 8.5 El popular microcontrolador 5. de memoria de programa del 8051. realiza un programa que lea el arre- 74LS573 +5V FFFFH a a b c P0 D0 .42 Describe a bloques el circuito electrónico de los 5. y flop y el otro para activar una bocina vía un debe permanecer en 0 lógico durante la operación transistor NPN. (búsqueda-decodificación-ejecución) para el μC 8051. el =`^liX. F-F LED EPROM 80C31BH 30 pF VCC 8 4 Control M XTAL1 VCC potencia 4 MHz XTAL2 1½ F 2 30 pF RST 244 P1. b) dependiendo de la carga potencia y se habilita el temporizador (activo grupo editorial patria® 399 . un LED vía un flip. El carácter para validar los datos Si la lavadora acepta ciclos del motor dependiendo de entrada es la estrella “*” el cual equivale al nú- de la carga en kilogramos. activa a nivel BAJO un pin conectado a través de 5.5 V (40H) 01H ON 5. si el valor leído es mayor de 9 (4 kg-12 kg). Si la puerta permanece abierta más de 15 segundos. Realiza el programa. dato.2 para monito- SW2 de fin de ciclo que se conectan a través de un rear el estado de un interruptor. Para esto. mero 2A en hexadecimal. contenga 4 K de memoria EPROM. el cual normal- buffer de tres estados (74HC244) como lo ilustra mente se encuentra en 1 lógico cuando la puerta el diagrama a bloques de la figura 5.47 Diseña un sistema basado en el μC 80C31BH que SW2 y el μC debe apagar el LED. c) cuan- ro en el display de 7 segmentos y en la primera do se termina el ciclo.2 SW1 SW2 1 K AT89C2051 GND Control de Carga ADC SW1/LED potencia 0 kg 0 V (00H) 00H OFF =`^liX. Al momento de ce- rrar la puerta se reinicia el programa.3 P1. utiliza el pin P1. se encienda el LED. escribir el número cero dispositivo de control de potencia del motor escri- en el display de 7 segmentos.3 para activar una bocina. el resto de los periféricos se mapean a memoria (véase figura 12 kg 10 V (FFH) 03H ON 5.%)') cual se conecta a un par de decodificadores (BCD El sistema se emplea en una lavadora electrónica. Una vez validado el trónico y un programa que cumpla con lo siguien. en un refrigerador para detectar cuando se abre la flop. SW1. se escriben estos dígitos al temporizador. y un programa que lea los datos de entrada del te- clado (2 dígitos 00-59) y los escriba a un latch. Realiza el diagrama de conexiones del sistema. el se enciende la luz del horno. 5 El popular microcontrolador glo de interruptores. realiza el sistema elec. se activa el sistema de cual es activo ALTO. y se accione un en hexadecimal (AH-FH). El sistema re- quiere 8 Kbytes de memoria EPROM.5 V (C0H) 02H ON cuenta con memorias de 2 Kbytes. y mapeados a 5. y dos interruptores: SW1 de encendido y puerta. carga. está cerrada y en 0 lógico cuando esta se abre.%)'* 4 kg 2.204). y si el valor leído es biendo el dato 01H-03H dependiendo del ciclo de diferente (0H-9H hexadecimal).48 Un sistema basado en el μC AT89C2051 se utiliza memoria: un ADC de 8 bits.202. pero se 8 kg 7. escribir el núme. el ADC μC genera una señal cuadrada de 800 Hz por el pin 8 P1. a 7 segmentos).49 Un sistema basado en el μC 80C31BH se usa para controlar un horno de microondas. como se muestra arriba en la tabla. y te: a) verifica el interruptor de encendido. el dispositivo de potencia localidad de la memoria RAM. P2. activo BAJO. empleando la bande- siguiente ecuación lógica usando diferentes tipos ra CY como acumulador de bit. b) usando solo instrucciones de figura.3 de potencia.%)'+ X.5 El popular microcontrolador _ _ Q = (U · (V + W)) + (X · Y) + Z U Deco Deco 4 4 V Latch Control W 8 potencia Q EPROM F-F LUZ X 8 80C31BH Y 8 EN 8212 Temporizador Interfaz 8 LE teclado B 2 Z LE almacena dato 244 EN inicia timer (activo ALTO) U.%)'. en un de instrucciones. rea- sistema de control de un proceso industrial. bit B\ activo Z.20. vía un ADC..IE1 (Registro TCON) ALTO). ¿Cuál es la mínima re- =`^liX. El TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 voltaje de referencia del ADC es de 5 volts y la sa- lida del LM34 es 10 mV/C. Si se abre la puerta. 400 ELECTRÓNICA • MIJAREZ . A manera de ejercicio mental. o al ter. y c) usando El μC 8051 provee la flexibilidad para realizar la solo instrucciones de Boole. Las liza el programa de las siguientes formas: a) usando variables de entrada y de salida se asocian a pines únicamente instrucciones de byte (ANLs ORLs.0H minar la cuenta el temporizador. solución que requiere el ADC? 5.TF0 (Registro TCON) =`^liX.1 Fotodetector Puerta V.205.51 Un sistema basado en el μC 87C51 requiere imple- mentar la ecuación lógica de la figura 5. 5.50 Un sistema basado en un μC 87C51 necesita leer... prueba de bit (JB. un sensor de temperatura LM34.P3..20. CLR y SETB)..2 W. Y.P1.1H BAJO. etc).. se debe apagar la luz del horno y el sistema Q. JNZ. y bits del microcontrolador como se ilustra en la JZ.. JNB.
Copyright © 2024 DOKUMEN.SITE Inc.