Está en la página 1de 100
Introduccion ae Pasos a seguir para elaborar un proyecto Argentina: $ 3.90 Cer T TEESE) el Re ‘ Tomo 1 Dag - Teoria - ACUTE aea Curso practico sobre TUL TS \_ Teoria, Berrie! i Pyeent Maree Ni, eee Cet eae ) El Curso practico sobre MICROCONTROLADORES cle CEKIT'S. A. se publica ‘en forma de 40 fasciculos de apancion semanal, encuaclernables en 3 volumenes, Cada fasciculo consta de 4 paiginas de cubiertas y 20 paginas de contenido a todo color. De estas tiltimas, 8 estan dedicadas a la seccién de 4a e 22 N°B-22, Piso2, PROGRAMACION y 8 ala seccin de PROYECTOS. Taser (63348179. 348187. 3548189 - 3348193, Fax: (0) 4340020 PerciraColombia Las paginas de cada seccién son encuademables por separado. Por esta raz6n, al formar los volimenes, dee cuidarse de desprender previamente, de todos fos Fsculs las paginas centrale: de PROYECTOS, is de PROGRAMACION Carrera 13 N° 38-43, Piso 1 Pear bveeti oga clr eines oe Conipan s oneceueees Tetras ar cee CEKIT'S.A. garantiza la publicaci6n de la totaliad de la obra, l suministro de la tapas necesarias para su encuaclemaci6n y el servicio de ntimeros atrasados hasta un e-Mail ecekit@col2telecom.com.co ano después de terminada la circulacién del tikimo fascfoulo, También garantiza la burp,//www.cekit.com.co Fidelidad de la informacion tesrico-prictica suminisrala y el comecto funcionamiento ps aoa a Leen Gc iacalzore ES es eee Motorola, Microchip PIG il, Amel, Parla, Zilog, Philips, son marcas regisras de Sect alr lascitrertesempressenias Estados Unidos en ots ates Os prociaasy nombres de Dieesor dior ‘comparias mencionacdas en esta obma pueclen ser marcas ress Ge Sus PrOpRtANCS. Manuel Felipe Gonraler 6. Ese cuno haskdocabordo segindl plan del edtory de sususor,y Phi piani ba su esponsahie, porlos siguientes integraries Gel hae ‘depaitamento téonico de CEKIT'S A JUAN ANDRES CASTANO W. Distribucién Internacional Le Deh G Argentina: importador: torial CnasurS.A. Av, Belo 355 1. Tel: 4342-9029 Fax: 4342-9025 FaAS Tango leaner emai goonosur@speedy.comar Dist. Capital VACCARO SANCHES Y IA. ~ Moreno 9, 97092) Buenos Aires Dist Interior: DISTRIBUIDORA BERTRAN S.A. - AV. Vélez Sasfield Proyectos 1950(1285) Buenos Aires, - Bolivia: AGENCIA MODERNA LTDA. - Chile: DISTRIBUIDORA ALTA S.A. ~ Colombia: DISTRBUIDORAS UNIDAS. - Venezuela: DISTRIBUIDORA CONTI. JOHN JAIME ROBBY G, NENTAL- México: CONSORCIO SAYROLS - Ecuador: DISTRIBUIDORA ANDES. Panam: ggg earta: Linz Angela Plata B. ANAM 3a, eth DISTRIBUIDORA ROUYARANA SA. - Paraguay. SELECCIONES 5c Dau Glonl Marcel coments Uniguay:DisrapttpoRs CAREAGA Dagramacion Hector Hugo Jiménez Suscripciones (no validas en Argentina), mimeros atrasados Ce y consultas técnicas en Colombia CEKIT S.A. spesaxctnpas otal perature Calle 22 N° 8-22, Piso 2, A.A. 194 Pereira(Colombia) inte cucadraonge © a nuestro correo electrénico: EDICION CONO SUR ecekit@col2.telecom.com.co Intemacional Graphics & Printing Co. 2600 Douglas Road, Suite 106, Coral Gables, Florida 33131, USA ISBN (Fasciculo 8).958-657-510-1 Impreso y encuadernado por: ISBN (Volumen 1):958-657-108-0 RR Donnelley ISBN (Obra completa): 955-657-497-0 América Latina Ruta Panamericana Km, 38.700 Buenos Aires Argentina Impreso en Argentina Junko 2002 Teoria, Prog EStudie, ... «ccc. CEKIT de “Aprender haciendo”, la tecnolo- gfade los Misoconuvladures, una de las que més han cambiado el mundo en los tiltimos afios y gang mitcho dinero. Estos pequefios cerebros electrénicos se encuentran en todas partes: au- téméviles,/éomphtadoras, electrodomésticos, alarmas, jueBos de huces, instrumentos, equipos de cofunicaciones, etc. neste curso incluimos los principios tedri cs, lus fundancntos de su prugtanacidn, tha gran cantidadhe actividades pricticas y proyectos completos para cnsamblar. Los mittocontroladores son los elementos bi- sicos fundamentales de una nueva revohicién, ~ Taiigrerconexién de todo con todo enna red Hrutndiehde gaye control: Rang fire Reon STITT 320 paginas (1 a 320) Tomo 2: Programacion 160 paginas (1 a 160) CR eed Pee eit aire REC os ier cars eer ed bere seativillad mitird la comunicacién de hechos y datos entre personas y abjeros formanda la red del canaci- miento, base de la economia del nuevo milenio Capacitese y forme parte activa de la nuc- va economia. Las personas con buenos conocimientos de esta tecnologia, tendran muchas oportunida- des laborales 0 podrén fabricar sus propios aparatos en forma industrial, lo que puede set la base para una empresa muy rentable. eee eSta estructurado el curso El Curso practico sobre Microcontoladores de CEKIT S.A. se publicaré en 40 fasciculos con tres secciones cada uno, y al final, se agrupard en tres to- mos de pasta dura con cada uno de los temas princi- pales. Para su facil identificacién, cada una de las sec~ ciones tiene un color diferente. La distribucién de los tom, a siguiente: Tomo 3: Proyectos 320 paginas (1 a 320) Ve q SERECIEGE) componentes. Se empieza con un repaso sobre el tema de los microprocesadores, los cuales dieron origen a los microcontroladores, y se desarrollan durante las lecciones, los difercines aspecios teuiticus de esta tecnologia. WT. Copactiamnos pare wtotn mabe En la seccién de teorfa, se estudian los fundamentos tedricos y funcionales de los microcontroladores. Esto se refiere a la estructura 0 arquitectura interna de los mismos, asf como a la funcién de cada uno de los terminales 0 pines de los diferentes dispositivos tratados en el curso cuyo conocimiento es ne- cesario para disenar circuitos con estos rganizacién de la memoria La EPROM de datos Las interrupciones Los puertos de entrada/salida (I/O) Los temporizadores (Timers) Las opciones Comparacién/Captura/PWM El puerto serial sincrono SSP, bssp La USART Las referencias de voleaje Los comparadores Los conversores A/D Modos de bajo consumo (sleep y watchdog) Bits de configuracion Programacién en el circuito (in cireuit) El conjunto (sr) de instrucciones Las comunicaciones seriales Otros microcontroladores Parallax (Basic Stamp) Intel Aumel fseccion de Programacion Todo aparato 0 proyecto con microcontroladores i cuitos, uno o varios programas que se deben encribii tipo de microcontrolador utilizado. Este curso le pr sarios para que adquiera la habilidad de programarlos. Los principales temas tratados son: * Programacién de un microcontrolador + El-ciclo de desarrollo de un programa Herramientas de software Programacién en modo inmediato Programacién orientada a registros Control de flujo de un programa Puertos de entrada/salida Subrutinas Interrupciones Programacién en lenguaje estructurado ‘Temporizadores Programacién serial Programando los conversores A/D y D/A Programacién en lenguaje C Tépicos avanzados de programacién Rene ua b A pe ge be SCC EO Eas En esta importante seccién del curso, se entrega + Indicador binario de 4 bits una amplia informacién con la cual el alumno + Alarma para el hogar y el automévil podré ensamblar una buena cantidad de proyec- + Reloj digital y calendario tos. Para cada uno de ellos se incluye la teorfa de * Secuenciador de luces programable funcionamiento, el diagrama esquemiatico, la lis- + Cerradura codificada * Activacién de aparatos via telefnica ‘Temporizador universal Aviso luminoso con diodos LED Luces ritmicas ‘Convertidor paralelo-serial Punta légica ‘Temporizador miniatura Frecuencimetro Generador de sefales Programador de memorias ta de materiales, las instrucciones para el ensam. blaje y el listado del programa. de enantio Teariy tc A quienes va dirigido el curso El tema de los microcontroladores es de gran utilidad para un grupo muy amplio de perso- nas que requieran conocer esta tecnologia por su gran cantidad de aplicaciones. Los principales grupos de usuarios son Estudiantes y profesionales de Ingenieria y Tecnologfas: * Electrénica + Bioingenierfa * Mecatrénica * Automatizacién Técnicos en: * Electrénica industrial * Automatizacién * Electrénicos en general * Alumnos de los cursos de CEKIT S.A. + Estudiantes y profesionales en FISICA, para sus necesidades de instrumentacién Autodidactas 0 aficionados con conocimientos en: * Electrénica Digital * Microprocesadores eerie Certificatio Sa Una ver terminado el curso y aprobada la evaluacién que se publi card al finalizar la obra, el alumno recibird un Certificado de Api tud Ocupacional otorgado por CEKIT S.A. y aprobado por las respectivas autoridades educativas. Este certificado ler permitiré acceder a puestos calificados de trabajo. Mnocaneo0RTS Ctra obra con a calidad editorial y didéctica de Cenur.. KIT ihttels (Tore oe Cel er Es muy placentero y satsfactorio para CEKII S.A. presentar a todos nuestros, lectores y amigos, estudiantes, profesores, aficionados, técnicos, profesionales y en general ala comunidad técnica internacional, una nueva obra didctica en el campo dela electrd- nica con el estilo propio y la metodologia de “Aprender haciendo” que nos ha caracteriza- do por tantos anos. Se trata del Curso prdcrico subre MICROCONTROLADORES, oh cual tiene como objetivo principal dar a conocer y ensefiar, de una manera ficil y agradable, esta maravillosa tecnologia. Los microcontroladores, que pueden considerarse como una microcomputadora en un sélo empaque, han permitido un avance sin pat en los tiltimos afios en el disefio y la fabricacién de todo tipo de aparatos y aplicaciones electrdnicas. Haciendo un simil con el ser humano, podemos decir que un microcontrolador es un pequefio cerebro electrénico farmada por muchas transistares inrerconectadas entre sf tal camo las nen- ronas y que tiene varias zonas con funciones especializadas como la memoria, uno 0 varios circuitos para recibir informacién de teclados, interruptores y sensores, entre otros, y secciones para act sonoros, pantallas, ete; todo esto coordinado por medio de un programa o conjunto de inserucciones. elementos externos como motores, relés, indicadores Nunca antes, en la historia de la electrdnica, un componente habia permitido tanta creatividad y desarrollo de productos de una forma tan facil, en tan corto tiempo y a costos tan reducidos. Con los microcontroladores es posible disefiar y fabricar casi cualquier aparato que se nos ocurra; el limite esté dado sélo por la imaginacién y nuestra capacidad de hacerlo, ‘Aunque el tema parece dificil y complejo, realmente no lo es y pata demostrar lo contrario, lo iremos explicando paso a paso en un lenguaje simple acompafiado de muchas figuras, diagramas ¢ ilustraciones de tal forma que los lectores lo puedan ir asimilando a su propio ritmo de aprendizaje sin mayores dificultades. Para entender y iva Digital, de los sistc- mas de numeracién, especialmente del sistema binario y hexadecimal, y nociones basi- ‘eas sobre los microprocesadlores. Sin embargo, durante el curso repasaremos algunos de los conceptos fundamentales de estos temas con el fin de que los lectores que no los conozean, pucdan comprender mejor cada una de las lecciones. aplicar esta tecnologia, se requieren conocimientus de Eleva La mayorfa de los aparatos electrdnicos modernos ineluyen uno o varios micro- controladores y de ahi la importancia y necesidad de este curso en este mundo tecnolé- gico en el cual nas encantramas. Un reloj digital de pulsera lo utiliza para contabilizar el tiempo, mostrarlo en una pequefia pantalla y recibir las érdenes en los botones para ejecutar diferentes funciones. Una videograbadora lo utiliza para coordinar sus princi- pales funciones como el encendido y el apagado, el cambio de los canales, el avance y retroceso de la cinta, las funciones del control remoto, etc. En un horno microondas el microcontrolador se encarga de recibir las 6rdenes que le damos en el teclado, mostrarlas en la pantalla y accionar el elemento que produce el calor en los alimentos. Curso practice soore mcrocomroiaaores «MARCH W: TOUR eaLcieel| Pero sin restarle importancia a este tipo de aplicaciones, es en otro campo a donde queremos orientar este curso. Se trata de la utilizacién de los microcontroladores en siste- mas de control y en el disefio de aparatos aparentemente sencillos pero con una gran cantidad de usos en la vida diaria ya sea en el hogar, en la industria, en la oficina, en el campo 0 nivel experimental y sobre todo para ensefiarles a nuestros lectores eémo desa- rrollar su propia aplicacién partiendo de sus necesidades particulares. Para ensefiar y explicar mejor esta tecnologfa, hemos dividido este curso en varias secciones sft * Una seccién de Teorla en donde se presentan los conceptos basicos de los microcon- troladores iniciando con su origen basado en los microprocesadores, su estructura 0 arquitectura interna, su funcionamiento eléctrico y légico, la operacién de sus blo- ques internos, etc. En fin, toda la informacion necesaria para poder configurar un circuito con un microcontrolador y entender su funcionamiento. * Una seccién de Programacién en donde se explicard qué es un programa de micro- contruladus los difercutes lenguajes que sc utilizan, las téunivas adccuadlas para cha- borar programas eficientes, cémo se lleva al interior del microcontrolador y las prin- cipales herramientas de software y hardware para elaborarlos. Esta es una seccién de mucha importancia dentro del curso ya que la programacién es donde radica la mayor dificultad de muchas personas para acceder a esta tecnologia y por ello, dedi. caremos un gran esfuerzo didactico para que todos nuestros alumnos puedan escribir sus propios programas de una forma correcta. + Y para completar la estructura del curso. de acuerdo a la metodologia de CEKIT S.A., hay una secccién de Proyectos y actividades pricticas en donde se presentan ejemplos completos con aplicaciones de diferentes tipos de microcontroladores. En esta seccién también se incluirin los diagramas de pines y las caracteristicas de los microcontroladores mis representativos de las principales marcas o fabricantes y una explicacién de los componentes y circuitos que los acompaian, desde un simple LED, hasta pantallas de cristal liquido (LCD), sensores, conversores A/D, acondi- cionadores de sefal, etc. Aunque existen en el mercado una buena cantidad de fabricantes de micro- controladores, cada uno con una gran variedad de modelos, hemos seleccionado como ejemplos para este curso principalmente los de Motorola y Microchip (PIC) por ser los de mayor difusién y aplicacién actualmente; con un menor cubri- miento, los de INTEL, ATMEL, PARALLAX y otros, los cuales esperamos tra- tar en un proximo curso. Felipe Gonzélez G. Editor General er curs practco sove meroconroiaores INTRODUCCION A LOS MICROCONTROLADORES Un microcontrolador (microcontroller, en inglés) es un circuito integrado que contiene toda la estructura de una mi- crocomputadora, 0 sea, CPU (Unidad Central de Proceso), memoria RAM , memoria ROM, circuitos de entrada- salida (I/O) y otros médulos con apli- caciones especiales. Su nombre nos in- dica sus principales caracterfsticas: mi- cro por lo pequefo y controlador por- que se utiliza principalmente para con- trolar otros circuitos 0 dispos tricos, mecdnicos, etc. ivus eléc- cata eases peepee Meal & UO ER Se eee Uta Este maravilloso componente resume, en un solo circuito integeado, més de cuarenta afios de tecnolo gia electrdnica. Es dificil encontrar en la actualidad tun aparato 0 una apli pueda utilizarlo para optimizar su operacién. scién que no lo utilice © no Se ha mencionado y confirmado muchas veces que la electrdnica es la tecnologia de los componentes. Fl desarrollo de cada nuevo dis- positivo de estado sélido trae consigo técnicas de disefio diferentes, por lo general, més simples. En los afios sesenta, para construir un reloj digi- tal, era necesario acoplar un buen ntimero de cit- cuitos integrados légicos. Al mismo tiempo, el disefiador debia poser conocimientos muy cla- ros sobre cada uno de los elementos, para reali- zar, con éxito, la integracién. A partir de 1970, el panorama de la electro- a y especialmente el de la electrdnica digital, cambié radicalmente cuando aparecié en el met- cado un nuevo supercomponente: el micropro- cosadon Esty intioduje ut concep uuveduse que en la actualidad se conserva y refurerza cada vez més, el de la Mégica programada. Antes de los microprocesadores, los circuitos electrdnicos se disefaban para una funcién expe cifica la cual no podia modificarse sin cambiar fisicamente las co- Figura 1.1. Efempio de un circuit con \égica cableada nexiones, el ntimero y la cantidad de los deren tea clementoa que los formaban a lo cual se le llamé la lbgica cableada, figura 1.1 Con los microprocesadores y ahora con los citcuitos légicos programables (FPGA), las mi- crocontroladores y los circuitos de DSP (Proce- samiento Digital de seftales), entre otf0s, es posi- ble modificar cuantas veces se requiera el progra- ‘ma, atin en forma remota por la internet, y el circuito 0 aparato en el cual estan instalados,tra- bajard de una forma completamente diferente sin modificarfisicamente una sola conexién. De esta forma, el limite de los disefios solo lo establece la imaginacién de los programadores y la capaci- dad de los dispositivos que lancen al mercado los fabricantes especializados en estas tecnologias. Consolidadas las técnicas digitales de los afios sesenta, se cre6 entonces la necesidad de profundizar en el estudio aplicaciones para los microprocesadores y la programacién en lenguaje de miquina o sssembler Fué la época de oro del 8080, el 8086, el Z-80, el 6809, el 6502, el 68000 y otros micropro- cesadores, utilizados como circuitos centrales on las aplicaciones de control desarrollo de las En 1980, aproximadamente, los fabri- cantes de circuitos integrados iniciaron la difusién de un nuevo circuito con aplica- Goes para control, medicién einstrumen- tacién, al que I dor en un slo chip” o, de manera més exacta y concisa: microcontrolador. Para entender mejor la estructura interna, el fu- cionamiento y los origenes de los micro- controladores, repasaremos primero el tema de los microprocesadores. aron “microcomputa- Los microprocesadores Desde el punto de vista fun ‘ctoprocesador es un circuito integrado, f- gura 1.2, que incorporacn su interior una unidad central de proceso (CPU) y todo tun conjunto de elementos logicos que per- nal, un mi- © Lg: curso practoo sobre Merocontoadores Figura 1.2. Weropracesdor 8085 ‘miten enlazar otros dispositivos como memorias y puertos de entrada o de salida (I/O), formando un sistema completo para cumplir con una aplicacién espe mundo real. Para que el sistema pueda realizar su labor dehe ejecutar paso a paso un programa que consiste en una secuencia de niimetos binarios trucciones, almacenadas en uno 0 mds elementos de memoria, generalmente externos al mismo. La aplicacién més _— importante de los microprocesadores y que cambié totalmente la forma de tra- bajar, ha sido la computadora personal © microcomputadora ca dentro del curso préctco sobre Microcontroladores: REMC H W.: Aol) Un solo microprocesador, utilizado en el di- seno de un sistema digital, puede reemplazar una gran cantidad de circuitos integrados de pequ fia y mediana escala como compuertas, flip-flop registros, contadores, decodificadores, memorias, sumadores, cumparadores, et, figura 1.3. Esto ¢s ventajoso desde varios puntos de vista: facili- dad de disefio, modularidad, versatilidad, flexi- bilidad, mantenimiento, bajo costo, confiabili- dad, poco consumo de energia, ete. Evolucién histérica de los microprocesadores Dentro de los anales de la electrdnica esré ol aio de 1970 como la fecha de invencién del microprocesador. Desde entonces, este dimi- nuto dispositivo, uno de los adelantos tecno- légicos mas importantes de nuestro siglo, ha revolucionado todos los campos de la vida humana. Con el microprocesador se inicié una nueva era de desarrollo de la industria de las computadoras y de la electrénica, la cual hasta el presente ha ido evolucionando con una velocidad que atin sorprende incluso a los visionarios mas futuristas. Nadie en esa Epoca se imaginaba el impacto tan grande que causarfa este desarrollo en la vida del hombre moderno. Los aparatos electrénicos que utilizan mi- repeat parade personales y de escritorio, figura 1.4, han cam- biado totalmente la forma de trabajar ¢ inves- Figura 1.3. Tarjets con crusts integradesindviuales vs un Mleroprocesador ‘Figura 1.8. Computadoa personaly su tata prinypal tigar de los seres humanos. Ninguna herra- mienta anterior decarrollada por el hombre le habia dado tanto poder para crear otras y ace- lerar su evolucién en tados los campos. Para asimilar mejor el desarrollo de esta tecnolo- gla, rerrocedamos un paco en la histo’ electrénica, sus componentes y aplicaciones. Sin lugar a dudas, la senda la abrié el in- vento del tubo de vaco por Lee De Forest a comienzos del siglo, basado en el descubri- miento de un fenémeno llamado Efecto E son. Este dispositivo hizo posible la radio, la telefonia, la telegraffa inaldmbrica, etc., ¢ im- pulsé el desarrollo comercial e industrial de la clectrénica, Inclusive las primeras computa- doras eran fabricadas con tubos de vacio. Lue- go vino la revolucién del transistor, desarto- lado en los laboratorios de Bell Telephone en 1948 y utilizado a partir de 1950 a escala in- dustrial, con su inclusidn en la fabricacién de todo tipo de aparatos de radio, tele nido, computadosas y cu la industria miliear y espacial, entre otras aplicaciones, }6n, so- De los tres inventores del transistor (W. Brattain, W. Shockley y J. Bardeen), figura 1.5, Shockley fue el tinico que se dedicé a desarrollar métodos de fabricacién en serie de este revolucionario dispositivo en su em- @ cer presa, Shockley Semiconductor Labora- tories, dando nacimiento a una nueva era en la industria electrdnica y a la ubica- cién de esta tecnologia en un sitio de Ca- lifornia cercano a San Francisco que més tarde se amo Silicon Valley 0 Valle det Silicio, En esta compaiiia se iniciaron los principales cientificos ¢ ingenieros que mds tarde formarian sus propias empre- sas y desarrollarfan lus ciicuitus incegea- dos y los microprocesadores. El microprocesador es el maximo ex- ponente de la etapa siguiente al transis: tor: la tecnologia de los circuitos integra- dos. El concepto de circuito integrado, figura 1.6, empez6 a rondar por los cerebros y menres prodiginsas de quienes trabajaban en el disefio y fabricacién de transistores. El plan- teamiento fue mas 0 menos el siguiente: si se fabricaban transistores en forma individual y Juego se tenfan que unir siempre de la mism: forma entre si con alambres y con ottos com- ponentes zpor qué no fabricar de una vez todo el conjunto de material semiconductor y ais- lante, interconectado internamente para que cumpliera la misma funcién del sistema coral? Este planteamiento fue desarrollado en la practica simultdneamente, pero en forma independiente, por dos empresas muy im- Figura 1.5. El transistor y sus inentores portantes en la historia de la electrén Fairchild Semiconductor y Texas Instru- ments. En Fairchild dirigéa el equipo de tra- bajo Robert Noyce, y en Texas Jack Kilby. Como anécdota, podemos mencionar que los Primerns cireniros inregradas salicron al mercado en el afio de 1959 a un precio de 450 délares y solamente inclufan cuatro tran- sistores y varias resistencias. Actualmente, un circuito integrado cuesta entre 10 y 20 tayos de délar y un microcontrolador senc lo, con muchas mas prestaciones, puede costar hasta un délar 0 menos en escalas in- dustriales. La explosién de los circuitos in- tegrados desde el aio 1960 hasta la fecha, ha permitido el desarrollo de la electrénica en una forma sorprendente. Noyce renuncié a la Fairchild en 1968 y fund, en compafia de Gordon Moore y An- drew Grove y con el respaldo econémico de Arthur Rock, la empresa Intel en donde se dieron los primeros pasos para el desarrollo del microprocesador. Esta compafifa empez6 a vislumbrar un gran mercado en el drea de as computadoras y su investigacién se orien- t6 hacia el reemplazo de los circuitos de me- moria magnéticos con niicleo de ferrita, por circuitos de memoria basados en semiconduc- tores. La base técnica consistié en el uso de un simple flip-flap camo elemento de memo- ria, Asf se creé el primer circuito de memoria tipo RAM Hamado el 1103, con una capaci- dad de 1024 bits. EI disefto del microprocesador se inicié en un grupo de trabajo de Intel dirigido por ‘Ted Hoff, un brillante ingeniero egresado de la Universidad de Stanford. Todo empezd cuando Intel se decidié a firmar un contrato con una compafifa japonesa fabricante de cal- culadoras (la desaparecida Busicom Corpora- tion). Esta queria-que se les fabricara un con- junto de circuitos integrados que reemplaza- ran la gran cantidad de componentes que te- nian las calculadoras de ese entonces. Lae) Después de un largo trabajo, se llegé hasta lograr que todo el circuito fuera reemplazado por tes chips, pero estos resultaron ser de un tamafto mayor de acuerdo a los requerimien- tos. A Hoff se le ocurris que debia agrupar toda la parte de proceso ariumétivy y Wgicy en un solo circuito y el resto de la calculadora en los. otros dos circuitos. Con la intervencidén de otro disehador, Federico Faggin, el proyecto se llevé acahn con todo éxito. A este circuito, de 2250 elementos integrados en un area de 3 x 4 mili metros, se le llamé microprocesador. También se le dio el nombre de CPU (Central Processing Unit) o MPU (Micro Processing Unit) Aunque este circuito tenfa ya muchas de las caracteristicas de una unidad central de proce- so integrada, el primer microprocesador en un sélo chip, fabricado como tal, fue el 4004 de Intel, disefiado para reemplazar grandes canti- dades de circuitos integrados TTL. El 4004 era un chip muy sencillo que manipulaba datos de cuatro bits. Intel desarrollé muy pronto, en 1972, el $008, el cual podia procesar datos de ocho bits. pero era muy lento. Para remediar esto, Intel desarrollo un sus- tituto, el 8080, y posteriormente el 8085, com- Figura 1.6. Estructura interna bdsica de un circuit integrado Curso prictico sobre Mirocontroladores: BCA } oe los mi ontroladores patible con el primero, con funciones adicio- nales y menos circuitos de soporte. Un equipo de disefiadores que antes habia trabajado para Intel en el 8080 forms la Zilog Inc. y constru- y6 el microprocesador Z-80, el cual incorpo- raba un conjunto de instrucciones més exten so que el 8080, aunque era compatible con este Ultimo, Este microprocesador ha sido uno de los mas utilizados en el campo de control. Por la misma época en que se presentaba al mercado el 8080, otra empresa de semicon- ductores, Motorola, desarrollé el 6800, un mi croprocesador de 8 bits con un disefio com- pletamente distinto pero con iguales caracte- risticas. Motorola perfeccioné el 6800 hacia cl 6809, considerado como uno de los mejores procesadores de 8 bits de todas las épocas. A pesar de sus excelentes caracteristicas, el 6809 no tuvo el éxito comercial que se ¢s- peraba. Dicho éxito lo obtuvo otro derivado del 6800: €1 6502, producido por MUS le- chnology. Con este microprocesador se fa- bricaron las primeras computadoras persona- les como la PET de Commodore y la Apple II de Apple Computer Inc A partir de ese momento, se establecié una guerra técnica y comercial, que atin sub- siste, cntre Intel y Motorola, la cual los ha Hevado a ser los dos grandes lideres indiscu- tibles del mercado de los microprocesadores. Pero el desarrollo del microprocesador no se quedé ahi. A principias de la década de los 80, empezaron a aparecer los microprocesa- dores de dieciseis bits, mucho més potentes. El primero en salir al mercado fue el 8086 de Intel en 1978, el cual fue adoptado por la IBM para la fabricacién de su famosa IBM PC. Lo siguieron de cerca el 68000, el 68020, el 68030 y el 68040 de Motorola. Con estos mi- croprocesadores se inicié en Apple una nueva familia de microcomputadoras: las Macin- tosh, Luego, en un consorcio entre Apple, IBM y Motorola se desarrollé una nueva fa- mila de microprocesadores; los Power PC los cuales se utilizan en las computadoras Apple IBM actuales. Por los lados de Intel se desarrollaron el 8088 utilizado en el IRM XT, el 80186, el 30786 nrtiliza- do para la IBM AT, el 80386, el 80486 y los Pen- tium, Todos estos microprocesadores de Intel han sido utilizados para la fabricacién de microcompu- tadoras de baio costo llamadas clones, Jo que ha hecho que esta empresa sig siendo el mayor fabri- cante de microprocesadores en el mundo, La siguiente generacién fueron los Pen- tium II, Pentium III y actualmente los Pen- tium IV con los cuales se han logrado veloci- dades de procesamiento impresionantes y una enorme capacidad de memoria, lo que los hace apropiados para moverse sin problemas en en- tornos como la internet, el video, la multi- media, el procesamiento de datos y el trabajo en tiempo real Los microprocesadores actuales Dentro de los microprocesadores de la pla- taforma PC, actualmente podemos mencionar los productos de las firmas Intel, AMD, Cyrix y Digital. Las referencias mas novedosas son el Althon, el 686 MMX y el Alpha, respectivamente, figura 1.7. Figura 1.7. Wicroprocesadores modemos ® PEHCIT: cus0 pricteo sobre Meroconraladores AHH Pe LOS IVICROPROCESADORES Son los circuitos integrados que revolucionaron la electrénica al permitir el disefio de todo tipo de aparatos programables. Aunque su principal aplicacién son las com- putadoras personales, también se encuentran en la mayorfa de los circuitos de control. curso pict sobre Mrocontladres RCA: & Los microprocesadores El microprocesador, coraz6n de las computadoras Una computadora digital es un equipo especiali- zado en el procesamiento de informacién, cuyo principio de funcionamiento es relativamente sencillo, silo vemos desde el punto de vista de los bloques que lo conforman. Cada uno de esos bloques esté formado por varios circuitos inte- grados ficiles de entender, la parte compleja la encontramas cuando estudiamos el interinr de dichos circuitos, pero esto en realidad no es de mucho interés para el usuario comin, Una computadora digital se compone de tres bloques fundamentales, figura 2.1: una unidad de entradas y salidas, una CPU y una memoria. Assu ver, la unidad de entradas y salidas se divide en un bloque de entrada y otro de salida. Del mismo modo, la CPU se divide en una unidad atitmético-légica (ALU), y una unidad de con- trol y el bloque de memoria en memoria RAM y memoria ROM, obteniéndose seis bloques 0 uni- dades con funciones muy especificas, figura 2.2, cuyas funciones describiremos a continuacién. La unidad de entrada es quien recibe infor- macidn del siundy extetivi, ya sea de un opera dor humano o un fenémeno fisico; esta unidad permite llevar esa informacién hacia la unidad cde memoria para poder procesarla posteriormen- : dispositivos de entrada son, por ejemplo, los teclados y el ratén. La unidad de salida entrega los resultados del procesamiento al mundo exte- a ee) aide oor Figura 2.1. Bloques principales de una computadoracigital @ ‘Microprocesador och re ed de a conto coy Unidad Es Figura 22 Estructura general de ura computador oil rior. Esta informacién se lleva desde la unidad central de proceso 0 CPU, hacia circuitos o apa- ratos externos llamados periféricos que se encuen- tran fuera de la computadora, por ejemplo mo- nitores, impresoras o parlantes. La unidad de memoria se encarga de alma- ccenar los datos y los programas que operan sobre esos datos y es una de las més importantes de uma computadora. Se distinguen dos sistemas rentes de memoria: la de almacenamiento primario y la de almacenamiento secundario, La memoria de almacenamiento primatio se refiere alos circuitos que guardan los programas que sc vvan a ejecutar y los datos que se necesitan duran- te la ejecucién de estos programas, y la memoria de almacenamiento secundario, se utiliza para almacenar grandes cantidades de darne que nose requieran con frecuencia para la operacién de la computadora. Sistemas de este tipo son los dis- cos duros y los discos de 3.5”. Dentro de la memoria de almacenamiento secundario se distinguen tres categorias: la ROM (Read Only Memory) 0 memoria de solo lectura, donde se almacenan cierto tipo de programas como el del sistema de arranque de una compu- tadora (BIOS); la RAM (Random Access Memory) ‘o memoria de lectura y escritura, donde se alma- Curso préctico sabre Microcontroledores cnan los datos que los programas van generan- doy la cache que es una memoria RAM con tlem- po de acceso muy répido donde se mantienen Jos datos més utilizados durante la ejecucién de un programa. La unidad central de proceso (CPU: Central Processing Unit) reine la unidad de control y la unidad aritmético-I6gica en un solo bloque. Esta tilrima ramhién se canace camo ALU] (Arithme- tic Logic Unit). En la practica, la unidad central ‘0 CPU se encuentra en forma de un circuito in- tegrado llamado microprocesador: Dentro de esta CPU, la unidad de control se encarga de la interpretacién y ejecucién de las instrucciones del programa. También controla todos los componentes de una computadora por ‘medio de Iineas de conexién llamadas buses. La ALU se encarga de realizar las operaciones logi- cas y aritméticas. Las principales funciones arit- méticas realizadas en la ALU incluyen la AND, la OK, la EXOR y la comparacion. Como he- mos visto, el microprocesador es quien lleva a cabo las principales funciones de un sistema de cémputo, y quien integra a los demés compo- nentes y ejecuta las instrucciones. Es por eso el principal componente de una computadora. Funcionamiento del microprocesador Desde un punto de vista concepeual, un micro procesador ideal es un dispositivo digital que acepta o lee datos aplicados a un cierto niimero ‘icp nhac rb Tes sais y un por sinsenase Figura 2.3 £1 microprocesacor ideal de lineas de entrada (N); los procesa de acuerdo a las inscrucciones secuenciales de un programa almacenado en su memoria, y suministra 0 escri- be los resultados del proceso en tn cierto mime 0 de lineas de salida (M), figura 2.3 Los datos de entrada pueden provenir de inte- suptores, sensores, convertidores A/D, teclados, et. Los datos de salida pueden estar dirigidos a actua- dores, indicadares 0 digplays, panrallas, cnnvertida res D/A, alarmas, impresoras, etc. El programa al- macenado determina como deben ser procesados Jos datos de entrada y, en consecuencia, que infor- rmacién debe enviarse alas lineas de salida. El soporte fisico de las instrucciones del pro- grama es la memoria, la cual almacena los datos para que sean procesados. En un momento dado, Jos niveles légicos (unos y ceros) de las Iineas de salida de un microprocesador, dependen no sola- mente del programa en sf sino también de la his- toria de las seftales de entrada hasta ese momento. “Mientras que en un microprocesador ideal no exis- ten restricciones respecto al nimero de entradas y salidas, los microprocesadores reales sélo pueden acomodar un niimero limitado de terminales 0 pines pare tis faniciones. Como verenios més adelante, para simplificar el niimero de pines, la mayorfa de microprocesadoresutilizan las mismas lineas para la entrada y salida de datos. De otro lado, mientras que un microprocesa- dor ideal tiene, teéricamente, una memoria inter- nailimitada, los microprocesadores reales solo dis- panen de wna cantidad limitada para almacenar ‘bits Registro de 16 bis Figura 2.4 Regisiros de un microprocesador Curso prbctic sabre Mcrocontoladores AGRCHT.: & OS microprocesadore: datos e instrucciones. Por esta razén, un micro- procesador debe tener la posibilidad de cumuni- ccarse con una memoria externa. Para lograrlo, ne- cesita dis nner también de un conjunto de ineas de seleccidn o direccionamiento adicionales. Finalmente, para sincronizar su operacién con la de los componentes externas canectados al mismo y tener un control global de los buses de datos y direcciones. un microprocesadar ne- cesita disponer también de un conjunto de If- neas de control. Por tanto, un microprocesador mi rstes ma Bast i rst75 inst requiere de un bus de datos, un bus de direccio- ney y un bus de control para comunicarse con los demas componentes. Naturalmente, el microprocesador ideal (un diopositive con sélo entradas y salidas y un programa almacenado en él) no existe. Sin ‘embargo, la tendencia de los nuevos disefios s incluir cada vez més funciones en una mis- ma pastilla, ineluyenda unidades de memoria ¢ interfaces entrada/salida como en el caso de los microcontroladores. so smo —o , van de Pe a may se 7 nadie rh Figura 2.5 Arguitectura intema de un microprocesador 8085 de Intel 2 Aster: oe ce soe neni Organizaci6n interna de un microprocesador La organizacién interna de un microprocesador, es decir, su arquitectura, varia notablemente de un dispositivo a otro. Por esta razén, es dificil definir in modelo de microprocesadar que represente to- das las alternativas posibles puesto que cada uno tiene una légica de funcionamiento propia. La ar- quitectura, especialmente el tipo, niimero y orga- nizacién de los registro internos, es una considera- cidn importante ala hora de elegir un microproce- sador para una aplicacién determinada. Un registro es una posicién de memoria co- nectada a Ia CPU donde se pueden retener cifras binarias. Esta formado por elementos légicos (compuertas, flip-flops, etc.) que, al ser tomados en conjunto, pueden almacenar ntimetos binarios de4, 8, 16 6 mas bits, figura 2.4. Se utilizan esen- cialmente para almacenamiento temporal, en el que el contenido cambia continuamente, Esto no implica que se deba conocer con de- masiado deralle, cémo funciona internamente un microprocesador para poder utilizarlo, Existen partes y funciones que normalmente deben estar presentes: un reloj, una ALU, varios registros, un contador de programa, etc. En la figura 2.5 se muestra un ejemplo de la arquitectura interna de un microprocesador simple, el 8085 de Intel. Por ejemplo, el reloj o circuito de oscilacién puede estar 0 no incorporado en el microproce- sador, pero es absolutamente necesario puesto que tiene la misién de sincronizar todas las operacio- nes de debe realizar el dispositive. Del mismo modo, para ejecutar un programa, un micropro- cesador debe tener en su interior registros que le permitan almacenar informacién, realizar leceu- ras, modificaciones a los datos, ere. Operacién basica de un microprocesador Analizando un sistema de cémputo, nos da- mos cuenta que el microprocesador 0 CPU es la parte del sistema encargada de leer, inter pretar y ejecurar las instrucciones del progra- ima aliumaccuady en la memoria. Desde un punto de vista conceptual, la ac- cién de leer e interpretar las instrucciones la rea- liza una parte del microprocesador denominada unidad de instruccién y su ejecucién corre a car- go de otro circuito especializado dentro del mis- ‘mo denominado unidad de ejecucién, figura 2.6 ‘naan cena! de procesarnento (GI) 0 microprocesador Figura 2.8. Unidades de instuccién yelecucén Launidad de ejecucién, a su vez, contiene una unidad aritmético-légica o ALU y un conjunto de registros auxiliares. La ALU se encarga de realizar una gran variedad de operaciones aritmeéticas y lé- gicas, y los registros de almacenar temporalmente Informacién. Las distintas tunciones realizadas por el microprocesador quedan especificadas por su conjunto de instrucciones. La unidad de instruceién Hleva la ccucnta de las posiviones o dirccsiones de memoria donde se encuentran las instrucciones que el microprocesador necesita en cada instante. Normalmen- te, las instrucciones se len y ejecutan cen el mismo orden en que fueron alma- cenadas en la memoria. Sin embargo, Ja presencia de instrucciones de control de programa puede alterar la secuencia de ejecucién de estas instrucciones. Para llevar la cuenta de las di- recciones de las instrueciones, la unidad de instruccién incorpora un registro especial llamado contador de programa 0 PC (Program Coun- ter). Cada vex que se lee una ins- truccién, el contador de programa se incrementa automaticamente para suministrar la direccién de la posicién de memoria donde se en- ‘cuentra la siguiente instruccién o dato del programa Cada vez que un microprocesador recibe una instruccién, la almaccna cn un registro interno del mismo Hamado registro de ins- trucciones con el fin de proceder a su deco- dificacién o interpretacién y buscar en la memoria ROM el conjunto de microinstruc- ciones necesarios para su ejecucién. Esta fun- cién la realiza un circuito denominado de- codificador de instrucciones. Ademés del contador de programa y el registro de instrucciones, un microprocesa- dor contiene usualmente otros registros para facilitar el acceso a las instrucciones y a los datos. Algunos de estos registros son progra- mables en el sentido de que su contenido puede ser alterado por software (instruccio- nes) mientras que otros son inaccesibles des- de el punto de vista de programacién y su contenido sélo lo puede determinar y con- sultar el microprocesador. Registro de status (conticiia de estado) ‘Acumulaor era trabajo) Contador del nrograma Registro de instrucciones ed ee Bus Bus de control Bus del sistera hacia a memoria principal V disoostvs de E'S Figura 2.7. Arqitectura de ui microprocesador genérica La mayorfa de los microprocesadores, por cjemplo, incluycn un registro | $8 ste ot" #s cenval cat ‘convol reas H almerzen 3 Figura 2.8 Eslouctna le buses yore Las lineas de los buses de un microprocesador transportan voltajes que representan niimeros bina- tios (1's y 0%). El microprocesador, los puertor de entrada/silia y la memoria, responden tinicamente a esos niimeros hinarios codificados electrénicamente. El bus de datos. Lineas bidireccionales El bus de datos lleva datos e instrucciones hacia y desde el microprocesador. Las instrucciones pro- Data OUT Data @ o uc) ceden siempre de la memoria mientras que los datos que procesa u obtiene el programa de i trucciones, puede provenir de o ir hacia la memo- ria o los médulos de entrada/salida Generalmentre, el niimera de lineas de en- trada ¢s igual al nimero de lineas de salida. Este riimero define la longitud de la palabra de da- tos del microprocesador. Son comunes longitu- des de palabra de 4, 8, 16, 32 y 64 bits. En la figura 2.4, por ejemplo, se muestra un micro- procesador de 8 bits. En este caso, tanto el bus de datos de entrada como el bus de datos de salida con de un dyte, es decir de ocho (8) bits Elnimero total de pines asignado en el circuito integrado del bus de datos puede reducirse préctica- mente en un 50% si se utlizan los mismos puntos de conexién tanto para los datos de entrada como para los datos desalida, pero no para ambos simulté- nneamente. El bus de datos asf constiruido es bidirec- onal en el sentido de quel informacion puede circu- Jar cnuande o salicudy del micoprocesadon La for ‘made representar un busde datos bidireccional para un microprocesador de N bits se ilustra en la figura 2.9 Un bus bidireccional puede construire con com puerta -state para controlar la direccin del flujo de informacién. La figura 2.9 (a) representa tun micro- procesador de cuatro bits con un bus de datos bidirec- cional. En la figura 2.9 (b) se muestra la configura- cidn de una linea de bus bidireccional. Las lineas de seleccién $1 y SO proceden del bus de control aout Boe. ‘paw B08: Linea de bus direcional de datos BOUT: Control ge salida de datos ‘BIN: Control de entrada de datos HouA $1.50: Control de bus TMOLDA. Control de gerantia de bus (ata impedancia) Figura 2.9 (a) Microprocesador de 4 tits con bus de datos bidreccona, (0) Linea de bus biirecconal, 1s pricticn ste Meroontrndores AGE = Q@ Lo cri ey La transferencia de datos de entrada o salida desde 0 hacia el bus de datos se realiza, respecti- vamente, con S1S0 = 10 y $1S0= 01. La linea de bus puede inhabilitarse con $1S0 = 00 para im- pedir cualquier transferencia de informacién en- tre el bus de datos y cl microprocesador. Las lineas de seleccién pueden utilizarse para informar alos médulos externos que comparten el hie de datas el estada del bus bidireccional en un momento dado, Este es el propésito de las Iineas marcadas como DBOUT (bus de datos en el modo de salida), DBIN (bus de datos en el ‘modo de entrada) y HOLDA (bus de datos en estado de alta impedancia) en la figura 2.9 (b). La informacién contenida en el bus de datos puede representarse numéricamente de varias for- ‘mas: binaria, octal y hexadecimal, principalmente. Considérese, por ejemplo, un microprocesador de 8 bits con el byte 10111011 en las lineas D7 a DO del bus de datos, siendo D7 el bit mis significativo ‘© LSB y DU el bit menos significativo o LSB. Esta palabra de datos representada como un niimero binario es simplemente 10111011(B) 6 10111011(2), representada como numero octal 5 273Q 6 2738 y como niimero hexadecimal (la mis usada) es BBH 6 BB16. La forma de conver- tir mimeros binarios en octales o hexadecimales y viceveresa se explicari en detalle cn la scecién de programacién. Los sufijos B,Qy H, y los subindi- ces 2, 8y 16 enfitizan el sistema numérico (bina- rio, octal y hexadecimal) de cada presentacion, A pesar de que el sistema hexadecimal pro- porciona una forma muy compacta y concisa de expresar el contenido de un bus de datos, no podemos olvidarnos completamente de Ia re- presentacién binaria, En una aplicacidn real, esta tiltima nos permite identificar ficilmente, por ejemplo, cual interruptor ha de ser abierto 0 cerrado en un momento dado para obtener una condicién de entrada especifica 0 cual lampara ha de ser energizada para obtener un efecto de salida determinado. El bus de direcciones. Espacio de memoria EI bus de direcciones contiene la informacién digital que envfa el microprocesador a la me- moria y dems elementos direccionables del sis- tema para scleccionar una posi ria, una unidad de entrada/salida o un registro particular de la misma. El mimero de lineas dis- ponible en el bus de direcciones (n) determina el tamafio mdximo de memoria que puede cer acomodado en el sistema (2'). de meno Asi, por ejemplo, un microprocesador con un bus de datos de 8 bits y un bus de direccia- nes de 16 bits (tipico) tal como el Z-80 puede manejar directamente una memoria de 2! 65536 (64K) posiciones, cada una contenien- do un byte (palabra de 8 bits). Naturalmente, una ver seleccionada una posicién de memoria, el microprocesador debe estar en capacidad tanto de almacenar informa- cidn en esa localizacién (operacién de escritu- ra) como de extraerla (operacién de lectura). La cantidad de memoria utilizada en un istema con microprocesador depende de la aplicacién especifica y es a menudo inferior a la maxima que puede manejar el bus de di- recciones. El conjunto completo de localiza- ciones de memoria a las que pucde cener ac- ceso un microprocesador, se denomina espa- cio de memoria. Adi, por ejemplo, el espacio de memoria de un microprocesador de 8 bits con un bus de direcciones de 16 bits (por ejemplo el 8080) s simplemente 2' = 64K. En el caso de un microprocesador de 8 bits con un bus de direcciones de 16 bits, el espacio de memoria puede ser visualizado gré- ficamente como un mapa de 65536 direccio- nes de memoria, cada una conteniendo un byte, la més baja de las cuales es 0000H y la mds alta FFFFH, figura 2.10 & re cain mrcanvare FF FF O00 rere 000 ‘p00 e000 000 000 9000 8000 Oe re 6000 ‘000 4000 3000 002 2000 oot 1000 he ‘0000 000 + ‘Nove que la direucidn de memoria se ineremen= taen 1000H cada 4K (=4096) direcciones de espa- cio de memoria, Observe también que cada 1K (-1024) posiciones de memoria, la direocién de me- ‘moria se incrementa en 400H. La memoria puede dividirse también en paginas de memoria, cada una contiene 256 palabras y cubre 100H direcciones de memoria. Hay, por tanto, 4 paginas en 1K de me- ‘moria. [as direcciones en la pagina de més bajo or- den van desde 0000H hasta 0OFFH, en a siguiente desde 0100H hasta O1FFH, y asf sucesivamente. El bus de control El bus de control contiene la in- formacién queenviael micropro- cesador a los elementos del siste- ‘mao bien la recibe de estos con el propésito de sincronizar la opera- cién de los circuits externos. EL ‘nimero de lineas del bus de con- trol es variable y depende del mi- croprocesador particular utilizado. Organizacién de un sistema basado en microprocesador Figura 2.10. Espacio de memoria. Mecic) 1000 tema tipico basado en mi- croprocesador. Note que consta de cuatro elementos principales: una memoria, tun microprocesador, un puerto de entrada y un puerto de salida. EI microprocesador cesté conectado a todos los otros componentes a tra- vés del Bus de datos. Las seftales del Bus de control, conjuntamente con las del Bus de direcviunes, deves- minan que elementos se comunican con el micro- procesador en un momen- to dado. Estos tres buses configuran el bus del cis tema y el gobierno del mismo es responsabilidad del microprocesador. Ent Taal 0100 i ‘0000 1 pagina, Ta seenencia de instrucciones que cons- tituyen el programa que debe ejecutar el mi- croprocesador estén almacenadas en un area de la memoria, En el momento de iniciar el sistema, el microprocesador sitdia en el bus de direcciones la direccién de la posicién de memoria donde se encuentra la primera ins- truccién. Como resultado, la memoria entrega 7 Hacia dspostvos ‘de sada open Figura 2.11 Diagrama de bloques de un sistema basado en un microprocesador eee erence keicrr: > En la figura 2.11 se muestra la «structura organizativa de un ss- Los microprocesadores esta informacién en el bus de datos. Después de interpretar y ejecutar la primera instrue- cién, el microprocesador busca la siguiente instruccién, la ejecuta y asi sucesivamente. La generacién de la serie de instruccion: sarias para que el microprocesador realice una tarea determinada, es lo que se denomina su programacién. nece- Secuencia de operacidn de un sistema basado en un microprocesador Hasta aqui hemos visto la arquitectura genéri- cade un microprocesador y de un sistema ba- sado en uno de estos dispositivos; ahora anali- zaremos con mds detalle los pasos que sigue un sistema de esta naturaleza para ejecutar las instrucciones contenidas en un programa y aprenderemos como trabajan en conjunto cada uno de los blogucs del sistema para desarrollar estas tareas. Un microprocesador es un diminuto con- junta de miles o millones de elementos légi cos € interconexiones disefiado para respon- der a las instrucciones de un programa, el cual le indica lo que debe hacer en cada instante. Sin un programa que le de vida. un micto- procesador y todo el hardware conectado a su alrededor, serfa una masa inerte de compo- nentes electrénicos sin un objetivo especifi- co. De hecho, la funcién primaria de un mi- croprocesador es ejecutar programas. ‘a ranacatata un one yan eitado (GORA ere psn de mono _Las instrucciones que constituyen un pro- gtama se almacenan en la memoria del siste ma como patrones de unos y ceros, organiza- dos en grupos de 8, 16, 32 y mas bits, depen- diendo de la longitud de la palabra de datos del microprocesador. PALABRA: Es un grupo de bits que se tratan como una sola unidad. El mas comtin ¢s el ‘éyte, el cual esta formado por ocho (8) bits Cuando se trabaja con un microprocesador, ¢s importante comprender su conjunto de ins- trucciones y ser capaz de utilizarlas en la elabo- racién de programas; se debe entender la forma como el microprocesador las ejecuta y adquirir Ja habilidad para cmplearlas eficientemente en Ja manipulacién de datos. Para ejecutar las operaciones indicadas por una inctruccién, el microprocesador debe empezar por direccionar o encontrar la posi- cién de memoria donde se encuentra la ins- truccién, leerla y decodificarla o interpretar- la por medio de sus circnitas internos. Los pasos anteriores constituyen lo que se deno- mina ciclo de instruccién. Durante su opera- cién normal, un microprocesador no hace otra cosa que ejecutar repetidamente ciclos de instruccién. = cto 00006000 cory -cx00 00000000 oreo —> “e000 ot OFT “000 om mH —» 000 009 0000 OTT > nto ema nim on a tt Figura 2.12 Ejemplo de un programa en lenguajo de méquina & LO swiss teeters Figura 2.13. fjemplo de un programa objeto Para ejecutar un programa, un micropro- cesador debe tenerlo almacenado en forma bi- naria (patrones de 1 y 0) en posiciones adya- centes de la memoria de programa del sistema. Esta forma binaria del programa se denomina lenguaje de maquina y es el Gnico lenguaje que entiende el microprocesador. En la figura 2.12 se muestra un ejemplo de un programa en len- guaje de maquina para un miiuprocesador 8085, Para evitar la confusién que, desde el punto de vista del programador, puede gene- rar una larga lista de unos y ceros, estos 6 gos se pueden representar en forma hexadeci- mal, constituyendo lo que se denomina un pro- _grama o cédigo objeto, En otras palabras, un c6- digo objeto es, simplemente, una representa- cidn ahreviada de un programa en lenguaje de maquina, figura 2.13, Por ejemplo, 101111 01 se representa como BD, 0000 0001 como 01, 1110 0110 como E6, 0000 111 1como OF, ete. No todos los cédigos de un programa ob- jeto o en lenguaje de maquina, corresponden a instrucciones cjecutables. Muchos de ellos co- rresponden a datos y direcciones que son uti- lizados por el programa para propésitos parti- culares. Los c6digos correspondientes a instruc ciones ejecutables se denominan cominmen- te cddigos operacionales (opcodes). Por tanto, en un sistema de & Brts, los programas en len- guaje de maquina se reducen a unas cuantas secueencias de grupos de 8 bits (7 byte) situados en algin lugar de la memoria. Estas secuencias representan a su vez una mezcla de instrucciones para el microprocesa~ aie) dor (opcodes) y datos sobre los cuales ha de ope- rar el misma. Cada cédign de aperacién le in- dica, directa o indirectamente al microproce- sador, la direccién de memoria donde se en- cuentra almacenada la siguiente instruccién ejecutable. Al recibir un cédigo de operacién, los circuitos internos del microprocesador lo descifran. La informacién obtenida permite al dispositive identificar la naturaleza de los bytes que siguen al opcode. El conjunto de cédigos de operacién (opco- des) alos cuales puede responder un mictoproce- sador, constituye su conjunto de instrucciones (Instruction Set) . Cada microprocesador tiene su propio conjunto de instrucciones, cada una re- presentada por un opcode diferente. El mimero maximo de cédigos de operacién que puede des- cifrar un micioprocesadur e igual « 2%, sicudy N el tamafio de la palabra de datos del mismo. Las instrucciones de un microprocesador pueden agruparse en tres grandes categorfas gtin su funcién: la primera son las instruce nes de transferencia de datos, las cuales mue- ‘ven informacién sin alterar su contenido de una parte a otra del sistema: la segunda categoria es la de procesamiento de datos; estas instruccio- nes transforman la informacién desde el punto de vista légico o aritmético; y la tercer catego- rfa, son las instrucciones de control de progra- ‘ma, ellas dererminan la secuencia de ejecucién de las instrucciones. En la figura 2.14, observamos un diagra- ma simplificado de la arquitectura de un siste- ma basado en un microprocesador, en el cual basaremos nuestro an dlisis de la interaccién en- tre cada una de las partes del sistema y la se~ cuencia que presenta. En este diagrama se pueden notar cuatro bloques fundamentales: la memoria, la unidad de conuol, la uidad uperativa y el médulo de entradas y salidas. Todos ellos conectados a tra- vyés de los buses de direcciones, datos y control. 4 caw prtte ete Mereontaioes AGRCTF: @ 0s microprocesadores Bus 6 datos ° aaa Reoistrn ce faerie S Stes a ) e-- Memoria RAM de lectura y escritura, con 256 posiciones de 8 bts cada una Tee eee Decciticad rm on) co TORRY cee OEE o moe Bus de crecciones © wera ® Pr aett) Bus de datos e instruc Corer eo de entrada ro a a ‘de operacion Figura 2.14 Diagrama de bloques simpifcado de un sistema basado en un micrprocesador ® GRICIT C100 picten sore Merocotcadores Peirics dl

También podría gustarte