Seccion 1- Teoria de Microcontroladores Abril-2010

97
DIGIBOOK - SECCION 1 TEORÍA GENERAL DE MICROCONTROLADORES 1 de 97 DigiBook (Guía de Proyectos Microcontrolados) Marzo /2010 DIGIBOOK SECCION 1 TEORIA GENERAL DE MICROCONTROLADORES Guía de Proyectos Microcontrolados By: Ing. Oscar J. Cabrales B. e-mail: [email protected] Colombia Cel: 310-7374112 Mat. Prof: NS 206-45262

Transcript of Seccion 1- Teoria de Microcontroladores Abril-2010

Page 1: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

1 de 97

DigiBook – (Guía de Proyectos Microcontrolados) Marzo /2010

DIGIBOOK SECCION 1

TEORIA GENERAL DE MICROCONTROLADORES

Guía de Proyectos Microcontrolados

By: Ing. Oscar J. Cabrales B. e-mail: [email protected]

Colombia Cel: 310-7374112

Mat. Prof: NS 206-45262

Page 2: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

2 de 97

DigiBook – (Guía de Proyectos Microcontrolados) Marzo /2010

PROBLEMA

La preparación de profesionales especializados en áreas relacionadas con la Electrónica Digital Microcontrolada es de gran importancia actual y futura para la región y el país. El sector industrial colombiano está abocado a una inminente competencia de calidad en el mercado nacional e internacional, lo cual exige una gran flexibilidad de adaptación y una calidad suficiente a costos competitivos. Estas condiciones sólo se logran con una gran dedicación de recursos humanos y económicos a la transferencia e incorporación de nuevas tecnologías en los lenguajes de programación que facilite y optimice los recursos de un microcontrolador en el desarrollo de proyectos en el sector productivo tales como robótica, visión artificial, control numérico, control digital, el control ‘adaptativo’, la microelectrónica, la economía energética, la gestión de la producción, informática industrial, la telemática industrial, la gestión ambiental, etc.

METODOLOGIA

Los cursos se desarrollarán a través de clases teóricas fundamentales acompañadas de prácticas como proyectos de aplicación en los temas que lo requieran. Elaboración de prototipos, maquetas, y montaje de circuitos en protoboard, sustentación y verificación de las prácticas de laboratorios.

OBJETIVO GENERAL

Desarrollar habilidades en la programación de microcontroladores microchip de la gama alta mediante la aplicación del programa LPM2 y el versátil software de simulación avanzada Proteus Profesional.

OBJETIVOS ESPECIFICOS

Impartir información básica relevante a la Electrónica Digital, unificar criterios fundamentales previos a la incursión en el mundo de los microcontroladores.

Introducir al estudiante en las técnicas de interfaz de periféricos avanzados, diseño optimizado de desarrollo tecnológico con circuitos digitales microcontrolados según las características del fabricante.

Desarrollar habilidades en la programación estructurada de la familia 18F de microchip, respetando la sintaxis y estructura de un código para microcontroladores.

BIBLIOGRAFIA

MICROELECTRONIC CIRCUITS. Adel. S. Sedra & K. C. Smith. Editorial OXFORD UNINERSITY PREES Diseño Electrónico. Circuitos y sistemas. Savant, Roden y Carpenter. 2ª. Edition. Addison Wesley App Notes de Microchip (www.microchip.com) Tutorial PIC Basic profesional Tutorial MPLAB IDE versión 7.1 de Microchip Data sheet microcontroladores microchip

Page 3: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

3 de 97

DigiBook – (Guía de Proyectos Microcontrolados) Marzo /2010

Autor de DIGIBOOK Ing. OSCAR JOSÉ CABRALES BAENA

Ingeniero Electrónico nacido el 5 de Noviembre de 1978 en Mompós Bolívar (Colombia). Cursó el bachillerato en el colegio Nacional Pinillos de Mompós y egresado de ingeniero electrónico de la Universidad de Pamplona en abril de 2001. 9 años de experiencia laboral en docencia universitaria y desarrollo tecnológico. Actualmente reside en valledupar – cesar y es docente de tiempo completo en la Universidad Popular del Cesar (Valledupar-Colombia). Director, asesor y jurado de diversos trabajos de grado. Docente en Ingeniería Electrónica, Ingeniería de Sistemas, Ingeniería Eléctrica, Ingeniería Mecatrónica, Tecnología en Redes y Sistemas Teleinformáticos. Ha sido profesor de tiempo completo ocasional en la Universidad de Pamplona, Universidad Popular del Cesar, Instituto Superior de Educación Rural ISER y corporación UPARSISTEM DE VALLEDUPAR en el área de mantenimiento de computadoras, electrónica analógica, circuitos digitales, lenguajes de programación visual y programación de microcontroladores. Con amplia experiencia en Control y Automatización, programación WEB, Diseño de Redes de computadoras, programación orientada a objetos como Visual Basic .NET, programación de Microcontroladores Microchip y Motorola, Diseño Web, Bases de datos ACCESS, My SQL, lenguaje assembler, arreglos lógicos programables FPGA, VHDL, Programación de DSP (Digital Signal Processor), lenguajes de programación visuales bajo plataforma Windows, PLC’s NAIS, FESTO, control avanzado de periféricos del Computador (Puerto Paralelo, serial, USB, MODEM, Tarjeta de Red, Tarjeta de sonido), sistemas de posicionamiento global GPS, sistemas biométricos, sistemas GPRS – SMS – GSM, sistemas IVR-DTMF, RFID, Protocolos TCP-IP SNMP, comunicación inalámbrica ZIGBEE, sistemas SCADA y diseño de circuitos impresos asistido por Computador EAGLE, PROTEUS. Con trabajo de grado propuesto para laurear con el proyecto “LABORATORIO DE IDIOMAS INTELIGENTE CON TECNOLOGIA DE AVANZADA”, artículos publicados en revista científica indexada, conferencista y ponente en diversos eventos científicos a nivel internacional. Fundador de la empresa en régimen común DIGISOFT ELECTRONIC Ltda en el año 2005 y la empresa en régimen simplificado DIGITAL CONTROL B&J en el año 2009. Diseñador del sistema de control de acceso biométrico “BIOMETRIC SYSTEM 1.0” instalado en las principales clínicas y hospitales del cesar. Diseñador del novedoso sistema de asignación de turno computarizado FOTOTURNO SOFT 1.0, diseñador del aplicativo SMART HOTEL SOFT de automatización de hoteles y moteles.

Page 4: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

4 de 97

DigiBook – (Guía de Proyectos Microcontrolados) Marzo /2010

Page 5: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

5 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

INDICE SECCION 1 PÁG REFLEXIONES 5 LA MAGIA DE PENSAR EN GRANDE 7 LA LEY DE MURPHY (léase merfi) PARA INGENIEROS ELECTRÓNICOS 8 TEORÍA GENERAL DE MICROCONTROLADORES 10 RESEÑA HISTÓRICA DE MICROPROCESADORES Y MICROCONTROLADORES 10 DISEÑO DE SISTEMAS CON MICROPROCESADOR 13 INTRODUCCIÓN A LOS MICROCONTROLADORES 14 DIFERENCIA ENTRE MICROPROCESADOR Y MICROCONTROLADOR 14 VENTAJAS DEL MICROCONTROLADOR Vs MICROPROCESADOR µC Vs µP 16 VENTAJAS DEL MICROPROCESADOR Vs MICROCONTROLADOR µP Vs µC 16 CONTROLADOR Y MICROCONTROLADOR 17 APLICACIONES DE LOS MICROCONTROLADORES 18 EL MERCADO DE LOS MICROCONTROLADORES 18 ¿QUÉ MICROCONTROLADOR EMPLEAR? 19 VENTAJAS DE LOS MICROCONTROLADORES PIC MICROCHIP Vs OTROS FABRICANTES 20 RECURSOS COMUNES A TODOS LOS MICROCONTROLADORES 22 RECURSOS ESPECIALES DE LOS MICROCONTROLADORES 25 LAS GAMAS DE PIC 29 LA GAMA ENANA: PIC12CXXX DE 8 PINES CON INSTRUCCIONES DE 12 /14 BIT 29 GAMA BAJA O BÁSICA: PIC16C5X CON INSTRUCCIONES DE 12 BITS 30 GAMA MEDIA. PIC16FXXX CON INSTRUCCIONES DE 14 BITS 31 GAMA ALTA: PIC17CXXX, PIC18FXXXX CON INSTRUCCIONES DE 16 BITS 32 COMPARACION ENTRE GAMA ALTA (18F) Y LAS OTRAS GAMAS DE MICROCHIP (16XXXX, 14XXXX, 12XXXX)

32

VENTAJAS DE GAMA ALTA Vs GAMA MEDIA (18F) Vs (16F) 34 GENERALIDADES DE LOS PIC 36 ARQUITECTURA DE MICROPROCESADORES 36 CLASES DE CPU’S (UNIDAD CENTRAL DE PROCESAMIENTO) 37 ARQUITECTURA, CPU Y CARACTERISTICAS FUNCIONALES DEL PIC

38

HERRAMIENTAS PARA EL DESARROLLO DE APLICACIONES MICROCONTROLADAS CON PIC

40

CONCEPTOS DE PROGRAMACIÓN DE MICROCONTROLADORES 41 CONCEPTOS DE PROGRAMACIÓN ESTRUCTURADA 43 MACRO DE ASSEMBLER 43 ARGUMENTOS O PARAMETROS 43 DECLARACION DE UNA MACRO 43 SUBRUTINAS O PROCEDIMIENTO 43 SUBRUTINAS ANIDADAS 44 FUNCION 44 INSTRUCCIÓN, COMANDO O NMEMÓNICO 44 ETIQUETA (LABEL 44 VARIABLE (GPR): (GENERAL PURPOSE REGISTER) (REGISTRO DE PROPOSITO GENERAL) 44

Page 6: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

6 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

REGISTRO (FILE) (SFR) (SPECIAL FUNCTION REGISTER) (REGISTRO DE PROPOSITO ESPECIAL

44

CONSTANTE 44 VARIABLE (REGISTRO): 44 BANDERA (FLAG) DEL PROGRAMA 44 CONTADOR (COUNTER) 45 LIBRERÍA DE SUBRUTINAS 45 SINTAXIS DE PROGRAMACIÓN 45 DIRECTIVA DE ASSEMBLER 45 TECNICA POLLING (SONDEO DE ENTRADAS 45 INTERRUPCIONES (INT) INTERNAS Y EXTERNAS 46 INTERRUPCIONES VECTORIZADAS 46 PRIORIDAD DE INTERRUPCIONES (High or Low Priority) (léase jai or lou praióriri) 47 MAIN PROGRAM (PROGRAMA PRINCIPAL (léase mein program) 47 BANCOS DE MEMORIA (MEMORY BANK) 47 SET DE INSTRUCCIONES DE LA FAMILIA 18F (INSTRUCTIONS SET) 47 CICLO DE MAQUINA 47 MEMORIAS DE UN MICROCONTROLADOR PIC 48 MEMORIA ROM: (MEMORIA DE SOLO LECTURA) 48 MEMORIA DE PROGRAMA EEPROM FLASH (MEMORIA DE INSTRUCCIONES) 48 MEMORIA DE DATO EEPROM 48 MEMORIA DE DATO RAM-S PARA USUARIO, (REGISTROS DE PROPOSITO GENERAL GPR) 48 MEMORIA DE DATO RAM-S PARA CONFIGURACION INTERNA DEL MICROCONTROLADOR 48 MEMORIA DE PILA RAM-S: (STACK MEMORY) 49 GLOSARIO TÉCNICO DE ELECTRÓNICA DIGITAL 50 CODIGO ASCII STANDARD (CÓDIGOS 0 – 127) 71 CODIGO ASCII EXTENDIDO (CÓDIGOS 128 – 255) 71 SOFTWARE Y HARDWARE PARA EL DESARROLLO DE PROYECTOS MICROCONTROLADOS 72 HERRAMIENTAS Y MATERIALES 73 ELEMENTOS Y DISPOSITIVOS ELECTRÓNICOS 73 DISPOSITIVOS DE SENSORICA 76 PROVEEDORES DE DISPOSITIVOS ELECTRÓNICOS 80 PAGINAS WEB RECOMENDADAS 82 BIBLIOGRAFIA RECOMENDADA 84

Page 7: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

7 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

REFLEXIONES Para que un sueño se haga realidad, sólo hace falta un soñador (Walt Disney) Si lo puedes imaginar... Lo puedes hacer (Albert einstein). Calidad es satisfacer necesidades y brindar confianza Muchas veces la cantidad conspira contra la calidad. La intención es la compañera activa de la atención, es la manera de convertir procesos automáticos en procesos conscientes. (Dipak Chopra) La única diferenca entre una persona rica y una pobre es lo que hacen en su tiempo libre. (Robert Kiyosaky) El unico tiempo que existe es aquel del cual somos conscientes (Dipak Chopra) Si le das un pedazo de queso a un ratón, luego querrá un vaso de leche. En la vida debemos soportar lo que oportunamente no pudimos evitar. Información es todo aquello que reduce el umbral de incertidumbre. El 99% de tus miedos no se realizarán Felicidad es una manifestación externa de un sentimiento interno de nuestras vidas. Es la condición interior de un buen corazón. Felicidad es una vida que consiste no en tener muchas cosas, sino en estar contento con lo que uno tiene. Nadie tiene el monopolio de la razon ni la exclusividad de la mentira. Los ricos construyen redes (Robert Kiyosaky) Libertad es tener opciones (Robert Kiyosaky) Hay que ser fuerte, no rudo ni mandon (Robert Kiyosaky) El que te hieran no te da derecho a ser cruel El problema de los sueños es la realidad Busque una manera de materializar sus sueños La diferencia entre una persona rica y una persona pobre está en sus palabras, y sus palabra se convierten en sus ideas. (Robert Kiyosaky) Entre a más personas logras darles lo que ellas quieren, más ellos te daran lo que tu quieres (Robert Kiyosaky) No aceptes un empleo por lo que puedes ganar sino por lo que puedes aprender (Robert Kiyosaky) Los orientales represental en vocablo crisis con un ideograma compuesto: peligro + oportunidad Un ser humano considera que hay un problema cuando una situacion es diferente a como considera que debe ser, así que muchas veces solo es necesario cambiar la concepción de la situación y el problema desaparecerá. El cambiar las expectativas depende de nosotros pues somos quienes las hemos creado. No es la realidad en si misma lo que determina que exista un problema, es la forma en que la persona percibe dicha realidad. La forma como usted interpreta la realidad, es su realidad. Nuestras creencias son Autojustificadoras, cuando creemos algo nos inventamos la forma de comprobarlo. Querer + creer = poder Mientras perseguimos lo inalcanzable hacemos imposible lo realizable (robert agree) Un paradigma es la manera en que usted ve al mundo Es importante enseñar lo que aprendemos pues de esta forma tenemos una motivacion social Hábito es el encuentro entre el conocimiento (qué hacer), la capacidad (cómo hacer) y la actitud (porqué hacer, querer hacer, motivación) Dialéctica es el arte de dialogar, argumentar y discutir.

Page 8: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

8 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Retórica es el arte del bien decir, de dar al lenguaje escrito o hablado eficacia bastante para deleitar, persuadir o conmover. A veces se gana y a veces se aprende... porque experiencia es lo que se adquiere cuando no se consigue lo que se busca. Para saber el valor de un semestre pregúntale a un estudiante que reprobó el examen final. Para saber el valor de un mes pregúntale a una madre que ha dado a luz prematuramente. Para saber el valor de una hora pregúntale a los amantes que esperan verse.

Page 9: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

9 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

LA MAGIA DE PENSAR EN GRANDE 1. Mantente fresco cuando otros estén furiosos y pierdan la cabeza. Tú tienes el control sobre tus emociones, no lo pierdas. No se trata de no demostrar tu molestia, sino de hacerlo mesuradamente, sin después arrepentirte de una acción cometida en un momento de descontrol. 2. Recuerda que cada discusión tiene al menos tres puntos de vista: el tuyo, el del otro y los de terceros, los cuales probablemente están más cerca de la objetividad. Siendo más versátil y viendo las cosas desde la perspectiva de los demás enriquecerás tu propio punto de vista. 3. Espera a calmarte antes de hablar. Ten en cuenta que la relación es más importante que la discusión. Dále más relevancia a las personas que a las opiniones. 4. Trata a toda persona con la cual tengas contacto como si fuera un pariente rico, de quien esperas ser incluido en su testamento. Nunca te arrepientas de tratar muy bien a la gente. Es el mejor negocio en todos los sentidos. 5. Busca el lado positivo y agradable, aun de las situaciones más complicadas y dolorosas. Es una disciplina que te ayudará a pasar más fácilmente los momentos difíciles, y a convertir los problemas en oportunidades. 6. Establece el hábito de hacer preguntas y, sobre todo, de escuchar las respuestas. Pregunta antes de reaccionar. Algunas veces disparamos y después preguntamos. También preguntamos, pero escuchamos para contestar, y no para tratar de entender. 7. No hagas o digas nada que pueda herir o hacerle daño a otra persona. Aférrate al proverbio que dice que todo lo que uno haga, se devolverá. La gente no recuerda tanto lo que tú dices o haces, sino la intención con la que lo haces. 8. Sé consciente de la diferencia entre análisis amigable y crítica destructiva. Observa si el propósito de tus palabras es ayudar, desahogarte o hacer daño. 9. Ten presente que si toleras a los demás, ellos también serán pacientes contigo en los aspectos no muy gratos de tu personalidad. 10. El verdadero líder sabe reconocer sus errores y aceptar responsabilidad. No olvides que un conflicto bien manejado fortalece la relación, y te ayuda a aprender de las diferencias. El pensamiento positivo es una disciplina que, ejercitada con constancia, te dará el poder de cambiar tu entorno y, por consiguiente, tu vida.

Page 10: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

10 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

LA LEY DE MURPHY (léase merfi) PARA INGENIEROS ELECTRÓNICOS

Prácticamente todo en nuestra vida está bajo la influencia de la ley de Edsel Murphy. Su estudio es tan importante, que se la incluye en los cursos de oficiales militares, astronautas, pilotos, etc. La electrónica no escapa a la influencia de esta peculiar ley. Solo con un profundo dominio de sus principios, estará preparado para enfrentar los imprevistos. Y aunque no podrá evitar que “ciertas cosas” ocurran, al menos estará prevenido, sabrá por que ocurren, aprenderá aceptarlas y tal vez, solo tal vez, logrará reducir sus efectos. La ley básica de Murphy es: Si algo puede ir mal, irá... He aquí algunos enunciados de la ley de Murphy (o atribuidos a él), especialmente aplicados al campo de la electrónica.

PROYECTO Y DISEÑO En todo presupuesto el costo final excederá el gasto previsto por un factor de 3. Si el modelo de prueba funciona perfectamente, el producto terminado jamás. En un cálculo matemático, todo error que pueda filtrarse, lo hará. Y será en el sentido que más daño haga en el cálculo. En cualquier cálculo dado, la cifra que obviamente es la correcta, será la raíz del error. Las valores siempre se indicarán en los términos menos usuales. Por ejemplo potencia en WPMPO, etc. Las tolerancias se acumularán unidireccionalmente hacia la máxima dificultad del proyecto. La probabilidad de omisión de un valor en un diagrama, es directamente proporcional a su importancia. Las especificaciones de los fabricantes sobre el rendimiento se deben multiplicar por un factor igual a 0,5. En especificaciones, la Ley de Murphy anula la ley de Ohm.

ENSAMBLADO Si un proyecto requiere de "n" componentes, la disponibilidad será de "n-1". Las partes intercambiables no lo serán. Partes que no deberán ni podrán ser armadas indebidamente, lo serán. La pieza más delicada, siempre se caerá. El manual de armado y/u operación se botará con el material de embalaje. El recolector habrá pasado 5 minutos antes su carrera al depósito de basura. La necesidad de una modificación de diseño de mayor entidad aumenta a medida de irse completando el armado y cableado de la unidad. Un componente seleccionado al azar de un grupo con una confiabilidad del 99%, pertenecerá al 1%. La disponibilidad de un componente es inversamente proporcional a su necesidad. De necesitarse una resistencia (o condensador) de determinado valor, no se encontrará. Más aún, no se podrá lograr mediante ninguna combinación serie o paralelo. Todo cable cortado a la medida será demasiado corto. Si los cables se pueden conectar de dos o más formas diferentes, la primera de ellas es la que causa más daños. Los miliamperímetros serán conectados en paralelo, y los voltímetros en serie con la fuente de poder.

PRUEBAS Componentes idénticos probados bajo condiciones idénticas no lo serán en la prueba final, después de haber sido armado el equipo. Un oscilador auto-oscilante, no lo será. Un oscilador controlado por cristal oscilará en una frecuencia distinta; si oscila. Un circuito amplificador atenuara la señal de entrada. Un transistor PNP se revelará como NPN. Un circuito de seguridad destruirá otros. Si un circuito no puede fallar, fallará. Un circuito costoso protegido por un fusible instantáneo, protegerá al fusible, quemándose primero.

Page 11: Seccion 1- Teoria de Microcontroladores Abril-2010

DDIIGGIIBBOOOOKK -- SSEECCCCIIOONN 11 TTEEOORRÍÍAA GGEENNEERRAALL DDEE MMIICCRROOCCOONNTTRROOLLAADDOORREESS

11 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

REPARACIONES

Una vez quitado el último de los 20 tornillos de la tapa, para revisar el fusible, se descubrirá que el cable de alimentación estaba desconectado. Una vez colocado el último de los 20 tornillos de la tapa; encontrara debajo del diagrama, el fusible que quitó para revisar. La probabilidad de que determinado componente sea la causa del problema aumenta en forma proporcional a la dificultad para reemplazarlo y a su precio; e inversamente a su disponibilidad. Si puede localizar la pieza dañada, no tendrá herramientas para sacarla. Cuando logre sacarla, en la tienda de repuestos le dirán que no la tienen, pero que está pedida. Cuando por fin la consiga, descubrirá que no estaba dañada y no necesitaba cambiarla. Si un trabajo se ha hecho mal, todo lo que haga para mejorarlo sólo lo empeorara. Cualquier pieza al caer rodará al rincón menos accesible del taller. La facilidad de localización de una pieza que ha caído al suelo es directamente proporcional a su tamaño e inversamente a su importancia para la terminación del trabajo. Una herramienta caerá siempre donde pueda hacer mayor daño. (También conocida como "Ley de la Gravedad Selectiva".) Si tiene que comprobar, uno por uno, cierta cantidad de componentes de un circuito para localizar el que está defectuoso; ese será el ultimo de todos, sin importar el orden en que realice la comprobación. Si es necesario retocar un ajuste, será el menos accesible. De ser necesario el manual de servicio, no estará disponible. Si dispone del manual de servicio, no lo necesitará. Si consigue una fotocopia del diagrama, el problema se encuentra en la parte que quedo borrosa. Los trabajos urgentísimos, y muy bien pagados, sólo llegan cuando usted ha aceptado un trabajo urgentísimo, pero mal pagado.

CLIENTES

El cliente que paga menos es el que más se queja. El cliente que llama todos los días para preguntar si esta reparado su aparato, tardara 3 semanas en pasar a recogerlo cuando esté terminado. Si hay dos maneras de pronunciar el nombre de un cliente, usted lo pronunciará de la que no es. No importa cuanto les cobre, si no es gratis, siempre les parecerá caro. El 50% de los usuarios de aparatos electrónicos solo lee las instrucciones después de haber estropeado el equipo con su uso indebido, el otro 50% ni aun así las lee.

GENERALIDADES

En un instrumento o dispositivo caracterizado por una cierta cantidad de errores en más y en menos, el error total será la suma de cada uno, sumados en el mismo sentido. La probabilidad de un error tal en un circuito es directamente proporcional al daño que puede causar. En todo error dado, la culpa nunca podrá ser determinada si más de una persona ha estado involucrada. Cuando un error ha sido descubierto y corregido, se descubrirá que estaba bien desde el principio. Si usted es el cliente, una garantía de sesenta días es la promesa de que el aparato dejara de funcionar el día sexagésimo primero. Si usted es el responsable de la garantía, el aparato dejara de funcionar mucho antes.

CONCLUSION Si algo puede ir mal, irá ! ....y será en el peor momento. Si dos cosas pueden salir mal, ocurrirán al mismo tiempo.

Page 12: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

12 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

TEORÍA GENERAL DE MICROCONTROLADORES RESEÑA HISTÓRICA DE MICROPROCESADORES Y MICROCONTROLADORES

A partir de 1971, el panorama de la electrónica cambio radicalmente con la aparición del microprocesador. Vendría la época de oro del Z-80, el 8085, el 6800 y otros microprocesadores utilizados como elementos centrales en aparatos de control y se consolidarían las técnicas de integración, el estudio de las memorias, la programación en lenguaje de maquina y la adaptación de periféricos de todo tipo. En 1980, aproximadamente, los fabricantes de circuitos integrados dieron a conocer un nuevo chip llamado microcontrolador, el cual contenía toda la estructura de un microcomputador, es decir, unidad central de proceso (CPU), memoria RAM, memoria ROM y circuitos entrada salida. Este se concibió como un dispositivo programable que puede ejecutar un sin numero de tareas y procesos. Desde este momento, el diseño de productos electrónicos cambió radicalmente. Circuitos lógicos, manejo de periféricos, temporizadores y estructura de computadores, todo programable y alojado en un solo integrado, es decir, un pequeño computador para todas las aplicaciones. La compañía estadounidense INTEL (inteligente) es la compañía pionera en el campo de fabricación de microprocesadores (uP), seguida de la compañía AMD (Advanced Micro Device). LA LEY DE MOORE: El doctor GORDON MOORE uno de los fundadores de INTEL CORPORATION, formuló en el año 1965: “El número de transistores contenidos en un microprocesador se duplica más o menos cada 18 meses”. Esto implica que otros aspectos tales como velocidad de procesador, memoria RAM y disco duro se comportarán con una dinámica similar.

EVOLUCION CRONOLÓGICA DE LOS MICROPROCESADORES Fecha Fabric

ante uP # Byte

Memoria de

Prog

Frec MHz

# Bit del

bus de

memoria de

prog

Comentario

15/Nov/1971

INTEL 4004 640B 0.1 4 Primer µP del mundo con 1800 transistores se desarrolló la calculadora BUSICOM,

1/Ab/1972 INTEL 8008 16KB 0.2 8 3500 transistores, fue el antecedente del procesador que sirvió de base para el primer computador personal en el año 1974 llamado ALTAIR.

1973 INTEL 8080 64kB 2 8 10 veces más potente que el 8008. 6200 transistores, fue el corazón del primer computador personal en el año 1974 llamado ALTAIR. Costaba $400 dólares de la época, 64KB de memoria de programa, 2MHz de velocidad. En unos meses se vendieron decenas de miles de unidades. Microsoft (Bill Gates y Paul Allen) crearon el BASIC para este computador en 1975.

1973 MOTOROLA

6800 Motorola: Sonido en movimiento. Empresa japonesa, escogida por MAKINTOSH Y APPLES para sus PC.

1975 INTEL 8085 1975 ZILOG Z80 1975 MOTO

ROLA 6809

Page 13: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

13 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Junio/1978 INTEL 8086 1MB 5,8,10MHz

16 Fue el corazón del IBM PC,el gigante azul que acaparó la venta de computadores personales en el mundo. 29000 transistores con la tecnología de 3 micras

1978 MOTOROLA

68000

Junio/1979 INTEL 8088 1MB 5,8,10MHz

8 Igual al 8086 pero con bus de 8 bit para hacerlos más económico

1979 ZILOG Z800 1979 MOTO

ROLA 68010

1979 MOTOROLA

68020

1979 MOTOROLA

68030

1979 MOTOROLA

68040

1980 µC 8048 (INTEL) PRIMER MICROCONTROLADOR 1980 INTEL 80186 1980 ZILOG Z8000 1980 MOTO

ROLA 68020

1/Feb/1982 INTEL 80286 1GB 8,10, 12 MHz

16 Introduce el concepto de memoria virtual, 134000 transistores con la tecnología de 1.5 micras. Con este µP otras empresas se animaron a competir con IBM (Internacional Business Machine) (negocio internacional de máquinas) creando otras marcas de PC. Se aproxima a 15 millones los PC vendidos en el mundo con este procesador.

17/Oct/1985 INTEL 80386DX 4GB 33 MHz

32 275000 transistores. Se incrementa la velocidad y capacidad reprocesamiento por el bus de 32 bit

1988 INTEL 80386SX 4GB 33 MHz

16 Sacrifican el bus de 32 bit del 80386DX para hacerlo más comercial en costos. Este µP es famoso por popularizar el entorno gráfico y sistema operativo Windows que no había calado mucho con las versiones anteriores de uP.

10/Ab/1989 INTEL 80486DX 4GB 50 MHz

32 Incorpora la memoria caché de nivel 1 (L1) en el propio chip, lo que acelera la transferencia de información, incluye un co-procesador matemático en el propio chip. Se sobrepasa el millón de transistores usando la tecnología de 0.8 micra. Aparecen los juegos de computadora y entornos gráficos en lugar de comandos con el antiguos sistema operativo MS-DOS (Sistema operativo de disco de Microsoft)

Ab/1991 INTEL 80486SX 4GB 50 32 Igual al anterior pero eliminaron el co-

Page 14: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

14 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

MHz procesador matemático dentro del microprocesador para reducir costos y hacerlo más comercial.

1993 INTEL Pentium P5

4GB 60-200 MHz

32 INTEL se ve obligado a poner nombre a sus µP porque otras empresas estaban fabricando µP y utilizaban los mismos números de serie que Intel. Popularizaron Windows 95

27/Mar/1995 INTEL Pentium MMX

4GB 233 MHz

64 Versión de Pentium Pro para el mercado doméstico. La tecnología MMX está compuesta de 57 nuevas instrucciones y 4 tipos de datos nuevos que realizan de forma optimizado trabajos cíclicos en procesos de comprensión de vídeo, audio y gráficos.

27/Mar/1995 INTEL Pentium Pro

4GB 150-233 MHz

64 Mejora los servidores de red para empresas, Internet, tecnología de 0.32 micras capaz de incluir 5.5 millones de transistores, velocidad de memoria caché mejorada con un segundo chip interno en el uP

27/Mar/1995 INTEL Pentium II

4GB 233, 266,300 MHz

64 Combina lo mejor de Pentium pro y Pentium MMX

27/Mar/1995 INTEL Pentium II

4GB 233, 266,300 MHz

64 Combina lo mejor de Pentium pro y Pentium MMX

INTEL Pentium III

INTEL Pentium IV

INTEL PIV D DOUBLE

CORE

INTEL PIV QUAD CORE

Page 15: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

15 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

DISEÑO DE SISTEMAS CON MICROPROCESADOR Antes de existir el microcontrolador, se utilizaban para control los sistemas con microprocesador, el cual necesitaba varios elementos externos para llevar a cabo sus funciones. Cuando se hace un diseño de este tipo se utilizan varios módulos:

Microprocesador (CPU o Unidad Central de Proceso). Es el encargado de controlar el sistema, ejecuta las

funciones escritas en la memoria de programa. Memorias ROM (Memoria de solo lectura). Se utilizan para almacenar el programa y no pierden la información

aunque se retire la alimentación del sistema. Memorias RAM (Memoria de acceso aleatorio). Se utilizan para guardar datos temporales durante la ejecución

del programa. estas memorias se conocen como memorias volátiles por que pierden la información al retirarle la alimentación al sistema.

Decodificadores de direcciones. Sirve para acceder correctamente a las memorias y a los dispositivos periféricos del microprocesador.

El proceso de diseño involucra los siguientes pasos: Selección de los circuitos. Diseño del mapa de memoria. Diseño del decodificador de direcciones. Montaje del circuito y programación

Si consideramos la estructura del microcontrolador, se puede ver que cumple con los requerimientos descritos anteriormente.

Page 16: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

16 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

INTRODUCCIÓN A LOS MICROCONTROLADORES

Los microcontroladores están conquistando el mundo. Están presentes en nuestro trabajo, en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el funcionamiento de los ratones y teclados de los computadores, en los teléfonos, en los hornos microondas y los televisores de nuestro hogar. Pero la invasión acaba de comenzar y el siglo XXI es testigo de la conquista masiva de estos diminutos computadores, que gobernarán la mayor parte de los aparatos que fabricaremos y usamos los humanos.

“El Microcontrolador es un circuito integrado programable que contiene todos los elementos necesarios para controlar un sistema”

El desarrollo de cada nuevo dispositivo electrónico trae consigo técnicas de diseños diferentes, por lo general más simples. En los anos 70, para construir un reloj digital se necesitaba acoplar un gran número de circuitos lógicos como contadores, divisores, decodificadores y redes combinatorias. Hoy en día es común encontrar microcontroladores en las cafeteras, hornos microondas, videograbadoras, alarmas automóviles, etc. Las aplicaciones son infinitas, el único límite es la imaginación. La posibilidad de manejar señales de entrada y salida, así como su capacidad para procesar datos y tomar decisiones, lo convierten en uno de los elementos más versátiles que existen actualmente.

DIFERENCIA ENTRE MICROPROCESADOR Y MICROCONTROLADOR

MICROPROCESADOR: es un circuito integrado que contiene la Unidad Central de Proceso (CPU), también llamada procesador, de un computador. La CPU está formada por la Unidad de Control, que interpreta las instrucciones, y el Camino de Datos, que las ejecuta. Los pines de un microprocesador sacan al exterior las líneas de sus buses de direcciones, datos y control, para permitir conectarle con la Memoria y los Módulos de E/S y configurar un computador implementado por varios circuitos integrados. Se dice que un microprocesador es un sistema abierto porque su configuración es variable de acuerdo con la aplicación a la que se destine. (Figura 1.1.)

Figura 1.1. Estructura de un sistema abierto basado en un microprocesador. La disponibilidad de los buses en el

exterior permite que se configure a la medida de la aplicación.

Page 17: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

17 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Si sólo se dispusiese de un modelo de microcontrolador, éste debería tener muy potenciados todos sus recursos para poderse adaptar a las exigencias de las diferentes aplicaciones. Esta potenciación supondría en muchos casos un despilfarro. En la práctica cada fabricante de microcontroladores oferta un elevado número de modelos diferentes, desde los más sencillos hasta los más poderosos. Es posible seleccionar la capacidad de las memorias, el número de líneas de E/S, la cantidad y potencia de los elementos auxiliares, la velocidad de funcionamiento, etc. Por todo ello, un aspecto muy destacado del diseño es la selección del microcontrolador a utilizar.

Figura 1.2. El microcontrolador es un sistema cerrado. Todas las partes del computador están contenidas en su

interior y sólo salen al exterior las líneas que gobiernan los periféricos.

Page 18: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

18 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

VENTAJAS DEL MICROCONTROLADOR Vs MICROPROCESADOR µC Vs µP

Como se puede ver, existen algunas ventajas importantes cuando se realiza el diseño de un circuito utilizando un microcontrolador: 1. El circuito impreso es mucho más pequeño ya que muchos componentes se encuentran dentro el circuito

integrado. 2. El costo de sistema total es mucho menor, al reducir el número de componentes. 3. El consumo de potencia total es mucho menor (Stand By). 4. Los problemas de ruido que pueden afectar el bus de comunicación externo de los sistemas con

microprocesador se eliminan, debido a que todo el sistema principal se encuentra en un solo encapsulado. 5. El tiempo de desarrollo de un sistema se reduce notablemente 6. Sistema Robusto: al estar todo el sistema en su solo chip puede funcionar en ambientes inhóspitos de alta

temperatura, vibración, etc.

VENTAJAS DEL MICROPROCESADOR Vs MICROCONTROLADOR µP Vs µC

1. Mayor velocidad de ejecución y procesamiento. (GHz) 2. Se pueden implementar programas de mayor complejidad de procesamiento (MATLAB). 3. Las aplicaciones tienen una mejor interfaz gráfica hombre – máquina (Sistemas SCADA) 4. Mayor memoria RAM (GBytes) 5. Mayor memoria EEPROM (disco duro GBytes) 6. Facilidad de programación y edición de código fuente (Lenguajes gráficos y de alto nivel)

Page 19: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

19 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

CONTROLADOR Y MICROCONTROLADOR Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o varios procesos. Por ejemplo, el controlador que regula el funcionamiento de un horno dispone de un sensor que mide constantemente su temperatura interna y, cuando traspasa los límites prefijados, genera las señales adecuadas que accionan los efectores que intentan llevar el valor de la temperatura dentro del rango estipulado.

Aunque el concepto de controlador ha permanecido invariable a través del tiempo, su implementación física ha variado frecuentemente. Hace tres décadas, los controladores se construían exclusivamente con componentes de lógica discreta, posteriormente se emplearon los microprocesadores, que se rodeaban con chips de memoria y E/S sobre una tarjeta de circuito impreso. En la actualidad, todos los elementos del controlador se han podido incluir en un chip, el cual recibe el nombre de microcontrolador.

MICROCONTROLADOR: Realmente consiste en un sencillo pero completo computador contenido en el corazón (chip) de un circuito integrado.

MICROCONTROLADOR: Es un circuito integrado de alta escala de integración que incorpora la

mayor parte de los elementos que configuran un controlador.

UN MICROCONTROLADOR DISPONE NORMALMENTE DE LOS SIGUIENTES COMPONENTES 1. Procesador o µP (CPU - Unidad Central de Proceso). 2. Memoria RAM para Contener los datos. 3. Memoria para el programa tipo ROM/PROM/EPROM. 4. Líneas de E/S para comunicarse con el exterior. 5. Diversos módulos para el control de periféricos (temporizadores, Puertas Serie y Paralelo, CAD: Conversores

Analógico/Digital, CDA: Conversores Digital/Analógico, etc.). 6. Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema. LOS PRODUCTOS QUE PARA SU REGULACIÓN INCORPORAN UN MICROCONTROLADOR DISPONEN DE

LAS SIGUIENTES VENTAJAS 1. Aumento de prestaciones: un mayor control sobre un determinado elemento representa una mejora considerable en el mismo. 2. Aumento de la fiabilidad: al reemplazar el microcontrolador por un elevado número de elementos disminuye el riesgo de averías y se precisan menos ajustes. 3. Reducción del tamaño en el producto acabado: La integración del microcontrolador en un chip disminuye el volumen, la mano de obra. 4. Mayor flexibilidad: las características de control están programadas por lo que su modificación sólo necesita cambios en el programa de instrucciones.

El microcontrolador es en definitiva un circuito integrado que incluye todos los componentes de un computador. Debido a su reducido tamaño es posible montar el controlador en el propio dispositivo al que gobierna. En este caso el controlador recibe el nombre de controlador empotrado (embedded controller).

Page 20: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

20 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

APLICACIONES DE LOS MICROCONTROLADORES Cada vez existen más productos que incorporan un microcontrolador con el fin de aumentar sustancialmente sus prestaciones, reducir su tamaño y coste, mejorar su fiabilidad y disminuir el consumo. Algunos fabricantes de microcontroladores superan el millón de unidades de un modelo determinado producidas en una semana. Este dato puede dar una idea de la masiva utilización de estos componentes. Los microcontroladores están siendo empleados en multitud de sistemas presentes en nuestra vida diaria, como pueden ser juguetes, horno microondas, frigoríficos, televisores, computadoras, impresoras, módems, el sistema de arranque de nuestro coche, etc. Y otras aplicaciones con las que seguramente no estaremos tan familiarizados como instrumentación electrónica, control de sistemas en una nave espacial, etc. Una aplicación típica podría emplear varios microcontroladores para controlar pequeñas partes del sistema. Estos pequeños controladores podrían comunicarse entre ellos y con un procesador central, probablemente más potente, para compartir la información y coordinar sus acciones, como, de hecho, ocurre ya habitualmente en cualquier PC.

EL MERCADO DE LOS MICROCONTROLADORES

Aunque en el mercado de la microinformática la mayor atención la acaparan los desarrollos de los microprocesadores, lo cierto es que se venden cientos de microcontroladores por cada uno de aquéllos. Existe una gran diversidad de microcontroladores. Quizá la clasificación más importante sea entre microcontroladores de 4, 8, 16 ó 32 bits. Aunque las prestaciones de los microcontroladores de 16 y 32 bits son superiores a los de 4 y 8 bits, la realidad es que los microcontroladores de 8 bits dominan el mercado y los de 4 bits se resisten a desaparecer. La razón de esta tendencia es que los microcontroladores de 4 y 8 bits son apropiados para la gran mayoría de las aplicaciones, lo que hace absurdo emplear micros más potentes y consecuentemente más caros. Uno de los sectores que más tira del mercado del microcontrolador es el mercado automovilístico. De hecho, algunas de las familias de microcontroladores actuales se desarrollaron pensando en este sector, siendo modificadas posteriormente para adaptarse a sistemas más genéricos. El mercado del automóvil es además uno de los más exigentes: los componentes electrónicos deben operar bajo condiciones extremas de vibraciones, choques, ruido, etc. Y seguir siendo fiables. El fallo de cualquier componente en un automóvil puede ser el origen de un accidente. En cuanto a las técnicas de fabricación, cabe decir que prácticamente la totalidad de los microcontroladores actuales se fabrican con tecnología CMOS (Complementary Metal Oxide Semiconductor). Esta tecnología supera a las técnicas anteriores por su bajo consumo y alta inmunidad al ruido. Pese a estar diseñados con tecnología CMOS, los uC no son vulnerables a las descargas electrostásticas (ESD) pues sus terminales están protegidos por diodos zener.

La distribución de las ventas según su aplicación es la siguiente:

Una tercera parte se absorbe en las aplicaciones relacionadas con los computadores y sus periféricos. La cuarta parte se utiliza en las aplicaciones de consumo (electrodomésticos, juegos, TV, vídeo, etc.) El 16% de las ventas mundiales se destinó al área de las comunicaciones. Otro 16% fue empleado en aplicaciones industriales. El resto de los microcontroladores vendidos en el mundo, aproximadamente un 10% fueron adquiridos por las

industrias de automoción. Hasta el año 2007 la empresa Microchip es pionera en el mundo en el número de microcontroladores

vendidos. También los modernos microcontroladores de 32 bits van afianzando sus posiciones en el mercado, siendo las áreas de más interés el procesamiento de imágenes, las comunicaciones, las aplicaciones militares, los procesos industriales y el control de los dispositivos de almacenamiento masivo de datos.

Page 21: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

21 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

¿QUÉ MICROCONTROLADOR EMPLEAR? Al seleccionar un microcontrolador para un diseño concreto hay que tener en cuenta multitud de factores, como la documentación y herramientas de desarrollo disponibles y su precio, la cantidad de fabricantes que lo producen y por supuesto las características del microcontrolador (tipo de memoria de programa, número de temporizadores, interrupciones, etc.):

COSTO: Como es lógico, los fabricantes de microcontroladores compiten duramente para vender sus productos. Y no les va demasiado mal ya que sin hacer demasiado ruido venden 10 veces más microcontroladores que microprocesadores. Para que nos hagamos una idea, para el fabricante que usa el microcontrolador en su producto una diferencia de precio en el microcontrolador de algunos pesos es importante (el consumidor deberá pagar además el coste del empaquetado, el de los otros componentes, el diseño del hardware y el desarrollo del software). Si el fabricante desea reducir costes debe tener en cuenta las herramientas de apoyo con que va a contar: emuladores, simuladores, ensambladores, compiladores, etc. Es habitual que muchos de ellos siempre se decanten por microcontroladores pertenecientes a una única familia.

APLICACIÓN. Antes de seleccionar un microcontrolador es imprescindible analizar los requisitos de la

aplicación:

PROCESAMIENTO DE DATOS: puede ser necesario que el microcontrolador realice cálculos críticos en un tiempo limitado. En ese caso debemos asegurarnos de seleccionar un dispositivo suficientemente rápido para ello. Por otro lado, habrá que tener en cuenta la precisión de los datos a manejar: si no es suficiente con un microcontrolador de 8 bits, puede ser necesario acudir a microcontroladores de 16 ó 32 bits, o incluso a hardware de coma flotante. Una alternativa más barata y quizá suficiente es usar librerías para manejar los datos de alta precisión. –

ENTRADA SALIDA: para determinar las necesidades de Entrada/Salida del sistema es conveniente dibujar un diagrama de bloques del mismo, de tal forma que sea sencillo identificar la cantidad y tipo de señales a controlar. Una vez realizado este análisis puede ser necesario añadir periféricos hardware externos o cambiar a otro microcontrolador más adecuado a ese sistema.

CONSUMO: algunos productos que incorporan microcontroladores están alimentados con baterías y su funcionamiento puede ser tan vital como activar una alarma antirrobo. Lo más conveniente en un caso como éste puede ser que el microcontrolador esté en estado de bajo consumo pero que despierte ante la activación de una señal (una interrupción) y ejecute el programa adecuado para procesarla.

MEMORIA: para detectar las necesidades de memoria de nuestra aplicación debemos separarla en memoria volátil (RAM), memoria no volátil (ROM, EEPROM, etc.) y memoria no volátil modificable (EEPROM). Este último tipo de memoria puede ser útil para incluir información específica de la aplicación como un número de serie o parámetros de calibración. El tipo de memoria a emplear vendrá determinado por el volumen de ventas previsto del producto: de menor a mayor volumen será conveniente emplear EEPROM, OTP y ROM. En cuanto a la cantidad de memoria necesaria puede ser imprescindible realizar una versión preliminar, aunque sea en pseudo-código, de la aplicación y a partir de ella hacer una estimación de cuánta memoria volátil y no volátil es necesaria y si es conveniente disponer de memoria no volátil modificable.

ANCHO DE PALABRA COMANDO O INSTRUCCION (WIDE INSTRUCTIONS): el criterio de diseño debe ser seleccionar el microcontrolador de menor ancho de palabra que satisfaga los requerimientos de la aplicación. Usar un microcontrolador de 4 bits supondrá una reducción en los costos importante, mientras que uno de 8 bits puede ser el más adecuado si el ancho de los datos es de un byte. Los microcontroladores de 16 y 32 bits, debido a su relativo alto costo deben reservarse para aplicaciones que requieran sus altas prestaciones (Entrada/Salida potente o espacio de direccionamiento muy elevado).

DISEÑO DE LA PLACA: la selección de un microcontrolador concreto condicionará el diseño de la placa de circuitos. Debe tenerse en cuenta que quizá usar un microcontrolador de gama baja incremente el precio del resto de componentes del diseño. Por ejemplo si se requiere un conversor análogo digital entonces es preferible comprar un uC con dicha función en lugar de implementarlo externamente.

Page 22: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

22 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

LOS MICROCONTROLADORES MÁS POPULARES SE ENCUENTRAN, SIN DUDA, ENTRE LAS MEJORES ELECCIONES:

8048 (Intel). Es el padre de los microcontroladores actuales, el primero de todos. Su precio, disponibilidad y herramientas de desarrollo hacen que todavía sea muy popular.

8051 (Intel, ATMEL y otros). Es sin duda el microcontrolador más popular. Fácil de programar, pero potente. Está bien documentado y posee cientos de variantes e incontables herramientas de desarrollo.

80186, 80188 y 80386 EX (Intel). Versiones en microcontrolador de los populares microprocesadores 8086 y 8088. Su principal ventaja es que permiten aprovechar las herramientas de desarrollo para PC.

68HC11 (Motorola y Toshiba). Es un microcontrolador de 8 bits potente y popular con gran cantidad de variantes.

683xx 68HC908 (Motorola). Surgido a partir de la popular familia 68k, a la que se incorporan algunos periféricos. Son microcontroladores de altísimas prestaciones.

PIC 12XXX, 16FXXX, 17XXX, 18FXXX (MICROCHIP). Familia de microcontroladores que gana popularidad día a día. Fueron los primeros microcontroladores RISC.

VENTAJAS DE LOS MICROCONTROLADORES PIC MICROCHIP Vs OTROS FABRICANTES

¿Qué es lo que ocurre con los PIC?, ¿Por qué están en boca de todos?. Hemos buscado en multitud de bibliografía y realmente nadie da una respuesta concreta, pero una aproximación a la realidad puede ser esta: Los PIC tienen “ángel”, tienen “algo” que fascina a los diseñadores, puede ser la velocidad, el precio, la facilidad de uso, la información, las herramientas de apoyo... . Quizás un poco de todo eso es lo que produce esa imagen de sencillez y utilidad. Para las aplicaciones más habituales (casi un 90%) la elección de una versión adecuada de PIC es la mejor solución; sin embargo, dado su carácter general, otras familias de microcontroladores son más eficaces en aplicaciones específicas, especialmente si en ellas predomina una característica concreta, que puede estar muy desarrollada en otra familia. Los detalles más importantes que vuelven atraen a los profesionales de la microelectrónica y microinformática y las razones de la excelente acogida que tienen los PIC son los siguientes:

Sencillez de manejo: Tienen un juego de instrucciones reducido; 33 gama baja, 35 en la gama media, 75 gama alta.

Buena información, fácil de conseguir y económica.

Precio: Su coste es comparativamente inferior al de sus competidores.

Poseen una elevada velocidad de funcionamiento. Buen promedio de parámetros: velocidad, consumo,

tamaño, alimentación, código compacto, etc.

Herramientas de desarrollo fáciles y baratas. Muchas herramientas software se pueden recoger libremente a través de Internet desde Microchip (http://www.microchip.com).

Existe una gran variedad de herramientas hardware que permiten grabar, depurar, borrar y comprobar el

comportamiento de los PIC.

Diseño rápido.

La gran variedad de modelos de PIC permite elegir el que mejor responde a los requerimientos de la aplicación.

Page 23: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

23 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Una de las razones del éxito de los PIC se basa en su utilización. Cuando se aprende a manejar uno de ellos, conociendo su arquitectura y su repertorio de instrucciones, es muy fácil emplear otro modelo.

Diversidad de modelos de microcontroladores con prestaciones y recursos diferentes. La gran variedad de modelos de microcontroladores PIC permite que el usuario pueda seleccionar el más conveniente para su proyecto.

Herramientas de soporte potentes y económicas. La empresa Microchip y otras que utilizan los PIC ponen a disposición de los usuarios numerosas herramientas para desarrollar hardware y software. Son muy abundantes los programadores, los simuladores software, los emuladores en tiempo real, Ensambladores, Compiladores C, Intérpretes y Compiladores BASIC, etc.

La arquitectura Harvard y la técnica de segmentación son los principales recursos en los que se apoya el

elevado rendimiento que caracteriza estos dispositivos programables, mejorando dos características esenciales:

1. Velocidad de ejecución. 2. Eficiencia en la compactación del código.

Líneas de E/S de alta corriente. Las líneas de E/S de los PIC pueden proporcionar o absorber una

corriente de salida de hasta 25 mA, capaz de excitar directamente ciertos periféricos como led o microrelés tipo REED.

Page 24: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

24 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

RECURSOS COMUNES A TODOS LOS MICROCONTROLADORES Al estar todos los microcontroladores integrados en un chip, su estructura fundamental y sus características básicas son muy parecidas. Todos deben disponer de los bloques esenciales Procesador, memoria de datos y de instrucciones, líneas de E/S, oscilador de reloj y módulos controladores de periféricos. Sin embargo, cada fabricante intenta enfatizar los recursos más idóneos para las aplicaciones a las que se destinan preferentemente. En este apartado se hace un recorrido de todos los recursos que se hallan en todos los microcontroladores describiendo las diversas alternativas y opciones que pueden encontrarse según el modelo seleccionado.

ARQUITECTURA BÁSICA: Aunque inicialmente todos los microcontroladores adoptaron la arquitectura clásica de von Neumann, en el momento presente se impone la arquitectura Harvard. La arquitectura de von Neumann se caracteriza por disponer de una sola memoria principal donde se almacenan datos e instrucciones de forma indistinta. A dicha memoria se accede a través de un sistema de buses único (direcciones, datos y control). La arquitectura Harvard dispone de dos memorias independientes una, que contiene sólo instrucciones y otra, sólo datos. Ambas disponen de sus respectivos sistemas de buses de acceso y es posible realizar operaciones de acceso (lectura o escritura) simultáneamente en ambas memorias.

Figura 1.3. La arquitectura Harvard dispone de dos memorias independientes para datos y para instrucciones, permitiendo accesos simultáneos.

EL PROCESADOR O CPU: Es el elemento más importante del microcontrolador y determina sus principales características, tanto a nivel hardware como software. Se encarga de direccionar la memoria de instrucciones, recibir el código OP de la instrucción en curso, su decodificación y la ejecución de la operación que implica la instrucción, así como la búsqueda de los operandos y el almacenamiento del resultado.

MEMORIA: En los microcontroladores la memoria de instrucciones o programa y la memoria de datos RAM está integrada en el propio chip. Una parte debe ser no volátil, tipo PROM ó EEPROM, y se destina a contener el programa de instrucciones que gobierna la aplicación. Otra parte de memoria será tipo RAM, volátil, y se destina a guardar las variables y los datos. Hay dos peculiaridades que diferencian a los microcontroladores de los computadores personales:

1. No existen sistemas de almacenamiento masivo como disco duro o disquetes. 2. Como el microcontrolador sólo se destina a una tarea en la memoria de programa, sólo hay que almacenar un único programa de trabajo (no es multitarea como windows, linux u otro sistema operativo).

RAM STATICA: La RAM en estos dispositivos es de poca capacidad pues sólo debe contener las variables y los cambios de información que se produzcan en el transcurso del programa. Por otra parte, como sólo existe un programa activo, no se requiere guardar una copia del mismo en la RAM pues se ejecuta directamente desde la EEPROM de programa. Los usuarios de computadores

Page 25: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

25 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

personales están habituados a manejar Megabytes Y GigaBytes de memoria, pero, los diseñadores con microcontroladores trabajan con capacidades de memoria de programa EEPROM comprendidas entre 512 bytes y 32 k bytes y de RAM comprendidas entre 20 y 1536 bytes aproximadamente.

TIPOS DE MEMORIA DE PROGRAMA EN LOS MICROCONTROLADORES: Según el tipo de memoria de programa que dispongan los microcontroladores, la aplicación y utilización de los mismos es diferente. Se describen las cinco versiones de memoria de programa no volátil que se pueden encontrar en los microcontroladores del mercado.

1. ROM CON MÁSCARA: Es una memoria no volátil de sólo lectura cuyo contenido se graba durante la fabricación del chip. El elevado coste del diseño de la máscara sólo hace aconsejable el empleo de los microcontroladores con este tipo de memoria cuando se precisan cantidades superiores a varios miles de unidades.

2. OTP: El microcontrolador contiene una memoria no volátil de sólo lectura “programable una sola vez” por el usuario. OTP (One Time Programmable). Es el usuario quien puede escribir el programa en el chip mediante un sencillo grabador controlado por un programa desde un PC. La versión OTP es recomendable cuando es muy corto el ciclo de diseño del producto, o bien, en la construcción de prototipos y series muy pequeñas. Tanto en este tipo de memoria como en la EPROM, se suele usar la encriptación mediante fusibles para proteger el código contenido.

3. UV-EPROM: Los microcontroladores que disponen de memoria EPROM (Erasable Programmable Read OnIy Memory) pueden borrarse y grabarse muchas veces. La grabación se realiza, como en el caso de los OTP, con un grabador gobernado desde un PC. Si, posteriormente, se desea borrar el contenido, disponen de una ventana de cristal en su superficie por la que se somete a la EPROM a rayos ultravioleta durante varios minutos. Las cápsulas son de material cerámico y son más caros que los microcontroladores con memoria OTP que están hechos con material plástico.

4. EEPROM: Se trata de memorias de sólo lectura, programables y borrables eléctricamente EEPROM (Electrical Erasable Programmable Read OnIy Memory). Tanto la programación como el borrado, se realizan eléctricamente desde el propio grabador y bajo el control programado de un PC. Es muy cómoda y rápida la operación de grabado y la de borrado. No disponen de ventana de cristal en la superficie. Los microcontroladores dotados de memoria EEPROM una vez instalados en el circuito, pueden grabarse y borrarse cuantas veces se quiera sin ser retirados de dicho circuito. Para ello se usan “grabadores en circuito” que confieren una gran flexibilidad y rapidez a la hora de realizar modificaciones en el programa de trabajo. El número de veces que puede grabarse y borrarse una memoria EEPROM es finito, por lo que no es recomendable una reprogramación continua. Son muy idóneos para la enseñanza y la Ingeniería de diseño. Se va extendiendo en los fabricantes la tendencia de incluir una pequeña zona de memoria EEPROM en los circuitos programables para guardar y modificar cómodamente una serie de parámetros que adecuan el dispositivo a las condiciones del entorno. Este tipo de memoria es relativamente lenta. Por ejemplo el PIC 16C84.

5. EEPROM FLASH son muy útiles al permitir que los microcontroladores que las incorporan puedan

ser reprogramados “In Circuit”, es decir, sin tener que retirar el circuito integrado de la tarjeta. Así, un dispositivo con este tipo de memoria incorporado al control del motor de un automóvil permite que pueda modificarse el programa durante la rutina de mantenimiento periódico, compensando los desgastes y otros factores tales como la compresión, la instalación de nuevas piezas, etc. La reprogramación del microcontrolador puede convertirse en una labor rutinaria dentro de la puesta a punto. Entre los Microcontroladores de este tipo se puede mencionar el 16F84, 16F628, 18F452.

Aparte de que las memorias EPROM "Flash" tienen una entrada de escritura, mientras están funcionando se comportan como las EPROM normales. La única diferencia se encuentra en como se cargan y se borran los datos en la memoria. Mientras que durante el proceso de programación de las memorias EPROM convencionales se necesita una tensión bien definida durante cierto intervalo de tiempo, y para borrar el componente hay que exponerlo a luz ultravioleta, en las E.Flash ambos procesos están controlados y se llevan a cabo internamente. Para tal efecto la memoria recibe una secuencia de comandos predefinida (borrar, programar) que incluye algunas precauciones especiales

Page 26: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

26 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

(determinadas por el fabricante) destinadas a evitar que se borre cualquier dato por error.

El comando se transfiere a la memoria EPROM "Flash" mediante una serie de operaciones de escritura, como se indica en la tabla 1. Los dos primeros comandos "Lectura/Reset" preparan la memoria para operaciones de lectura. El comando "Autoselección" permite leer el código del fabricante y el tipo de dispositivo. El comando "Byte" carga el programa dentro de la memoria EPROM, mientras que "Borrar Chip" actúa durante el proceso de borrado, que no dura más de un minuto. Desde el punto de vista lógico podemos afirmar que la memoria EPROM "Flash" está dividida en sectores que se pueden borrar individualmente con la ayuda del comando "Borrar Sector".

Las memorias EPROM "Flash" disponen de otro mecanismo, basado en la división en sectores, que las protege de acciones de escritura o lectura no deseadas. Cuando un sector está protegido de esta forma no se puede realizar una operación de lectura o sobre escritura con una tensión de 5V. Este hecho es muy importante y se debe tener siempre presente cuando se utilicen estos dispositivos. Solamente se puede eliminar esta protección con la ayuda de un programador especial.

Durante el proceso de programación o borrado se puede leer, mediante un comando de acceso en "lectura", el estado de la memoria EPROM "Flash" en la misma posición que el byte de programado o borrado. Mientras se borra un sector se puede leer cualquier dirección que pertenezca al sector.

Durante la secuencia de programación, el bit de orden superior (DQ7) del byte que se está leyendo toma el valor negado del bit que se esté programando, mientras que DQ5 se mantiene a 0. Cuando el ciclo de programación termina correctamente se deshace esta inversión y los bits 5 y 7 toman los valores planeados.

Como durante una secuencia de borrado parece que todas las posiciones de la memoria están programadas con el valor FFH, el bit 7 permanece invariablemente a cero durante este proceso. Cuando alguno de los dos procesosexcede cierto límite de tiempo, que está determinado internamente, se produce un "error de temporización", entonces el bit 5 toma el valor 1 mientras que el bit 7 se mantiene invertido. La función que implementa el bit 6 está condicionada por el requisito de compatibilidad. El bit 3 se utiliza cuando se borran simultáneamente varios sectores. Sin embargo, el emulador descrito no tiene estas características.

Page 27: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

27 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

PUERTOS DE ENTRADA / SALIDA (Input / Output): La principal utilidad de los pines que posee la cápsula que contiene un microcontrolador es soportar las líneas de E/S que comunican al computador interno con los periféricos exteriores. Según los controladores de periféricos que posea cada modelo de microcontrolador, las líneas de E/S se destinan a proporcionar el soporte a las señales de entrada, salida y control. Se conocen como puerto A,B,C,D,E.

RELOJ PRINCIPAL: Todos los microcontroladores disponen de un circuito oscilador que genera una onda cuadrada de alta frecuencia, que configura los impulsos de reloj usados en la sincronización de todas las operaciones del sistema. Generalmente, el circuito de reloj está incorporado en el microcontrolador y sólo se necesitan unos pocos componentes exteriores para seleccionar y estabilizar la frecuencia de trabajo. Dichos componentes suelen consistir en un cristal de cuarzo junto a elementos pasivos o bien un resonador cerámico o una red R-C. Aumentar la frecuencia de reloj supone disminuir el tiempo en que se ejecutan las instrucciones pero también implica un incremento del consumo de energía. Algunos µC (18F2550 por ejemplo) disponen de oscilador interno programable desde 31KHz hasta 8 MHz, es decir, no se requiere comprar cristal, la desventaja es que no suelen ser tan preciso como un cristal externo.

RECURSOS ESPECIALES DE LOS MICROCONTROLADORES Cada fabricante oferta numerosas versiones de una arquitectura básica de microcontrolador. En algunas amplía las capacidades de las memorias, en otras incorpora nuevos recursos, en otras reduce las prestaciones al mínimo para aplicaciones muy simples, etc. La labor del diseñador es encontrar el modelo mínimo que satisfaga todos los requerimientos de su aplicación. De esta forma, minimizará el coste, el hardware y el software.

LOS PRINCIPALES RECURSOS ESPECÍFICOS QUE INCORPORAN LOS MICROCONTROLADORES SON

1. TEMPORIZADORES O “TIMERS”: Se emplean para controlar periodos de tiempo (temporizadores) y para llevar la cuenta de acontecimientos que suceden en el exterior (contadores). Para la medida de tiempos se carga un registro con el valor adecuado y a continuación dicho valor se va incrementando o decrementando al ritmo de los impulsos de reloj o algún múltiplo hasta que se desborde y llegue a 0, momento en el que se produce un aviso. Cuando se desean contar acontecimientos que se materializan por cambios de nivel o flancos en alguna de los pines del microcontrolador, el mencionado registro se va incrementando o decrementando al ritmo de dichos impulsos. 2. PERRO GUARDIÁN “WATCHDOG TIMER” WDT: Cuando el computador personal se bloquea por un fallo del software u otra causa, se pulsa el botón del reset y se reinicializa el sistema. Pero un microcontrolador funciona sin el control de un supervisor y de forma continua las 24 horas del día. El Perro guardián consiste en un temporizador (2 ms hasta 131 seg dependiendo del PIC) que, cuando se desborda y pasa por 0, provoca un reset automáticamente en el sistema. Se debe diseñar el programa que controla la tarea de forma que refresque o inicialice al Perro guardián antes de que provoque el reset. Si falla el programa o se bloquea, no se refrescará al Perro guardián y, al completar su temporización, provocará el reset. 3. ESTADO DE REPOSO O BAJO CONSUMO SLEEP, STAND BY O POWER SAVING”: Son abundantes las situaciones reales de trabajo en que el microcontrolador debe esperar, sin hacer nada a que se produzca algún acontecimiento externo que le active de nuevo en funcionamiento (interrupción). Para ahorrar energía, (factor clave en los aparatos portátiles), los microcontroladores disponen de una instrucción especial (SLEEP en los PIC), que les pasa al estado de reposo o de bajo consumo en el cual los requerimientos de potencia son mínimos. En dicho estado se detiene el reloj u oscilador principal y se “congelan” sus circuitos asociados, quedando sumido en un

Page 28: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

28 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

profundo “sueño” el microcontrolador. Al activarse una interrupción ocasionada por el acontecimiento esperado, el microcontrolador se despierta y reanuda su trabajo. En este estado el uC consume menos de 200nA y sólo despertará (wake up) mediante una interrupción externa. El modo sleep es muy necesario en aplicaciones que se alimentarán a partir de baterías. 4. PROTECCIÓN ANTE FALLO DE ALIMENTACIÓN O “BROWN OUT RESET” BOR: Se trata de un circuito que resetea al microcontrolador cuando el voltaje de alimentación (VDD) es inferior a un voltaje mínimo (“brown out”). Mientras el voltaje de alimentación sea inferior al de brown out el dispositivo se mantiene reseteado, comenzando a funcionar normalmente cuando sobrepasa dicho valor. Útil Para aplicaciones que funcionarán con baterías, cuando la batería esté baja de carga el PIC no funcionará por protección. 5. RESET DE ENCENDIDO (“POWER ON RESET”) POR: Todos los PIC tienen la facultad de generar una autoreinicialización o autoreset al conectarles la alimentación. 6. TEMPORIZACION DE ENCENDIDO (“POWER UP TIMER”) PWRT: Es una opción para que el µC espere un tiempo (aproximadamente 75mS) antes de empezar a ejecutar instrucciones después de alimentar el PIC. Es útil para evitar funcionamientos erráticos del µC por ruido o rebotes al conectar la alimentación. 7. CÓDIGO DE PROTECCIÓN (CODE PROTECT) CP: Cuando se procede a realizar la grabación del programa mediante el hardware cargador (loadder code), el PIC puede protegerse para evitar su lectura. También disponen los PIC de posiciones reservadas para registrar números de serie, códigos de identificación, prueba, etc. 8. INTERRUPCION MEDIANTE PINES EXTERNOS: Los pines de interrupción externa constituye uno de los aspectos más importantes en un microcontrolador pues ofrece la posibilidad de interactuar de una manera óptima con periféricos externos de entrada tales como: teclados de computadora, receptores IR, RF, USB, teclados, pulsadores, etc. Los pines de interrupción externa más comunes son RB0, RB1, RB2, RB4, RB5, RB6, RB7 para gama alta. 9. PRIORIDAD DE INTERRUPCIONES: PRIORITY INTERRUPTIONS (LÉASE PRAIÓRIRI INTERROPSHIONS): La gama alta permite programar prioridad LOW OR HIGH a cada interrupción dependiendo de la importancia y urgencia en el circuito y/o aplicación. 10. INTERRUPCIONES VECTORIZADAS: Algunos µC poseen una dirección única (vector de interrupción independiente) para cada evento de interrupción, esto optimiza el tiempo en detección y facilita el manejo de cada interrupción. Los µC microchip no disponen de esta opción, sin embargo, algunos µC motorola si permiten dicha función. 11. PULL UP (léase pul ap)/ PULL DOWN (léase pul daun) INTERNO: Los µC PIC tiene Pull UP interno en el puerto B (B0 a B7), no disponen de pull down. La resistencia interna de Pull UP es alrededor de 3KΩ. El puerto B del PIC es el único que tiene la opción de Pull UP interno, es decir, por software se puede garantizar que el PIC interpretará como 1 lógico todas los pines del puerto B configurados como entrada y que estén al aire (input float). Esto es práctico cuando se debe conectar pulsadores o teclados matriciales a un µC y no se desea comprar resistores externos de PULL UP. Los microcontroladores son fabricados con tecnología CMOS (Complementary Metal Oxide Semiconductor) lo cual implica que tienen alta impedancia de entrada (sus entradas requieren muy baja corriente, en el orden de µA), si una entrada se deja al aire (input float) el µC lo interpretará como ruido (debido al ruido electromagnético EMI presente en el ambiente o efecto antena y se puede inducir una tensión fantasma en los pines de entrada que estén flotando). Pull UP EXTERNO: es una resistencia externa que se conecta de una entrada del microcontrolador hacia +VCC. Un PULL DOWN es lo mismo pero conectada hacia tierra. La función de estas resistencias (del orden 1KΩ a 100KΩ) es garantizarle un estado a los pines al aire o input float (léase input flout) del PIC configurados como entrada. 12. CAPACIDAD DE CORRIENTE: MODO SINK (IOL ), MODO SOURCE (IOH) : Para la gama media y alta de microchip, la corriente máxima de salida en modo sink (sumidero) o “cero lógico” es de 25 mA y la corriente máxima de salida en modo source (fuente) o “uno lógico” es de 25 mA. Este aspecto es de singular importancia pues indica la potencia que puede transmitir el PIC a los periféricos de salida tales como Relés, Led, Motores, etc. EL ABANICO DE ENTRADA Y SALIDA (Fan In / Fan Out) de un Circuito integrado está relacionado con las

Page 29: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

29 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

impedancias de entrada y salida del mismo. Las corrientes en un PIC alimentado a 5V son:

IOL = 25mA (modo sink o sumidero léase sink) corriente de salida en 0 lógico IOH = 25mA (modo source o fuente leáse soors) corriente de salida en 1 lógico IIL = 1µA (Corriente de entrada en cero lógico) IIH = 1µA (Corriente de entrada en uno lógico) Considerando que un led (diodo emisor de luz) requiere para encender una tensión de 2V mínimo y una corriente entre 5 a 50 mA, se puede afirmar que un PIC puede encender directamente hasta 5 led por un solo terminal. Obviamente si la carga requiere más corriente (un relé convencional exige 30mA aproximadamente) se debe conectar un buffer (impulsador de corriente) o un transistor en emisor o colector común. Por ser un dispositivo construido con tecnología CMOS (Complementary Metal Oxide semiconductor) los PIC presentan una alta impedancia de entrada, esto implica que la corriente de entrada por cada pin está en el orden de los microamperios, es decir, se puede aplicar a un µC la salida directa de cualquier sensor sin necesidad de una etapa previa de acondicionamiento de corriente (amplificador seguidor de voltaje o buffer amplificador de corriente). 13. CONVERSOR A/D (CAD): Los microcontroladores que incorporan un Conversor A/D (Analógico/Digital) pueden procesar señales analógicas, tan abundantes en las aplicaciones. Suelen disponer de un multiplexor que permite aplicar a la entrada del CAD diversas señales analógicas desde los pines del circuito integrado. La familia 16F87X y 18FXX2 disponen de un conversor A/D de 8 canales a 10 bit de resolución y la familia 18FXXXX disponen de un conversor A/D de 13 canales a 10 bit de resolución. 14. CONVERSOR D/A (DAC): Transforma los datos digitales obtenidos del procesamiento del computador en su correspondiente señal analógica que saca al exterior por una de los pines de la cápsula. No todos los µC traen esta opción en su interior. Los PIC’s gama enana, baja, media y alta no disponen de esta opción. 15. COMPARADOR ANALÓGICO: Algunos modelos de microcontroladores (16F62X) disponen internamente de un Amplificador Operacional que actúa como comparador entre una señal fija de referencia y otra variable que se aplica por una de los pines de la cápsula. La salida del comparador proporciona un nivel lógico 1 ó 0 según una señal sea mayor o menor que la otra. También hay modelos de microcontroladores con un módulo de tensión de referencia que proporciona diversas tensiones de referencia que se pueden aplicar en los comparadores. 16. PUERTAS DE ENTRADA/SALIDA E/S DIGITALES: Todos los microcontroladores destinan algunas de sus pines a soportar líneas de E/S digitales. Por lo general, estas líneas se agrupan de ocho en ocho formando Puertas. Las líneas digitales de las Puertas pueden configurarse como Entrada o como Salida cargando un 1 ó un 0 en el bit correspondiente de un registro destinado a su configuración. 17. PUERTAS DE COMUNICACIÓN USART, I2C, PARALELO, SPI, USB: Con objeto de dotar al microcontrolador de la posibilidad de comunicarse con otros dispositivos externos, otros buses de microprocesadores, buses de sistemas, buses de redes y poder adaptarlos con otros elementos bajo otras normas y protocolos. Algunos modelos disponen de recursos que permiten directamente esta tarea, entre los que destacan: UART (UNIVERSAL ASYNCRONOUS RECEPTION TRANSMISION). USART (UNIVERSAL SYNCRONOUS ASYNCRONOUS RECEPTION TRANSMISION).

Page 30: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

30 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

PARALLEL PORT :Puerto paralelo esclavo para poder conectarse con los buses de otros microprocesadores. USB (Universal Serial Bus), que es un moderno bus serie para los PC de ala velocidad. Bus I2C (INTERFAZ DE CIRCUITOS INTEGRADOS), que es un interfaz serie de dos hilos desarrollado por Philips. CAN (Controller Area Network), para permitir la adaptación con redes de conexionado multiplexado desarrollado conjuntamente por Bosch e Intel para el cableado de dispositivos en automóviles. En EE.UU. se usa el J185O. SPI: Interfaz de Periféricos Serial MSSP: Master Synchronous Serial Port 18. PROGRAMMING™ (ICSP™) VIA TWO PINS: Reprogramación in Circuit, es decir, no es necesario retirar el PIC del circuito, pues los datos se cargan a la memoria de programa mediante el puerto serial UART RS232 Tx y Rx. 19. DEPURACIÓN DEL PROGRAMA IN CIRCUIT: IN-CIRCUIT DEBUG (ICD) VIA TWO PINS: La gama alta permite realizar (mediante un hardware específico) una depuración (debugger= delete bug = eliminar cucarachas o bichos) de un código fuente. Esta depuración se realiza con la PC conectada en tiempo real, el programa se irá ejecutando línea por línea en el editor (MPLAB SIMULATOR) y en el circuito hardware mediante el puerto serial RS232 del PIC y del PC. 20. HARDWARE MULTIPLICADOR CON UNA INSTRUCCION: 8 X 8 SINGLE-CYCLE HARDWARE MULTIPLIER: La gama alta incluye una instrucción (MULLW) para multiplicar 1 byte x 1 byte y ofrece la respuesta en 2 bytes. 21. MODULOS CAPTURA COMPARACION PWM CCP: Captura una trama de datos serial y luego la compara con registros internos, útil en aplicaciones de sensores ultrasónicos. El módulo PWM (PULSE WIDE MODULATION) son circuitos que proporcionan en su salida pulsos de ciclo útil (tiempo en ‘1’ lógico) variable y periodo constante, que se ofrecen al exterior a través de los pines del encapsulado. Suelen emplearse para el control de velocidad de motores de DC y Servomotores. 22. LEVEL STACK (NIVELES DE PILA) (LÉASE LEVOeL SSTeAK): La pila (Stack) es una zona de memoria RAM independiente de la memoria de datos y de la memoria de programa del µC. Su estructura es del tipo LIFO (Last In First Out) por lo que el último dato que se guarda es el primero que sale. La pila se carga con cada instrucción CALL o con la generación de una interrupción, se descarga con cada instrucción RETURN o RETFIE. Cuando el diseñador realiza más de 31 llamados de subrutina (CALL léase coll) sin regresar (sin uso del RETURN léase ruitorn) el puntero de pila (STACK POINTER) se desborda y se presenta el fenómeno denominado OVERFLOW STACK (desbordamiento de pila léase overflou ssteak), lo cual es un error de programación pues el puntero de programa (Pointer Program) salta a un lugar inesperado. Lo deseable en un µC es que disponga de una gran memoria de pila independiente de la memoria de datos. 23. MEMORIA EEPROM DE DATO: Es una memoria relativamente pequeña (64 a 256 bytes) en la cual se pueden guardar los datos del programador y no se pierden incluso al desconectar la alimentación del circuito. 24. LOW VOLTAGE DETECT (LVD): Detecta si un voltaje aplicado al uC es menor de un nivel programado. Es útil para detectar si la batería de alimentación está agotada. 25. SELECCIÓN DE OSCILADOR: Dependiendo de la frecuencia natural del cristal, se debe seleccionar el modo de oscilación y los condensadores de estabilización. En gama alta 18FXX2 si se desea una frecuencia superior a 25MHz, se debe activar el modo PLL (phase locked loop) multiplicador de frecuencia del cristal por 4. Por ejemplo,

Page 31: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

31 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

para trabajar a 40MHz (frecuencia máxima de la familia 18FXX2) lo correcto es conectar un cristal de 10MHz con condensadores de 27pF y activar el circuito PLL del µC. La frecuencia máxima de la familia 16F87X es 20MHz y la frecuencia máxima de la familia 18FXXXX es 48MHz. La familia 18FXXXX tiene la opción de trabajar con un oscilador interno configurable desde 31KHz hasta 8MHz.

El oscilador de la familia 18FXXXX se puede configurar de las siguientes maneras: 1. XT : CRYSTAL/RESONATOR

2. XTPLL : CRYSTAL/RESONATOR WITH PLL ENABLED 3. HS : HIGH-SPEED CRYSTAL/RESONATOR

4. HSPLL HIGH-SPEED CRYSTAL/RESONATOR WITH PLL ENABLED 5. EC EXTERNAL CLOCK WITH FOSC/4 OUTPUT 6. ECIO EXTERNAL CLOCK WITH I/O ON RA6 7. ECPLL EXTERNAL CLOCK WITH PLL ENABLED AND FOSC/4 OUTPUT ON RA6 8. ECPIO EXTERNAL CLOCK WITH PLL ENABLED, I/O ON RA6 9. INTHS INTERNAL OSC USED AS MICROCONTROLLER CK SOURCE, HS OSC USED AS USB CK SOURCE 10. INTXT INTERNAL OSC USED AS MICROCONTROLLER CLOCK SOURCE, XT OSC USED AS USB CK SOURCE 11. INTIO INTERNAL OSC USED AS MICRO CK SOURCE, EC OSC USED AS USB CK SOURCE, DIGITAL I/O ON RA6 12. INTCKO INT OSC USED AS MICRO CK SOURCE, EC OSC USED AS USB CK SOURCE, FOSC/4 OUTPUT ON RA6

Page 32: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

32 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

LAS GAMAS DE PIC

Una de las labores más importantes del ingeniero de diseño es la elección del microcontrolador que mejor satisfaga las necesidades del proyecto con el mínimo presupuesto. Para resolver aplicaciones sencillas se precisan pocos recursos, en cambio, las aplicaciones grandes requieren numerosos y potentes. Siguiendo esta filosofía Microchip construye diversos modelos de microcontroladores orientados a cubrir, de forma óptima, las necesidades de cada proyecto. Así, hay disponibles microcontroladores sencillos y baratos para atender las aplicaciones simples y otros complejos y más costosos para las de mucha envergadura.

Microchip dispone de cuatro familias de microcontroladores de 8 bits para adaptarse a las necesidades de la mayoría de los clientes potenciales. En la mayor parte de la bibliografía encontrará tan solo tres familias de microcontroladores, con lo que habrán despreciado la llamada gama enana, que es en realidad una subfamilia formada por componentes pertenecientes a las otras gamas. En nuestro caso hemos preferido comentarla dado que los PIC enanos son muy apreciados en las aplicaciones de control de personal, en sistemas de seguridad y en dispositivos de bajo consumo que gestionan receptores y transmisores de señales. Su pequeño tamaño los hace ideales en muchos proyectos donde esta cualidad es fundamental.

LA GAMA ENANA: PIC12CXXX DE 8 PINES CON INSTRUCCIONES DE 12 /14 BIT

Su principal característica es su reducido tamaño, al disponer todos sus componentes de 8 pines. Se alimentan con un voltaje de corriente continua comprendido entre 2,5 V y 5,5 V, y consumen menos de 2 mA cuando trabajan a 5 V y 4 MHz. El formato de sus instrucciones puede ser de 12 o de 14 bits y su repertorio es de 33 o 35 instrucciones, respectivamente. En la Figura 2.1 se muestra el diagrama de conexionado de uno de estos PIC.

Figura 2.1. Diagrama de conexiones de los PIC12CXXX de la gama enana. Aunque los PIC enanos sólo tienen 8 pines, pueden destinar hasta 6 como líneas de E/S para los periféricos porque disponen de un oscilador interno R-C. En la Tabla 2.1 se presentan las principales características de los modelos de esta subfamilia, que el fabricante tiene la intención de potenciar en un futuro próximo. Los modelos 12C5xx pertenecen a la gama baja, siendo el tamaño de las instrucciones de 12 bits; mientras que los 12C6xx son de la gama media y sus instrucciones tienen 14 bits. Los modelos 12F6xx poseen memoria Flash para el programa y EEPROM para los datos.

MODELO MEMORIA PROGRAMA

MEMORIA DATOS

FRECUENCIA MAXIMA

LINEAS E/S

ADC 8BITS

TEMPORIZADORES

PINES

PIC12C508 512x12 25x8 4 MHz 6 TMR0 + WDT 8 PIC12C509 1024x12 41x8 4 MHz 6 TMR0 + WDT 8 PIC12C670 512x14 80x8 4 MHz 6 TMR0 + WDT 8 PIC12C671 1024x14 128x8 4 MHz 6 2 TMR0 + WDT 8 PIC12C672 2048x14 128x8 4 MHz 6 4 TMR0 + WDT 8

Page 33: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

33 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

PIC12C680 512X12 FLASH

80x8 16x8 EEPROM

4 MHz 6 4 TMR0 + WDT 8

PIC12C681 1024x14 FLASH

80x8 16x8 EEPROM

4 MHz 6 TMR0 + WDT 8

Tabla 2.1. Características de los modelos PIC12C(F)XXX de la gama enana.

GAMA BAJA O BÁSICA: PIC16C5X CON INSTRUCCIONES DE 12 BITS

Figura 2.2: Diagrama de pines de los PIC de la gama baja que responden a la nomenclatura PIC16C54/56.

Se trata de una serie de PIC de recursos limitados, pero con una de la mejores relaciones coste/prestaciones. Sus versiones están encapsuladas con 18 y 28 pines y pueden alimentarse a partir de una tensión de 2,5 V, lo que les hace ideales en las aplicaciones que funcionan con pilas teniendo en cuenta su bajo consumo (menos de 2 mA a 5 V y 4 MHz). Tienen un repertorio de 33 instrucciones cuyo formato consta de 12 bits. No admiten ningún tipo de interrupción y la Pila sólo dispone de dos niveles.

Tabla 2.2. Características de los modelos PIC16C®5X de la gama baja Para terminar el comentario sobre los componentes de la gama baja conviene nombrar dos restricciones importantes:

La pila sólo dispone de dos niveles lo que supone no poder encadenar más de dos subrutinas.

Los microcontroladores de la gama baja no admiten interrupciones.

Page 34: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

34 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

GAMA MEDIA. PIC16FXXX CON INSTRUCCIONES DE 14 BITS

Es la gama más variada y completa de los PIC. Abarca modelos con encapsulado desde 18 pines hasta 68, cubriendo varias opciones que integran abundantes periféricos. Dentro de esta gama se halla el «fabuloso PIC16X84» y sus variantes.

El 16F877 y 16F84A son uno de los modelos más representativos de la gama media. En esta gama sus componentes añaden nuevas prestaciones a las que poseían los de la gama baja, haciéndoles más adecuados en las aplicaciones complejas. Admiten interrupciones, poseen comparadores de magnitudes analógicas, convertidores A/D, puertos serie y diversos temporizadores. El repertorio de instrucciones es de 35, de 14 bits cada una y compatible con el de la gama baja. Sus distintos modelos contienen todos los recursos que se precisan en las aplicaciones de los microcontroladores de 8 bits. También dispone de interrupciones y una Pila de 8 niveles que permite el anidamiento de subrutinas. En la Tabla 2.3 se presentan las principales características de los modelos de esta familia.

Tabla 2.3. Características relevantes de los modelos PIC16X8X de la gama media.

Encuadrado en la gama media también se halla la versión PIC14C000, que soporta el diseño de controladores inteligentes para cargadores de baterías, pilas pequeñas, fuentes de alimentación ininterrumpibles y cualquier sistema de adquisición y procesamiento de señales que requiera gestión de la energía de alimentación. Los PIC 14C000 admiten cualquier tecnología de las baterías como Li-Ion, NiMH, ect, Ph y Zinc. El temporizador TMR1 que hay en esta gama tiene un circuito oscilador que puede trabajar asíncronamente y que puede incrementarse aunque

Page 35: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

35 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

el microcontrolador se halle en el modo de reposo (“sleep”), posibilitando la implementación de un reloj en tiempo real. Las líneas de E/S presentan una carga “pull-up” activada por software.

GAMA ALTA: PIC17CXXX, PIC18FXXXX CON

INSTRUCCIONES DE 16 BITS

Se alcanzan hasta las 75 instrucciones de 16 bits (wide instructions o ancho de instrucción) en el repertorio y sus modelos (algunos de la serie 17CXXXX) disponen de un sistema de gestión de interrupciones vectorizadas (cada interrupción tiene una dirección única) y priorizadas (low or high priority) muy potente. También incluyen variados controladores de periféricos, puerto USB 2.0 de alta y baja velocidad, puertas de comunicación serie y paralelo con elementos externos, un multiplicador hardware de gran velocidad y mayores capacidades de memoria, que alcanza más de 32 KByte en la memoria de instrucciones y hasta 2048 bytes en la memoria de datos.

Quizás la característica más destacable de los componentes de esta gama (17CXXX) es su arquitectura abierta, que consiste en la posibilidad de ampliación del microcontrolador con elementos externos. Para este fin, los pines pueden ofrecer al exterior las líneas de los buses de datos, direcciones y control, a las que se conectan memorias o controladores de periféricos. Esta facultad obliga a estos componentes a tener un elevado número de pines comprendido entre 40 y 44. Esta filosofía de construcción del sistema es la que se empleaba en los microprocesadores y no suele ser una práctica habitual cuando se emplean microcontroladores.

COMPARACION ENTRE GAMA ALTA (18FXXXX) Y LAS OTRAS GAMAS DE MICROCHIP (16XXXX, 14XXXX, 12XXXX)

(18FXXXX) Vs (16XXXX, 14XXXX, 12XXXX)

Un PIC 18F452 dispone hasta de 32K bytes = 16KWord de memoria de programa y considerando que cada instrucción o renglón de programa consume 2 bytes (16 bit) entonces el número real de líneas que se puede programar en un PIC 18FXXXX es 16384 (la familia 16F87X sólo tiene 8164). La memoria RAM es de máximo 2048 bytes (la familia 16F87X sólo tiene 368), es decir, puedo declarar un total de 2048 variables de 8 bit ó 1024 variables de 16 bit las cuales se encuentran distribuidas en bancos de 256 variables cada uno. La memoria EEPROM de dato es de 256 bytes. Por otra parte cabe destacar que posee 31 niveles de pila (level stack) versus 8 niveles de pila de la familia gama media 16F87X. Recordemos que los niveles de pila aluden al número de subrutinas o llamados (CALL) anidados que se pueden realizar en la programación sin regresar (RETURN). Otra ventaja trascendental de la familia gama alta 18FXXXX sobre la gama media 16FXXX alude a la memoria de programa lineal direccionable hasta 32K de la familia 18FXXXX, lo cual elimina el gran inconveniente relacionado con la engorrosa paginación que se debe hacer con la familia gama media después de las 2048 primeras líneas de programa debido a que las instrucciones GOTO, CALL, RETURN no funcionan si la etiqueta o subrutina invocada no está en la misma página de memoria. La familia 18FXXXX tiene la opción de activar “Prioridad de Interrupciones” alta o baja (High priority or Low Priority), lo cual es útil en ciertas aplicaciones. Los µC 18FXXXX con la opción PLL (Phase Locked Loop) activa puede multiplicar la frecuencia del cristal por 4, en efecto, con un cristal de 10MHz y el PLL activo puede operar a 40MHz, lo cual implica 10MIPs (millones de instrucciones por segundo) versus los 20MHz máximo (5MIPs) de la gama media. La gama alta también puede multiplicar un byte por un byte con una instrucción simple (MULWF) y soporta compilación en lenguaje C.

Page 36: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

36 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Page 37: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

37 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

VENTAJAS DE GAMA ALTA Vs GAMA MEDIA (18FXXXX) Vs (16FXXX)

Un PIC 18FXXXX dispone de hata 32K bytes = 16KWord de memoria de programa y considerando que cada instrucción o renglón de programa consume 2 bytes (16 bit) entonces el número máximo y real de líneas que puedo programar en un PIC 18FXXXX es 16384 instrucciones (la familia 16F87X sólo soporta 8164 instrucciones de 14 bits).

La memoria RAM máxima es de 2048 bytes para la familia 18FXXXX y 1536 para la familia 18FXX2 (la

familia 16F87X sólo tiene 368), es decir, puedo declarar un total de 2048 variables de 8 bit ó 1024 variables de 16 bit (tipo word) las cuales se encuentran distribuidas en bancos de 256 variables cada uno.

La memoria EEPROM de dato es de 256 bytes, igual a la gama media 16F87X.

31 niveles de pila (level stack) versus 8 niveles de pila de la familia gama media 16F87X y 2 niveles de la

gama baja. Los niveles de pila aluden al número de subrutinas o llamados (CALL) anidados que se pueden realizar en la programación sin regresar (RETURN).

La memoria de programa lineal direccionable hasta 32K: la familia 18FXXXX elimina el gran inconveniente

relacionado con la paginación que se debe hacer con la familia gama media después de las 2048 primeras líneas de programa debido a que las instrucciones GOTO, CALL, RETURN no funcionan si la etiqueta o subrutina invocada no está en la misma página de memoria.

La familia 18F tiene la opción de activar “Prioridad de Interrupciones” (léase praióriri interrupshions) alta o

baja (High priority or Low Priority), lo cual es útil en ciertas aplicaciones.

Los µC 18F con la opción PLL (Phase Locked Loop) activa puede multiplicar la frecuencia del cristal por 4, en efecto, con un cristal de 12MHz y el PLL activo puede operar a 48MHz, lo cual implica 12MIPs (millones de instrucciones por segundo) versus los 20MHz máximo (5MIPs) de la gama media. La máxima frecuencia de operación es de 48MHz para la familia 18FXXXX y 40 MHz para la familia 18FXX2.

La gama alta puede multiplicar un byte por un byte con una instrucción simple (MULWF)

La gama alta soporta compilación en lenguaje C de Microchip

Pese a las obvias ventajas de la gama alta 18F sobre la gama media la diferencia de precios no es muy

significativa, alrededor de un 20 %.

La familia 18F amplió el set de instrucciones a 75, vs 35 de la gama media.

La familia 18F mediante el registro BSR brinda la opción de prescindir del confuso concepto (para algunos programadores) de bancos de memoria para configurar o manipular los registros de propósito general (GPR) o registros de función especial (FSR), tiene memoria de dato lineal direccionable hasta 1536 byte.

La familia PIC18F2455/2550/4455/4550 posee Módulo USB 2.0 low speed (1.5Mbps) y full speed (12Mbps)

interno para comunicación con PC a alta velocidad.

La familia PIC18F2455/2550/4455/4550 posee oscilador interno programable de 31KHz a 8MHz.

Page 38: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

38 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

La familia PIC18F2455/2550/4455/4550 posee WDT con período extendido y programable de 41mS a 131

seg.

La familia 18FXXXX tiene en su interior un módulo conversor A/D de hasta 13 canales, la familia 18FXX2 sólo tiene 8 canales, igual que la familia 16F87X.

Page 39: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

39 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

GENERALIDADES DE LOS PIC

La sigla PIC significa ”Peripheral Interface Controller” (Controlador de Interfaz de periféricos), aunque cabe mencionar que muchos usuarios prefieren interpretar PIC como “Programmable Integrated Circuit” (Circuito Integrado Programable). La expresión PIC es empleada para designar una amplia gama de microcontroladores de la empresa americana Microchip Technology (www.microchip.com), es decir, no sería apropiada la expresión “tengo un PIC MOTOROLA”, pues la expresión PIC es inherente a la empresa Microchip.

ARQUITECTURA DE MICROPROCESADORES

ARQUITECTURA VON NEUMANN: propuesta por John Von Neumann, es la arquitectura tradicional de sistemas digitales programables. En este modelo la unidad central de procesamiento (CPU) está conectada a una memoria única que contiene las instrucciones del programa y los de datos. El tamaño de la unidad de datos o instrucciones está fijado por el ancho del bus de datos de la memoria exterior utilizada, que es de 8 bits. Un µP con un bus de 8 bit que lo conecta con la memoria deberá manejar datos e instrucciones de una o más unidades de 8 bit de longitud. Cuando deba acceder a una instrucción o dato de más de 1 byte (8bit) de longitud, deberá realizar más de un acceso a la memoria (lentitud del proceso). Por otro lado este bus único limita la velocidad de operación del microprocesador, ya que no se puede buscar en la memoria una nueva instrucción antes de que finalicen las transferencias de datos que pudieran resultar de la instrucción anterior. Los µC Motorola, Intel, Atmel emplean esta arquitectura en sus uP y uC. La principal ventaja de esta arquitectura es que simplifica la lógica interna del µP.

Resumiendo las principales desventajas de la arquitectura Von Neumann son: 1. La longitud de las instrucciones está limitada por la unidad de longitud de los datos, por lo tanto el µP

debe hace varios accesos a memoria para buscar instrucciones complejas (con longitud superior a 8 bit).

2. La velocidad de operación está limitada por el efecto cuello de botella que significa un único bus para datos e instrucciones, que impide superponer ambos tiempos de acceso.

ARQUITECTURA HARVARD: es la mejora de la arquitectura Von Neumann, su nombre obedece a la primera computadora que utilizó esta arquitectura. Se caracteriza por implementar dos memorias separadas con buses independientes para la memoria de instrucciones (memoria de programa) y para la memoria de datos (variables y constantes). Ambos buses son totalmente independientes y pueden ser de distintos anchos (Wide) (léase uaid), esto permite que la CPU pueda acceder de forma independiente y simultánea (mayor velocidad) a la memoria de datos y a la de instrucciones, consiguiendo que las instrucciones se ejecuten en menos ciclos de reloj.

Resumiendo las principales ventajas de la arquitectura Harvard son: 1 El tamaño de las instrucciones no está relacionado con el de los datos y, por lo tanto, puede ser

optimizado para que cualquier instrucción ocupe una sola posición de memoria de programa. Así se logra una mayor velocidad y una menor longitud del programa.

2 El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidad de operación.

Page 40: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

40 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

CLASES DE CPU’S (UNIDAD CENTRAL DE PROCESAMIENTO) Las CPU’s atendiendo al tipo de instrucciones que utilizan pueden clasificarse fundamentalmente en: CISC (Complex Instruction Set Computer): Son Procesadores con un juego de instrucciones complejo. Su repertorio o número de instrucciones es elevado (más de 90)y algunas de ellas son muy sofisticadas y potentes (ejemplo multiplicar, dividir) . Su problema es que requieren de muchos ciclos de reloj para ejecutar dichas instrucciones, haciendo lento rendimiento general del uP. Un ejemplo de estos µP son los empleados en los µC motorola gama media que tienen un repertorio de alrededor de 90 instrucciones (en contraste con los PIC que sólo tienen 35 la gama media y 75 la gama alta) y algunas son muy sofisticadas como DIV, MULT. Una ventaja de los procesadores CISC es que ofrecen al programador instrucciones complejas y potentes que actúan como macros. RISC (Reduced Instruction Set Computer): Son µP con un repertorio o número de instrucciones reducido (ejemplo los PIC sólo usan 35 instrucciones para gama media y 75 para gama alta). Las instrucciones son muy simples y suelen ejecutarse en un ciclo de máquina. Los µP RISC suelen tener una estructura pipeline y ejecutar casi todas las instrucciones en el mismo tiempo (4 ciclos de reloj para los PIC). Los µP RISC representan un importante avance en el desarrollo de la arquitectura de los microcontroladores. MICROCHIP decidió diseñar sus µC PIC con procesadores RISC optimizado para ejecutar a muy alta velocidad un reducido número de instrucciones. Cuando se requieran instrucciones sofisticadas o potentes (dividir, multiplicar, etc) se logran ejecutando un conjunto de instrucciones disponibles en lugar de una única instrucción como en los µP CISC. Tanto la industria de los computadores comerciales como la de los microcontroladores están decantándose hacia la filosofía RISC (Computadores de Juego de Instrucciones Reducido). En estos procesadores el repertorio de instrucciones máquina es muy reducido y las instrucciones son simples y, generalmente, se ejecutan en un ciclo. La sencillez y rapidez de las instrucciones permiten optimizar el hardware y el software del procesador. SISC (Specific Instruction Set Computer): Poseen un juego de instrucciones específico para cada aplicación. Están destinados a aplicaciones muy concretas. En los microcontroladores destinados a aplicaciones muy concretas, el juego de instrucciones, además de ser reducido, es “específico”, o sea, las instrucciones se adaptan a las necesidades de la aplicación prevista. Esta filosofía se ha bautizado con el nombre de SISC (Computadores de Juego de Instrucciones Específico).

Page 41: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

41 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

ARQUITECTURA, CPU Y CARACTERISTICAS FUNCIONALES DEL PIC

ARQUITECTURA HARVARD: Bus y memoria separado para memoria de programa (bus 16 hilos o

Wide instructions = 16 bit para 18FXXXX, bus 14 hilos para 16FXXX) y bus y memoria separado para memoria de dato (bus de 8 hilos u ocho bit). Los PIC 12XXX, 16XXX, 18XXXX manejan una longitud de 8 bit para la memoria de datos.

CPU TIPO RISC PROCESADOR SEGMENTADO O PIPELINE: realiza simultáneamente la ejecución de una

instrucción y la búsqueda de código de la siguiente, de esta manera se puede ejecutar una instrucción en un ciclo. (recuerde que un ciclo de máquina equivale a 4 ciclos de reloj para un PIC). Es obvio que esta característica insufla alta velocidad de procesamiento al o µC. Se aplica la técnica de segmentación (“pipe-line”) en la ejecución de las instrucciones. La segmentación permite al procesador realizar al mismo tiempo la ejecución de una instrucción y la búsqueda del código de la siguiente. De esta forma se puede ejecutar cada instrucción en un ciclo (un ciclo de instrucción equivale a cuatro ciclos de reloj). Las instrucciones de salto ocupan dos ciclos al no conocer la dirección de la siguiente instrucción hasta que no se haya completado la de bifurcación.

ARQUITECTURA ORTOGONAL: en un µP con arquitectura ortogonal una instrucción puede utilizar cualquier elemento de la arquitectura como fuente o destino. Esto se evidencia en el uso del registro W (Work) para los PIC y el uso del registro A (acumulador) para los demás tipos de µC (Atmel, Motorola, Intel). Como consecuencia el PIC tiene una gran ventaja por tener arquitectura ortogonal y poder guardar el resultado de una operación aritmética en el registro de trabajo W o directamente en cualquier registro de la memoria de dato. Los demás µC siempre guardan el resultado de una operación ALU en el registro acumulador, teniendo que emplear otro comando o instrucción para pasarla a una variable de la memoria de dato, esto implica mayor demora o lentitud en el proceso.

FORMATO DE INSTRUCCIONES – ANCHO DE INSTRUCCIONES (WIDE INSTRUCTIONS). El

formato de todas las instrucciones es de la misma longitud. Todas las instrucciones de los microcontroladores de la gama baja tienen una longitud de 12 bits. Las de la gama media tienen 14 bits y 16bit los de la gama alta 18FXXXX. Esta característica es muy ventajosa en la optimización de la memoria de instrucciones y facilita enormemente la construcción de ensambladores y compiladores.

JUEGO DE INSTRUCCIONES DEL PIC: Los modelos de la gama baja disponen de un repertorio de 33 instrucciones, 35 los de la gama media y 75 los de la alta.

ARQUITECTURA BASADA EN UN “BANCO DE REGISTROS”: Esto significa que todos los objetos del sistema (puertas de E/S, temporizadores, posiciones de memoria, etc.) están implementados físicamente como registros.

MODOS DE DIRECCIONAMIENTO DE UN PIC: Los modos de direccionamiento aluden a las diferentes formas de acceder a la memoria de datos e instrucciones de un uP.

1. Direccionamiento Inmediato: El valor del dato inmediato (su valor como constante) lo contiene el mismo código de operación que, en la ejecución de la instrucción, se carga en el registro W para su posterior procesamiento. Por ejemplo: IORLW .5

2. Direccionamiento Directo: La dirección de memoria RAM se encuentra en el mismo código de operación. Por ejemplo: ADDWF VAR1.

3. Direccionamiento de Bit: Procesa datos de un bit. La dirección del dato es un bit. Por ejemplo: BCF STATUS,RP0.

Page 42: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

42 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

4. Direccionamiento Indexado: Utilizado para el manejo de tablas mediante la instrucción: ADDWF PCL,F.

5. Direccionamiento Indirecto: La dirección del dato se encuentra contenida en el registro INDF. Cada vez que se hace referencia éste, se utiliza el contenido del registro FSR para direccionar el operando.

TIPOS DE DATOS DE UN MICROCONTROLADOR SEGÚN LA LONGITUD:

1. Bit: 1 ó 0 2. Nibble: 4 bit : 0 a 15 en decimal 3. Byte: 8 Bit: 2 Nibble : 0 a 255 en decimal 4. Word: 16 bit: 4 nibble: 2 Byte : 0 a 65535 en decimal 5. Double Word: 32 bit: 8 Nibble: 2 Byte: 2 Word : 0 a 4.294’967.296 en decimal 6. ASCII: 7 bit

Todas las variables en un PIC son tipo byte por naturaleza en lenguaje assembler, es decir, el máximo valor permitido es 255

Page 43: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

43 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

HERRAMIENTAS PARA EL DESARROLLO DE APLICACIONES MICROCONTROLADAS CON PIC

Uno de los factores que más importancia tiene a la hora de seleccionar un microcontrolador entre todos los demás es el soporte tanto software como hardware de que dispone. Un buen conjunto de herramientas de desarrollo puede ser decisivo en la elección, ya que pueden suponer una ayuda inestimable en el desarrollo del proyecto. Las principales herramientas de ayuda al desarrollo de sistemas basados en microcontroladores son:

EDITOR DE ENSAMBLADOR: La programación en lenguaje ensamblador puede resultar un tanto ardua para el principiante, pero permite desarrollar programas muy eficientes, ya que otorga al programador el dominio absoluto del sistema. Los fabricantes suelen proporcionar el programa ensamblador de forma gratuita y en cualquier caso siempre se puede encontrar una versión gratuita para los microcontroladores más populares. El editor de ensamblador que ofrece Microchip es el MPLAB IDE.

COMPILADOR DE ALTO NIVEL: La programación en un lenguaje de alto nivel (como C, Basic, Pascal ó

LPM2) permite disminuir el tiempo de desarrollo de un producto. No obstante, si no se programa con cuidado, el código resultante puede ser mucho más ineficiente que el programado en ensamblador. Las versiones más potentes suelen ser muy caras, aunque para los microcontroladores más populares pueden encontrarse versiones demo limitadas e incluso compiladores gratuitos (por ejemplo LPM2 y compilador en lenguaje C de Microchip).

DEPURACIÓN (DEBUGGER IN CIRCUIT): debido a que los microcontroladores van a controlar

dispositivos físicos, los desarrolladores necesitan herramientas que les permitan comprobar el buen funcionamiento del microcontrolador cuando es conectado al resto de circuitos.

SIMULADOR (SIMULATOR): Son aplicativos software capaces de ejecutar en un PC programas

realizados para el microcontrolador. Los simuladores permiten tener un control absoluto sobre la ejecución de un programa, siendo ideales para la depuración de los mismos. Su gran inconveniente es que es difícil simular la entrada y salida de datos del microcontrolador. Tampoco cuentan con los posibles ruidos en las entradas, pero, al menos, permiten el paso físico de la implementación de un modo más seguro y menos costoso, puesto que ahorraremos en grabaciones de chips para la prueba in-situ. Entre los simuladores más comunes está el MP SIM de Microchip y el ISIS Proteus.

PLACAS DE EVALUACIÓN: Se trata de pequeños sistemas con un microcontrolador ya montado y que

suelen conectarse a un PC desde el que se cargan los programas que se ejecutan en el microcontrolador. Las placas suelen incluir visualizadores LCD, teclados, LED’s, fácil acceso a los pines de E/S, etc. El sistema operativo de la placa recibe el nombre de programa monitor. El programa monitor de algunas placas de evaluación, aparte de permitir cargar programas y datos en la memoria del microcontrolador, puede permitir en cualquier momento realizar ejecución paso a paso, monitorizar el estado del microcontrolador o modificar los valores almacenados los registros o en la memoria.

EMULADORES IN CIRCUIT: Se trata de un instrumento que se coloca entre el PC anfitrión y el zócalo de

la tarjeta de circuito impreso donde se alojará el microcontrolador definitivo. El programa es ejecutado desde el PC, pero para la tarjeta de aplicación es como si lo hiciese el mismo microcontrolador que luego irá en el zócalo. Presenta en pantalla toda la información tal y como luego sucederá cuando se conecte el uC real.

CONCEPTOS DE PROGRAMACIÓN DE MICROCONTROLADORES LENGUAJE DE MÁQUINA: El único lenguaje que entienden los µC es el formado por los ceros (0) y unos

Page 44: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

44 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

(1) del sistema binario. A este lenguaje se le denomina lenguaje de máquina. Los códigos de este lenguaje que forman las instrucciones se llaman códigos de máquina. Así por ejemplo, cuando el µC lee el código de máquina “11111000111010” está recibiendo la instrucción de suma 58 al registro de trabajo W y guarda el resultado en W. La codificación hexadecimal es una manera más comprensible de la codificación binaria, así por ejemplo, el código de máquina “11111000111010” se podría expresar en hexadecimal como 3E3A.

LENGUAJE ENSAMBLADOR (ASSEMBLER LANGUAGE)(léase assembler languigs) LENGUAJE DE

BAJO NIVEL: El lenguaje de máquina es difícil de utilizar por el hombre ya que se aleja de su forma natural de expresarse, por esto se utiliza el lenguaje ensamblador, que “es la forma de expresar las instrucciones de una manera más natural al hombre y que, sin embargo, es muy cercana al µC porque cada una de sus instrucciones corresponde con otra en código de máquina que el µC es capaz de interpretar”. El lenguaje ensamblador utiliza nemónicos (instruciones o comandos) (33 para la gama baja, 35 para la gama media y 75 para la gama alta) que son grupos de caracteres alfanuméricos que simbolizan las órdenes o tareas a realizar con cada instrucción. Así por ejemplo, para ordenar al PIC: “suma 58 al registro de trabajo W y guarda el resultado en este mismo registro W”, en lenguaje ensamblador para gama media es “ADDLW .58” que es mucho más comprensible para un ser humano que el código de máquina “11111000111010” ó 3E3A en hexadecimal. La principal ventaja del lenguaje ensamblador no es precisamente su facilidad, por el contrario se han desarrollado lenguajes de alto nivel para obviar el uso de assembler, no obstante, el lenguaje assembler presenta dos importantes ventajas que son:

1. Optimización de Código: Si el usuario desarrolla destrezas en este tipo de programación entonces

puede generar el código de mínimo tamaño en la memoria de programa, lo cual es muy importante al implementar programas largos y complejos en microcontroladores con escaza memoria de programa como gama baja y media de microchip.

2. Velocidad de Ejecución: Como consecuencia de la optimización de código, ejecuta un grupo o set de instrucciones con mayor rapidez.

EDITOR DE ASSEMBLER (MPLAB IDE) (léase empilab) (LABORATORIO DE

MICROCONTROLADORES PIC CON ENTORNO DE DESARROLLO INTEGRADO) (MPLAB INTEGRATED DEVELOPMENT ENVIROMENT). Es un programa editor de texto proporcionado por la empresa Microchip para el lenguaje ensamblador y LPM2 con algunas facilidades intrínsecas a la programación de µC tales como, orden de columnas, colores diferentes para etiquetas, instrucciones, directivas, etc.

PROGRAMA ENSAMBLADOR (COMPILER ASSEMBLER) (MPASM ENSAMBLADOR DE

MICROCHIP): Es un software que se encarga de traducir los nemónicos y símbolos alfanuméricos del programa escrito en ensamblador por el usuario a código de máquina comprensible para el µC. El programa escrito en lenguaje ensamblador recibe el nombre de código fuente, archivo fuente o fichero fuente. Suele tener la extensión *.asm. El archivo fuente debe ser traducido a código de máquina, de lo cual se encarga el programa ensamblador. La mayoría de los ensambladores proporcional a su salida un archivo que suele tener la extensión *.hex (hexadecimal) (Motorola emplea la extensión .s19). El ensamblador más utilizado por los µC microchip PIC es el MPASM que viene con el paquete MPLAB IDE.

LENGUAJE DE ALTO NIVEL: Pese a que el lenguaje ensamblador es más comprensible que el lenguaje

de máquina, aún representa dificultad en el momento de la programación por ser un lenguaje más cercano al µC o µP que al usuario humano. Debido a esto se crearon los lenguajes de alto nivel (nivel de los humanos) tales como: Basic, C, Turbo C, C++, PASCAL, FORTRAN, PROLOG, LPM2, etc.

PROGRAMAS COMPILADORES (COMPILER) DE ALTO NIVEL PARA MICROCONTROLADORES PIC:

La empresa Microchip ofrece la posibilidad de trabaja microcontroladores PIC de la gama alta (18F) con

Page 45: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

45 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

lógica de C++, lo cual facilita y potencializa nuestras aplicaciones microcontroladas al brindar instrucciones automáticas para procesos complejos en assembler tales como: arreglos matriciales o vectoriales, operaciones con punto flotante, etc. Otras empresas también han desarrollado para vender programas de alto nivel para microcontroladores. CrownHill desarrolló el famoso PROTON PIC BASIC, el cual permite programar cualquier PIC con lógica de Basic, otras empresas (Microelectrónica) desarrollaron MicroBasic, MicroPascal, CPIC, LPM2, etc. Todos estos lenguajes de alto nivel para µC presentan la gran ventaja de ofrecer facilidad a los programadores, rapidez en el desarrollo de aplicaciones, potencialidad en las instrucciones (operaciones matemáticas complejas). Sin embargo suelen tener el inconveniente de generar un código muy largo (en comparación con assembler) para desarrollar alguna función específica lo cual implica que muchas veces las aplicaciones no se ejecuten con la máxima velocidad del µC.

PROGRAMACIÓN ESTRUCTURADA Y MODULAR POR MACROS LPM2: El modelo de programación

modular y estructurada por macros de assembler, compilado condicional de subrutinas optimizadas y gestor de interrupciones (handler of interruptions) (léase hándoel af interwraptions) automático de interrupciones es un software libre (freecode) que persigue proporcionar a programadores de microcontroladores PIC, expertos y/o novatos, herramientas prácticas y económicas que permitirán el desarrollo rápido, fácil, optimizado y funcional de aplicaciones electrónicas. Con la implementación de potentes macros y subrutinas de assembler, se ofrece una amplia gama de posibilidades a nivel de hardware y software que sin duda corroborará al desarrollo de innumerables proyectos. El sistema de programación modular está habilitado para los microcontroladores de la gama media y alta de la familia microchip:, tales como PIC18F452, 16F84A, 16F627A, 16F628A. La programación estructurada es un importante concepto en el diseño de proyectos. Se entiende como la división del programa principal en módulos o procedimientos que realizan una determinada tarea dentro del programa. La principal ventaja de la programación estructurada y modular por macros versus los lenguajes de programación de alto nivel convencionales (PIC Basic, Microbasic, compilador C, etc) radica en el control automático de interrupciones de periféricos externos e internos.

1. Simplifica el tiempo de desarrollo de cada parte del algoritmo por separado, permitiendo concentrar la atención en los detalles de la aplicación. 2. Produce códigos más fiables, fáciles de entender, documentar y modificar. 3. Control automático de interrupción de alta y baja prioridad lo cual potencializa las prestaciones del microcontrolador al poder atender simultáneos procesos y/o periféricos de hardware. 4. Proporciona al programador acceso al código fuente de las macros, librerías y subrutinas de assembler, lo cual ofrece la posibilidad de crear, editar o mejorar las funciones o macros existentes de LPM2.

LOADER CODE (léase louder coud) (Cargador de código) : Es un hardware compuesto por muy pocos

dispositivos electrónicos (JDM por ejemplo) que se conecta por el puerto paralelo, USB o serial y que descarga el código de máquina desde la PC hacia la memoria de programa del microcontrolador.

BOOTLOADER (léase but louder) (Cargador De Arranque): Es un hardware que se conecta al puerto

serial y que permite cargar el código de máquina desde una PC hacia la memoria del µC, la diferencia con un cargador de código convencional (JDM por ejemplo) es que la carga de datos se lleva a cabo por el puerto USART del µC (Tx y Rx) y no por los pines convencionales. Esto ofrece la ventaja de no tener necesidad de retirar el µC del circuito al cual está conectado (reprogramación In Circuit). Para que un BOOTLOADER pueda funcionar se requiere cargar un pequeño código previamente en la memoria de programa del PIC mediante el JDM por ejemplo. Esta opción la tiene la familia gama alta de microchip.

Page 46: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

46 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

CONCEPTOS DE PROGRAMACIÓN ESTRUCTURADA La programación estructurada es un importante concepto en el diseño de proyectos. Se entiende como la división del programa principal en módulos o procedimientos que realizan una determinada tarea dentro del programa y que se ejecutan secuencialmente, de forma preferentemente lineal y con una cantidad mínima de saltos entre ellos. La principal ventaja de la programación estructurada es: 1. Simplifica el tiempo de desarrollo de cada parte del algoritmo por separado, permitiendo concentrar la atención en los detalles de la aplicación. 2. Produce códigos más fiables, fáciles de entender, documentar y modificar.

MACRO DE ASSEMBLER: Son una potente herramienta de ensamblador que facilita la elaboración de programas. Una macro consiste en una serie de instrucciones y directivas que se agrupan en una sola orden mayor de forma que se comporta como una única instrucción cuando es invocada. Suele utilizarse para automatizar el uso de grupos de instrucciones usadas con frecuencia. Las macros pueden aceptar argumentos, lo que las hace muy flexibles. Antes de que una macro pueda ser invocada en una línea del programa fuente como si se tratase de una instrucción, debe ser definida por el diseñador con una respectiva sintaxis.

Una diferencia sustancial entre una macro y una subrutina o función, es que la macro al ser invocada “pega” en la memoria de programa el bloque de código que la conforma. Esto suele representar una desventaja con respecto a una subrutina en el sentido que las macros consumen mayor memoria de programa.

ARGUMENTOS O PARAMETROS: Los Argumentos de una macro son los parámetros o datos de entrada que requiere dicha macro para procesar una función específica.

DECLARACION DE UNA MACRO

SUMFF MACRO ARG1, ARG2 MOVF ARG1,W ADDWF ARG2,W ENDM En el ejemplo anterior el nombre de la Macro es “SUMFF”, en realidad es cualquier etiqueta que quiera el programador, los argumentos son llamados ARG1, ARG2. La directiva MACRO Y ENDM definen el inicio y final de la Macro. Para este ejemplo en particular la macro SUMFF exige dos parámetros o argumentos de entrada los cuales deben ser dos variables (esto se deduce por el resto de instrucciones dentro de la macro).

SUBRUTINAS O PROCEDIMIENTO: Algunas veces el mismo grupo de instrucciones es ejecutado en diferentes partes de un programa, para optimizar el tamaño de código generado en la memoria de programa, se recomienda agrupar dichas instrucciones en un formato llamado Subrutina o Procedimiento, de la siguiente manera:

CLEAR_PORTS CLRF PORTA CLRF PORTB CLRF PORTC CLRF PORTD CLRF PORTE RETURN Cada vez que en el programa se requiera limpiar los puertos (ponerlos en cero) sólamente se invoca la etiqueta de la subrutina mediante la instrucción CALL, ejemplo: CALL CLEAR_PORTS. Usualmente las subrutinas más requeridas se guardan en una librería. Las subrutinas de assembler no aceptan parámetros de entrada. Cuando una subrutina de assembler es invocada el valor del puntero de programa es guardado en la pila y el nuevo valor

Page 47: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

47 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

del puntero de programa es la dirección de la etiqueta de la subrutina. Cuando el puntero de programa encuentra la instrucción RETURN entonces saca de la pila el último valor guardado y actualiza el puntero de programa de manera que la próxima instrucción a ejecutar corresponderá al siguiente renglón de la instrucción de llamada (CALL o evento de interrupción).

SUBRUTINAS ANIDADAS: Cuando una subrutina llama a otra subrutina se produce la situación conocida como anidamiento de subrutinas, es decir, emplear la instrucción CALL repetidas veces sin que intervenga la instrucción RETURN. El nivel de anidamiento (número de anidamiento de subrutinas permitido) de cada microcontrolador se denomina level stack ó niveles de pila y varía dependiendo de la gama, por ejemplo para la gama baja es de 2 niveles, la gama media (16F84A, 16F877, etc) es de 8 niveles, para la gama alta es de 31 niveles.

FUNCIÓN: Es una subrutina que recibe (parámetros o argumentos de entrada) y devuelve (parámetros o

argumentos de salida), por ejemplo, una función llamada DIVISION podría recibir dos parámetros (dividendo y divisor) y puede devolver dos parámetros (cociente y residuo). Las macros son una especie de función, la diferencia es que las macros de assembler sólo aceptan parámetros de entrada. El lenguaje assembler para microcontroladores no tiene implementado el concepto de función.

INSTRUCCIÓN, COMANDO O NMEMÓNICO: Es una palabra reservada (no puede cambiarse) que implica

una orden dada al microcontrolador en un lenguaje determinado, por ejemplo, en programación C una instrucción o comando puede ser FOR, IF, WHILE, etc, en programación Assembler una instrucción o comando es MOVF, BCF, RETURN, CALL, etc.

ETIQUETA (LABEL): Es una expresión compuesta por una palabra alfanumérica que designa a una

subrutina o a un renglón del programa, dicha palabra es escogida por el diseñador y usualmente su significado está relacionado con la función de la subrutina o sección de código donde se encuentra. En LPM2

las etiquetas son de color rojo carmesí y siempre están el la primera columna del editor.

VARIABLE (GPR): (GENERAL PURPOSE REGISTER) (REGISTRO DE PROPOSITO GENERAL) Es un lugar de la memoria RAM de dato del microcontrolador en la cual pueden leerse o escribirse datos del programa de usuario. Antes de poder usar una variable es menester declararla previamente. Considerando que el PIC 18F452 tiene 1536 byte de memoria RAM de datos, entonces se pueden declarar hasta 1536 variables tipo byte (0 a 255) o 768 variables tipo Word (0 a 65535). Dependiendo del lenguaje de programación existen diversos tipos o formatos de variables: (FLOAT, INTEGER, LONG, DOUBLE, SINGLE, STRING, CHAR, BOOLEANA, BYTE, WORD, DOUBLE WORD, VARIANT, DATE, etc).

REGISTRO (FILE) (SFR) (SPECIAL FUNCTION REGISTER) (REGISTRO DE PROPOSITO ESPECIAL):

Técnicamente un registro es una variable, no obstante, suele emplearse el término registro para aludir a las posiciones de memoria RAM reservadas (uso específico) del microcontrolador. Por ejemplo, el PUERTO B del PIC puede verse como una variable en el sentido que puede leerse o escribirse en él, no obstante, es más apropiado considerarlo como un registro de propósito especial (SFR).

CONSTANTE: Es una expresión que no cambia su valor en todo el código fuente de un programa. Puede

tener tantos formatos como las variables.

CONTADOR (COUNTER): Es una variable declarada por el usuario que contabiliza uno ó más eventos de un programa. Por ejemplo si se está diseñando una alarma y se desea que la sirena se active por 30 segundos y luego se apague, será necesario disponer de una variable (COUNTER) que inicie su cuenta en cero (Reset Counter) y que cada segundo (por interrupción del timer por ejemplo) incremente en uno su valor de tal forma que al compararse con el número 30 se ejecute la acción deseada.

Page 48: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

48 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

LIBRERÍA DE SUBRUTINAS: Es frecuente necesitar más de una subrutina en los programas. También es habitual que algunas subrutinas se utilicen en varios programas. En estos casos es conveniente disponer de bibliotecas (library) de subrutinas denominadas librerías. El programa ensamblador de microchip MPASM dispone de una directiva denominada INCLUDE que realiza esta función pegando el archivo de referencia en el programa. Dicho archivo se inserta en el código durante el proceso de ensamblado. Ejemplo: #INCLUDE librerías.inc

SINTAXIS DE PROGRAMACIÓN: Alude al orden de las palabras (comandos, instrucciones, argumentos,

etiquetas, subrutinas, funciones) en un lenguaje de programación.

DIRECTIVA DE ASSEMBLER: Es una palabra reservada interpretada por el compilador MPASM de microchip. Las directivas no generan código de máquina, por lo tanto, no ocuparán espacio en la memoria de dato o programa del µC. Algunas directivas son:

INCLUDE archivo.inc : Incluye una librería al código general del programa. DT “OSCAR” : Representa una lista de datos en una tabla ERROR “Advertencia de desbordamiento” : Genera un mensaje de error en el compilador. IF A=0 : Compilado condicional ….. ….. ENDIF MESSG “Mensaje” : Genera un mensaje en el compilador CBLOCK 10 : Declaración de variables ENDC ORG 4 : Origen de vector de interrupción END : Fin del programa

TECNICA POLLING (SONDEO DE ENTRADAS): Es un método poco eficiente de verificar el estado de una entrada digital del microcontrolador mediante un ciclo infinito de testeo por programa, es decir, para saber si se ha presionado un interruptor conectado a tierra en PTA0 el código por técnica polling sería:

LABEL1 BTFSC PORTA,0

GOTO LABEL1 . . . EJECUTAR ALGUNA FUNCION SI SE PRESIONA EL PULSAOR EN PTA0

La principal desventaja de esta técnica es el alto consumo en los recursos del microcontrolador, pues entre más entradas se requiera testear, más ocupado estará el µC, dicho tiempo podría ser requerido para otras aplicaciones, tales como procesamiento, operaciones aritméticas, entradas análogas, etc. En conclusión, no es una buena técnica de programación, lo ideal es que las entradas de un microcontrolador se verifiquen mediante interrupciones programadas.

Page 49: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

49 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

INTERRUPCIONES (INT) INTERNAS Y EXTERNAS: Una interrupción es un mecanismo mediante el cual un

evento interno (fin de conversión análogo digital, envío de un dato USART, fin de escritura en EEPROM, desbordamiento de un Timer) o externo (presión de un pulsador en entrada digital del puerto PTB0, PTB1, PTB2, PTB4, PTB5, PTB6, PTB7, nótese que PTB3 no genera interrupción, un teclado matricial conectado al puerto B, un teclado de computador, UN SENSOR IR, etc) puede interrumpir la ejecución de un programa principal (Main Program) en cualquier momento. A partir de entonces se produce automáticamente un salto a una subrutina de atención a la interrupción también conocida como VECTOR DE INTERRUPCIONES, el cual puede ser de alta o baja prioridad (High or Low priority). Cuando el puntero de programa (pointer program) salta al vector de interrupción (vector número 8 para high priority o vector número 24 para low priority) atiende el conjunto de instrucciones escritas a partir del vector de interrupción, cuando encuentra la instrucción RETFIE (retorno de interrupción) sale de la subrutina de interrupción y continua con la instrucción del programa principal que estaba ejecutando en el momento que se presentó la interrupción. La interrupción tiene la característica de la inmediatez, nace de la necesidad de ejecutar una subrutina en el instante preciso y, por tanto, se considera su intervención urgente. Este método es más eficaz que la Técnica Polling dado que el µC no perderá tiempo preguntando al pin de entrada para saber el estado, sino que únicamente atenderá al periférico (cualquier dispositivo externo que se pueda conectar al PIC, por ejemplo un pulsador, teclado, sensor, bumpers, etc) cuando éste se lo pida mediante una solicitud de interrupción. Las interrupciones constituyen el mecanismo más óptimo para la conexión del PIC con el exterior ya que sincroniza la ejecución de programas con los acontecimientos externos. Esto es muy útil, para el manejo de dispositivos de entrada que requieran una atención inmediata, tales como detección de pulsos externos en un sensor infrarrojo (IR) o un receptor de datos seriales por radiofrecuencia (RF), detección de pulsadores, teclados de computadora, teclados matricial, sensores magnéticos de puertas y ventanas, bumpers en robótica, etc. El funcionamiento de las interrupciones es similar al de una subrutina invocada por la instrucción CALL, salvo que las interrupciones no son invocadas por una línea de código sino por un evento externo o interno al µC. Indudablemente una de las principales ventajas de atender un periférico de entrada mediante interrupciones y no por técnica polling es la posibilidad de activar el modo Sleep (Dormir) o Stand By del µC para la función Power Saving o ahorro de energía, mediante el cual el PIC consume menos de 0.2uA (<200nA) en la gama alta.

INTERRUPCIONES VECTORIZADAS: Algunos µC (Motorola por ejemplo) poseen un Gestor de

interrupciones vectorizadas, es decir, cada interrupción tiene una dirección única o vector independiente, esto representa una ventaja en el programa pues facilita el control y detección de las interrupciones. La familia microchip gama media y alta no dispone de esta opción, por el contrario, para detectar una interrupción es menester verificar (check) cada una de las banderas implicadas en dicha interrupción, este proceso puede ser poco eficiente (tarda más tiempo en detectar la interrupción) para algunas aplicaciones con periféricos high speed (alta velocidad).

PRIORIDAD DE INTERRUPCIONES (High or Low Priority) (léase jai or lou praióriri): Es un recurso de la

gama alta de microchip mediante el cual por software se pueden “priorizar” los eventos o interrupciones internas o externas de un µC. Un ejemplo podría ser un botón de parada de emergencia (Hongo de Seguridad) en un proceso industrial automatizado. Al presionar dicho pulsador el µC debe “obedecer inmediatamente” esta orden y detener el proceso. En el código de esta aplicación se debe configurar al pulsador como (High priority) y al resto de periféricos de entrada como (Low priority).

MAIN PROGRAM (PROGRAMA PRINCIPAL, léase mein program): Es una sección del código fuente que se

caracteriza por no atender peticiones de interrupción, en esta parte del código fuente reposa el puntero de programa (pointer program) mientras no se reporte un evento de interrupción interno o externo. Cuando se emplea la técnica Polling usualmente es en main program donde se realiza el testeo cíclico de entradas.

Page 50: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

50 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

BANCOS DE MEMORIA (MEMORY BANK): La gama alta de microchip 18FXX2 puede tener hasta 6 bancos de memoria (0 to 7), cada banco contiene 256 registros o variables de 8 bit. El usuario puede acceder a dichos registros o variables mediante el registro especial BSR (Register Selec Bank).

SET DE INSTRUCCIONES DE LA FAMILIA 18FXXXX (INSTRUCTIONS SET) La familia 18FXXXX consta de 75 instrucciones (la gama media sólo tiene 35). Todas las instrucciones consumen 2 bytes de memoria (un renglón de los 16384 disponibles) excepto GOTO, CALL, MOVFF, LFSR que consumen 4 bytes (2 renglones). Todas las instrucciones emplean un ciclo de máquina, excepto las instrucciones ramificadas (branches instructions) que emplean 2 CM.

CICLO DE MAQUINA: El tiempo que tarda en ejecutarse un programa depende de la frecuencia del oscilador conectado al µC y del número de ciclos de máquina ejecutados. Un ciclo de máquina es la unidad básica de tiempo del µC. Para los PIC un ciclo de máquina equivale a 4 ciclos del cristal oscilador, es decir, para un cristal de 20MHz el tiempo de un ciclo de máquina será 4/20MHz = 200nS. En efecto, el PIC tarda 1 CM en ejecutar cualquier instrucción (renglón de programa) excepto para aquellas instrucciones ramificadas (Branches instructions) que consume 2 CM tales como: GOTO, BRA, CALL, BTFSS, BTFSC, RETURN, RETFIE, etc. Cada instrucción de un µC PIC consume 4 ciclos de reloj, es decir, con un cristal de 40 MHz el PIC ejecutará hasta 10 MIPS (millones de instrucciones por segundo). Esta factor de división (entre 4 para los PIC) varía dependiendo de la arquitectura empleada, por ejemplo existen µC (Motorola, Intel) que consumen hasta 8 ó más ciclos de reloj por cada instrucción.

MIPS: Millones de instrucciones por segundo. Es el número de instrucciones que ejecuta el PIC en un

segundo expresando en millones. Por ejmplo un PIC con critala de 20MHz opera a 5 MIPS. TIPOS DE DATOS SEGÚN LA LONGITUD BIT : 1 BIT : 1/0 NIBBLE : 4 BIT : 0 A 15 EN DECIMAL BASE 10 ASCII : 8 BIT : 0 A 255 EN DECIMAL BASE 10 BYTE : 8 BIT : 2 NIBBLE : 0 A 255 EN DECIMAL BASE 10 WORD : 16 BIT : 4 NIBBLE : 2 BYTE : 0 A 65535 EN DECIMAL BASE 19 DOUBLE WORD : 32 BIT : 8 NIBBLE : 2 BYTE: 2 WORD : 0 A 4.294’967.296 EN DECIMAL

Page 51: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

51 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

FORMATO DE DATOS ADMITIDOS EN ASSEMBLER Y LPM² DECIMAL : 65 = .65 = D'65' HEXADECIMAL : H'41' = 0x41 OCTAL : O'101' BINARIO : B'10000001' ASCII : "A" Nota: por defecto el editor esta configurado en modo decimal, es decir, cualquier número o constante es interpretado en base 10, por ej: si el usuario escribe MOVLF 32,VAR1 se interpretará como el número 32 en base 10 y no h'20' en hexadecimal.

MEMORIAS DE UN MICROCONTROLADOR PIC MEMORIA ROM: (MEMORIA DE SOLO LECTURA) Esta memoria no es programada por el usuario, viene

lista de fábrica y contiene la identificación (ID) o referencia del uC, los datos e instrucciones básicas del microcontrolador, podría compararse con el BIOS SETUP de una computadora personal (PC).

MEMORIA DE PROGRAMA EEPROM FLASH (MEMORIA DE INSTRUCCIONES) LA FAMILIA 18FXXXX DISPONE MÁXIMO DE (32768 DIRECCIONES x 8 BIT DE DATOS) ES DECIR: (32KBYTE = 1KWORD = 512DWORD) En esta memoria se cargan las instrucciones o renglones de todo el programa. La Memoria de programa de la gama alta puede llegar hasta 32KBytes = 16KWord, considerando que cada instrucción es de 16 bit (2 bytes) sólo se dispone de 16384 renglones de programa. Es decir, cada instrucción (de las 75 disponibles) consume 2 bytes, excepto GOTO, CALL, MOVFF, LFSR que consumen 4 bytes. La memoria Flash EEPROM es una mejora con respecto a su predecesora EEPROM, representa mayor velocidad en los ciclos lectura/escritura, es decir, menor tiempo de acceso para leer o escribir un dato. Soporta hasta 100.000 ciclos de erase/write (borrado escritura) , es decir, se pueden cargar hasta 100.000 programas diferentes mediante el hardware cargador de código.

MEMORIA DE DATO EEPROM : LA FAMILIA 18FXXXX DISPONE MÁXIMO DE (256 DIRECCIONES X 8 BIT DE DATOS) ES DECIR: (256 BYTES) Cuando se guarda un dato en una memoria RAM-S (Memory Access Random Static) y se retira la ailmentación del circuito este dato se pierde automáticamente, esto puede representar un serio problema en diversas aplicaciones, por ejemplo al guardar una clave de seguridad. Como solución a este inconveniente, los PIC’s disponen de una memoria EEPROM de dato (independiente de la memoria EEPROM FLASH de programa) de 256 bytes (para la familia 16F87X, 18FXXXX, el 16F84 sólo tiene 64 bytes de EEPROM de dato). La principal desventaja de este tipo de memoria es su relativa baja velocidad (en comparación con la memoria RAM-S), dificultad a nivel de programación para leer o escribir un dato y el número finito de ciclos erase/write (borrado/escritura) que usualmente es 1’000.000 para la familia gama alta de microchip. Las memorias EEPROM de dato del PIC suelen tener un período de retención garantizado por microchip mayor a 40 años.

MEMORIA DE DATO RAM-S PARA USUARIO, (REGISTROS DE PROPOSITO GENERAL GPR) LA FAMILIA 18FXX2 DISPONE MÁXIMO DE (1536 DIRECCIONES x 8 BIT DE DATOS EN 6 BANCOS)

Son los registros o variables tipo byte (0 to 255) que tiene disponible el µC para el programa del usuario. El PIC 18F452 por ejemplo dispone de 1536 variables tipo byte distribuidas en 6 bancos. El PIC 18F4455 dispone de 2048 variables tipo byte disponibles en 8 bancos. El PIC 16F877A dispone de 368 variables tipo byte distribuidas en 4 bancos. El PIC 16F84A dispone de 68 variables tipo byte en 1 banco. El PIC 16F62XA dispone de 224 variables tipo byte en 3 bancos. La principal ventaja de la memoria RAM de datos versus la memoria EEPROM de dato es su alta velocidad y facilidad de acceso en programación. Su principal desventaja es su volátilidad (no conserva los datos después de un reset o el retiro de alimentación del circuito).

MEMORIA DE DATO RAM-S PARA CONFIGURACION INTERNA DEL MICROCONTROLADOR (REGISTROS DE FUNCION ESPECIAL SFR):

LA FAMILIA 18F452 DISPONE MÁXIMO DE (256 DIRECCIONES x 8 BIT DE DATOS EN 1 BANCO Son registros o variables de 8 bit de uso privativo del µC, en estos registros se guarda información del estado

Page 52: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 CCOONNCCEEPPTTOOSS DDEE PPRROOGGRRAAMMAACCIIÓÓNN EESSTTRRUUCCTTUURRAADDAA

52 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

(registro STATUS, INTCON, ETC por ejemplo) y funcionamiento integral del µC. El usuario no debería guardar sus datos en estas variables pues alteraría la configuración de alguna función específica.

MEMORIA DE PILA RAM-S: (STACK MEMORY) LA FAMILIA 18F DISPONE MAXIMO DE (31 DIRECCIONES x 21 BIT DE DATOS) LA FAMILIA 16F DISPONE MAXIMO DE (8 DIRECCIONES x 16 BIT DE DATOS) La pila (Stack) es una zona de memoria RAM independiente de la memoria de datos y de la memoria de programa del µC. Su estructura es del tipo LIFO (Last In First Out) por lo que el último dato que se guarda es el primero que sale. La pila se carga con cada instrucción CALL o con la generación de una interrupción, se descarga con cada instrucción RETURN o RETFIE. Cuando el diseñador realiza más de 31 llamados de subrutina (CALL) sin regresar (sin uso del RETURN) el puntero de pila (STACK POINTER) se desborda y se presenta el fenómeno denominado OVERFLOW STACK (desbordamiento de pila), lo cual es un error de programación pues el puntero de programa (Pointer Program) salta a un lugar inesperado. Lo deseable en un µC es que disponga de una gran memoria de pila independiente de la memoria de datos.

Page 53: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

53 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

GLOSARIO TÉCNICO DE ELECTRÓNICA DIGITAL 10BaseT: Conocido como IEEE802.3 permite una velocidad máxima de 10Mbps, su distancia máxima

entre nodos es 100mt. El surgimiento de tarjetas NIC más eficientes han suplantado el uso de 10BaseT en favor de 100BaseTX-100BaseT4.

100BaseTX : También conocido como FastEthernet-especificación IEEE 802.3u. 100TX solo utiliza 2 de los 4 pares del cableado , su distancia máxima es 100 mt. El cableado de categoría 5 es el mínimo requerido para 100TX, su velocidad máxima es de 100Mbps (si se utiliza full-duplex esta puede ser 200Mbps).

100BaseT4 : Permite la tecnología de Fast Ethernet sobre cableado de categoría 3 y 4. Utiliza los 4 pares de alambre y altera el funcionamiento nativo de CSMA/CD en Ethernet; sin embargo el uso de los 4 pares de cable elimina la posibilidad de instalar transmisión full-duplex. Este método es utilizado exclusivamente cuando ya se tiene cableado categoría 3.

100FX : Es la especificación para correr Fast Ethernet sobre fibra óptica. 100BaseVG-AnyLAN : 100Base(Voice-Grade)-Any LAN es la especificacion IEEE802.12 que permite la

transmisión de 100 Mbps sobre cableado Tipo 3.Es capaz de ejecutar tecnologías Token Ring y Ethernet. Sin embargo como es una implementación que no es estándar ("proprietary") y no ofrece ningún beneficio sobre una instalación 100BaseTx, generalmente se opta por 100BaseTx en vez de 100BaseVG.

3GSM: GLOBAL SYSTEM MOVIL DE 3 GENERACION ALGORITMO DE RESOLUCIÓN DE UN PROGRAMA: Es la especificación paso a paso de la solución de

un programa mediante un diagrama de flujo (flow chart) por ejemplo. ALGORITMOS EMPOTRADO (EMBEBIDOS): Son códigos fuentes embebidas o inmersas en una

memoria de un chip como un FPGA, µC, DSP y controladas plenamente sin la intervención de un PC externo.

ALTAIR (PRIMER COMPUTADOR BASADO EN MICROPROCESADOR 8080 DE INTEL) ALU (UNIDAD ARITMÉTICA LÓGICA): Circuito que realiza las operaciones matemáticas en un

microprocesador. AMD: ADVANCED MICRO DEVICES: MICRODISPOSITIVOS AVANZADOS: Empresa diseñadora de

microprocesadores para PC (ATLON) por ejemplo. AMETRALLAMIENTO (BURST). ANSI: INSTITUTO NACIONAL DE ESTANDARES AMERICANOS ANTIVIRUS: Software que detecta, corrige o elimina programas o archivos infectados con virus

informáticos (troyanos por ejemplo). API DE WINDOWS (Applications Program Interface) de Windows: es una función o subrutina que se de

declara en una DLL, mediante esta técnica es posible tener acceso al control y configuración de todas las opciones internas del sistema operativo Windows, desde apagar el computador, configurar la tarjeta de sonido, leer y escribir en el reloj del sistema.

ASIC: Application Specific Integrated Circuit ATM BASE COMUN: Configuración de transistores bipolares. BASIC: (BEGINNER’S ALLPURPOSE SYMBOLIC INSTRUCTION CODE) (CÓDIGO DE INTRUCCIÓN

SIMBÓLICO MULTIPROPÓSITO PARA PRINCIPIANTES) BAUDIO: Unidad de medida de velocidad de transferencia de datos por el puerto serial RS232 equivalente

a bit por segundo. El nombre Baudio se debe a J. M. E. Baudot, el impulsor del tetetipo (TTY). Se define baudio como los cambios de estado que se producen en una línea de transmisión por segundo. Mientras que bits por segundo, son los bits que pasan por una línea de transmisión por segundo. Hay que tener en cuenta que al hablar de baudios y de bits no existe ninguna diferencia si no hay más de dos estados. Es decir, los bits únicamente pueden ser ‘1’ ó ‘0’, mientras que si se habla de baudios puede haber más de dos estados ya que no se trata de un sistema binario

BIT: UNIDAD BÁSICA DE INFORMACIÓN DIGITAL (1/0) BJT: (BIPOLAR JUNCTION TRANSISTOR) (TRANSISTOR BIPOLAR)

Page 54: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

54 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

BLUETOOTH: Es la norma que define un Estándar global de comunicación inalámbrica, que posibilita la transmisión de voz y datos entre diferentes equipos mediante un enlace por radiofrecuencia. Los principales objetivos que se pretende conseguir con esta norma son: 1. Facilitar las comunicaciones entre equipos móviles y fijos, 2. Eliminar cables y conectores entre éstos, 3. Ofrecer la posibilidad de crear pequeñas redes inalámbricas y facilitar la sincronización de datos entre nuestros equipos personales.

bps: bit per seconds: Unidad de medida de velocidad de transferencia de datos Bps: Byte per seconds: Unidad de medida de velocidad de transferencia de datos BREAK:.(LÉASE BREIK) CORTE BUFFER (1): (léase bafer) (Separadores): En electrónica es un dispositivo que evita el efecto de carga en

un circuito. Pueden ser inversores o no inversores. Es un amplificador de corriente, por ejemplo ULN2803, ULN2003, cd4049

BUFFER (2): (léase bafer) En informática, un buffer es una ubicación de la memoria en una computadora o en un instrumento digital reservada para el almacenamiento temporal de información digital, mientras que está esperando ser procesada. Por ejemplo, un analizador TRF tendrá uno o varios buffer de entrada, donde se guardan las palabras digitales que representan las muestras de la señal de entrada. Memoria temporal para guardar datos en un protocolo de transmisión (Buffer de entrada, salida)

BUGS (BICHOS) PEQUEÑOS ANIMALITOS DE UN HARDWARE O SOFTWARE. Se cree que el término se origina de las mariposas o bichos que acudían por la luz despedida por los tubos al vacío de la ENIAC.

BUMPER (léase bamper): Es un sensor mecánico terminal de carrera CAD (1): (CONVERTER ANALOG/DIGITAL) CAD (2): (COMPUTER ASISTED DESIGNE) : Diseño asistido por computador (Auto CAD, OrCAD) CCITT CDMA: ACCESO POR MULTIPLEXACION DE DIVISION DE CODIGO CENTRONICS: Interfaz del puerto paralelo CICLO UTIL (DUTY CYCLE) (Léase Dari saicol). Se expresa como un porcentaje (%) y se define como la

relación entre el ancho del pulso en alto y el período T. Se evalúa con la siguiente fórmula:

% CU = D = (Ancho del pulso (seg) / Periodo (T)) x 100 D = T High/T x 100 %

A MENOR ANCHO DEL PULSO, MENOR ES EL CICLO ÚTIL Y VICEVERSA

CIM (Computer Integrated Manufacturing). CIRCUITO ELECTRÓNICO COMBINACIONAL: Circuito digital compuesto de compuertas lógicas. CIRCUITO ELECTRÓNICO PROGRAMABLE: El diseñador puede modificar (programar) la lógica de

funcionamiento. CIRCUITO ELECTRÓNICO SECUENCIAL: Circuito digital compuesto de FLIPFLOP, Counters

(Contadores), Shift Registers (Registros de desplazamiento), suelen incluir una señal de reloj. CIRCUITO INTEGRADO (CI): Es aquel en el cual todos los componentes, incluyendo transistores, diodos,

resistencias, condensadores y alambres de conexión, se fabrican e interconectan completamente sobre un chip o pastilla semiconductora de silicio. Se encapsulan en plástico o cerámica (soportan mayor temperatura) y en el cuerpo suelen traer la fecha de fabricación, por ejemplo: 8307 significa la séptima semana de 1983.

CLOCK CK (RELOJ): En electrónica digital una señal de reloj es una señal cíclica (periódica) y de forma rectangular o cuadrada (duty cycle al 50%) que se aplica a la entrada de un circuito electrónico digital

CMOS (COMPLEMENTARY METAL OXIDE SEMICONDUCTOR) SEMICONDUCTORES COMPLEMENTARIOS DE OXIDO METALICO: Técnica de fabricación de transistores y circuitos integrados opuesto a la tecnología con transistores bipolares (TTL, RTL, DTL). CMOS es la familia mos más conocida, con esta tecnología se fabrican los µC microchip PIC. La tendencia tecnológica en fabricación de CI indica que la tecnología MOS poco a poco irá desplazando la tecnología bipolar como TTL.

Page 55: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

55 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

CMRR (Relación de rechazo al modo común) CODIFICACION MANCHESTER: En la industria se utiliza esta codificación más efectiva, de característica

sincrónica, permitiendo una sincronización entre el emisor y el receptor. En este código el periodo de un bit se divide en dos subintervalos iguales el valor lógico de un bit queda definido por el sentido de la transición entre el primer y el segundo subintervalo. Así un bit de valor 0 tendrá un primer subintervalo de valor bajo y un segundo subintervalo de valor alto, mientras que con un bit de valor 1 ocurrirá exactamente lo contrario.

CODIFICACIÓN: Es necesario establecer alguna forma de ordenar los dígitos binarios o bytes que se

utilizan para representan la información de los procesos y puedan ser transmitidos con seguridad y velocidad sobre la línea. Un modelo de codificación de amplia difusión en informática es el ASCII. Sobre la base de estos códigos se ha implementado el sistema de comunicación digital, de característica sincrónica, incluyendo el comienzo y fin de cada carácter que se transmite y cierto control de error a partir del concepto de bit de paridad

CODIGO BINARIO (BASE 2) 1,0: Es el alfabeto de los sistemas digitales, la base del lenguaje al que se traduce toda la información en un computador o uP.

CODIGO FUENTE: Es el código de programa en lenguaje de bajo o alto nivel para una aplicación microcontrolada.

COLECTOR COMUN: Configuración de transistor bipolar en la cual la tensión de colector es igual a la tensión de base menos la caída en el diodo base emisor (Vc = Vb-0.7). Se comporta como un buffer amplificador de corriente y ganancia de voltaje unitaria. Muy práctica como excitador final de un control de motor DC por PWM.

COMPUERTAS SCHMITT TRIGGER (ST INPUT) (GATE SCHMITT TRIGGER) (léase esmit triguer): Una compuerta schmitt trigger son dispositivos que se utilizan para convertir señales imperfectas, lentas o con ruidos en señales digitales bien definidas. Realizan las mismas funciones lógicas de una compuerta convencional pero poseen ciertas características especiales. Gracias a una propiedad llamada histéresis las compuertas schmitt trigger son inmunes al ruido y pueden trabajar con señales digitales con niveles de voltaje no ideales o en la banda prohibida. Algunos pines del PIC configurados como entrada tienen la función de schmitt trigger (RA4, RB0, RB1, RB2, RB3, RB5, RB6, RB7 y otros).

CONTROLADOR(1): Es un circuito electrónico que controla una aplicación específica. CONTROLADOR(2): Driver o archivo informático que configura un hardware de la PC. Por ejemplo un

controlador para la tarjeta de sonido o vídeo. CORRIENTE DE FUGAS (I LEAKAGE) CPU (UNIDAD CENTRAL DE PROCESAMIENTO): Es el procesador de un microprocesador. CRACK: Aplicación o programa informático que genera un código, clave o licencia para convertir

Page 56: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

56 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

ilícitamente un programa tipo shareware en una versión legal con todas sus opciones. CRACKER: Dícese de la persona que diseña los crack. CRISTAL DE CUARZO: Dispositivo electrónico que oscila a una frecuencia determinada con una debida

polarización, suele emplearse para generar la señal de reloj (velocidad de ejecución del programa) de un microcontrolador o un circuito secuencial.

CRITERIOS DE SELECCIÓN DE UN CIRCUITO INTEGRADO: En la selección de una familia o tecnología de un CI, deben considerarse los siguientes aspectos:

1. INMUNIDAD A DESCARGAS ELECTROSTATICAS (ESD) DE UN CI: La tecnología CMOS es menos

inmune que la familia TTL. Lo microcontroladores y la serie B de CI CMOS (40XXB, 45XXB) trae protección contra ESD mediante un diodo zener en paralelo con las entradas, esto minimiza notablemente la vulnerabilidad a descargas electrostáticas pero disminuye la impedancia de entrada lo cual no es ventajoso.

2. INMUNIDAD AL RUIDO ELECTROMAGNETICO (EMI) DE UN CI: Mide la sensibilidad de un circuito al

ruido electromagnético ambiental. Es importante en aplicaciones que deben operar en ambientes ruidosos como automóviles, máquinas, circuitos de control industrial, etc. La tecnología CMOS es más inmune que la TTL, lo cual convierte a los µC en una buena opción a la hora de un control industrial.

3. CONSUMO DE POTENCIA (POWER) DE UN CI: Cantidad de corriente o potencia (voltaje x corriente) que

consume un circuito en operación. Importante en el diseño de aplicaciones portátiles alimentadas a batería. La tecnología CMOS consume menos potencia que la tecnología TTL. Un circuito integrado CMOs en reposo consume alrededor de 10nW.

4. CONFIABILIDAD DE UN CI: Mide el período útil de servicio de un circuito, es decir, cuánto tiempo se espera

que trabaje sin fallar.

5. VELOCIDAD (SPEEED) DE UN CI: Mide la rapidez de respuesta de un Circuito ante cualquier cambio en sus entradas. Importante en aplicaciones de alta frecuencia como algoritmos matemáticos, procesamiento de señales de audio y vídeo. La tecnología bipolar (TTL, ECL) suele ser más veloz que la tecnología CMOS. La familia TTL suele operar en el orden de los 20 a 80 MHz mientras que los CMOS 40XXB opera alrededor de 10 MHz.

6. TIEMPO DE PROPAGACION DE UN CI: Es el tiempo que toma un cambio lógico en la entrada en propagarse a través de un dispositivo y producir un cambio lógico en la salida.

CSMA/CD: Carrier Sense Multiple Access /Collision Detection CTDMA: Concurrent Time Domain, Multiple Access. DAC: (DIGITAL ANALOG/CONVERTER) DATA SHEET: (HOJA DE DATOS) Es un documento que contiene todas las especificaciones de un

producto, por ejemplo el manual de uso de un µC proporcionado por la empresa microchip, usualmente se encuentra en formato PDF.

DCE: Equipos Terminal de Circuito de Datos DDE: El intercambio de datos dinámico (DDE) es un protocolo de comunicación desarrollado por Microsoft

para permitir usos en Windows de los datos send/receive y las instrucciones to/from. Pone una relación del servidor en ejecución de cliente entre dos usos concurrentemente de funcionamiento. El uso del servidor proporciona los datos y acepta peticiones de cualquier otro uso interesado en sus datos. Solicitando usos se llaman los clientes. Algunos usos tales como Wonderware InTouch y Microsoft sobresalen pueden simultáneamente ser un cliente y un servidor.

DEMODULAR: DIAC.(DIODO DE CORRIENTE ALTERNA) DIODO: (DISPOSITIVO SEMICONDUCTOR DE 2 TERMINALES ANODO-CATODO) que permite la

circulación de corriente en un solo sentido DIRECCIONALIDAD: Entre dos dispositivos los datos pueden transmitirse en una única dirección

Page 57: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

57 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

(comunicación unilateral o simplex). También pueden transmitirse en dos direcciones, pero en forma simultánea (comunicación bilateral alternada o half dúplex. Finalmente pueden transmitirse en ambas direcciones y simultáneamente (comunicación bilateral simultánea o full dúplex).

DLL (DYNAMIC LINK LIBRARY) (léase dainamic link laibrary): Biblioteca de vínculos dinámicos. Para enviar y recibir datos al puerto paralelo de comunicaciones del computador es necesario disponer de un grupo de instrucciones en lenguaje assembler (ensamblador) los cuales suelen implementarse en una clase especial de archivos compilados denominados dll. Dll es la sigla de ‘biblioteca de vínculos dinámicos’ (dynamic link library). Es un archivo con extensión .dll el cual contiene una o más funciones que son compiladas, vinculadas y cargadas independientes al proceso que la ha invocado. Usualmente se guardan en el directorio Windows/System, de tal forma que el sistema conozca de antemano la ubicación donde buscarla. Mediante el llamado o invocación de una DLL que contenga las funciones que controlan el puerto paralelo, es posible enviar y recibir datos entre un circuito externo y el computador. Para poder invocar o llamar una DLL en una aplicación de Visual Basic es necesario una previa declaración en un módulo del programa, por ejemplo:

DMA: ACCESO DINAMICO DE MEMORIA DOMÓTICA: Es el conjunto de sistemas que automatizan las instalaciones del hogar. Una vivienda será

Domótica si incluye una infraestructura de cableado y los equipos necesarios para disponer de servicios avanzados en la misma; El conjunto de servicios de la vivienda está garantizado por sistemas que realizan varias funciones, las cuales están conectadas entre si mediante redes interiores y exteriores de comunicación, que gracias a ellos se obtiene un notable ahorro de energía, alto grado de comodidad, un nivel de seguridad y una buena comunicación con el interior y/o el exterior de la vivienda.

DRIVER DE COMUNICACIÓN. Es el "traductor" entre el sistema SCADA-MMI y el PLC. El driver de comunicación es un programa de software diferente al del SCADA y hace que el PC y el PLC se "entiendan" a través de la tarjeta de comunicación PC-PLC. Básicamente el programa SCADA crea una base de datos con los parámetros del proceso (TAGS) y el driver es el encargado de leer y escribir estos datos en el PLC. En este caso es sumamente recomendable utilizar tarjetas de comunicación del mismo fabricante que el PLC para evitar problemas de comunicación o evitar el eludir responsabilidades por parte de los fabricantes, ya que según ellos su equipo siempre trabaja perfectamente.

DRIVER(1) (CONTROLADOR) (léase draiver) : Circuito integrado o transistorizado que puede ser utilizado como acoplador o amplificador de corriente. Por ejemplo el ULN2803 para control de motores paso paso unipolar.

DRIVER(2): CONTROLADOR: pequeño programa cuya función es controlar el funcionamiento de un dispositivo del ordenador bajo un determinado sistema operativo. Programa que controla la forma en que se comunica la computadora con un determinado dispositivo, como puede ser una impresora o un Mouse. Por ejemplo, el controlador de impresora traduce la información procedente de la computadora para convertirla en información que pueda entender la impresora.

DTE: Equipo terminal de datos (es el computador o microcontrolador) en una transmisión RS232 DTL: (Lógica de diodo a transistor) Familia lógica bipolar. Técnica de fabricación de circuitos integrados

con transistores bipolares ECL: (Lógica de emisor acoplado) Familia lógica bipolar. Útil en aplicaciones de muy alta frecuencia.

Técnica de fabricación de circuitos integrados con transistores bipolares. EFECTO ALIASING: se produce cuando la frecuencia de muestreo es menor que la de la señal que se muestrea, y se

refiere al hecho de que podemos interpretar de una manera no exacta la señal, apareciendo un "alias" de la señal (de ahí el término).

EIA regula protocolos tales como RS-232, RS-422 o RS-485 ELECTRICIDAD ESTATICA: Está siempre presente en cualquier ambiente de trabajo, se genera cada vez

que se frotan dos materiales diferentes. Cuando caminamos a través de una alfombra en un día seco se pueden generar hasta 35000 voltios (35KV), manipulando una bolsa plástica se generan hasta 20000 voltios (20KV).

ELECTRONICA DIGITAL: Parte de la electrónica que estudia los dispositivos, circuitos y sistemas digitales, binarios o lógicos, sólo se permiten dos niveles de voltaje (cero y uno lógico) (0,1). Puede

Page 58: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

58 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

clasificarse en circuitos combinacionales, secuenciales, programables. EMI (INTERFERENCIA ELECTROMAGNÉTICA): Perturbación o ruido electromagnética indeseable en un

circuito electrónico, ocasionada por motores, bobinas, sistemas de control por conmutación, aparatos eléctricos, líneas de transmisión, descargas atmosféricas, etc.

EMISOR COMUN (EMITTER COMMON) Configuración de transistores bipolares también conocida como inversor o conmutador, se caracteriza por trabajar en régimen de saturación y corte.

ENIAC (ELECTRONIC NUMERIC INTEGRAL AND CALCULATOR) MAIN FRAME: Colosal computadora de mediados de los años 40 del siglo XX. Ocupaba un cuarto con refrigeración especial, 1500 relés y 17000 válvulas de vacío, consumía 150KVA, solo almacenaba 80 caracteres. Para cambiar su programación y un grupo de ingenieros debían reconectar manualmente unos 6000 cables.

ENTRADA FLOTANTE (INPUT FLOAT): Consiste en dejar una entrada de un dispositivo electrónico digital o analógico al aire. Si el circuito integrado digital está construido con tecnología TTL entonces interpretará dicho estado como “1” lógico debido a su baja impedancia de entrada. Si el CI es tecnología CMOS (por ejemplo el PIC, CI 40XX, 45XXX, etc) entonces interpretará dicho estado como ruido (estado no definido 1 ó 0) debido a su alta impedancia de entrada. En resumen, no se debe dejar una entrada CMOS al aire, debe mandarse a tierra o VCC mediante ua resistencia de arrastre pull down o pull up. Todas las entradas de un CI (por ejemplo un PIC) que no se estén utilizando deben enviarse a tierra o VCC.

ERRATA SHEET: Es un artículo generalmente corto que especifica los errores o modificaciones en la transición de una versión de un documento a otro.

ESD: (Discharge Electro Static) Descarga electrostática: Es la creación consciente o inconsciente de altos voltajes (electricidad estática) en la superficie de un material aislante por efecto de fricción o rozamiento.

ESPECTRO BETTA ESPECTRO GAMMA ESPECTRO INFRAROJO ESPECTRO LUZ VISIBLE ESPECTRO ULTRAVIOLETA

EUSART: ENHANCED USART (USART AVANZADO). EXTRANET.-- Unión de dos o más intranets. Esta unión puede realizarse mediante líneas dedicadas

(RDSI, X.25, frame relay, punto a punto, etc.) o a través de Internet. FAMILIA LOGICA BIPOLAR: RTL, DTL, TTL, ECL, I2L FAMILIA LOGICA: Grupo de circuitos integrados o módulos funcionales, fabricados de acuerdo a la misma

tecnología y eléctricamente compatibles. FAN IN (ABANICO DE ENTRADA): Mide el efecto de carga que presenta una entrada a una salida. Es de

suma importancia en el diseño de aplicaciones con tecnología TTL debido a la baja impedancia de entrada (alta corriente).

FAN OUT (ABANICO DE SALIDA): Mide la capacidad de una salida de manejar unao más entradas. FastDDE: proporciona medios de embalar muchos mensajes propietarios DDE de Wonderware en un solo

mensaje del DDE de Microsoft. Este embalaje entre mejora eficacia y funcionamiento reduciendo el número total de las transacciones DDE requeridas un cliente y un servidor. Aunque FastDDE de Wonderware ha ampliado la utilidad DDE para nuestra industria, esta extensión se está empujando a sus apremios de funcionamiento en ambientes distribuidos. El acoplamiento del Suite del servidor FESTO IPC y la versión DDE apoya la versión 3 de FastDDE -- una extensión a la versión propietaria 2 de Wonderware FastDDE. Esta extensión apoya la transferencia de la información de la calidad del tiempo del valor (VTQ). El DDE y los formatos originales de la versión 2 de FastDDE todavía se apoyan, proveyendo de compatibilidad hacia atrás completa más viejos clientes del DDE. La versión 3 de FastDDE trabaja en los sistemas de Windows 9x así como sistemas de Windows NT.

FDDI (Fiber Distributed Data Interface) FDM: MULTIPLEXACION POR DIVISION DE PRECUENCIA FET: (FIELD EFFECT TRANSISTOR) TRANSISTOR DE EFECTO DE CAMPO (UJT)

Page 59: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

59 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

FFD: FULL FULL DUPLEX (INTERNET) FIBRA ÓPTICA (OPTIC FIBER): MULTIMODO, MONOMODO FIREWALL (PARED DE FUEGO): Es un software o hardware para proteger el PC de ataques de virus de

la red. FIREWIRE: (CONDUCTOR DE FUEGO): Moderno periférico como puerto externo y conector de la PC, se

caracteriza por tener 6 hilos. Soporta mayor velocidad de transmisión de datos que el USB, maneja alta corriente para alimentar dispositivos externos.

FIRMWARE: Nombre que recibe el código fuente de un programa cuando se encuentra en la memoria de programa de un microcontrolador.

FLAGS (BANDERAS) Indicadores de estado de un uP FLANCO DE BAJADA (FALLING EDGE): Es un pulso o señal de voltaje con transición o cambio de un

nivel alto (1 lógico) a un nivel bajo (0 lógico). FLANCO DE SUBIDA (RISING EDGE): Es un pulso o señal de voltaje con transición o cambio de un nivel

bajo (0 lógico) a un nivel alto (1 lógico). FLIP FLOP (SUBE-BAJA): Unidad mínima de memoria digital (1/0) FLOW CHART (DIAGRAMA DE FLUJO): Es la representación gráfica de un algoritmo para la resolución

de un programa. FOTO DIODO: FOTO TRANSISTOR: FPAA: FIELD PROGRAM ANALOG ARRAY FPGA: FIELD PROGRAM GATE ARRAY FRECUENCIA (F): Se mide en Hertz (Hz) o ciclos por segundo e indica cuántas veces se repite la onda

básica en una unidad de tiempo. Se define como el inverso del período. F = 1/T FREE DOWNLOAD (léase fri daun load): DESCARGA LIBRE: Se atribuye a los freeware. FREEWARE: Programa informático de libre distribución FREE DOWNLOAD. GAIN: ganancia GAL: GATE ARRAY LOGIC :ARREGLO LOGICO DE COMPUERTAS GPS:(GLOBAL POSITION SYSTEM) (SISTEMA DE POSICIONAMIETO GLOBAL) GSM: GLOBAL SYSTEM MOVIL GTB (Gestión Técnica del Edificio) en inmótica GTC (Gestión Técnica Centralizada) en inmótica GTP (Gestión Técnica de Proceso) en inmótica GFSK La modulación por desplazamiento de frecuencia gausiana (en inglés Gaussian Frequency Shift

Keying o GFSK) es un tipo de modulación donde un 1 lógico es representado mediante una desviación positiva (incremento) de la frecuencia de la onda portadora, y un 0 mediante una desviación negativa (decremento) de la misma. GFSK es una versión mejorada de la modulación por desplazamiento de frecuencia (FSK). En GFSK la información es pasada por un filtro gausiano antes de modular la señal. Esto se traduce en un espectro de energía más estrecho de la señal modulada, lo cual permite mayores velocidades de transferencia sobre un mismo canal.

Page 60: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

60 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Principio del filtro gausiano sobre la banda base en GFSK

CLK Clock CRC Cyclic Redundancy Check CS Chip Select CE Chip Enable DR Data Ready GFSK Gaussian Frequency Shift Keying ISM Industrial-Scientific-Medical MCU Micro controller OD Overdrive PWR_DWN Power Down PWR_UP Power Up RX Receive ST_BY Standby TX Transmit

ISM Industrial-Scientific-Medical

GMSK Modulación de fase mínima gausiana HAKER: Programador experto de computadoras que usualmente diseña aplicaciones que afectan el

correcto funcionamiento de las PC. HALF DUPLEX: SEMI DUPLEX: (RADIOTELEFONO) HARDWARE: Parte física de una aplicación, el circuito como tal. HDL: (LENGUAJE DE DESCRIPCION DE HARDWARE) HELP DESK: AYUDA DE ESCRITORIO) HEX: (Hexadecimal) Es la extensión resultante de la compilación de un archivo .asm en el código

fuente de un PIC HOPING CODE: CODIGO SALTARIN: SISTEMA DE SEGURIDAD EN TX DE RF I2C PROTOCOLO (INTERFAZ DE CIRCUITOS INTEGRADOS) I2L: (Lógica de inyección integrada) Familia lógica bipolar. Útil aplicaciones de control. Usualmente son

dispositivos híbridos (controlan señales análogas y digitales) IBM: INTERNATIONAL BUSINESS MACHINES (EL GIGANTE AZUL) ICONTEC: IDLE: Modo reposo en una transmisión de datos IEEE: INSTITUTO DE INGENIEROS ELECTRICOS Y ELECTRÓNICOS IMPEDANCIA DE ENTRADA (ZIN): Resistencia a tierra que percibe la entrada de un dispositivo

electrónico. Tiende a infinito en los dispositivos diseñados con tecnología CMOS o transistores BJT unipolares.

Page 61: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

61 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

IMPEDANCIA DE SALIDA (ZOUT): Resistencia en serie que percibe la salida de un dispositivo electrónico. INMOTICA: AUTOMATIZACION DE EDIFICIOS: La más alta tecnología es utilizada en edificaciones

convirtiéndolas en inteligentes. Edificios pensantes que ha base de una central inteligente (generalmente una PC), controla básicamente todos los sistemas instalados, para reducir el consumo de energía y aumentar el confort; En pocas palabras es la automatización de edificios corporativos, hoteleros, empresariales y similares.

INPUT FLOAT: Alude a una entrada al aire o flotando en un circuito integrado. INTEGRACION LSI (LARGE SCALE INTEGRATION) (INTEGRACION EN ALTA ESCALA) 100 A 10000

compuertas: memorias, unidades aritméticas lógicas (ALU), microprocesadores de 8 y 16 bits. INTEGRACION SSI (SMALL SCALE INTEGRATION) (INTEGRACION A PEQUEÑA ESCALA) Menos de

13 compuertas. Compuertas, flip flops. INTEGRACION VLSI (VERY LARGE SCALE INTEGRATION) (INTEGRACION EN MUY ALTA ESCALA)

Más de 1000 compuertas. Microprocesadores de 32 bits, microcontroladores. INTEL: (INTELLIGENT) Empresa líder en diseño de microprocesadores para PC (Pentium, 8086, etc) INTELIGENCIA ARTIFICIAL: (IA) Sistemas que buscan emular el comportamiento de una red n euronal

humana. Tiene 3 grandes divisiones: ALGORITMO GENETICO, LOGICA DIFUSA (FUSSY LOGIC) Y REDES NEURONALES.

INTRANET.-- Red privada que utiliza los protocolos TCP/IP. Puede tener salida a Internet o no. En el caso de tener salida a Internet, el direccionamiento IP permite que los hosts con direcciones IP privadas puedan salir a Internet pero impide el acceso a los hosts internos desde Internet. Dentro de una intranet se pueden configurar todos los servicios típicos de Internet (web, correo, mensajería instantánea, etc.) mediante la instalación de los correspondientes servidores. La idea es que las intranets son como "internets" en miniatura o lo que es lo mismo, Internet es una intranet pública gigantesca.

IRQs (INTERRUPTION REQUEST) PETICIÓN DE INTERRUPCIÓN ISO: ORGANIZATION STANDARDS INTERNACIONALES (ORGANIZACIÓN DE ESTANDARES

INTERNACIONALES. JAVA: Lenguaje de programación con sintaxis de c++ multiplataforma (Linux, Windows) JFET: (JUNCTION FIELD EFFEC TRANSISTOR) TRANSISTOR DE EFECTO DE CAMPO DE

UNIJUNTURA DE CANAL N / P LABORATORIOS BELL: Diseñaron el primer transistor. LASER (LÉASE LÉISER) (LIGHT AMPLIFIED STIMULATED EMITTER AND REFLECT) LED (DIODO EMISOR DE LUZ) LIFO: LAST INPUT FIRST OUTPUT Alude a la dinámica de los datos registrados en la memoria de la pila

de un microcontrolador. LSB (LEAST SIGNIFICANT BIT) BIT MENOS SIGNIFICATIVO

LEY DE AMPERE: indica, que la línea integral de un campo magnético en una trayectoria arbitrariamente elegida es proporcional a la corriente eléctrica neta adjunta a la trayectoria. En otras palabras, si hacemos circular una corriente en un conductor colocado paralelamente sobre una aguja imantada y en una dirección de norte a sur, la punta de la aguja que señala al norte, se moverá hacia la derecha, este movimiento indica que las líneas se mueven de izquierda a derecha, por debajo del conductor, y de derecha a izquierda sobre el conductor.

LEY DE INDUCCIÓN ELECTROMAGNÉTICA DE FARADAY (o simplemente Ley de Faraday) se basa en los experimentos que Michael Faraday realizó en 1831 y establece que el voltaje inducido en un circuito cerrado es directamente proporcional a la rapidez con que cambia en el tiempo el flujo magnético que atraviesa una superficie cualquiera con el circuito como borde:

Page 62: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

62 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

donde es el campo eléctrico, es el elemento infinitesimal del contorno C, es la densidad de campo

magnético y S es una superficie arbitraria, cuyo borde es C. Las direcciones del contorno C y de están dadas por la regla de la mano derecha. La permutación de la integral de superficie y la derivada temporal se puede hacer siempre y cuando la superficie de integración no cambie con el tiempo. LEY DE LENZ: nos dice que las fuerzas electromotrices o las corrientes inducidas serán de un sentido tal que se opongan a la variación del flujo magnético que las produjeron. Esta ley es una consecuencia del principio de conservación de la energía. La polaridad de una FEM inducida es tal, que tiende a producir una corriente, cuyo campo magnético se opone siempre a las variaciones del campo existente producido por la corriente original. El flujo de un campo magnético uniforme a través de un circuito plano viene dado por:

Donde:

Φ = Flujo magnético. La unidad en el S.I. es el weber (Wb). B = Inducción magnética. La unidad en el S.I. es el tesla (T). S = Superficie del conductor. α = Ángulo que forman el conductor y la dirección del campo. Si el conductor está en movimiento el valor del flujo será: Si el conductor está en movimiento el valor del flujo será:

MAIN FRAME IBM: computadora gigante desarrollada por IBM que funcionaba con relay y tubos al vacío. MAP (Manufacturing Automation Protocol) en inmótica MÁQUINA DE TURING: 1935: PROPUESTA POR ALAN TURING: Es una máquina para calcular de

propósito general a la que se podría instruir para trabajar con casi todo tipo de información. MEMORIA EEPROM (E2PROM): MEMORY ONLY READ PROGRAMMABLE ERASER ELECTRICAL MEMORIA EPROM (UVPROM): MEMORY ONLY READ PROGRAMMABLE ERASER UV MEMORIA FLASH EEPROM (E2PROM F): MEMORY ONLY READ PROGRAMMABLE ERASER

ELECTRICAL TIPO FLASH (Mayor velocidad, menor tiempo de acceso en procesos de escritura/lectura, programación In Circuit al no requerir alto voltaje).

MEMORIA PROM: MEMORY ONLY READ PROGRAMMABLE MEMORIA RAM-D: MEMORY ACCESS RANDOM DYNAMIC (MEMORIA DE ACCESO ALEATORIO

DINAMICA) MEMORIA RAM-S: MEMORY ACCESS RANDOM STATIC (MEMORIA DE ACCESO ALEATORIO

ESTATICA) MEMORIA ROM: MEMORY ONLY READ MEMORIAS DIGITALES: Circuitos integrados digitales que almacenan información binaria (0,1).

Internamente está organizada mediante direcciones y bit de datos, por ejemplo: la memoria EEPROM de Microchip 28C64A es de 8164 direcciones (address) por 8 bit de datos, es decir, 8K x 8bit = 64Kbits. Pueden ser tipo RAM-STATIC, RAM-DINAMICA, ROM, PROM, UVPROM, EEPROM, FLASH EEPROM.

MICROBOTICA: Un microrobot o microbot es un pequeño robot de investigación que normalmente se controla con un microcontrolador y que está diseñado para realizar tareas concretas. Al plantear la construcción de un microbot es importante conocer la clasificación que hace la empresa MICROBOTICA, una de las pioneras en este campo en España. Esta clasificación está basada en la torre de Bot o

Page 63: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

63 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

“TORREBOT” que tiene 6 niveles, cada uno de los cuales diferencia un paso en el diseño y construcción del microrobot.

MICROCONTROLADOR (1): Es un circuito integrado cerrado y programable que contiene todos los

elementos necesarios para controlar un sistema.

MICROCONTROLADOR (2): Consiste en un sencillo pero completo computador contenido en el corazón (chip) de un circuito integrado.

MICROCONTROLADOR (3): Es un circuito integrado de alta escala de integración que incorpora la mayor

parte de los elementos que configuran un controlador. MICROPROCESADOR: es un circuito integrado abierto que contiene la Unidad Central de Proceso (CPU),

también llamada procesador. La CPU está formada por la Unidad de Control, que interpreta las instrucciones, y el Camino de Datos, que las ejecuta. Los pines de un microprocesador sacan al exterior las líneas de sus buses de direcciones, datos y control, que permiten conectar la Memoria, los Módulos de E/S.

MIPS: MILLONES DE INSTRUCCIONES POR SEGUNDO MMI (Man Machine Interface) es el interfaz de unión entre el operario y la máquina. Puede ser un panel de

operador o una computadora (PC), pero en ambos casos comunican y transmiten datos a y desde el PLC. MODBUS: PROTOCOLO INDUSTRIAL MODEM: MODULADOR-DEMODULADOR MODULACION ANALOGA PM: PHASE MODULATION MODULACION ANALOGA AM: AMPLITUD MODULATION MODULACION ANALOGA FM: FRECUENCY MODULATION MODULACION DIGITAL ASK: AMPLITUD SHIFT KEY MODULACION DIGITAL FSK: FRECUENCY SHIFT KEY MODULACION DIGITAL PSK: PHASE SHIFT KEY MODULACION DIGITAL QPSK: QUAD PHASE SHIFT KEY MODULAR: ES ACONDICIONAR UNA SEÑAL PARA SU OPTIMA TRANSMISIÓN MOS (METAL OXIDE SEMICONDUCTOR): Técnica de fabricación de transistores y circuitos integrados

opuesto a la tecnología con transistores bipolares (TTL, RTL, DTL) MOS/SOS: (METAL OXIDE SEMICONDUCTOR SOBRE SUSTRATO DE ZAFIRO): Tecnología de

fabricación de circuitos integrados MOS. MOSFET: (METAL OXIDE SEMICONDUCTOR FIELD EFFECT TRANSISTOR) CANAL N/P,

ENRIQUECIMIENTO (INCREMENTAL) O EMPOBRECIMIENTO (DECREMENTAL) MOTOROLA (freescale semiconductors es el nuevo nombre de la sección de motorola que fabrica uP,

µC y dsp’s): significa Sonido en movimiento en japonés. MS DOS: MICRO SOFT DISK OPERATIVE SYSTEM (SISTEMA OPERATIVO DE DISCO DE

MICROSOFT): Sistema operativo de computadora predecesor de windows. MSB (MOST SIGNIFICANT BIT) BIT MAS SIGNIFICATIVO MSI (MEDIUM SCALE INTEGRATION) (INTEGRACION A MEDIANA ESCALA) 13 a 100 compuertas.

Codificadores, contadores, registros, multiplexores, decodificadores. MULTIPLATAFORMA: Capacidad de un lenguaje de programación para ejecutar satisfactoriamente una

aplicación bajo múltiples sistemas operativos MULTITAREA: Capacidad de un sistema operativo de ejecutar simultaneidad de aplicaciones o programas NetDDE: amplía la funcionalidad estándar del DDE de Windows para incluir redes de área local del

excedente de la comunicación y a través de puertos seriales. Las extensiones de red están disponibles para permitir acoplamientos DDE entre los usos que funcionan en diversas computadoras conectadas vía

Page 64: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

64 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

redes o módems. Por ejemplo, el DDE de las ayudas de NetDDE entre los usos que funcionaban en las computadoras compatibles de la IBM conectadas vía el LAN o el módem y los usos DDE-enterados que funcionaban en la no-PC baso plataformas bajo ambientes de funcionamiento tales como VMS y UNIX.

NETWORK: RED NEWELL Y SIMON : (SI … ENTONCES) Cualquier conocimiento se puede representar en la forma que

propusieron Newell y Simon, así: SI la planta es terrestre y no tiene hojas y si tiene espolón ENTONCES El género es Wullschlaegelia.

NIC (number identication card) Tarjeta de red NIVELES DE CORRIENTE CMOS - LEVEL CURRENT (LÉASE LEVOeL CORREiN) CMOS PARA LA SERIE DE CI 40XXB, 45XXB

CORRIENTE DE SALIDA EN BAJO (MODE SINK): IOL = 6mA CORRIENTE DE SALIDA EN ALTO: (MODE SOURCE): IOH = 6mA CORRIENTE DE ENTRADA EN BAJO: IIL = 1µA CORRIENTE DE ENTRADA EN ALTO: IIH = 1µA

NOTA: Los PIC’s no se rigen por los niveles de corriente CMOS, por el contrario, tienen sus propios niveles:

NIVELES DE CORRIENTE PARA LOS PIC GAMA MEDIA Y ALTA

CORRIENTE DE SALIDA EN BAJO (MODE SINK): IOL = 25mA CORRIENTE DE SALIDA EN ALTO: (MODE SOURCE): IOH = 25mA CORRIENTE DE ENTRADA EN BAJO: IIL = 1µA CORRIENTE DE ENTRADA EN ALTO: IIH = 1µA

NOTA: Los PIC no se rigen por los niveles de corriente CMOS ni TTL.

NIVELES DE CORRIENTE TTL - LEVEL CURRENT TTL- LS (SCHOTTKY LOW POWER )

CORRIENTE DE SALIDA EN BAJO (MODE SINK): IOL = 8mA CORRIENTE DE SALIDA EN ALTO: (MODE SOURCE): IOH = 0.4mA = 400µA CORRIENTE DE ENTRADA EN BAJO: IIL = 20µA CORRIENTE DE ENTRADA EN ALTO: IIH = 0.4mA =400µA

NOTA: Los PIC’s no se rigen por los niveles de corriente TTL, por el contrario, tienen sus propios niveles:

NIVELES DE VOLTAJE CMOS (LEVEL VOLTAGE CMOS) PARA LA SERIE DE CI 40XXB, 45XXB

VDD = 3V A 18V

VOLTAJE DE SALIDA EN BAJO: VOL = VSS = 0V VOLTAJE DE SALIDA EN ALTO: VOH = VDD VOLTAJE DE ENTRADA EN BAJO: VIL = 0 a 0.3VDD VOLTAJE DE ENTRADA EN ALTO: VIH = 0.7VDD a VDD

NIVELES DE VOLTAJE PARA PIC GAMA MEDIA ALTA (LEVEL VOLTAGE PIC): VDD = 5V

Page 65: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

65 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

VOLTAJE DE SALIDA EN BAJO: VOL = VSS = 0V VOLTAJE DE SALIDA EN ALTO: VOH = VDD VOLTAJE DE ENTRADA EN BAJO: VIL = 0 a 0.8V VOLTAJE DE ENTRADA EN ALTO: VIH = 2.4V a 5V

NOTA: LOS PIC’S OPERAN CON NIVELES TTL DE VOLTAJE DE ENTRADA PERO CON NIVELES CMOS DE VOLTAJE DE SALIDA, LA ALIMENTACION DE UN PIC GAMA MEDIA Y ALTA ESTA ENTRE 2.0V A 5.5V. NOTA: LOS VOLTAJES DE ENTRADA ENTRE 0.8V Y 2.4V SE CONOCEN COMO VOLTAJES DE LA BANDA PROHIBIDA.

NIVELES DE VOLTAJE RS 232:

VOLTAJE DE SALIDA EN BAJO: VOL = +5V a +15V VOLTAJE DE SALIDA EN ALTO: VOH = -5V a -15V VOLTAJE DE ENTRADA EN BAJO: VIL = +3 A +25V VOLTAJE DE ENTRADA EN ALTO: VIH = -3V A -25V NOTA: LOS VOLTAJES DE ENTRADA ENTRE -3V Y +3V SE CONOCEN COMO VOLTAJES DE LA BANDA PROHIBIDA.

NIVELES DE VOLTAJE TTL (LEVEL VOLTAGE TTL): VCC= 5V

VOLTAJE DE SALIDA EN BAJO: VOL = 0 A 0.5V TYP : 0.35V VOLTAJE DE SALIDA EN ALTO: VOH = 2.7V A 5V, TYP: 3.4V VOLTAJE DE ENTRADA EN BAJO: VIL = 0 a 0.8V VOLTAJE DE ENTRADA EN ALTO: VIH = 2.4V a 5V

NOTA: LOS PIC’S OPERAN CON NIVELES TTL DE VOLTAJE DE ENTRADA PERO CON NIVELES CMOS DE VOLTAJE DE SALIDA NOTA: LOS VOLTAJES DE ENTRADA ENTRE 0.8V Y 2.4V SE CONOCEN COMO VOLTAJES DE LA BANDA PROHIBIDA.

NMOS: (CHANNEL N METAL OXIDE SEMICONDUCTOR) TECNICA DE FABRICACION DE CIRCUITOS INTEGRADOS MOS

NPN: TRANSISTOR BIPOLAR ONDAS DIGITALES: Es una sucesión continua de pulsos cuyo nivel pasa alternativamente del estado

bajo a alto y viceversa. Cuando la señal permanece en bajo el mismo tiempo que en alto, se dice que la onda digital es cuadrada, cuando son diferentes entonces la onda es asimétrica o pulso. Las ondas digitales se caracterizan por poseer una FRECUENCIA, un PERIODO, un CICLO ÚTIL (DUTY CYCLE) y una AMPLITUD. La amplitud es el equivalente al nivel LOGICO 1 o ALTO (HIGH).

OPAMPS (OPERATIONAL AMPLIFIERS) AMPLIFICADORES OPERACIONALES OPEN CODE: Son aplicaciones o proyectos informáticos sin ánimo de lucro cuyo código fuente es de libre

distribución con el objetivo de aunar esfuerzos y entre todos desarrollar el mejor código fuente. Un ejemplo es el sistema operativo LINUX.

OPTOACOPLADOR (OPTO COUPLER) circuito integrado compuesto por un LED emisor y un dispositivo receptor que sirve para acoplar la etapa de control de la etapa de potencia en un circuito.

OPTODIAC: Acoplador mediante un DIAC para excitar un TRIAC o circuito de AC OPTOMUX,: PROTOCOLO INDUSTRIAL OPTOTRANSISTOR: acoplador mediante un transistor para excitar un transistor o circuito de DC OPTOTRIAC: ACOPLADOR MEDIATE UN TRIAC

Page 66: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

66 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

OSI: PACKAGE DIP (DUAL IN LINE PACKAGE) ENCAPSULADO EN DOBLE LINEA (Léase dual in lain

peiquish): Es el encapsulado tradicional de doble línea de 8, 14, 16, 24, 18, 28, 40,64 pines.

PACKAGE QFN (Los pines son superficiales pero debajo del cuerpo del integrado)

PACKAGE SOIC

PACKAGE SMD (Montaje superficial) PACKAGE TQFP PAL: LOGIC ARRAY PROGRAM PAM: MODULACION AMPLITUD DE PULSO PCM: MODULACION POR CODIGO DE PULSO PDF (FORMATO DE DOCUMENTOS PORTÁTILES): Es un formato para documentos científicos varios,

también se entiende como PDF la extensión de archivos informáticos que designa este tipo de documentos. Usualmente se emplea el editor ADOBE ACROBAT READER para abrir dichos archivos o documentos.

PERIFERICOS DE ENTRADA DE UN MICROCONTROLADOR: Son dispositivos que se conectan en los pines configurados como entrada en un microcontrolador, por ejemplo

PERIFERICOS DE SALIDA DE UN MICROCONTROLADOR PERIFERICOS DEL COMPUTADOR: Alude a los dispositivos externos que se pueden conectar a una PC

mediante sus puertos e interfaces. PERIODO (T): Se mide en segundos (seg) y se refiere al tiempo que dura un solo ciclo de la onda. Se

define como el inverso de la frecuencia. T = 1/F PIC: “PERIPHERAL INTERFACE CONTROLLER” (Controlador de Interfaz de periféricos) PID provienen de los tres parámetros de ajuste más importantes, que son: la ganancia proporcional (P), el

tiempo integral (I) y el tiempo derivativo (D). PIONEROS DE LA COMPUTACION:

1. CHARLES BABBAGE: 1830: Profesor inglés de matemáticas de la universidad de cambridge: Concibió la posibilidad de construir un aparato mecánico capaz de efectuar una cadena de cálculos relacionados.

2. ALAN TURING: 1935: Matemático británico formado en Cambridge, propuso la “Máquina de Turing” 3. CLAUDE SHANNON:1939: Demostró que una máquina que ejecutase instrucciones lógicas podía

manipular información. Introdujo la concepción de números binarios para representar estado de un circuito eléctrico: 1: cerrado, 0:abierto. Pionero en la concepción de la compresión de información. Postuló la “Teoría de la Información”: Información es reducir la incertidumbre. Como ejemplo está el caso de la letra q la cual siempre estará acompañada de la u.

4. JOHN VON NEUMANN: 1945: Americano de origen húngaro. Formuló la arquitectura de microprocesadores “Von Neumann”

PISO (PARALEL INPUT SERIAL OUT) PLC (1): CONTROLADOR LOGICO PROGRAMABLE PLC (2): POWER LINE COMUNICATIONS (PROTOCOLO X10), POWER LINE CARRIER PLD: DISPOSITIVO LÓGICO PROGRAMABLE PLL (PHASE LOCKED LOOP) ENGANCHE POR AMARRE DE FASE PMOS: (CHANNEL P METAL OXIDE SEMICONDUCTOR) TECNICA DE FABRICACION DE CIRCUITOS

INTEGRADOS MOS. Los dispositivos de esta familia se caracterizan por el bajo consumo de potencia, alta escala de integración y alta inmunidad al ruido. Su desventaja es su relativa baja velocidad (en comparación con la tecnología bipolar) y su vulnerabilidad a las cargas electrostáticas.

PNP: TRANSISTOR BIPOLAR PORTADORA (CARRIER). PROGRAMA DE COMPUTACION: “Conjunto de reglas que se dan a una máquina para instruirla en el

Page 67: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

67 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

modo de realizar tares particulares”. PROLOG (PROGRAMACIÓN LÓGICA): ES UN LENGUAJE DE PROGRAMACIÓN DE ALTO NIVEL

PROTOCOLO AS-I (ACTUADOR SENSOR-INTERFACE): Es un bus de sensores y actuadores binario y

puede conectarse a distintos tipos de controladores lógico. Programable (PLC), controladores numéricos o computadores (PC). El sistema de comunicación es bididireccional entre un maestro y nodos esclavos. Está limitado hasta 100 metros (300 metros con un repetidor) y pueden conectarse de 1 a 31 esclavos por segmentos. El maestro AS-i interroga un esclavo por vez y para el máximo numero tarda en total 5 ms. Es un protocolo abierto y hay varios proveedores que suministran todos los elementos para la instalación. Constituye un bus de muy bajo costo para reemplazar el tradicional árbol de cables en paralelo.

PROTOCOLO DEVICENET: Resulta adecuado para conectar dispositivos simples como sensores

fotoeléctricos, sensores magnéticos, pulsadores, etc. Provee información adicional sobre el estado de la red para las interfaces del usuario.

PROTOCOLO ETHERNET INDUSTRIAL: La aceptación mundial de Ethernet en los entornos industriales y

de oficina ha generado el deseo de expandir su aplicación a la planta. Es posible que con los avances de Ethenet y la emergente tecnología Fast Ethenet se pueda aplicar también al manejo de aplicaciones críticas de control, actualmente implementadas con otras redes específicamente industriales existentes, como las que aquí se mencionan. Subnivel-LLC ( logical link control) se refiere al control lógico sobre la línea. Subnivel-MCA ( Media Access Control) se refiere al modo de Acceso a la línea y comprende tres sistemas en vigencia CSMA/CD /TOKEN BUS /TOKEN RING. ISA (International Society for Measurement and Control) y la IEC (International Electrotechnic Commitees) Hay varios paquetes de calidad: Fix, Intouch , Factory, Taurus, Realflex, Genesis , LabView ,por nombrar proveedores independientes, que no son fabricantes de equipos de medición y control. OLE (Object Linking and Embedding) denominada OPC (OLE for Process Control),

WAN («Wide Area Network» o red a gran distancia): cubre necesidades internacionales (servicios de reserva aérea) o nacionales (servicios de la Seguridad Social).

MAN («Metropolitan Area Network» o red ciudadana): cubre necesidades a escala de una ciudad (gestión de edificios municipales).

LAN («Local Area Network» o red local): cubre necesidades limitadas a uno o varios edificios próximos entre sí, que pueden ser de uso industrial, terciario o doméstico).

PROTOCOLO ETHERNET(2): Ethernet es el protocolo por el cual se comunican las computadores en un entorno LOCAL de red. El cable que se inserta atrás de la computadora y parece un "jack" de teléfono grande es utilizado para enviar información en este protocolo, la computadora utiliza una tarjeta NIC ("Network Interface Card") para realizar la comunicación. Cada tarjeta NIC contiene una dirección MAC (única) , esta dirección MAC corresponde a la dirección física "Hardware" de la computadora, esto sería el equivalente al "Nivel 2" del modelo OSI. Ahora bien, Ethernet como protocolo es considerado CSMA/CD ("Carrier Sense Multiple Acces Collision Detect"), lo cual significa que por su cable solo puede ser transmitida una sola señal a cierto punto en el tiempo, esto es, si a un cable se encuentran conectadas 10 o 20 PC's, sólo una puede transmitir información a la vez, las demás deben esperar a que finalice la transmisión. Además de esta característica CSMA/CD, el protocolo "Ethernet" también utiliza lo que es denominado "Broadcast" o "Transmisión a todas las terminales", considerando el ejemplo anterior, lo que ocurre cuando una PC envía información es que las otras 9 o 19 recibirán esta misma información, lo que sucede posteriormente es que solo la PC con la dirección MAC especificada acepta la información, las restantes la descartan. Llega un punto en el uso de una red en que estos "Broadcasts" son excesivos, aunado a la característica "CSMA/CD" que sólo una PC puede transmitir a la vez; la transmisión de información ("throughput") en la red (LAN) empieza a decaer, y la forma mas común de evitar estos problemas es mediante un "Switch", aunque también pudiera ser utilizado un Router, pero esto dependerá de situaciones especificas.

Tipos de Ethernet

Cable Coaxial

Page 68: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

68 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Este tipo de medio fue el primero en utilizarse para Ethernet y puede ser de dos tipos:

Thinnet: Grosor de 1/4" o menor, comúnmente utilizado en diseños 10Base2 para ambientes ARCnet. Distancia Máxima de 185 mt , el cableado utilizado para Thinnet es por lo general tipo RG-58.

Thicknet: Comúnmente utilizado para "backbones" su tamaño es de 3/8 " (.375 pulgadas), utilizado en backbones de televisión y en diseños 10Base5, su distancia máxima entre centrales es de 500 mt.

Cable Empalmado "Twisted Pair"

Este tipo de cableado es el que se encuentra en mayor uso y puede ser de 5 tipos:

Categoría 1 : (UTP) Apto únicamente para voz , utilizado para transmisiones comunes de telefonía Categoría 2 : (UTP) No es muy utilizado, su velocidad máxima de transmisión es 4 Mbps. Categoría 3 : (UTP o STP) Optimo para transmisiones 10BaseT ,velocidad máxima hasta 10 Mbps. Categoría 4 : (UTP o STP) Velocidad máxima 16 Mbps, comúnmente utilizado en un ambiente Token Ring

de IBM. Categoría 5 : (UTP o STP) Alcanza velocidades de 100 Mbps, utilizado para FastEthernet.

UTP : Significa que el cable no tiene capa protectora, UTP puede extenderse a una distancia máxima de 100 metros, es utilizado primordialmente para Ethernet

STP : Utiliza un capa protectora para cada cable para limitar interferencia, permite una mayor distancia que UTP (aunque limitadas) , comúnmente utilizado en ARCnet o Redes IBM.

PROTOCOLO FIELDBUS (BUS DE CAMPO): es un término genérico el cual denomina a un nuevo tipo de

redes de comunicaciones digitales. Estas redes son usadas para conectar dispositivos aislados tales como controladores, transductores, actuadores y sensores. La principal innovación es el cambio de un control centralizado por un control con redes distribuidas. Cada periférico es un dispositivo activo que puede tener las funciones de control, mantenimiento y diagnóstico, lo cual aumenta la eficiencia del sistema completo.

Estándares: Se acordó obtener un estándar internacional entre las siguientes organizaciones:

ISA (Instrument Society of America). IEC (International Electrotechnical Commission). Profibus (Estandar nacional Alemán). FIP (Estandar nacional Frances)

PROTOCOLO FIELDBUS FOUNDATION (FF): Esta desarrollada a partir del modelo de comunicaciones de siete niveles IS/OSI (International Standards /Open Systen Interconnet) Es un protocolo para redes industriales, específicamente para aplicaciones de control distribuido Puede comunicar grandes volúmenes de información, ideal para aplicaciones con varios lazos complejos de control de procesos y automatización de la fabricación, Provee bloques de función: IA, ID, OA, OD, PID, que pueden intercambiarse entre la estación maestra (Host) y los dispositivos de campo. La longitud máxima por mensaje es de 256 bytes, lo que permite transferir funciones de control con el concepto de objetos

PROTOCOLO HART: HART (Highway Addressable Remote Transducer): Es un protocolo de fines de

1980, que proporciona una señal digital que se superpone a la señal analógica de medición en 4-20 mA. Permite conectar varios dispositivos sobre un mismo cable o bus (Multidrop), alimentación de los dispositivos, mensajes de diagnósticos y acceso remoto de los datos del dispositivo, sin afectar la señal analógica de medición. La mayor limitación es su velocidad (1200 baudios), normalmente se pueden

Page 69: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

69 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

obtener 2 respuestas por segundo. La alimentación se suministra por el mismo cable y puede soportar hasta 15 dispositivos

PROTOCOLO LONWORKS: Echelon presentó la tecnología LonWorks en el año 1992, desde entonces

multitud de empresas viene usando esta tecnología para implementar redes de control distribuidas y automatización. Aunque está diseñada para cubrir los requisitos de la mayoría de las aplicaciones de control, sólo ha tenido éxito de implantación en edificios de oficinas, hoteles o industrias. Pero, debido a su coste, los dispositivos Lonworks no han tenido una implantación masiva en los hogares, sobretodo porque existían otras tecnologías de prestaciones similares mucho más baratas. El éxito que ha tenido Lonworks en instalaciones profesionales, en las que importa mucho más la fiabilidad y robustez que el precio, se debe a que desde su origen ofrece una solución con arquitectura descentralizada, extremo-a-extremo, que permite distribuir la inteligencia entre los sensores y los actuadores instalados en la vivienda y que cubre desde el nivel físico al nivel de aplicación de la mayoría de los proyectos de redes de control. Según Echelon, su arquitectura es un sistema abierto a cualquier fabricante que quiera usar esta tecnología sin depender de sistemas propietarios, que permite reducir los costes y aumentar la flexibilidad de la aplicación de control distribuida. Aunque Echelon usa el concepto de "sistema abierto", realmente no es una tecnología que pueda implementarse si no es con un circuito integrado registrado por Echelon.

PROTOCOLO MODBUS: Es un protocolo utilizado en comunicaciones vía móden-radio, para cubrir

grandes distancia a los dispositivos de medición y control, como el caso de pozos de petróleo, gas y agua. Velocidad a 1200 baudios por radio y mayores por cable. Es un estándar de facto (acogido en la práctica y no por decreto)

PROTOCOLO PROFIBUS: Esta desarrollada a partir del modelo de comunicaciones de siete niveles

IS/OSI (International Standard /Open Systen Interconnet). La base del especificación del estándar Profibus fue un proyecto de investigación (1987-1990) llevado a cabo por los siguientes participantes: ABB, AEG, Bosch, Honeywell, Moeller, Landis & Gyr, Phoenix Contact, Rheinmetall, RMP, Sauter-cumulus, Schleicher, Siemens y cinco institutos alemanes de investigación. Hubo además una pequeña esponsorización por parte del gobierno alemán. El resultado de este proyecto fue el primer borrador de la norma DIN 19245, el estándar Profibus, partes 1 y 2. La parte 3, Profibus-DP, se definió en 1993. Recientes estudios de mercado llevados a cabo por empresas ajenas a la Organización de Usuarios de Profibus señalan a éste como el bus con más futuro en el campo de los procesos industriales. Soporta una gran variedad de equipos que van desde PC´s y PLC´s hasta robots, pasando por todo tipo de elementos de campo, la mayoría de las aplicaciones industriales gracias a las tres posibilidades que ofrece Profibus (FMS, DP y PA). Desde máquinas sencillas, pasando por aplicaciones a nivel de célula hasta nivel de proceso con Profibus-PA.

PROTOCOLO RS422: trabaja en forma diferencial con las líneas que transmite y recibe, el circuito tiene solo dos hilos sin que exista una línea de masa común. Los unos y ceros lógicos se establecen en función de la diferencia de tensión ambos conductores del circuito. Resulta una interface serie con una gran inmunidad al ruido y una mayor distancia de conexión a los dispositivos, preferible a la interfaces serie RS-232 para operar en las condiciones difíciles que siempre se presentan en los entornos industriales. permite la transmisión en entornos perturbados o a distancias importantes; también se emplea para uniones multipunto (máximo 10 receptores);

PROTOCOLO RS485: es una leve modificación de la RS-422, redefiniendo características eléctricas

para asegurar un nivel de tensión adecuado a la máxima carga, incrementándose él numero de dispositivos de 10 a 32 (multidrop), los que se conectan en paralelo a los dos conductores, sin necesidad de módem. Con esta capacidad y una alta inmunidad al ruido se pueden crear redes de dispositivos de adquisición de datos y control, conectados a una simple puerta serie RS-485 de un PC.

PROTOCOLO TCP/IP :PROTOCOLO DE INTERNET PROTOCOLO X10: POWER LINE COMUNICATIONS, COMUNICACION POR LA LINEA DE POTENCIA PROTOCOLOS DE COMUNICACIÓN: El protocolo constituye el conjunto de reglas y convenciones entre

entes comunicantes. El objetivo es establecer una conexión entre DTE, identificando el emisor y el

Page 70: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

70 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

receptor, asegurando que todos los mensajes se transfieran correctamente, controlando toda la transferencia de información. Una vez definida la conexión física para poder transferir información entre los dispositivos o sistemas debe existir un formato para los datos y una estrategia de sincronización de como se envía y recepcionan los mensajes, incluyendo la detección y corrección de los errores.

PUENTE H (BRIDGE H) :Circuito integrado o transistorizado driver para el control de velocidad y sentido de giro de motores de DC o control de motores paso paso bipolares.

PULL DOWN/PULL UP: (RESISTENCIA DE ARRASTRE HACIA TIERRA O VCC): Consiste en una resistencia de (1K a 100K generalmente) que se conecta entre una entrada al aire (usualmente de un dispositivo CMOS como un PIC) hacia tierra (Pull Down) o VCC (Pull Up).

PULSO DE RECONOCIMIENTO (ACKNOWLEDGE PULSE). PWM: Pulse Wide Modulation R:2R : (LADDER-ESCALERA) Configuración para la implementación de conversores digital a analógicos. RED LAN:.NETWORK AREA LOCAL RED MAN:NETWORK AREA METROPOLITAN RED WAN:NETWORK AREA WIDE REGISTRO DE DESPLAZAMIENTO (Shift Registers): Circuito integrado con lógica digital secuencial

(SIPO, PIPO, PISO, SISO) RELE REED. RELE MAGNETICO RELE SSR (STATE SOLID RELAY) RELE DE ESTADO SÓLIDO RELE: RELAY:.RELE ELECTROMAGNÉTICO ROBOT: El diccionario define “ROBOT” como un dispositivo automático que realiza funciones propias de

humanos, o una maquina con forma de humano. La palabra robot fue propuesta por el escritor checo Karel Capek y significa trabajo forzado, las obras de teatro de este escritor plantean la deshumanización del hombre en una civilización Tecnológica. El termino “robótica”, se refiere al estudio y uso de los robots, la palabra fue acuñada por el escritor de ciencia ficción Isaac Asimov.

En la práctica no hay un acuerdo universal sobre que es un robot. Algunos piensan que un robot es una maquina antropomorfa, otros consideran que un robot es un manipulador en una línea de ensamble, otros atribuyen ese nombre a una maquina móvil, otros consideran que un robot es una maquina que realiza una función ejecutada por un ser humano. En este ultimo sentido se puede decir que el piloto automático de un avión es un robot.

La robótica es un área de investigación multidisciplinaria. El diseño de robots requiere conocer estructuras, materiales, cinemática, dinámica, actuadores, sensores, control y programación. La integración de varias destrezas es la esencia de la robótica.

La robótica es una tecnología o un conjunto de tecnologías que prometen resolver problemas que son difíciles, aburridos, o peligrosos para humanos. Los robots son visibles en tareas de manufactura, actividades peligrosas como exploración submarina, terrestre o espacial, desarme de bombas, limpieza de residuos radioactivos o nucleares. En ingles se dice que los robots son adecuados para trabajos DDD (Dull, Dumb, Dangerous), esto es, trabajos aburridos, estúpidos y peligrosos.

La tele operación es el abuelo de la robótica y se desarrollo por la necesidad de la manipulación robótica de materiales radioactivos. La tele operación ha permanecido importante por su papel en la exploración espacial y mejoras en los sensores.

La robótica ha avanzado considerablemente desde sus inicios, hoy día se consiguen en el comercio manipuladores programables, robots que caminan, aprenden e interactúan entre si, también se han hecho grandes avances en los componentes de robots, en visión, sensores, materiales y algoritmos en control.

La noción de robots como herramientas es una perspectiva que puede enriquecer nuestra visión de robótica. Usando técnicas de robótica podemos aumentar la capacidad de las herramientas, velocidad,

Page 71: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

71 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

potencia, precisión. La habilidad para responder comandos verbales es una función útil que se esta incorporando en robots industriales.

Los primeros robots fueron desarrollados por Joe Engel Berger en los años 1950s para aplicaciones industriales. Engel Berger creo Unimation y fue el primero en vender robots, como resultado, ha sido llamado el “padre de la robótica”

LEYES DE LA ROBÓTICA: Isaac Asimov propuso en sus obras de ciencia ficción, las siguientes leyes para un robot:

Ley Cero:Un robot no debe atentar contra la humanidad, o, por inacción, permitir que la humanidad sea

lastimada. Ley uno: Un robot no lastimara a un ser humano, o, por inacción, permitir que un humano sea lastimado, a

menos que este viole una ley de mayor jerarquía. Ley Dos: Un robot debe obedecer órdenes dadas por humanos, excepto cuando estas órdenes entran en

conflicto con una ley de mayor jerarquía.

RS232: Protocolo de comunicación serial asincrónica. RS485: Protocolo de comunicación serial entre dos puntos distantes (hasta 1500 mts) RTL: (Lógica de resistor a transistor) Familia lógica bipolar. Técnica de fabricación de circuitos integrados

con transistores bipolares SALIDA DE COLECTOR/DRENADOR ABIERTO ◊ (OPEN COLLECTOR/DRAIN OUTPUT) ◊ : Son

salidas de un circuito integrado mediante el colector/drenador de un transistor en configuración emisor común al aire, por lo tanto son salidas incapaces de trabajar en modo source (no envían 1 lógicos) y requieren una resistencia de Pull UP externa (1K aproximadamente). La ventaja de estas salidas es la posibilidad de poder conectar varias de ellas en paralelo. Un ejemplo de salida de drenador abierto es el pin de entrada/salida PTA4 del PIC. El símbolo representativo según ANSI e IEEE es el diamante subrayado ◊ .

SALIDA TRES ESTADOS: OUT TRI STATE : LOGICA DE TRES ESTADOS: Es una compuerta con 3 posibles estados de salida: High, Low or High Z (alta impedancia). Este tipo de salidas es una marca registrada de National Semiconductor. Se caracterizan por tener un tercer terminal de control (habilitador o línea de inhibición) de la opción alta impedancia. Por ejemplo 74LS240. El símbolo representativo según ANSI e IEEE es . Un ejemplo de estos dispositivos es el CMOS 40106 que tiene 6 inversores schmitt trigger.

HISTÉRESIS: La característica de histéresis significa que los dispositivos schmitt trigger sólo responden cuando los voltajes aplicados a sus entradas superan unos valores límites pre-establecidos llamados umbrales. Con una tensión de 5VDC es voltaje de histéresis es típicamente VH = 0.6V, el umbral superior o positivo VTH= 2.6V y el inferior o negativo VTL= 2.0V.

SALIDAS TOTEM-POLE: (poste totémico): es ampliamente utilizada en circuitos integrados digitales, pues permite operar a altas velocidades. No se permite conectar dos ó más salidas totem pole en paralelo. Se caracteriza por tener dos transistores en serie en su salida, cuando uno conduce el otro está en corte y viceversa. Es la salida típica de los CI TTL.

SAMPLE & HOLD (MUESTRA Y RETENCION): Circuito conformado por un swich analógico de alta velocidad, un condensador de baja capacitancia y un amplificador operacional en configuración seguidor de tensión. Suele emplearse en la etapa de entrada de un conversor A/D.

Page 72: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

72 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

SAMPLE AND HOLD: MUESTREO Y RETENCION SAMPLING SWITCH: SW MUESTREO SAMPLING SWITCH: SW MUESTREO SAR (REGISTRO DE APROXIMACIONES SUCESIVAS) Técnica empleado en el diseño de conversores

análogo digital de bajo costo y altas prestaciones, por ejemplo los conversores A/D de un µC. SCADA: proviene de las siglas de Supervisory Control And Data Acquisition (Adquisición de datos y

Supervisión de Control). Es una aplicación software de control de producción, que se comunica con los dispositivos de campo y controla el proceso de forma automática desde la pantalla del ordenador. Proporciona información del proceso a diversos usuarios: operadores, supervisores de control de calidad, supervisión y mantenimiento.

SCI: INTERFAZ DE COMUNICACIÓN SERIAL = USART SCR: RECTIFICADOR CONTROLADO DE SILICIO SEGUIDOR DE VOLTAJE: Configuración de un amplificador operacional (OPAMPS) SENSIBILIDAD A LAS CARGAS ELECTROSTÁTICAS: Fenómeno que experimentan los dispositivos

fabricados con tecnología MOS. Debido a su alta impedancia de entrada se desarrollan fácilmente voltajes prohibitivos capaces de destruir la delgada capa de óxido que separa la compuerta del canal en los transistores de esos dispositivos. Un circuito integrado CMOS se destruye con voltajes estáticos entre 250 y 3000 voltios cuando es manipulado un ser humano le puede aplicar hasta 6000 voltios entre dos de sus terminales. El efecto inmediato de una descarga electrostática (ESD) en un circuito CMOS es la destrucción definitiva o el deterioro a corto o largo plazo de la capa de óxido aislante que separa la compuerta del canal en sus transistores MOSFET de entrada. Esta filosofía también es aplicable a los dispositivos construidos con tecnología TTL Schottky. Mediante espumas y fundas antiestáticas se protegen estos dispositivos de la ESD. La clave general de protección es mantener todos los pines al mismo potencial, introducirlos en un icopor forrado con papel aluminio es una buena medida de protección.

SEÑALES DE AUDIOSONIDOS: 20Hz a 20KHz SEÑALES DE INFRASONIDOS: menores de 20Hz SEÑALES DE MICROONDAS: SEÑALES DE RADIOFRECUENCIAS: SEÑALES DE ULTRASONIDOS:20KHz a 40KHz

SETUP BIOS : (SETUP BASIC INPUT OUTPUT SYSTEM) SHAREWARE (LITE, TRIAL, DEMO): SOFTWARE O PROGRAMA INFORMATICO CON LIMITACIONES

DE OPCIONES (LITE, DEMO), LIMITACIONES DE TIEMPO DE USO (TRIAL). SIPO (SERIAL INPUT PARALEL OUTPUT) Registro de desplazamiento SISO (SERIAL INPUT SERIAL OUTPUT) Registro de desplazamiento SISTEMA OPERATIVO (OPERATIVE SYSTEM): Programa básico de una PC para poder ejecutar

cualquier otro aplicativo informático. Por ejemplo: Windows, Linux, Solaris. SISTEMAS EMBEBIDOS: Son sistemas cuyo programa se ejecuta directamente desde un circuito

integrado compacto sin intervención de una PC, por ejemplo, FPGA, DSP, µC. SISTEMAS HÍBRIDOS: Son sistemas que manejan tanto señales digitales como analógicas. SLEW RATE (velocidad de cambio en amplificadores operacionales Voltios/uS) SMD (SURFACE MOUNT DUAL IN LINE PACKAGE): montaje superficial de doble línea. SMT (SURFACE MOUNT TECHNOLOGY): Tecnología de montaje superficial. SNUBBER: SOCKET ZIF: Socket cero esfuerzo. SOCKET: Base para el montaje de circuitos integrados. SOFTWARE: Es un programa o aplicación informática para ejecutarse en una PC con un sistema operativo

determinado. SPAM: CORREO ELECTRÓNICO BASURA

Page 73: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

73 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

SPOOLER: (léase espuler): programa informático el que hace la misión de buffer de almacenamiento intermedio para los datos que se envían a la impresora,

SPYWARE: (programa espía) TCP/IP: Se han desarrollado diferentes familias de protocolos para comunicación por red de datos para los

sistemas UNIX. El más ampliamente utilizado es el Internet Protocol Suite, comúnmente conocido como TCP / IP. Es un protocolo DARPA que proporciona transmisión fiable de paquetes de datos sobre redes. El nombre TCP / IP Proviene de dos protocolos importantes de la familia, el Transmission Control Protocol (TCP) y el Internet Protocol (IP). Todos juntos llegan a ser más de 100 protocolos diferentes definidos en este conjunto. El TCP / IP es la base del Internet que sirve para enlazar computadoras que utilizan diferentes sistemas operativos, incluyendo PC, minicomputadoras y computadoras centrales sobre redes de área local y área extensa. TCP / IP fue desarrollado y demostrado por primera vez en 1972 por el departamento de defensa de los Estados Unidos, ejecutándolo en el ARPANET una red de área extensa del departamento de defensa.

TDM: (MULTIPLEXACION POR DIVISION DE TIEMPO) TDMA: ACCESO POR MULTIPLEXACION DE DIVISION DE TIEMPO TEOREMA DE NYQUIST O TEOREMA DE MUESTREO: El objetivo fundamental de la adquisición es el

poder reconstruir la señal muestreada de una manera fiel. Este teorema nos dice que la frecuencia mínima de muestreo para poder reconstruir la señal ha de ser el doble de la frecuencia de la señal a medir. Pero ojo, para que la reconstrucción sea fiable, deberemos tomar muestras a una frecuencia unas 10 veces superior a la de la señal a evaluar.

THRESHOLD VOLTAGE: TENSION UMBRAL TIRISTOR: PUERTA SEMICONDUCTORA (SCR, TRIAC, ETC) TOPOLOGIA DE UNA RED: Alude a la forma en que se interconectan los diferentes dispositivos de una

red. Entre las topologías de redes de destacan: (Centralizada y Distribuida) Topología estrella, malla, anillo, bus, árbol, híbridas.

TOPOLOGIA MESH (MALLA) TRANSISTOR: (TRANS – RESISTOR) TRANSFERENCIA DE RESISTENCIA: DISPOSITIVO

SEMICONDUCTOR BIPOLAR O UNIPOLAR TRIAC: TRIODO DE CORRIENTE ALTERNA TRIGGER (DISPARO) TTL (ALS) SHOTTKY ADVANCED LOW POWER: Familia de circuitos integrados TTL bipolares. TTL (AS) SHOTTKY ADVANCED: Familia de circuitos integrados TTL bipolares. TTL (H) HIGH SPEED: Familia de circuitos integrados TTL bipolares. TTL (L) LOW POWER: Familia de circuitos integrados TTL bipolares. TTL (Lógica de transistor a transistor) Familia lógica bipolar. Tecnología de fabricación de circuitos

integrados mediante transistores bipolares, por ejemplo las compuertas digitales 7400, etc. Se caracterizan por su alta velocidad, alto consumo de potencia y baja impedancia de entrada.

TTL (LS) SHOTTKY LOW POWER: Familia de circuitos integrados TTL bipolares. TTL (S) SHOTTKY: Familia de circuitos integrados TTL bipolares. TUBOS AL VACIO: Dispositivos electrónicos predecesores de los transistores, se caracterizaban por su

elevado consumo de potencia y disipación de calor. UART: UNIVERSAL ASYNCRONOUS RECEPTOR TRANSMITTER UJT: (TRANSISTOR JUNCTION UNIPOLAR) UPLOAD: Proceso inverso a download. Usualmente se aplica al proceso de leer el código de la memoria

de programa de un dispositivo programable como PLC, microcontrolador, DSP, etc. USART: UNIVERSAL SYNCRONOUS ASYNCRONOUS RECEPTOR TRANSMITTER USB: BUS SERIAL UNIVERSAL USRT: UNIVERSAL SYNCRONOUS RECEPTOR TRANSMITTER

Page 74: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

74 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

VHDL: LENGUAJE DE DESCRIPCION DE HARDWARE VERILOG VMOS: MOS TIPO V (ALTA POTENCIA) VOLTAJE DE DIRECTA DC - DV (DIRECT CURRENT – DIRECT VOLTAGE) Corriente Directa – Voltaje

de Directa: Toma un único valor positivo o negativo en el dominio del tiempo, por ejemplo el voltaje de una batería AA ó AAA (1.5VDC).

VOLTAJE / CORRIENTE DE ALTERNA (AC – AV) (ATERNATUM CURRENT – ALTERNATUM VOLTAGE) Corriente alterna – Voltaje alterno: Toma valores positivos y negativos en el dominio del tiempo, por ejemplo la tensión senoidal de la red de 120VAC de los hogares.

VOLTAJE PULSANTE: Toma valores de 0 voltios a un nivel positivo o negativo en el dominio del tiempo, por ejemplo una onda cuadrada de un CI 555 oscilante entre 0V y 5VDC.

VPN: VIRTUAL PRIVATE NETWORK. WIBREE: Al igual que Zigbee tienen intención de proporcionar conexiones inalámbricas de bajo consumo

por lo que podríamos estar hablando de baterías que duran años en vez de horas. Sin embargo, ZigBee está reinventando la rueda con sus requerimientos para un chip de radio compatible y un router/concentrador. Wibree, por el contrario, utiliza el hardware existente que proporciona Bluetooth como el radio (a 2.4 GHz) y la antena. Por lo que tendrá suficiente con obtener soporte para Wibree y Bluetooth en teléfonos móviles normales. Lo bueno de este acercamiento, asegura Hunn, es que millones de móviles normales podrás actuar como “routers” con los sensores de Wibree, que podrán establecer la conexión a través de 3G o incluso de GPRS (2.5G). Si echas un vistazo a los defensores de Wibree (Broadcom, CSR, Epson, Nokia y Nordic Semiconductor) verás que cubren toda la experiencia necesaria para perfeccionar las especificaciones de Wibree.

WIFI: WIMAX: WIRELESS: INALAMBRICO WLAN: LAN INALAMBRICA WPANs: REDES INALÁMBRICAS DE ÁREA PERSONAL YES (1): Es una compuerta lógica tipo buffer (amplificador de corriente), por ejemplo CD4050B ZIGBEE (ZUMBIDO DE ABEJA): es un protocolo de comunicaciones inalámbrico, similar al bluetooth, y

basado en el estándar para redes inalámbricas de área personal (WPANs) IEEE_802.15.4. Surge del fruto de una alianza, sin ánimo de lucro, de más de 100 empresas, la mayoría de ellas fabricantes de semiconductores, con el objetivo de conseguir el desarrollo e implantación de una tecnología inalámbrica de bajo coste. Destacan empresas como Invensys, Mitsubishi, Honeywell, Philips y Motorola que trabajan para crear un sistema estándar de comunicaciones, vía radio y bidireccional. Los miembros de esta alianza justifican el desarrollo de este estándar para cubrir el vacío que se produce por debajo del Bluetooth. Principalmente, el ámbito en el que se usará será la domótica, debido a su bajo consumo, su sistema de comunicaciones vía radio (con topología MESH) y su fácil integración (se pueden fabricar nodos con muy poca electrónica).

Page 75: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

75 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

CODIGO ASCII (Código Estándar Americano para Intercambio de Información)

(American Standard Code Interchange Information)

CODIGO ASCII STANDARD (CÓDIGOS 0 – 127)

000 (nul) 016 (dle) 032 sp 048 0 064 @ 080 P 096 ` 112 p 001 (soh) 017 (dc1) 033 ! 049 1 065 A 081 Q 097 a 113 q 002 (stx) 018 (dc2) 034 “ 050 2 066 B 082 R 098 b 114 r 003 (etx) 019 (dc3) 035 # 051 3 067 C 083 S 099 c 115 s 004 (eot) 020 ¶ (dc4) 036 $ 052 4 068 D 084 T 100 d 116 t 005 (enq) 021 § (nak) 037 % 053 5 069 E 085 U 101 e 117 u 006 (ack) 022 (syn) 038 & 054 6 070 F 086 V 102 f 118 v 007 (bel) 023 (etb) 039 ‘ 055 7 071 G 087 W 103 g 119 w 008 (bs) 024 (can) 040 ( 056 8 072 H 088 X 104 h 120 x 009 (tab) 025 (em) 041 ) 057 9 073 I 089 Y 105 i 121 y 010 (lf) 026 (eof) 042 * 058 : 074 J 090 Z 106 j 122 z 011 (vt) 027 (esc) 043 + 059 ; 075 K 091 [ 107 k 123 012 (np) 028 (fs) 044 , 060 < 076 L 092 \ 108 l 124 | 013 (cr) 029 (gs) 045 - 061 = 077 M 093 ] 109 m 125 014 (so) 030 – (rs) 046 . 062 > 078 N 094 ^ 110 n 126 ~ 015 ¤ (si) 031 (us) 047 / 063 ? 079 O 095 _ 111 o 127

CODIGO ASCII EXTENDIDO (CÓDIGOS 128 – 255)

128 Ç 143 Å 158 × 172 ¼ 186 ¦ 200 + 214 Í 228 õ 242 129 ü 144 É 159 ƒ 173 ¡ 187 + 201 + 215 Î 229 Õ 243 ¾ 130 é 145 æ 160 á 174 « 188 + 202 - 216 Ï 230 µ 244 ¶ 131 â 146 Æ 161 í 175 » 189 ¢ 203 - 217 + 231 þ 245 § 132 ä 147 ô 162 ó 176 _ 190 ¥ 204 ¦ 218 + 232 Þ 246 ÷ 133 à 148 ö 163 ú 177 _ 191 + 205 - 219 _ 233 Ú 247 ¸ 134 å 149 ò 164 ñ 178 _ 192 + 206 + 220 _ 234 Û 248 ° 135 ç 150 û 165 Ñ 179 ¦ 193 - 207 ¤ 221 ¦ 235 Ù 249 ¨ 136 ê 151 ù 166 ª 180 ¦ 194 - 208 ð 222 Ì 236 ý 250 · 137 ë 152 ÿ 167 º 181 Á 195 + 209 Ð 223 _ 237 Ý 251 ¹ 138 è 153 Ö 168 ¿ 182 Â 196 - 210 Ê 224 Ó 238 ¯ 252 ³ 139 ï 154 Ü 169 ® 183 À 197 + 211 Ë 225 ß 239 ´ 253 ² 140 î 155 ø 170 ¬ 184 © 198 ã 212 È 226 Ô 240 ­ 254 141 ì 156 £ 171 ½ 185 ¦ 199 Ã 213 i 227 Ò 241 ± 255 142 Ä 157 Ø

Page 76: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

76 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

SOFTWARE Y HARDWARE PARA EL DESARROLLO DE PROYECTOS MICROCONTROLADOS

No

Artículo Cant Descripción del Artículo

1

Computador genérico para desarrollar las aplicaciones

1 Procesador Pentium 3 de 933MHz, puerto serial, 1 puerto USB, 4 GB disco duro libre, 256 RAM, lector CD-ROM, sistema operativo WIN XP SP1 o SP2

2 Software MPLAB IDE v. 7.1 (Léase empiláb aidi i) (LABoratorio de Microcontroladores PIC con entorno de desarrollo Integrado)

1 Mplab IDE v. 7.1 editor y compilador (MPASM) de assembler de libre distribución de la empresa Microchip Technologies)

3

Software Proteus profesional 6.7 1 Proteus profesional 6.7 (simulador de microcontroladores PIC) bajo licencia autorizada

4

Software IC Prog 1.05D o WIN PIC 3.59

1 Software cargador (loadder) de código (firmware) de PIC’s de libre distribución.

5

Software proton PIC basic professional (Opcional) 1 Editor de programación para PIC con lógica Basic bajo licencia autorizada

6

Software MicroBasic profesional (Opcional) 1 Editor de programación para PIC con lógica Basic bajo licencia autorizada

7

Software Compilador C ++ para PIC profesional (Opcional)

1 Editor de programación para PIC con lógica C++ bajo licencia autorizada

8

Software Eagle profesional 1 Diseño de circuitos impresos bajo licencia autorizada

9

Software Visual Basic 6.0 Edición profesional o empresarial

1 Software Visual Basic 6.0 Edición profesional o empresarial bajo licencia autorizada

10

Software Visual Basic .NET Edición profesional o empresarial (Opcional)

1 Software Visual Basic Edición profesional o empresarial bajo licencia autorizada

11 Programador JDM serial IC-Prog 1 Hardware programador de PIC’s gama alta de libre distribución

12 Protoboard de 2 secciones mínimo 1 Protoboard para montaje

Page 77: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

77 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

de prácticas

13 Fuente de 5V/500 mA 1 Fuente de alimentación regulada para alimentar el microcontrolador

14 Fuente de 5V/2 Amp, 12V/2Amp (Opcional)

1 Fuente de alimentación regulada para alimentar periféricos del PIC

15 Multímetro digital convencional 1 Multímetro digital convencional con voltímetro AC/DC, amperímetro DC, óhmetro, continuidad, test diodo.

16 PIC 18F452 ó 18F252 ó 18F442 ó 18F242 1 Microcontrolador de Microchip gama alta de 16 bit

17 PIC 18F2455/2550/4455/4550 1 Microcontrolador de Microchip gama alta de 16 bit con módulo USB integrado y oscilador interno

HERRAMIENTAS Y MATERIALES No

Artículo Cant Descripción del Artículo

1 Pinza cortafrío pequeña 1 Pinza cortafrío pequeña

2 Alicate pequeño 1 Alicate pequeño

3 Kit de destornilladores pequeños tipo relojería 1 Kit de destornilladores pequeños de pala y estría

4 Cinta de enmascarar delgada (1 cm) 1 Cinta de enmascarar

5 Cautín punta fina de 40Watt

1 Cautín punta fina de 40Watt

6 Estaño delgado con alma de resina 1 Estaño delgado con alma de resina

7 Crema solderín 1 Crema solderín

8 Alambre para puentes en protoboard de 4 colores 2m c/u Alambre para puentes en protoboard de 4 colores

9 Terminal con caimán pequeño en ambos extremos 5 Caimán para conexiones

10 Cable plano ribbon gris o de colores de 16 hilos 2 m Cable ribbon plano de 16 hilos

Page 78: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

78 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

ELEMENTOS Y DISPOSITIVOS ELECTRÓNICOS

No

Artículo Cant Descripción del Artículo

1

Resistencias 1/4 Watt : 100Ω, 220Ω, 330Ω, 1kΩ, 2.0kΩ, 4.7kΩ, 10kΩ, 20kΩ, 100kΩ, 300KΩ,1MΩ

10 c/u

Resistencia de propósito general

2 Potenciómetro 3 pines: 10KΩ, 100Ω, 500kΩ 1 c/u

Potenciómetro de propósito general

3 Condensador cerámico a 25V : 104pF 10 Condensador de propósito general Nota: 104pF=0.1uF=100nF=Bypass

4 Condensador cerámico a 16V : 27pF 2 Condensador de propósito general Para oscilador de PIC

5 Condensadores electrolíticos (polarizados) a 16V: 0.1µF, 1µF, 4.7µF, 10µF, 100µF, 220µF,470 µF

5 c/u

Condensador de propósito general

6 Condensadores electrolíticos (polarizados) a 25V: 1000µF, 2200µF, 4700µF

2 c/u

Condensador de propósito general

7 Diodos 1N 4007 10 Diodos Rectificadores de silicio a 1Amp y 1000V tensión inversa pico

8

Diodos Zéner 1 Watt a 5.1V 2

Diodo Zéner de propósito general

9

Diodos Zéner 1 Watt a 12V 2

Diodo Zéner de propósito general

10

Diodos 1N4148 ó 1N914 10 Diodo alta velocidad y baja potencia de silicio

11 Puente rectificador de 1 Amp 1 Puente Rectificadores a 1Amp y 100V tensión inversa pico

12 Pulsador NA (normal mente abierto para protoboard)

4

Pulsador NA (normal mente abierto para protoboard)

13 Led de propósito general de 3 ó 5mm Rojo 5 Led de propósito general

14 Led de propósito general de 3 ó 5mm Verde 5 Led de propósito general

15 Led emisor Infra Rojo de 3 ó 5mm SHF 4510, SHF4515

2 Led IR de control remoto, Imax= 500mA, 30 mts LT1062:2 Amp pico

Page 79: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

79 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

16 OPTOACOPLADOR OPTOTRIAC MOC 3010=MOC 3020 MOC 3021=MOC 3022 MOC 3040=MOC 3041

2

OPTOTRIAC 6 PINES

17 OPTOACOPLADOR OPTOTRANSISTOR MCT2=4N254N26=4N27=4N28

2

OPTOTRANSISTOR 6 PINES

18 Transistor NPN 2N2222 5 Transistor BJT NPN de baja potencia (EBC) IC_max=800mA, Frec_max=300MHz, Ganancia hFE=200, ECG123A, VCE_max=40V, VBEmax=6V, VCBmax=75V

19 Transistor NPN 2N3904 =BC548 5 Transistor BJT NPN de baja potencia (EBC) IC_max=600mA, Frec_max = 300MHz, ganancia hFE=200, ECG123AP, VCEmax=40V, VBEmax=6V, VCBmax=75V par complementario=2N3906

20 Transistor PNP 2N3906=BC558 5 Transistor BJT PNP de baja potencia (EBC) IC_max=600mA, Frec_max 200MHz, ganancia hFE=180, VCEmax=80V ,VBEmax=5V, VCBmax=75V, ECG159, par complementario=2N3904

21 Transistor NPN TIP 41C

1 Transistor BJT NPN de media potencia (BCE) IC max=1.5 A

22 Transistor UJT MOSFET CANAL N IRF 830

1 Transistor IRF 830, UJT, media potencia, alta velocidad, MOSFET CANAL N, Corriente de Drenador máx. = 5 Amp, ECG 2398 (GDS), package T41, TO220

23 Relé 12V 2 Contactos 8 pines 1 Relé electromagnético de propósito general que maneje hasta 6 Amp de AC/DC

24 Relé 12V 1 Contacto 5 pines 2 Relé electromagnético de propósito general que maneje hasta 10 Amp de AC/DC

Page 80: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

80 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

25 Triac BT138 1 Triodo de corriente alterna TRIAC BT138 de 15 Amp y 600V MT1-MT2-GATE, TO220, ECG 56008, IHOLD_min= 40mA, Von Máx.=1.6V, -40ºC – 125ºC

26 SCR C106 1 Rectificador Controlado de Silicio de propósito general, ECD 5457, 400V/4 Amp, IGT min.=200µA, Ihold min. = 3mA. -40ºC a 110ºC package TO202

27 Pantalla alfanumérica LCD 2x16 Pantalla alfanumérica LCD 2x20 Pantalla alfanumérica LCD 4x20

1 Pantalla LCD alfanumérica verde / azul, con o sin back light

28 Pantalla gráfica 64 x 32 pixeles Pantalla gráfica 128 x 64 pixeles Pantalla gráfica 240 x 64 pixeles

1 Pantalla gráfica blanco y negro con controlador KS 0105 a KS0108

29 Display de 7 segmentos matricial de 3 dígitos 1 Matriz 8x3 con 3 dígitos en display de 7 segmentos con punto separador de dígitos

30 ISD 2560, ISD2590 ó ISD 25120 1 Chip grabador reproductor de voz de 60 a 120 segundos de la familia WIN BOND con interfaz sincrónica

31 Motor DC 12V/1Amp 1 Motor de directa de baja potencia

32 Motor paso a paso unipolar 1 Step Motor unipolar de 5 a 12VDC con resolución de 1.2 a 3 grados

33 Servomotor FITUBA, HITEC HS305, HOBBICO 1 Servomotor de aeromodelismo de 5VDC ideal para prácticas de robótica

34 MT 8870 Decodificador de Tono telefónico 1 Decodificador DTMF de Tono telefónico para automatización por línea telefónica o celular

35 MAX 232 1 Adaptador de niveles RS232 a TTL

36 SP485CS, MAX 485 1 Adaptador de niveles RS485 1500 mts

37 DS1307 1 Time Keeper generador de fecha y hora protocolo sincrónico Dato,CK

38 DS1302 (Opcional) 1 Time Keeper generador de fecha y hora protocolo I2C

Page 81: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

81 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

39 ULN 2803 1 8 Driver motor paso – paso unipolar 500mA/50V

40 ULN 2003 1 7 Driver motor paso – paso unipolar 500mA/50V

41 LM 567 1 Detector de tono

42 Puente H L293B 1 Driver motor paso – paso bipolar de 1Amp o dirección en motor DC L298: puente H 4 Amp

43 Regulador LM317 1 Regulador de voltaje positivo variable de 1.2 a 37V a 1.5Amp

44 Regulador LM7805 1 Regulador de voltaje fijo de 5V/1 Amp

45 Regulador LM7812 1 Regulador de voltaje fijo de 12V/1 Amp

46 CD 4066B (CD 4016B) 1 Circuito integrado CMOS interruptor análogo con control digital

47 CD 4015B (74LS164, 74LS273) 1 Circuito integrado CMOS SIPO 8 out

48 TL084 1 Amplificador Operacional de uso general con entrada JFET

49 CD4021B (74LS165 – 74ls273) 1 Circuito integrado CMOS PISO 8 input

50 XTAL 20MHz, 12MHz (USB) 1 Oscilador del microcontrolador

51 XTAL 3.579545 MHz 1 Oscilador para el decodificador de tono DTMF 8870

52 XTAL 32768 Hz 1 Oscilador para el time beeper DS1307 ó DS1302

53 Teclado matricial 4x4 1 Teclado para prácticas con PIC

54 Teclado de computadora PS2 dim ó minidim 1 Teclado de computadora

55 Buzzer Piezoeléctrico

Star PMX-04B

1 Buzzer para generar tonos con el microcontrolador

56 Buzzer VCM 1 Buzzer con tono predefinido

Page 82: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

82 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

57 Parlante de 0.5Watt a 8 ohm 1 Para escuchar grabación del ISD 25XXX

58 Micrófono electret

1 Micrófono para grabación en ISD 25XXX

DISPOSITIVOS DE SENSORICA 1 Sensor Bumpers Terminal de carrera 2 Terminal de carrera de 3

terminales 2 Sensor LDR de Luminosidad Fotorresistencia 1 (Light Dependent

Resistor) 3 Sensor Receptor control remoto Infra Rojo

Integrado SFH5110 de 3 pines y encapsulado metálico ó plástico

1 Receptor IR Integrado SHARP de TV de 3 pines (+5V, GND, Dato) con encapsulado metálico ó plástico

4 Sensor temperatura analógico LM 35

1 Sensor de temperatura integrado en grados centígrados 10mV/ºC 0ºC a 100ºC Vcc= 5V

5 Sensor temperatura analógico LM 335

1 Sensor de temperatura integrado en grados centígrados 10mV/ºC -40 a 100ºC Vcc= 5V

Page 83: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

83 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

6 Sensor digital de temperatura DS1820, DS18S20 1 Sensor digital del temperatura por bus de un solo hilo de Dallas semiconductor -55 a +125 ºC, resolución de 0.5ºC y tiempo de conversión de 200Ms, 800mS $15K

7 sensor de presión analógico MPX 4115

1 Sensor de presión integrado 2.18 a 16.7 PSI , 15 a 115 Kpascal VCC= 5V MPXM2102:0-100kPa, 0.2V a 4.8V $30K MPX 2200

8 sensor de humedad HS1101 capacitivo 1 sensor de humedad HS1101 $50K

9 Sensor ultrasónico módulo integrado TX y RX

1 Sensores ultrasónicos integrados 40TR12B:$40k 3mts SRF04:3mts SRF05 :1.7cm a 4mts SRF08:6mts

10 Sensor cápsula ultrasónica de bajo costo

1 Sensor cápsula ultrasónica

11 Sensor óptico automático de proximidad IS471F de SHARP Corporation

1 SENSOR PROX CNY70 OPB703, OPB704, OPB705 son mejores que el CNY70 pero más costosos

12 Sensor óptico de proximidad CNY70 Vishay Telefunken Seminconductors www.vishay.com

1 SENSOR PROX CNY70 OPB703, OPB704, OPB705 son mejores que el CNY70 pero más costosos

13 Sensor óptico de barrera H21A1

1 Sensor óptico de barrera H21A1 www.isocom.com, www.fairchildsemi.com

14 Sensor PSD (Detector de posición lineal por triangulación infra roja) Infra Rojo Sharp GP2D12=GP2Y0A21YK

1 Mide distancia con PSD con valor de 0 a 3 voltios dependiendo de la distancia. GP2D05:10 a 0 cm: out: 1 bit

Page 84: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

84 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

GP2D02:10 a 80 cm out:8 bit GP2D15:24cm:1bit GP2Y0D21YK= GP2D15 http://sharp-world.com

15 Sensor Pirosensor PIR de calor por infrarrojo

1 Sensor PIR Phase Infra Red de 3 pines (VCC, GND OUT)

16 Acelerómetro MMA7260Q, acelerómetro ADXL213 de Analog

1 Acelerómetro de estado sólido

17 Sensor de corriente (transformador de corriente a voltaje a baja frecuencia de 50 a 400Hz) CSE 187-L

1 SENSA de 0.1 A a 30 A expresándolo a 110mV/A típicamente

18 Sensor de corriente de efecto Hall 1 SENSA de 0.1 A a 30 A expresándolo a 110mV/A típicamente

19 Optoacoplador sensor tipo herradura para encoger optico

1 Para contar número de pasos o vueltas en motores de DC

DISPOSITIVOS ESPECIALES

1 POTENCIOMETRO DIGITAL X9C102/103/104/503 1 POTENCIOMETRO DIGITAL X9C102/103/104/503

2 XR2206 Modulador FSK sinusoidal 1 XR2206 Modulador FSK sinusoidal

3 XR2211 Demodulador FSK sinusoidal 1 XR2211 Demodulador FSK sinusoidal

4 TDA 2003 AMPLIFIDADOR DE AUDIO 1 TDA 2003 AMPLIFIDADOR DE AUDIO

5 DAC 0809 CONVERSOR DIGITAL ANALOGO 8 BIT

1 DAC 0809 CONVERSOR DIGITAL ANALOGO 8 BIT

6 L293D PUENTEH PARA MOTORES DE DIRECTA 1 L293D PUENTEH PARA MOTORES DE DIRECTA

7 HT 9200A generador DTMF 1 HT 9200 generador DTMF

8 LF353 amplificador de bajo ruido 1 LF353 amplificador operacional de bajo ruido JFET

9 UL 8038 GENERADOR DE FUNCIONES 1 UL 8038 GENERADOR DE FUNCIONES

10 Kit Reconocedor de voz Sensory Voice Direct 364 de estado sólido

1 www.voiceactivation.com VOICE DIRECT II:$50

Page 85: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

85 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

DOLARES EN EEUU

11 Kit receptor y software decodificador RF ID con 10 tarjetas

1 ERICEL (091-4041720) $350K colombia Propuesta dinámica (094-4121290) Semiconix (091-3418069) Suconel (094-5127830)

12 GPS de propósito general con interfaz RS232 a circuitos microcontrolados

1 GPS de propósito general con interfaz RS232 a circuitos microcontrolados PG31-MMCX: $250K

13 Alambre muscular Nitinol LT de propósito general 20 cm Alambre muscular Nitinol LT de propósito general

14 Transmisor Receptor RF ASK/PSK de datos con interfaz a microcontroladores

1 TX + RX = $40K TLP418A, RLP434 100MTS ASK 433.92Mhz TRF2.4GHZ: “Transceiver 280 MTS 2.5ghZ $70k

15 LCD Touch Screen 320x240 pixeles blanco y negro

1 PowerTyp Technology

16 MAX 187 Conversor A/D 12 bit serial SPI. 1 0 to 5V

17 24LC256 Memoria EEPROM serial 32Kbytes x 8 bit 1 Memoria EEPROM microchip protocolo I2C de 8 pines 256Kbit, 1 millón de ciclos R/W 2.5 A 5.5V, stand by = 100nA

18 PCF 8591 ADC Y DAC I2C de 8 bit de 4 channel

19 PCF 8574 Expansor de bus I2C

Page 86: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

86 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

20 DS1624 TERMOMETRO DIGITAL I2C

21 SAA 1064 DRIVER DISPLAY 7 SEG DE 4 DIGITOS I2C

22 PCF 8576 DRIVER DISPLAY 7 SEG DE 4 DIGITOS I2C

23 LM76 TERMOMETRO DIGITAL Y TERMOSTATO I2C

24 Brújula magnética

CMPS03: Este compás ha sido diseñado específicamente para la implementación de Robots o como ayuda de navegación. Tiene una interfaz I2C que permite obtener una lectura digital que consiste de un número único que representa a dirección a la que está mirando el robot. Consume 20 mA @ 5V. Tamaño: 32mm x 35mm Precio: $169.998

25 Efecto Hall

A1302EUA: Sensor de Efecto Hall con salida lineal proporcional a los cambios en el flujo magnético. Ideal para aplicaciones de detección de movimiento, sensor de proximidad o sensor de movimiento en los dientes de los piñones. Precio: $3.016

A3212EUA: Sensor de efecto hall con salida conmutada o digital, que cambia de cero a uno lógico con la presencia de un campo magnético sin importar su polaridad. Precio: $3.480

UGN3503: Sensor de Efecto Hall con salida lineal proporcional a los cambios en el flujo magnético. Ideal para aplicaciones de detección de movimiento, sensor de proximidad o sensor

Page 87: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

87 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

de movimiento en los dientes de los piñones. Precio: $4.002

25 Calor

TPA81: Es un arreglo de ocho “Thermopile” que detectan

ondas infrarrojas en el rango de 2 a 22 µm que esla longitud de onda del calor radiante, por lo tanto puede ser usado en aplicaciones de termómetros infrarrojos sin contacto. El TPA81 puede medir la temperatura de 8 puntos adyacentes simultáneamente, además puede controlar un servo que mueve el módulo para obtener una imagen térmica. El TPA81 puede detectar la llama de una vela a una distancia de dos metros y sus mediciones no se afectan con la luz ambiente. La comunicación con el TPA81 es a través de un puerto I2C. Precio: $324.800

25 Distancia

GP2D12: Entrega un voltaje proporcional a la distancia de un objeto. Funciona en un rango de 10 a 80 cm. Precio: $36.400

GP2D120: Entrega un voltaje proporcional a la distancia de un objeto. Funciona en un rango de 10 a 30 cm. Precio: $36.400

GP2Y0A02: Entrega una salida digital con la medición de la distancia de un objeto. Funciona en un rango de 20 a 150 cm. Precio: $40.600

GP2Y0D02: Entrega una salida digital con la medición de la distancia de un objeto. Funciona en un rango de 20 a 150

Page 88: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

88 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

cm. Precio: $ 35.003

25 SRF04: Usado para medir distancia en un rango de 3 cm a 3 metros, enviando un tren de pulsos ultrasónicos que

al regresar generan un pulso, cuyo ancho es proporcional a la distancia del objeto. Consume 30 mA @ 5V. Tamaño: 43mm x 20mm x 17mm Precio: $116.000

SRF05: Usado para medir distancia en un rango de 1 cm a 4 metros, enviando un tren de pulsos

ultrasónicos que al regresar generan un pulso, cuyo ancho es proporcional a la distancia del objeto. Consume 4 mA @ 5V. Tamaño: 43mm x 20mm x 17mm Precio: $92.800

SRF08: Usado para medir distancia en un rango de 3 cm a 6 metros, enviando un tren de pulsos ultrasónicos que al regresar generan un pulso, cuyo ancho es proporcional a la distancia del objeto. Consume 15 mA @ 5V. Tamaño: 43mm x 20mm x 17mm Precio: $197.200

SRF10: Usado para medir distancia en un rango de 3 cm a 6 metros, enviando un tren de pulsos ultrasónicos que al regresar generan un pulso, cuyo ancho es proporcional a la distancia del objeto. Consume 15 mA @ 5V. Tamaño: 32mm x 15mm x 10mm, es el más pequeño en el mercado. Precio: $197.200

SRF235: Usado para medir distancia en un rango de 10 cm a 1.2 metros, enviando un tren de pulsos ultrasónicos a 235 Khz. que al regresar generan un pulso, cuyo ancho es

Page 89: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

89 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

proporcional a la distancia del objeto, y lo entrega a la salida a través de una interface I2C. Tiene un ancho de haz de 15° que lo hace muy directivo. Consume 15 mA @ 5V. Tamaño: 34mm x 20mm x 19mm. Precio: $430.012

SOPORTE SRF10: Permite asegurar el SRF10 en cualquier superficie metálica o de madera por medio de tornillos dándole una excelente presentación y funcionalidad. Precio: $23.200

Page 90: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

90 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

# Proveedor Teléfono-Dirección e-mail - URL Productos 1 Sigma Electrónica Carrera 24 No.59-67

PBX 3482059 - FAX 3466185

Bogotá - Colombia - Sudamérica

[email protected] www.sigmaelectronica.com

Electrónica varios, Circuitos integrados Módulos TX RX RF

GPS

2 Suconel 094-5127830- Medellín

www.suconel.com Electrónica varios, Circuitos integrados Módulos TX RX RF

3 Propuesta dinámica 091-3418069 - Medellín

www.propuestadinamica.com Electrónica varios, Circuitos integrados

motorola

4 Semiconix 094-4121290-Bogotá Electrónica varios, Circuitos integrados

5 Electrónica DC 097-6525426-

Bucaramanga Electrónica varios,

Circuitos integrados importaciones

6 Electrónica Senel

6311689 – 6307077 Cr 44 No 70-36

FAX 6307099 Bogotá

Electrónica varios, Circuitos integrados

7 Plintec -Bogotá 091-3340915 091-2835707

Electrónica varios, Circuitos integrados MODEM gprs, gps

8 Dynamo Dynamo (300 -

4788207) (312-3278157)

-Bucaramanga C.C. Acrópolis

Robótica

9 Mundo Electrónica 091-3422977 Bogotá

Electrónica varios, Circuitos integrados

10 La red electrónica Bogotá

031-2845294 Electrónica varios,

Circuitos integrados

11 Canaris Medellín 094-4133185 094-4133148

Electrónica varios, Circuitos integrados

12 Casa Hermes Bucaramanga

037-6308888 Electrónica varios,

Circuitos integrados

13 Electrotelefónica Bucaramanga 037-6339097 097-6305044

Electrónica varios, Circuitos integrados

15 Electrónica Jamey

Cúcuta 037-5714418 311-4754729

Page 91: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

91 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

INAS WEB RECOMENDADAS URL Contenido

www.electronicayservicio.com www.todoexpertos.com www.lawebdelprogramador.com www.ecgsemiconductors.com www.mercadolibre.com www.monografias.com www.datasheetcatalog.com Data sheet www.todopic.com.arg pic www.compugreif.com www.dynamoelectronics.com www.pablin.com www.microchip.com www.freescale.com www.ee.washinton.edu/eeca Galería de circuitos electrónicos: www.arrakis.es/~/dr2000/manny/circuitos/ Galería de circuitos electrónicos: www.cs.uiowa.edu/~jones/step/

(Motores paso a paso)

16 Electrónica Maruel Bucaramanga 037-6334090

Electrónica varios, Circuitos integrados

17 CompuGreif Bogotá

www.compugreif.com Elementos de

computación y redes

18 Hobbies $ Cosas Bogotá 091-6364340 091-2562476

www.hobbyservices.com, www.hobbico.com

Robótica sercomotores

19 CEKIT Pereira 3352575 3252653

kit de CEKIT, revistas, vídeos

20 TEC100 Bogotá 091-308888

Elementos de computación y redes

21 ELECTRÓNICA AZ Bucaramanga Bucacentro

097-6301673

Electrónica varios, Circuitos integrados,

módulos zigbee, montaje superficial

22 Teleradio Cúcuta

Electrónica varios, Circuitos integrados

Page 92: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

92 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

www.kidscience.miningco.com/ (Proyectos para niños)

1. www.4qd.co.uk/ccts/index.html (Circuitos para aficionados)

www.4justnet.ne.jp/~sei.inoue/e_menu.htm

www.picpoint.com (Proyecto de microcontroladores)

www.seattlerobotics.org/encoder/index.html

(Robótica)

www.xs4all.nl/~ganswijk/chipdir/chipdir.html

(Todos los fabricantes)

www.ti.com/sc/5016

(Texas Instruments)

www.burr-brown.com/ www.scenix.com/ (Scenix), fabricación de microcontroladores. www.microchip.com (Microchip), fabricación de microcontroladores. www.siemens.de/semiconductor (Siemens Semiconductor) www.infineon.com (Antigua Siemens Semiconductor) www.dalsemi.com/ (Dallas Semiconductor) www.national.com (National semiconductor) http://ella.swin.net/ (Circuitosd integrados varios) www.crhc.uiuc.edu/~dburke/databoockshelf.html (Hoja de datos de integrados). www.toshiba.com (Toshiba semiconductor) www.Sanyo.com (Sanyo) www.amd.com (Circuitos integrados Análogos)

(Burr-Brown corporation)

Dirección de SOFTWARE 1. www.cadsoftusa.com (Software de EAGLE) Reparación de aparatos eléctricos y electrónicos: 1. www.paranoia.com/~filipg/HTML/REPAIR/ 2. www.anatekcorp.com/index.htm 3. www.torch-usa.com/ (Reparación de computadoras) 4. www.teleline.es/personal/pacoalv/ 5. http://members.xoom.com/ELECTRÓNICOs/ 6. http://home.coqui.net/demi/

http://www.usb.org/ http://www.everythingusb.com/ http://www.semiconductors.philips.com/buses/usb/ http://www.monografias.com/trabajos11/usbmem/usbmem.shtml http://www.ilustrados.com/publicaciones/EpyVFplyFkUxOgPmDT.php http://electronics.howstuffworks.com/usb.htm/printable http://www.carsoft.com.ar/usb.htm http://cipres.cec.uchile.cl/~el54d/trabajos_exposiciones/USB/USB.htm http://www.hardwarebook.net/ http://www.pchardware.org/ http://www.multingles.net/docs/alezito_usb.htm http://www.nicatech.com.ni/quees.shtml http://www.semiconductors.philips.com/buses/usb/products/otg/

(Burr-Brown corporation)

Page 93: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

93 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Google

Teoría de Electrónica 1. www.bdinteractive.com/history/ahistory.html (Historia de la

telecomunicaciones) Buscadores

1. Altavista 2. Infoseek 3. Trovator 4. Metacrawler 5. Ecg products

Yahoo Google

ALGORITMOS Y FUNDAMENTOS DE PROGRAMACION II. JUSTIFICACIÓN Es importante que el estudiante de ingeniería obtenga y desarrolle destrezas y habilidades en la solución de problemas mediante computadores a partir de conceptos básicos de algoritmos, siendo esta una asignatura básica, que permite al alumno la construcción adecuada y eficiente en el desarrollo de software.

III. OBJETIVO GENERAL Desarrollar en el estudiante la lógica en la solución de problemas cotidianos y complejos a través de métodos algorítmicos y las herramientas computacionales. IV. OBJETIVOS ESPECÍFICOS Impartir a los estudiantes los conceptos básicos (teóricos y prácticos) para la solución de

problemas con la ayuda de los computadores.

Page 94: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

94 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

Orientar al estudiante la forma de definir y analizar un problema Diseñar algoritmos para la solución de problemas con la ayuda de los computadores Aprender a estructurar un programa computacional Determinar si los algoritmos desarrollados dan las soluciones adecuadas

V. CONTENIDO DE LA ASIGNATURA

NUM. TEMAS SUBTEMAS

1 INTRODUCCIÓN A LA INFORMÁTICA

1.1. definiciones 1.1.1. Datos, información e Informática 1.1.2. Sistemas 1.1.3. Sistema de Procesamiento de Datos 1.2. Componentes básicos de un sistema de procesamiento de datos. 1.2.1. Hardware 1.2.2. Software

2 ALGORITMOS, CONCEPTOS BÁSICOS

2.1. Etapas para la solución de problemas por computador. 2.2. Algoritmos 2.2.1. Conceptos de seudocódigo, tipos de diagramas. 2.2.2. Tipos de Algoritmos 2.3. Datos, Tipos de datos Simples. 2.4. Constantes 2.5. Variables 2.6. Expresiones 2.6.1. Operadores Aritméticos, Lógicos y Relaciónales 2.6.2. Prioridades de los Operadores. 2.6.3. Expresiones Aritméticas 2.6.4. Expresiones Booleanas 2.7. Algunas funciones Internas

Page 95: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

95 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

3 PRIMITIVAS

ALGORITMICAS

3.1. Elementos Básicos de un Algoritmo 3.1.1 Inicio - Fin 3.2 Operación de Asignación 3.3. Primitiva de entrada / Salida de Información 3.4. Primitivas para bloques condicionales no repetitivos 3.4.1. Si-Fin-Si, Si-Sino-, Fin Si 3.5. Contadores 3.6. Acumuladores 3.7 Interruptores y Switch 3.8. Estructuras Anidadas 3.9 Registro identificador y Registro centinela 3.10 Bucles y ciclos 3.11 Primitivas Bloques condicionales repetitivos 3.11.1 Hacer Para 3.11.2 Hacer Mientras Que 3.11.3 Repita - Hasta Que

4 ARREGLOS 4.1 Vectores ó Arreglos unidimensionales 4.2 Matrices o Arreglos multidimensionales

VI. ESTRATEGIAS METODOLÓGICAS La asignatura será dirigida por el docente, teniendo en cuenta los lineamientos establecidos por la dirección del programa, a través de tres estrategias:

Docencia Directa: Esta estrategia corresponde a clases presenciales, donde el docente, expondrá los conceptos principales de cada tema, fomentando el interés, la participación y la investigación del estudiante, mediante el diseño y dirección de proyectos, talleres, debates, seminarios, sustentaciones, lecturas autorreguladas, mapas conceptuales y ensayos.

Trabajo Independiente: Esta estrategia corresponde al autoaprendizaje por parte del estudiante. Para ello, el estudiante debe documentarse y preparar los diferentes temas de la asignatura con anticipación; teniendo en cuenta el contenido y las fuentes bibliográficas suministradas por el docente y utilizando las franjas de usuario programadas en las salas de informática para el componente practico.

Horas de Asesoría: Esta estrategia corresponde a la asesoría que debe brindar el docente a los estudiantes, sobre las tareas asignadas, en el sitio y hora concertados.

VII. SISTEMA DE EVALUACIÓN

La asignatura se evaluará a través de dos parciales y un examen final, tal como lo estipula la Universidad de la siguiente manera:

Parcial Valor Temas Fecha Primero 30% Conceptos básicos. El

Page 96: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

96 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

proceso de la programación.

Segundo 30% Estructuras de control lógico. Subprogramas.

Examen Final 40% Arreglos

BIBLIOGRAFIA RECOMENDADA LIBRO Contenido

Diseño Electrónico. Circuitos y sistemas. Savant, Roden y Carpenter. 2ª. Edition. Addison Wesley

Data sheet microcontroladores microchip Tutorial MPLAB IDE versión 7.1 de Microchip App Notes de Microchip (www.microchip.com) MICROELECTRONIC CIRCUITS. Adel. S. Sedra & K. C. Smith. Editorial OXFORD UNINERSITY PREES

USB - Hardware & Software por John Garney, Ed Solari, Kosar Jaff y otros (Ed. Annabooks)

VIII. BIBLIOGRAFÍA CAIRÓ, Osvaldo. Metodología de la programación. Algoritmos, diagramas de flujo y Programas.

Tomo I. Alafaomega.

ALCALDE LANCHARRO, Eduardo y GARCIA LOPEZ, Miguel. Informática básica. 3ra ed. McGraw-Hill.

JOYANES AGUILAR, Luis. Fundamentos de programación. Algoritmos y estructuras de datos. 2da

ed., McGraw-Hill, Madrid, 1996.

JOYANES AGUILAR, Luis. Problemas de metodología de la programación. 2da ed., McGraw-Hill,

Madrid, 1995.

HERRERA MORALES, Edgar Enrique. Informática. Curso básico de introducción a los computadores.

CEAP. Bucaramanga, 1995.

PEREZ PEREZ, José. Algoritmos. Estructuras básicas. Manual Teórico-Práctico para estudiantes de

Informática. Ediciones UNINORTE. 1993.

CARRILLO RINCÓN, Elberto. Introducción a los computadores. Problemario. Solucionario. Escuela

de Ingeniería de Sistemas e Informática. Universidad Industrial de Santander. 1995.

LONG, Larry. Introducción a las computadoras y al procesamiento de la información. McGraw-Hill.

1990.

CORREA, Guillermo. Desarrollo de algoritmos. McGraw-Hill. 1990

Page 97: Seccion 1- Teoria de Microcontroladores Abril-2010

SSEECCCCIIOONN 11 IINNFFOORRMMAACCIIOONN GGEENNEERRAALL DDEE EELLEECCTTRRÓÓNNIICCAA DDIIGGIITTAALL

97 de 97 DigiBook – (Guía de Proyectos Microcontrolados)

Marzo /2010

TREMBLAY, Jeany y BURT, Richard. Introducción a la ciencia de los computadores. Un enfoque

algorítmico. McGraw-Hill 1988.

LOZANO, Letvin. Diagramación y Programación. Ejercicios Propuestos y resueltos.