Tamaño: px
Comenzar la demostración a partir de la página:

Download ""

Transcripción

1

2

3

4

5

6 CAPITULO I 1.1 Introduccion Los sistemas digitales han logrado avanzar a tal grado que en la actualidad se pueden alcanzar logros que alguna ves solo fueron en los sueños, de forma que ahora se pueden realizar diferentes tarea complejas en lapsos de tiempo relativamente menor al que se necesitaba para algunas tareas en el pasado, una de ellas es gracias a la aparición de microcontroladores (PIC). En todo el planeta ocurren fenómenos físicos que en algunas de las situaciones necesitamos comprender de diferente manera o tal vez necesitamos controlar, por ejemplo, la temperatura de una habitáculo, paso de alguna persona o de la intrusión de un objeto, etc. para lo cual se pueden utilizar una multitud de elementos electrónicos que combinados nos llevan a mejorar la vida y agilizar procesos 1.2 Objetivos Nuestro principal objetivo es desarrollar un sistema de seguridad fiable que cubra todos los aspectos más importantes de seguridad en el museo de ciencias zigzag de Zacatecas. Para lo cual haremos una maqueta con los elementos principales que llevara el museo en caso de que así lo solicite, el cual contara con los siguientes elementos, sensores magnéticos, sensor de humo, sensor de rompimiento de cristales, sensor de temperatura con su respectivo extractor, sensor de movimiento, sensor infrarrojo y chapa eléctrica la cual contendrá un display y un teclado para manejar la alarma. 1.3 Justificacion El motivo por el cual se pretende desarrollar un sistema de seguridad para este museo, es principalmente porque este no cuenta actualmente con ningún tipo de sistema de seguridad electrónica, ya que este cuenta con equipo en exhibición e interacción algunos de alto costo, lo cual justifica la implementación de monitoreo y en algunos casos de proteger, una o varias salas. 1

7 CAPITULO II En este capitulo se encuentran las características de debe cumplir un museo en cuanto a seguridad y protección y algunos detalles de cada uno de los componentes electrónicos del sistema de alarma que se utilizan en algunos museos. CAPITULO III En este capitulo se pretende mostrar las características del PIC que se usara en este caso que es el PIC 16f877, así como posibles aplicaciones que tiene este, así como diferenciar entre microcontrolador y microprocesador CAPITULO IV En este capitulo se muestran las entradas y salidas del PIC 16f877, así como los componentes que va a contener cada una de las entradas y salidas ya que como en este caso será la aplicación para una alarma, se tendrán entradas y salidas CAPITULO V Con formato: Fuente: Negrita, Español (México) En este capitulo se da una pequeña introducción al software NIPLE que se uso para la programación del PIC, ademas del manual de operación del sistema de alarma. Con formato: Justificado, Interlineado: sencillo CAPITULO VI Este capitulo contiene toda la programación que se hizo mediante diagramas de flujo. 2 Con formato: Español (México)

8 CAPITULO II.- STEMAS DE SEGURIDAD 2.1 Seguridad en el museo Un Museo, como entidad depositaria responsable de la salvaguarda, preservación y divulgación del patrimonio de una comunidad, debe encarar con responsabilidad el aspecto de seguridad de su acervo cultural. La pérdida o destrucción de cualquier material histórico, artístico o científico significaría siempre un perjuicio para toda la comunidad. De una manera general la seguridad aplicada a los Museos implicará: Prevención en la construcción de edificios Protección contra incendios Protección contra robos Protección contra vandalismo Sistemas de seguridad y vigilancia 2.2 Dispositivos tecnicos de seguridad La importancia y efectividad de los sistemas de detección ha sido reconocida y su tecnología se ha desarrollado hasta el punto de poder, en muchos casos, ser Regulados a distintos tiempos de respuesta. Para decidir el tipo de detectores a instalar, el Museo debe siempre tener en cuenta los objetos bajo su protección y su situación económica, a fin de seleccionar el sistema o equipo más efectivo en relación a su costo. Para la seguridad antes mencionada se tienen los siguientes dispositivos 3

9 Detectores de humo. Sensores magnéticos. Detector de movimiento. Cámaras de video. Cámaras de visión nocturna. Alarma contra incendio Detectores de humo Uno de los artefactos más importantes para la prevención de incendios en los museos es el detector de humo. Luego de volverse comunes a principios de la década de 1970, la venta de los detectores de humo aumentó rápidamente y el precio bajó, de manera que para el año1991, el 88 % de los museos en Estados Unidos tenía por lo menos uno, en cada sala y podían comprarse por menos de diez dólares. Varios estudios han determinado que cuando hay instalados detectores de humo, que funcionan, la probabilidad de morir a causa de un incendio se reduce a la mitad. Los detectores de humo actualmente instalados han salvado miles de vidas, aunque persisten varios problemas. Primero, el 12 % de los museos sin dichos detectores registra más de la mitad de los incendios; segundo, se estima que un tercio de los detectores de humo instalados no están funcionando, con frecuencia por la falla de no cambiar la batería gastada; y tercero, muchas son los museos que no tienen la cantidad de detectores de humo que se precisan para proteger adecuadamente a los visitantes del museo. 4

10 2.2.2 Sensores magneticos El censor consta de dos partes, emisor y receptor. El emisor es básicamente un potente imán el cual constantemente genera un campo electromagnético por lo que no necesita de cables y el receptor es un tipo de switch normalmente abierto que se activa por medio de un campo electromagnético. El emisor se coloca en una orilla de la parte externa de la puerta y el receptor se coloca en una parte de la orilla del marco de la puerta de tal manera que al estar cerrada el receptor quede de forma paralela y lo mas cercano posible al emisor. Le permiten tener controlado el perímetro del museo mientras usted no esta dentro. De esta forma el sistema vigilara las puertas y ventanas mientras duerme o cuando alguien no se encuentra cerca y pueda avisar de alguna intrusión. También le sirven para marcar e indicar el estado de las puertas y ventanas al salir, de esta forma no volverán a quedarse abiertas las ventanas del museo cuando no se encuentre en el Detector de movimiento La función de un detector de movimiento, como dice su propio nombre, es la de detectar cualquier cosa o persona en movimiento. Se encuentran, generalmente, en sistemas de seguridad o en circuitos cerrados de televisión. El sistema puede estar compuesto, simplemente, por una cámara de vigilancia conectada a un ordenador, que se encarga de 5

11 generar una señal de alarma o poner el sistema en estado de alerta cuando algo se mueve delante de la cámara. Aunque, para mejorar el sistema se suele utilizar más de una cámara, multiplexores y grabadores digitales. Además, se maximiza el espacio de grabación, grabando solamente cuando se detecta movimiento. Un algoritmo que compara la imagen actual con una de referencia y, posteriormente, cuenta los píxeles en que difieren las dos imágenes, es una forma sencilla y eficiente de detectar movimiento. Aunque los algoritmos que se emplean son más complejos, debido a que lo explicado anteriormente lleva problemas cuando la cámara que registra no se encuentra fija o cuando se producen otros cambios, como por ejemplo, de iluminación Cámaras de video Las cámaras son cada vez más resistentes, pequeñas, sensibles y más baratas que antes. Imágenes tomadas pueden retransmitirse de diversas maneras y a la inversa, la cámara puede ser manejada a distancia. Para el transporte de imágenes se puede usar todo lo que pueda transportar datos digitales: (coaxial) cables, fibra óptica, la línea telefónica normal, ISDN, teléfono de autos, radio de bolsillo, emisores/receptores y para distancias cortas es apropiada actualmente hasta la luz infrarroja. También pueden ser usados a veces, cables que se conectan al televisor. Ahora los museos se envían mensajes de ida y vuelta a través de las (partes no visibles) de determinadas frecuencias de TV. Las cámaras pueden ser conectadas a computadoras y a diversos sistemas high - tech (de alta tecnología) de manera que se pueda hacer más con la información de las imágenes. 6

12 2.2.5 Cámaras de visión nocturna Antes no era posible ver en la oscuridad. Gracias a la invención del amplificador de luz residual y el visor infrarrojo, es posible actualmente. Al principio la calidad de la imagen no era óptima. Podía ocurrir alguna vez que se viera en la pantalla una mancha gris en el lugar en que se suponía que debería verse la cara del asaltante del Banco. Y todavía sucede a veces. Sin embargo, actualmente hay aparatos que pueden fotografiarte o filmarte muy bien aunque tú no veas casi nada. Existen dos tipos de cámaras infrarrojas: las activas. las pasivas. La cámara activa emite luz infrarroja a través de un reflector, cuya apariencia es la de un disquete negro o rojo pálido que está sobre la cámara o en otro sitio. Así como no todos los sonidos son audibles para el oído humano, tampoco todos los tipos de luz son visibles a nuestros ojos. La luz infrarroja no puede verse sin Medios auxiliares especiales. Bajo el término de cámara infrarroja pasiva entendemos la cámara que reacciona al calor. El funcionamiento de la misma está basado en el hecho de que objetos con una temperatura entre 0 y 40 grados Celsius (quizás entre ellos tu propio cuerpo) "emiten" calor dentro de la zona infrarroja. Una moderna cámara infrarroja pasiva que registra diferencias térmicas hasta 0,01 grado, convierte el calor en imagen visible para la gente. De ese modo no puede ser reconocible un patrón térmico determinado; las superficies calientes aparecen como lugares iluminados, las frías como oscuros. Con la ayuda de una cámara de ese tipo se puede determinar cuántas personas hay presentes en un recinto cerrado y cuáles son sus siluetas. En principio, todo lo que tiene que ver con diferencias de temperatura, puede ser registrado. Lo que no quita que la imagen construida por la cámara, pueda ser interpretada erróneamente. 7

13 Si el detector térmico de este tipo de cámara tiene aproximadamente la misma temperatura que el objeto buscado, la misma no funciona. Por eso el detector de las mejores se enfría hasta cerca de los -200 grados Celsius Alarma contra incendio Un sistema para museos de alarma para incendios generalmente forma parte de un sistema completo de seguridad que ofrece, además de protección contra los incendios, protección contra robos. Dicho sistema vigila las puertas, ventanas y todos los espacios del museo por donde pueden entrarse a dicho museo, y puede brindar servicio de vigilancia marcando su número de teléfono para informar sobre un incendio o reportar a un intruso a una oficina de seguridad de donde se lo comunicarán al departamento de policía o al departamento local de bomberos. Dado su costo relativamente alto, esos sistemas por lo general se encuentran solamente en las casas grandes. El instalar esos sistemas puede costar dólares o más, y los servicios de vigilancia de 24 horas cuestan entre 15 y 20 dólares al mes. 2.3 Componentes del sistema Esos sistemas constan de un panel central de control, al que están conectados los detectores de humo y los detectores térmicos, y campanas y bocinas que suenan cuando se activa el sistema. Otros sensores relacionados con los robos, conectan las puertas y ventanas, o vigilan los cuartos para detectar movimientos o el calor del cuerpo humano. El panel de control opera con la electricidad de la casa, pero también tienen una batería de emergencia que puede operar el sistema por 24 horas durante un corte del servicio eléctrico. 8

14 Los requerimientos básicos para la cantidad y la ubicación de las alarmas son exactamente los mismos que para los detectores individuales que mencionamos antes. La diferencia es que un sistema de alarma contra incendios le permite más flexibilidad para colocar alarmas adicionales y campanas o bocinas adicionales (o luces intermitentes, si es que alguna persona en la casa tiene dificultades para escuchar). Los sistemas de alarma para incendios que ofrecen servicios de supervisión a distancia, también se pueden usar para servicios de alerta médica. En ese caso, una persona con problemas de salud, que vive sola, carga un radio transmisor que puede activar el sistema en caso de que necesite ayuda. Las señales recibidas en la estación de vigilancia se identifican por el tipo (incendio, robo, alerta médica), para poder prestar la ayuda adecuada. 2.4 Propuesta de control de seguridad en el museo de ciencias Este es el tema de nuestra tesis por lo que nosotros proponemos lo siguiente. En el caso especifico del museo de ciencia zig-zag, el cual es un museo de ciencias dedicado a la comprensión del niño a comprender fenómenos naturales sencillos ubicado en donde era PEMEX en el centro de la ciudad de Zacatecas. Se propone implementar un sistema de seguridad en el cual se tiene planeado utilizar un tablero de 16 dígitos para introducir una contraseña y si es necesario cambiarla desde el mismo teclado sin necesidad de reprogramar el PIC, teniendo un display para poder observar en todo momento el estado del sistema de acceso, además de sensores de movimiento, de temperatura, y de incendio. Todos los sensores que se manejen tanto de movimiento, de humo y de temperatura serán controlador por el PIC, se propone usar el PIC16F877 Por lo tanto consideramos que este sistema de acceso junto con la alarma de incendio y la alarma de detección de movimiento tenemos un buen sistema de seguridad, así como el control de temperatura que también estará monitoreado y controlado por el PIC. Este sistema de temperatura se conforma principalmente del sensor LM35 y un extractor de aire. El sistema de video-vigilancia esta compuesto por las cámaras de video que sean necesarias un software y una PC, teniendo ventajas también de detección de movimiento y 9

15 almacenamiento en disco duro de los videos cuando se registre algún movimiento, de la misma manera pudiendo reproducir una alarma sonora en la PC Museo de ciencias zig zag Dentro de las instalaciones del museo se encuentran 7 edificios con material interactivo y de exhibición, de las cuales ninguna cuenta con equipo de seguridad tales como los que se mencionan al principio de este capitulo, a continuación se muestran algunas imágenes en general del museo y sus instalaciones, junto con el plano donde se puede observar la ubicación de cada uno de los edificios, cave mencionar que cada edificio cuenta con su nombre de acuerdo a cada tema relacionado a su destino. 10

16 5 P OLOS Y CARGAS AGUA Y AIRE 4 1 NZAC 2 PIN PON 6 MASMES 3 ACCION Y REACCI ON 7 VIE NEVA VISTA DE PLANTA DE LAS INSTALACIONES DEL MUSEO 11

17 2.4.3 Edificio no. 1 N zac En esta sala aunque se encuentra con poco equipo este tiene tres pantallas de plasma que ya su calidad y elevado costo seria conveniente tomarla en cuenta y seria una de las salas que llevase más censores de movimiento enfocadas hacia las pantallas y otro a una PC de escritorio que se encuentra en la misma sala. 12

18 2.4.4 Edificio no. 2 pin pon En esta área se encuentra un contenido de elementos de los cuales no seria factible la instalación de un sistema como el que se propone ya que todos los elementos que este contiene son solo artículos de madera y demasiado sencillos. 13

19 2.4.5 Edificio no. 3 acción reacción En la sala anterior encontramos que la seguridad seria algo de tomar en cuenta ya que esta contiene aparatos de un valor mas elevado que en la anterior en ella encontramos de valor una cama de clavos la cual tiene un funcionamiento electrónico controlado, un equipo de nubes portátil el cual conlleva un sistema electrónico de costo medio alto, así como una hélice que produce energía eléctrica el cual también es de un costo medio elevado. Pero así como se ocuparía será solamente un equipo de censores de movimiento ya que solo seria cuidar de intrusión nocturna al habitáculo para evitar su robo. 14

20 2.4.6 Edificio no. 4 agua aire 15

21 En esta sala se encuentra llena de aparatos pero a excepción de la cámara de aire que ya su gran volumen y robustez es difícil robarlo o maltratarlo, todos los de más elementos son censillos y de bajo costo por eso tomamos en cuenta solo para poner solo detectores de movimiento Edificio no. 5 Polos Cargas 16

22 Esta es una de las salas en la que mas tenemos el interés de poder instalar el todo lo que tenemos de la alarma ya que en esta se encuentran 8 maquinas de escritorio así como la esfera de plasma que también exige supervisión y cuidado de quien la pudiera dañar así como ver que le estén dando buen uso a las maquinas y la esfera, por medio de la cámara, y por el exceso de calor se pondría un extractor de calor controlado por un censor de temperatura, así como controlar la entrada a este por medio de el teclado y la cerradura electrónica y por si acaso entraran por otro lado serian los sensores de movimiento 17

23 2.4.8 Edificio no. 6 mas menos En esta sala se tiene poco equipo de importancia solo lo mas importante es lo que se tiene en las fotos pero igual que en algunas de las salas antes mencionadas será conveniente poner sensores de movimiento para proteger de la intuición de algún individuo no deseado, a horas que no sean de trabajo y así evitar algún robo de los equipos antes descritos, además que el calor generado por las PC de escritorio no es suficiente como para justificar el sensor de temperatura y el extractor de calor 18

24 2.4.9 Edificio no. 7 viene va En esta sala se tiene equipo de importancia y sobre todo las dos PC de escritorio pero aun así estudiándola tomamos la decisión de solo poner sensores de movimiento, ya que el material que contiene no es de un costo tan elevado y no es tan delicado como en la sala de polos y cargas que es la que justificaría poner un sistema completo, además que el calor generado por la PC no es grande como para justificar un sensor de temperatura y un extractor de calor. 19

25 CAPITULO III.- CIRCUITOS INTEGRADOS PROGRAMABLES (PIC) 3.1 Introduccion a los microcontroladores. Que es un microcontrolador? Los microcontroladores hicieron su aparición a principio de los 80 y se trata de un circuito integrado programable que contiene toda la estructura (arquitectura) de una microcomputadora. Es decir que, dentro de un microcontrolador podemos encontrar: una CPU (Unidad Central de Proceso) Memoria RAM Memoria ROM Memoria EEPROM (Memoria de lectura y escritura no volátil, es decir, que no se pierden los datos cuando el circuito es desconectado) Puertos de Entrada/Salida (Pines de E/S) E incluso muchos modelos de microcontroladores incorporan distintos módulos periféricos, como pueden ser; conversores analógico/digital (A/D), módulos PWM (control por ancho de pulso), módulos de comunicaciones seriales o en paralelo, y más. Todo esto lo podemos encontrar dentro del mismo circuito integrado. Cada vez existen más productos que incorporan microcontroladores con el fin de aumentar sustancialmente sus prestaciones, reducir su tamaño y costo, mejorar su confiabilidad y disminuir el consumo de energía. 20

26 Los microcontroladores PIC Los microcontroladores denominados PIC corresponden exclusivamente a la marca Microchip. PIC significa "Peripheral Interfase Controller" y fue desarrollado por Microchip a principio de los 80. Existe una gran cantidad de modelos de microcontroladores cuyas características y prestaciones varían de un modelo a otro. De esta manera los desarrolladores pueden seleccionar el modelo que mejor se ajuste a sus necesidades. Los distintos modelos de microcontroladores se agrupan por familia. Una familia puede estar formada por un conjunto de modelos cuyas características y prestaciones son bastante similares. Cuando compramos un microcontrolador, la memoria del mismo se encuentra vacía y para que funcione es necesario que sea programado, es decir que, el desarrollador debe escribir un programa que contenga todos los procesos que el microcontrolador debe ejecutar. Este programa se escribe en un lenguaje llamado Assembler (ensamblador) cuya principal característica es su alta complejidad ya que se trata de un lenguaje de bajo nivel, es decir, que se encuentra más Cercano al lenguaje de la máquina que del lenguaje humano. Por esto, sólo los técnicos altamente capacitados están en condiciones de realizar desarrollos electrónicos que incluyan microcontroladores. Incluso a estos especialistas les implica un gran esfuerzo intelectual y mucho tiempo de desarrollo Estructura de un microcontrolador Básicamente, un microcontrolador esta compuesto por los siguientes componentes: Procesador o CPU (del inglés Central Prossesing Unit o Unidad Central de Proceso). Memoria para el programa tipo ROM. Memoria RAM para contener los datos. Líneas de E/S para comunicarse con el exterior. Diversos módulos para el control de periféricos (temporizadores, Puertas Serie y Paralelo CAD: Conversores Analógico/Digital, CDA: Co inversores Digital/Analógico, etc.). 21

27 3.1.3 El procesador o CPU Es el elemento más importante del microcontrolador y determina sus principales características, tanto a nivel hardware como software. La CPU (Central Processing Unit o Unidad Central de Proceso) se encarga la decodificación y ejecución del programa. Actualmente, existen 3 tipos de arquitectura de procesadores: CISC (Computadores de Juego de Instrucciones Complejo): Disponen de más de 80 instrucciones en su repertorio, algunas de las cuales son muy sofisticadas y potentes, requiriendo muchos ciclos para su ejecución. Una ventaja de los procesadores CISC es que ofrecen instrucciones complejas que actúan como macros. RISC (Computadores de Juego de Instrucciones Reducido): En estos procesadores el repertorio de instrucciones es muy reducido y las instrucciones son simples y generalmente se ejecutan en un ciclo. La ventaja de éstos es que la sencillez y rapidez de las instrucciones permiten optimizar el hardware y el software del procesador. SC (Computadores de Juego de Instrucciones Específico): En los microcontroladores des - tinados 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 Memoria ROM La memoria ROM es una memoria no volátil, es decir, que no se pierden los datos al desconectar el equipo y se destina a contener el programa de instrucciones que gobierna la aplicación. Los microcontroladores disponen de capacidades de ROM comprendidas entre 512 bytes y 8 k bytes. Existen distintos tipos de memorias ROM, la cual determinará la aplicación del microcontrolador. 22

28 3.1.5 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 costo 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 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 una 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 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 EEPROM Se trata de memorias de sólo lectura, las cuales se puede escribir y borrar 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. 23

29 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 continúa. 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 FLASH Se trata de una memoria no volátil, de bajo consumo, que se puede escribir y borrar. Funciona como una ROM y una RAM pero consume menos y es más pequeña. A diferencia de la ROM, la memoria FLASH es programable en el circuito. Es más rápida y de mayor densidad que la EEPROM. La alternativa FLASH está recomendada frente a la EEPROM cuando se precisa gran cantidad de memoria de programa no volátil. Es más veloz y tolera más ciclos de escritura y borrado Memoria RAM La memoria RAM es una memoria volátil, es decir, que se pierden los datos al desconectar el equipo, y se destina a guardar las variables y los datos. Los microcontroladores disponen de capacidades de RAM comprendidas entre 20 y 512 bytes. 3.2 Registros y Bits Un registro es una posición de memoria en la cual se puede almacenar un dato. Es decir que la memoria esta dividida en pequeñas partes llamadas Registros. Dentro de la memoria, cada registro se identifica mediante un número, el cual se denomina Dirección de memoria y generalmente está expresado en formato Hexadecimal. El primer registro de una memoria corresponde a la dirección 00H. 24

30 Dado que identificar a cada registro mediante un número hexadecimal puede resultar muy complejo a la hora de diseñar el programa, existe la posibilidad de asignar un nombre a una dirección de registro. En general, este nombre está directamente relacionado con la función que cada registro cumple dentro del sistema. Los registros no solo son utilizados por el programador (usuario) para almacenar los datos que la aplicación debe procesar, sino que, además, sirven para controlar todo el funcionamiento del microcontrolador en su conjunto. Esta función, la cumple un conjunto de registros que ya vienen Predefinidos desde la fábrica. Es decir, que el fabricante asigna las funciones de configuración y control del microcontrolador en un grupo de registros y el usuario no puede modificar la función que cumple cada uno de éstos. Cada Registro está dividido en 8 partes a los cuales se los denomina Bits. Entonces podemos decir que un Registro esta formado por un conjunto de 8 bits. El Bit es la menor unidad de información que un sistema digital puede procesar y solo puede contener los valores lógicos 0 y Líneas de Entrada/Salida (E/S), (Puertos) Los microcontroladores cuentan con una serie de pines destinados a entrada y salida de datos o señales digitales. A estos pines se les denomina Puerto. Como mencionamos anteriormente, todo el funcionamiento del microcontrolador está controlado a través de los registros. Los puertos no son la excepción, también están controlados por los registros. Por esto, un puerto no puede estar formado por más de 8 pines; 1 Pin por cada Bit de un registro. Un puerto si puede estar Formado por menos de 8 pines. Un microcontrolador puede contener varios puertos dependiendo del modelo. A cada puerto se lo identifica con una letra. Por ejemplo; Puerto A, Puerto B, etc. Para poder utilizar un puerto, primero el mismo debe ser configurado. Cada pin de un puerto puede ser configurado como entrada o salida independientemente del resto de los pines del mismo puerto. 25

31 3.4 Módulos Temporizadores Internos (TMRs) Un temporizador interno (TMR) es un módulo de hardware incluido en el mismo microcontrolador el cual está especialmente diseñado para incrementar automáticamente el valor de un registro asociado al TMR cada vez que el módulo TMR recibe un pulso. A este pulso se lo llama señal de reloj. El módulo TMR siempre incrementa el valor del registro asociado, nunca decremento dicho valor. Algunos microcontroladores pueden incluir más de un módulo TMR y la señal de reloj de cada uno de éstos puede ser de origen interno o externo. Si el origen de la señal de reloj está configurado como externo, el módulo temporizador puede ser utilizado como un contador de eventos externos, incrementando el TMR con cada pulso recibido mediante el pin correspondiente. Si el origen de la señal de reloj es interno, el TMR incrementa con cada ciclo del oscilador. Esto permite utilizar el temporizador como contador de ciclos de programa, donde, un ciclo corresponde al tiempo de ejecución de una instrucción, lo cual se puede calcular con la siguiente fórmula: ( Frec. Osc. / 4) Donde Frec. Osc. es la frecuencia del oscilador utilizado. Dado que la velocidad de ejecución del microcontrolador corresponde a ¼ de la velocidad del cristal utilizado, cada ciclo de programa se ejecuta en un tiempo determinado según el cristal que estemos utilizando. Por ejemplo; con un cristal de 4Mhz la velocidad real de procesamiento del microcontrolador es de 1 Mhz. Esto significa que cada ciclo de programa se ejecuta a 1/ (1 us) y dado que cada incremento del TMR corresponde a un ciclo de programa, si contamos los incrementos de un TMR, indirectamente podremos calcular el tiempo transcurrido. 26

32 3.5 Utilizando un microcontrolador Como mencionamos anteriormente, el microcontrolador tiene una memoria de programa, donde grabamos las instrucciones necesarias para que el micro realice el trabajo que necesitamos. Cuando compramos un microcontrolador, la memoria de programa viene vacía. Para que un microcontrolador funcione es necesario programarlo. Los microcontroladores se programan en un lenguaje de programación llamado Ensamblador (en inglés Assembler) cuya principal característica es su altísima complejidad. Los lenguajes de programación se clasifican según el Nivel de programación en: escritura fácilmente legible y comprensible por el hombre. En la actualidad se trata de lenguajes de tipo visual. poco más al lenguaje de maquina. Permiten un acceso más amplio al control físico de la maquina (hardware). escribe código en el mismo idioma del procesador. Se tiene control total del sistema. Es necesario un conocimiento de la arquitectura mecánica del procesador para realizar una programación efectiva. El lenguaje de programación es muy especifico para cada modelo de procesador, incluso puede variar de un modelo a otro de procesador dentro de un mismo fabricante. Podemos decir que los lenguajes de alto Nivel se asemejan más al lenguaje humano y que los lenguajes de bajo Nivel se asemejan más al lenguaje de máquina y en el lenguaje ensamblador el usuario debe programar en el propio idioma del procesador. El microcontrolador sólo entiende de números, es decir que, el código Assembler (texto) no puede ser procesado directamente por el microcontrolador. Para poder grabar el programa 27

33 en el micro, primero debemos convertir el texto del código Assembler a números, en general, en formato hexadecimal. A este proceso Se le llama Compilación. Por último, después de compilado, el programa está listo para ser grabado al microcontrolador. Esto realiza mediante una placa programadora. A ésta placa programadora, comúnmente se la llama programador. Existen distintos tipos de programadores los cuales pueden ser para conectar a la PC mediante el puerto Serie (COM) o Paralelo (LPT). Cada programador trabaja en conjunto con un software, mediante el cual se realiza el proceso de lectura y escritura de los microcontroladores. A continuación se presenta un resumen del proceso de desarrollo del código y grabación de un microcontrolador: 1) Escribir el código Assembler. Se genera un archivo con extensión ASM. 2) Compilar el código Assembler. Se genera un archivo con extensión HEX. 3) Grabar (transferir) el programa desde la PC al microcontrolador mediante un programador. 3.6 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 28

34 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. 3.7 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. 29

35 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. 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. 3.8 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. 30

36 Figura 3.1 El microcontrolador. Este es un sistema cerrado. Todas las partes del Con formato: Fuente: Negrita computador están contenidas en su interior y sólo salen al exterior las líneas que gobiernan los periféricos. 3.9 Caracteristicas del PIC16F87X La arquitectura harvard En el caso específico se utilizara el 16f877 La arquitectura conocida como Harvard, consiste simplemente en un esquema en el que el CPU esta conectado a dos memorias a través de dos buses independientes (y no necesariamente deben tener el mismo ancho). Una de las memorias contiene solamente las instrucciones del programa (Memoria de Programa) y la otra almacena los datos (Memoria de Datos). Bus de datos Bus de Instrucciones MEMORIA DE DATOS CPU 8 12 MEMORIA DE INSTRUCCIONES Figura 3.2 Aarquitectura harvard, Muestra como se compone un sistema harvard con la unidad principal de CPU, una memoria de datos y una memoria de programa. Los microcontroladores PIC utilizan la arquitectura Harvard, con una memoria de datos de 8 bits, y una memoria de programa que, según el modelo, puede ser de 12, 14 o 16 bits Principales características Se enumeran las prestaciones y dispositivos especiales de los PIC16F87X. Procesador de arquitectura RISC avanzada 31

37 Juego de solo 35 instrucciones con 14 bits de longitud. Todas ellas se ejecutan en un ciclo de instrucción, menos las de salto que tardan dos. Hasta 8K palabras de 14 bits para la Memoria de Programa, tipo FLASH en los modelos 16F876 y 16F877 y 4KB de memoria para los PIC 16F873 y 16F874. Hasta 368 Bytes de memoria de Datos RAM. Hasta 256 Bytes de memoria de Datos EEPROM. Pines de salida compatibles para el PIC 16C73/74/76/77. Hasta 14 fuentes de interrupción internas y externas. Pila de 8 niveles. Modos de direccionamiento directo e indirecto. Power-on Reset (POP). Temporizador Power-on (POP) y Oscilador Temporizador Start-Up. Perro Guardián (WDT). Código de protección programable. Modo SLEEP de bajo consumo. Programación serie en circuito con dos pines, solo necesita 5V para Programarlo en este modo. Voltaje de alimentación comprendido entre 2 y 5,5 V. Bajo consumo: < 2 ma valor para 5 V y 4 Mhz 20 A para 3V y 32 M < 1 A en standby. 32

38 Figura 3.3 Encapsulado PDIP de 40 pines. Terminales del PIC16F877, esta figura muestra cada una de las terminales del microcontrolador, las flechas indican si son de entrada o salida, en caso de que cuente con dos flechas esto indica que se puede configurar como entrada o salida Terminales de entrada-salida Puerto A: Puerto de e/s de 6 pines RA0 RA0 y AN0 RA1 RA1 y AN1 RA2 RA2, AN2 y VrefRA3 RA3, AN3 y Vref+ RA4 RA4 (Salida en colector abierto) y T0CKI(Entrada de reloj del modulo Timer0) RA5 RA5, AN4 y SS (Selección esclavo para el puerto serie síncrono) Puerto B: Puerto e/s 8 pines Resistencias pull-up programables RB0 Interrupción externa RB4-7 Interrupción por cambio de flanco RB5-RB7 y RB3 programación y debugger in circuit Puerto C: Puerto e/s de 8 pines RC0 RC0, T1OSO (Timer1 salida oscilador) y T1CKI (Entrada de reloj del modulo Timer1). RC1-RC2 PWM/COMP/CAPT RC1 T1O (entrada osc timer1) RC3-4 IIC RC3-5 SPI 33

39 RC6-7 USART Puerto D: Puerto e/s de 8 pines Bus de datos en PPS (Puerto paralelo esclavo) Puerto E: Puerto de e/s de 3 pines RE0 RE0 y AN5 y Read de PPS RE1 RE1 y AN6 y Write de PPS RE2 RE2 y AN7 y CS de PPS Otras terminales VDD: Positivo de alimentación. 2-6 Vcc. VSS: Negativo de alimentación. MCLR: Master Clear (Reset). Mientras en este terminal haya un nivel bajo (0 Vcc), el microcontrolador permanece inactivo. OSC1/CLKIN: Entrada del oscilador (cristal). Entrada de oscilador externo. OSC2/CLKOUT: Salida del oscilador (cristal). 34

40 Figura 3.4 diagrama de conexiones de alimentación En esta figura se muestran las conexiones necesarias para el funcionamiento del PIC así como los componentes necesarios que en el PIC se utilizan son un oscilador a 4 mhz dos capacitares cerámicos de 22pf y resistencia de 10k y sus conexiones a 5v y tierra Dispositivos periféricos 0: Temporizador-contador de 8 bits con preescaler de 8 bits 1: Temporizador-contador de 16 bits con preescaler que puede Incrementarse en modo sleep de forma externa por un cristal/clock. -contador de 8 bits con preescaler y postscaler. dulos de Captura, Comparación, PWM (Modulación de Ancho de Pulsos). Conversor A/D de 1 0 bits. Transmitter) con 9 bit. lo Esclavo (PSP) solo en encapsulados con 40 pines 3.11 Diferencias entre los modelos de 28 y los de 40 pines El PIC 16F873 y el 876 tienen 28 pines, mientras que el PIC 1 6F874 y 877 tienen 40. Nos centraremos en el PIC 16F873 y las diferencias que tiene con sus hermanos son mínimas y se detallan a continuación: Los modelos de 40 pines disponen de 5 Puertos de E/S: A, B, C, D y E, mientras que los de 28 solo tienen 3 Puertos: A, B y C. Los modelos de 40 pines tienen 8 canales de entrada al Conversor A/D, mientras que los de 28 solo tienen 5 canales. Sólo poseen el Puerto Paralelo Esclavo los PIC 16F87X de 40 pines. 35

41 3.12 ELl PIC 16F87X Bajo el nombre de esta subfamilia de microcontroladores, actualmente encontramos cuatro modelos: EL PIC 16F873/4/6 y 7. Estos microcontroladores disponen de una memoria e programa FLASH de 4 a 8 KBytes de 14 bits, considerablemente superior frente al PIC 16F84 en el que solo disponíamos de l Kbyte de 14 bits. De los microcontroladores indicados, el 16F873 y el 16F876 son de 28 pines, mientras que 16F874 y el 16F877 tiene 40 pines, lo que les permite disponer de hasta 33 líneas de E/S. En su arquitectura además incorporan: Varios Timer USART Bus I2C Tabla 3.1 En la Tabla se muestran las características comparativas más relevantes de esta familia de microcontroladores 36

42 3.13 Descripción global del dispositivo Este documento contiene la información específica del dispositivo. Se puede encontrar información adicional del PICmicroTM en el Manual de Referencia de los PIC de la gama media, (DS33023) que se puede obtener en el website de Microchip. El Manual de referencia debe ser considerado un documento complementario a estos datos, y recomendable leerlo para entender mejor la arquitectura del dispositivo y el funcionamiento de los módulos periféricos. La familia consta de cuatro dispositivos (PIC16FS73, PIC16F874, PIC16F876 y PIC 16F877) en estas hojas de datos. Los PIC 1 6F876/873 entran en el bloque de dispositivos encapsulados en 28-pines y los PIC 1 6F877/874 entran en el bloque de dispositivos encapsulados en 40 pines. Los dispositivos de 28- pines no tienen implementado el puerto paralelo esclavo. 37

43 Tabla 3.2 El PIC16F877 por dentro. Esta figura muestra la estructura interna del Con formato: Fuente: Negrita Con formato: Fuente: Negrita Pic16f

44 Tabla 3.3 Descripción de los Pines del PIC 16F874 y PIC16F877 39

45 Descripción de los pines de los PIC 16F874 y 16F877 (Continuación Tabla 3.3) 3.14 Programacion Instrucciones del PIC16F877. Se tienen 35 instrucciones con las cuales se puede programar el PIC, y a continuación se describe cada una de ellas. ADDLW CALL INCF P SLEEP ADDWF CLRF INCFSZ RETFIE SUBLW ANDLW CLRW IORLW RETLW SUBWF ANDWF CLRWDT IORWF RETURN SWAPF BCF COMF MOVF RLF XORLW BSF DECF MOVLW RRF XORWF 40

46 BTFSC DECFSZ BTFSS GOTO MOVWF La función de cada una de las instrucciones se describe a continuación. ADDWF Acción Suma el contenido del acumulador y el registro dado, y el resultado lo guarda en d Sintaxis ADDWF f,d Funcionamiento Add W to file register (Añade W al registro) Operación d = W + f (d puede ser W ó f). Descripción Esta instrucción suma el contenido de un registro específico al contenido de W donde f puede ser un registro cualquiera con un determinado valor. ANDWF Acción Realiza la operación AND entre un registro y W Sintaxis ANDWF f,d Funcionamiento AND W with f Operación d = W AND f (d puede ser W o f). Descripción Esta instrucción realiza la operación lógica AND entre el acumulador y el registro f. el resultado se guarda dependiendo del valor de d. Si este se omite, el valor por defecto es 1 y se guarda en f 41

47 CLRF Acción Borra un registro Sintaxis CLRF f Funcionamiento Clear file register Operación F=0 Descripción Esta instrucción borra un registro específico, poniendo sus bits a cero CLRW Acción Borra el acumulador Sintaxis CLRW Funcionamiento Clear W Operación W=0 Descripción Esta instrucción borra el registro W solamente COMF Acción Complementa el registro F Sintaxis COMF f,d Funcionamiento Complement f Operación d = T f (d puede ser W ó f). Descripción Esta instrucción complementa un registro, es decir, los ceros los convierte en unos, y los unos en ceros. 42

48 DECF Acción Decrementa el registro f Sintaxis DECF f,d Funcionamiento Decrement f Operación d = f 1 (d puede ser W ó f). Descripción Esta instrucción decrementa en una sola unidad el registro "f". DECFSZ Acción Decrementa el registro f, y si el resultado es cero, se salta una instrucción. Sintaxis DECFSZ f,d Funcionamiento Decrement f, skip if 0 Operación d = f 1, si d = 0 SALTA (d puede ser W ó f). Descripción Esta instrucción decrementa el contenido del registro direccionado por el parámetro f, y si el resultado es 0 salta la instrucción siguiente. Si no, sigue con su curso habitual INCF Acción Suma una unidad al registro f Sintaxis INCF f,d Funcionamiento Increment f Operación d = f + 1 (d puede ser W ó f). Descripción Esta instrucción incrementa en una sola unidad el registro "f". 43

49 INCFSZ Acción Incrementa en 1 a f, y si f= 0 salta la siguiente instrucción Sintaxis INCFSZ f,d Funcionamiento Increment f, Skip if 0 Operación d = f + 1, si d = 0 SALTA (d puede ser W ó f). Descripción Esta instrucción incrementa en una sola unidad el registro "f", en la cual si el resultado d es igual a cero, entonces salta la instrucción siguiente. IORWF Acción Operación lógica OR entre el acumulador y un registro Sintaxis IORWF f,d Funcionamiento Inclusive Or W with F Operación d = W OR f (d puede ser W ó f). Descripción Esta instrucción realiza una operación lógica OR inclusivo entre el acumulador W y el registro direccionado por el parámetro f. El parámetro d determina donde se almacenará el resultado de la operación. Si no se pone nada, el valor por defecto es 1 y se guarda en f. MOVF Acción Mueve el contenido de un registro al acumulador o al propio registro Sintaxis MOVF f,d Funcionamiento Move f Operación d = f (d puede ser W ó f). Descripción Esta instrucción mueve el contenido del registro f en el mismo 44

50 registro f o en W. D determina el destino del resultado. Si no se pone nada, el valor por defecto es 1 y se guarda en f. MOVWF Acción Mueve el acumulador al registro f Sintaxis MOVWF f Funcionamiento Move W to f Operación f=w Descripción Esta instrucción copia el contenido del acumulador W en el registro direccionado por el parámetro f. P Acción No opera Sintaxis P Funcionamiento No Operation Operación Ninguna Descripción Esta instrucción no realiza ninguna ejecución, pero sirve para gastar un ciclo de máquina, equivalente a 4 de reloj RLF Acción Rota a la izquierda el registro f Sintaxis RLF f,d Funcionamiento Rotate Left through Carry f 45

51 Operación d = << 1 (d puede ser W ó f). Descripción Esta instrucción rota a la izquierda todos los bits del registro direccionado por el parámetro f pasando por el bit CARRY del registro STATUS (desde los bits menos significativos a los más significativos). Es como si multiplicáramos por dos el contenido del registro. Veamos el registro f de forma gráfica: El bit D7 pasa al CARRY del registro STATUS, el contenido del CARRY pasa al D0, el D0 al D1, etc. RRF Acción Rota a la derecha el registro f Sintaxis RRF f,d Funcionamiento Rotate Right through Carry f Operación d = f >> 1 (d puede ser W ó f). Descripción Esta instrucción rota a la derecha todos los bits del registro direccionado por el parámetro f pasando por el bit CARRY del registro STATUS (desde los bits más significativos a los menos significativos). Es como si dividiéramos por dos el contenido del registro. Si no se pone nada, el valor por defecto es 1 y se guarda en f. 46

52 SUBWF Acción Resta el contenido del registro W el registro f Sintaxis SUBWF f,d Funcionamiento Subtract W from f Operación d = f W (d puede ser W ó f). Descripción Esta instrucción resta el valor contenido en el acumulador W del valor contenido en el registro direccionado por el parámetro f. El parámetro d determina el destino. Si no se pone nada el valor por defecto será 1 y se almacenará en f. SWAPF Acción Invierte los dos nibbles que forman un byte dentro de un registro Sintaxis SWAPF f,d Funcionamiento Swap nibbles in f Operación f = 0123 SWAP 4567 de f Descripción Esta instrucción intercambia el valor de los 4 bits más significativos (D7-D4) contenidos en el registro f, con los 4 bits menos significativos (D3-D0) del mismo. El parámetro d determina el destino. Si no se pone nada, el valor por defecto es 1 y se guarda en f. XORWF Acción Operación lógica OR-Exclusiva Sintaxis XORWF f,d Funcionamiento Exclusive OR W with f Operación d = W OR f Descripción Esta instrucción efectúa la operación lógica XOR (OR exclusivo) 47

53 entre el valor contenido en el acumulador W y el valor contenido en el registro direccionado por el parámetro f. El parámetro d determina el destino. Si no se pone nada el valor por defecto es 1 y se guarda en f Instrucciones orientadas al manejo de bits BCF Acción Pone a cero el bit b del registro f Sintaxis BCF f,b Funcionamiento Bit Clear f Operación F(b) = 0 Descripción Esta instrucción pone a cero un bit que hayamos elegido de un registro determinado. BSF Acción Pone a uno el bit b del registro f Sintaxis BSF f,b Funcionamiento Bit Set f Operación F(b) = 1 Descripción Esta instrucción pone a uno un bit que hayamos elegido de un registro determinado. 48

54 BTFSC Acción Comprueba un bit b del registro f, y salta la instrucción siguiente si este es cero Sintaxis BTFSC f,b Funcionamiento Bit Test, Skip if Clear Operación F(b) = 0?, salta una instrucción Descripción Esta instrucción comprueba el valor del bit b en el registro f, y si b = 0 entonces se salta la siguiente instrucción. Si b = 1 no salta y sigue con su ejecución normal. BTFSS Acción Comprueba un bit b del registro f, y salta la instrucción siguiente si este es uno Sintaxis BTFSC f,b Funcionamiento Bit Test, Skip if Set Operación F(b) = 1?, salta una instrucción Descripción Esta instrucción comprueba el valor del bit b en el registro f, y si b = 1 entonces se salta la siguiente instrucción. Si b = 0 no salta y sigue con su ejecución normal. 49

55 Operaciones con literales y de control ADDLW Acción Suma a W un literal Sintaxis ADDLW Funcionamiento Add literal to W Operación W=W+k Descripción Esta instrucción suma un valor de un literal al contenido del registro W y lo guarda en W. ANDLW Acción Realiza la operación AND entre un literal y W Sintaxis ANDLW k Funcionamiento AND W with k Operación W = W AND k Descripción Esta instrucción realiza una operación lógica AND entre el contenido de W y k. El resultado se guarda siempre en el acumulador W CALL Acción Llama a una subrutina en la dirección k Sintaxis CALL k Funcionamiento Call subroutine Operación CALL k...return PC+1. Descripción Esta instrucción llama a un grupo de instrucciones (subrutina) que comienzan en la dirección k, donde k puede ser un valor numérico o una etiqueta. Siempre termina con la instrucción de retorno (RETURN o RETLW). 50

56 CLRWDT Acción Pone el temporizador WDT a cero. Sintaxis CLRWDT Funcionamiento Clear WatchDog Timer Operación WDT = 0 Descripción Esta instrucción se utiliza cuando programamos el PIC con la opción Watch Dog habilitada. Para evitar el reset del PIC, el programa debe contener cíclicamente la instrucción CLRWDT para ponerlo a cero. Si no se pone a cero a tiempo, el WDT interpretará que se ha bloqueado el programa y ejecutará un reset para desbloquearlo. GOTO Acción Salto incondicional a k. Sintaxis GOTO k Funcionamiento Go to address (label) Operación Salto k Descripción Esta instrucción ejecuta un salto del programa a la dirección k. El parámetro k puede ser un valor numérico o una etiqueta. IORLW Acción Operación lógica OR entre el acumulador y un literal Sintaxis IORWF f,d Funcionamiento Inclusive OR W with l Operación W = W OR l 51

57 Descripción Esta instrucción realiza una operación lógica OR inclusivo entre el acumulador W y un literal. El resultado siempre se guarda en el acumulador. MOVLW Acción Copia el contenido de un literal al acumulador Sintaxis MOVLW f Funcionamiento Move literal to W Operación W=f Descripción Esta instrucción asigna al acumulador W el valor del literal k, el cual debe estar comprendido entre 0 y 255. RETFIE Acción Retorno de la llamada a una subrutina Sintaxis RETFIE Funcionamiento Return From Interrupt Operación FIN INTERRUPCIÓN Descripción Esta instrucción devuelve el control al programa principal después de ejecutarse una subrutina de gestión de una interrupción. RETLW Acción Retorno de subrutina y carga literal k en el acumulador Sintaxis RETLW Funcionamiento Return with Literal in W Operación RETOR con W = k 52

58 Descripción Esta instrucción retorna de una subrutina al programa principal, cargando el acumulador W con el literal k. RETURN Acción Retorno de una subrutina. Sintaxis RETURN Funcionamiento Return from subroutine Operación RETOR Descripción Esta instrucción retorna de una subrutina al programa principal en la instrucción siguiente a la llamada de la subrutina, tomando el valor almacenado en el stack para continuar. Es la última instrucción que forma una subrutina (al igual que RETLW). SLEEP Acción Paso a modo de bajo consumo Sintaxis SLEEP Funcionamiento Go into Standby Mode Operación EN ESPERA. Descripción Esta instrucción detiene la ejecución del programa, deja el PIC en modo suspendido y el consumo de energía es mínimo. No ejecuta ninguna instrucción hasta que sea nuevamente reinicializado (reset) o surja una interrupción. Durante este modo, el contador del Watch Dog sigue trabajando, y si lo tenemos activado el PIC se reseteará por este medio. 53

59 SUBLW Acción Resta al literal k el valor del acumulador. Sintaxis SUBLW k Funcionamiento Substract W from Literal Operación W=k-W Descripción Esta instrucción resta al literal k el valor almacenado en W y el resultado se guarda en el acumulador. XORLW Acción Operación lógica OR exclusivo entre el acumulador y el literal k Sintaxis XORLW k Funcionamiento Exclusive OR Literal with W Operación W = W XOR k Descripción Esta instrucción realiza un OR exclusivo entre el contenido del acumulador W y el valor del literal k. El resultado se guarda siempre en el acumulador. 54

60 3.4.2 Ejemplos de programacion Con formato: Fuente: Negrita Ejemplo 1 Con formato: Fuente: Negrita ;Sumar dos valores inmediatos (p.e. 5+7) el resultado se deposita en la posición 0x10 ; List p=16f873 ;Tipo de procesador include"p16f873.inc" Resultado Inicio Stop ;Definiciones de registros internos equ 0x10 ;Define la posición del resultado org 0x00 ;Vector de Reset goto Inicio org 0x05 ;Salva el vector de interrupción movlw 0x05 ;Carga 1er. sumando en W addlw 0x07 ;Suma el 2º sumando movwf Resultado ;Almacena el resultado nop ;Poner breakpoint de parada nop end A_igual_B clrf Stop nop ;Fin del programa fuente Resultado ;Pone a 0 el resultado ;Poner breakpoint de parada nop end ;Fin del programa fuente 55

61 Ejemplo 2 Con formato: Fuente: Negrita Con formato: Fuente: Negrita ;El programa compara dos números A y B. Si A=B, el resultado es 0. Si A > B, el resultado ;es A-B. Si A < B el resultado es A+B; ;Hay que destacar que, al no haber instrucciones de comparación, esta se realiza mediante ;restas. List p=16f873 ;Tipo de procesador include"p16f873.inc" ;Definiciones de registros internos Dato_A equ 0x10 ;Variable del dato A Dato_B equ 0x11 ;Variable del dato B Resultado Inicio equ 0x12 ;Variable para el resultado org 0x00 ;Vector de Reset goto Inicio org 0x05 ;Salva el vector de interrupción movf Dato_B,W ;Carga el dato B subwf Dato_A,W ;Resta/compara con dato A btfsc STATUS,Z ;Son iguales (Z=1)?? goto A_igual_B ;Si btfsc STATUS,C ;No. A mayor que B (C=0)?? goto A_mayor_B ;Si A_menor_B movf Dato_A,W ;No, A es menor que B addwf Dato_B,W ;Suma a más B movwf Resultado ;Guarda el resultado goto Stop A_mayor_B movwf Resultado goto ; Stop 56

62 CAPITULO IV CIRCUITERIA Y EQUIPO ELECTRÓNICO USADO 4.1 Señales de entrada al sistema Con formato: Fuente: Negrita Con formato: Fuente: Negrita ETIQUETA DIRECCION TIPO FUNCION De bo hasta b7 teclado matricial Sirve para activar y D7 y d6 4x4teclas modelo desactivar el sistema s mediante contraseña Sensor de humo Sirve para detectar fotoeléctrico mod. partículas de humo 4W-B en el aire Sensor magnético Detecta cuando UL Y1205 TR alguna ventana o Teclado Humo Magnético A1 A4 puerta esta abierta Movimiento A3 Sensor de Detecta movimiento Movimiento Pasivo en un área especifica Infrarrojo mod. RX40PI Temperatura A0 Sensor de Detecta variaciones temperatura LM35 de temperatura en un área especifica Cristal A2 Sensor de impacto Detecta el para cristales mod. rompimiento de DG-50 cristales Monitorean un Cámara Reloj en tiempo real espacio determinado A0 E1 y E2 reloj Es el que permite tener la hora para la alarma Tabla 4.1 en esta figura observamos las entradas al sistema las cuales se controlan mediante las entrada al PIC 57

63 En el caso del reloj se comenta que el protocolo de comunicación es I2C que utilizan SDA (que significa dato serial o serial data). Y SCL(serial clock) las características más salientes del bus I2C son: Se necesitan solamente dos líneas, la de datos (SDA) y la de reloj (SCL). Cada dispositivo conectado al bus tiene un código de dirección seleccionable mediante software. Habiendo permanentemente una relación Master/ Slave entre el micro y los dispositivos conectados el bus permite la conexión de varios Masters, ya que incluye un detector de colisiones. El protocolo de transferencia de datos y direcciones posibilita diseñar sistemas completamente definidos por software. Los datos y direcciones se transmiten con palabras de 8 bits. 4.2 Señales de salida al sistema ETIQUETA DIRECCION TIPO FUNCION V I P ma Chapa C1 Sirena C3 Chapa Abre y cierra eléctrica Mod. permitiendo el SK-990ª acceso Sirena para Produce un sonido exterior de sirena cuando se Mod. 748 activa la alarma y también enciende una luz estroboscopia Torreta Luz Estrobo EST-75AM C2 Son las Luz de aviso de emergencia Display LCD Muestra función de de 16x2 acceso al sistema mw 58

64 Display mismas del teclado iluminado Mod. TM162AAC62 Monitor Monitor LCD Muestra las señales de 19 marca de cámaras de LG video C5 Succionar aire y Ventilador enfriar la sala Dar aviso de un Buffer y led 12 problema en la alarma C7 12v cd 10ª Puerto 1 máx. C6 Puerto2 12v cd 10ª máx. Tabla 4.2 En esta figura encontramos las señales de salida del sistema las cuales son las salidas al PIC 59

65 VCC RD3 RD2 RD1 330 R5 LED4 VCC1 jumper 330 R4 LED3 330 R2 LED1 PD1 C3 330 R3 LED2 Buzzer 1000uF 0.33uF C5 Vout GND Vin VR1 C1 C2 22pF NA R1 10K 22pF S1 jumper 0.1uF C4 VCC1 1 RD VCC selector de fuente 2 1 entrada 5 VCC 2 1 entrada de alterna XT1 A5 A4 A3 A2 A1 A0 RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB OSC1/CLKIN OSC2/CLKOUT MCLR/VPP RD6 RB0 RD VDD VDD RE0/RD/AN5 9 RE1/WR/AN6 10 RE2/CS/AN7 RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 15 RC0/T1OSO/T1CKI 16 RC1/T1O/CCP2 17 RC2/CCP1 18 RC3/SCK/SCL 23 RC4/SDI/SDA 24 RC5/SDO 25 RC6/TX/CK 26 RC7/RX/DT RA0/AN0 RA1/AN1 RA2/AN2/VREFRA3/AN3/VREF+ RA4/T0CKI RA5/AN4/SS VSS VSS DIP14 1 PIC16F877-04/P RB0/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD u1 RB1 RB2 RB3 RB4 RB5 RB6 RB7 E1 E0 E2 jumper E2 D0 E1 RD7 RD6 D1 D2 D3 D4 D5 C0 C1 C2 C3 C4 C5 C6 C7 A0 A1 A2 A3 A4 A5 jumper E0 D5 D4 D3 D2 D1 D0 C7 C6 C5 C4 C3 C2 C1 C0 jumper puerto E puerto D puerto C puerto A salida voltaje 5V 4.3 circuiteria adicional Tarjeta principal del PIC16F877A 2 60

66 Figura 4.1 tarjeta del pic Observamos la tarjeta en la cual contiene el PIC la cual es una tarjeta individual con los conectores, para que salgan a los módulos de entradas, salidas, display y teclado para así evitar ruidos y posibles daños al PIC en caso de algún corto Modulo de Display 16x2 y Teclado Matricial 4x4 L1 T R1 R2 R3 R4 4.7K 4.7K 4.7K 4.7K VCC VCC VCC VCC 16 D 15 # 14 * C B LCD 2x 16 Display decristal Liquido A R5 15 RV1 10K VCC VCC B1 10 GND 9 A8 8 7 A7 A6 6 A5 5 A4 4 3 A3 A2 2 A VCC Y8 Y7 Y6 Y5 Y4 Y3 Y2 Y OE2 OE1 VCC 20 RB7 1 RB6 2 RB RB3 5 RB2 6 RB1 7 D RB4 VCC VCC GND RD6 RD7 RB0 Options CenterHorizontal=True CenterVertical=True PrintScale=0.98 XCorrection=1.00 YCorrection=1.00 PrintKind=2 BorderSize= LeftOffset=0 BottomOffset=0 Orientation=2 PaperLength=1000 PaperWidth=1000 Scale=100 PaperSource=7 PrintQuality=-4 MediaType=1 DitherType=10 PaperKind=A4 (210x297 mm) PrintScaleMode=1 Figura 4.2 Display y teclado En esta imagen observamos el diagrama de la tarjeta que contiene el display y el teclado con el cual se va a manejar la alarma ya que en esta se podrán hacer los ajustes a la alarma como es introducir la clave organizar eventos para que active alguna carga y es en donde el usuario da la señal de activar la alarma y desactivarla, también en esta tarjeta se podrán poner hora y fecha. 61

67 5Vcd R3 220 R2 15K R1 220 Tx conector2 1N4148 Relay MD LED conector1 5Vcd GND 1 2 Q1 BC548 Rx Figura 4.3 Sensor infrarrojo En este diagrama observamos un sensor infrarrojo el cual será para evitar la intromisión externa o sea este será en las paredes del perímetro del museo de ciencias VCC C1 27pF 1 XT 32768Hz 2 Conector1 2 1 VCC VCC VCC R1 4.7K PCF8583 R2 4.7K INT SCL SDA SCL SDA INT VCC Conector R3 4.7K Figura 4.4 Reloj en tiempo real En este diagrama observamos el reloj en tiempo real el cual conectado al PIC es el que nos ayuda a mantener la fecha y hora de la alarma externamente al PIC lo cual no beneficia en que el PIC solo hace procesos importantes y no se pierden pines en hacerlo internamente Modulo de entradas 62

68 JP JP16 GND Vout Vin L5 R R17 1 R20 1K U5 Optoisolator1 GND5 VR5 0.01uF R18 80K uF JP14 Figura 4.5 Este modulo de entradas optoacopladas es optó acoplada para que las conexiones con el PIC sean solo con el moc, lo cual mejora en que no hay conexión física y en caso de un corto o algún desperfecto solo se quemaría la entrada, además que se pueden conectar directamente los componentes ya que esta ya tiene su etapa de potencia TIP3055 no.1 12vcd NPN LM7812 conector1 T1 LED1 Vin Vout GND PD1 2 1 C1 4700uF C2 C3 0.22uF 0.1uF R3 470 conector2 12vcd GND121 2 GND12 TIP3055 no.2 5vcd NPN PD2 LM7805 Vin Vout GND C6 4700uF LED2 C4 C5 0.22uF 0.1uF conector3 5vcd 1 GND5 2 R4 82 GND5 Figura 4.6 Fuente de alimentación regulada +5 y +12 volts En este diagrama observamos el diseño de una fuente de 12 y 5 volts de corriente directa la cual será usada para la alimentación de la alarma 63

69 R2 470 JP2 2 1 R3 1K Triac 1 L1 1 2 R1 330 JP1 C1 100pF U1 Optoisolator1 Figura 4.7 Modulo de salidas corriente directa Es necesario aislar eléctricamente la etapa de potencia y la etapa digital del circuito ya que si existe una falla en cualquiera de las dos etapas la otra no se ve afectada. Para este propósito, se utiliza el optó acoplador MOC3011, que cuenta con salida a TRIAC y maneja voltajes de 120 Vca. JP R R5 U2 10K Optoisolator1 TIP31-1 L2 R4 330 JP3 R7 5.2K Figura 4.8 Modulo de salidas alterna En este caso como en el ejemplo de arriba tenemos un modulo de salidas optó acoplado también el cual es de corriente alterna que como en los casos pasado tiene las mismas características, y es la encargada de la activación y desactivación de la cerradura. Utilizamos un optó aislador 4n35 para aislar la etapa digital de la etapa de potencia, ya que 64

70 además de evitar ruido, tenemos la seguridad de que si existiese alguna falla en alguna de ellas no se daña la otra conector2 DS1 1 2 U1 conector1 LED0 2 1 R1 R2 Optoisolator1 330 Q1 NPN K K1 R3 4 D1 1N conector3 1 2 Header2H 5 Relay Figura 4.9 Modulo de salidas con reelevador En este caso como en el ejemplo de arriba tenemos un modulo de salidas optó acoplado también el cual tiene la ventaja que se tiene con relays lo cual beneficia en que se pueden conectar corriente directa (CD) con hasta 10 A como máximo y en corriente alterna (CA) igualmente con 10 A máximo. La ventaja es que se pueden conectar cargas como en el caso actual se conectara el ventilador extractor que en el caso es de corriente alterna. VCC 5Vpos VSRC VCC 10K 10K 4 VCC 3 2 +VS VOUT GND 2 IN LM35DZ A LM324N 1 OUT VCC JP? 1 OUT 2 3 Header 3 Figura 4.10 Sensor de temperatura Esta etapa utiliza el sensor de temperatura LM35, el cual entrega una tensión de 10mV\ºC. Sin embargo, para introducir esta señal analógica al PIC necesitamos acondicionar esta 65

71 señal para así obtener un nivel de cuantizacion para cada ºC, de acuerdo al convertidor A\D que se este utilizando. En este caso, el convertidor que tiene integrado el PIC, emplea una conversión de 10 bits, con lo que tenemos 1024 niveles de cuantizacion. El acondicionamiento de la señal se hace con LM324, bajo una configuración de amplificador no inversor, esta configuración es de las más utilizadas ya que tiene una mejor estabilidad a la frecuencia 4.4 Caracteristicas del sistema Las características del sistema constan de de un display y un teclado con opciones el cual podrá activar la alarma así como activar y desactivar todos los sensores, la cual tendrá en pantalla los acontecimientos como en caso de que se active la alarma dará en caso de ser violada la seguridad activara una sirena, un estrobo en la sala y en el display un mensaje de que a sido violada, un buzzer y un led de destellara como alarma visual, como dato extra se menciona que es una alarma muy segura ya que sus combinaciones de la contraseña son 16x10 a la 4ª potencia lo cual nos da una gran cantidad de caracteres posibles por lo cual nos da una gran seguridad ya que la mayoría de las alarmas solo utilizan código numérico. 66

72 CAPITULO V. MANUAL DEL STEMA DE ALARMA Y DEL NIPLE 5.1 Manual del sistema de alarma Manual de usuario para la alarma LA PRMERA VEZ QUE SE ENCIENDE LA ALRMA APARECE LA GUIENTE PANTALLA Y AL PRECIONAR LA TECLA ENTER (# ) APARECERA LA PANTALLA DE LA GUIENTE MANERA EN LA CUAL POR DE FAULT TENDREMOS QUE INGRESAR LA CLAVE OOOO 67

73 Y APARECE LA GUIENTE PANTALLA PO 3 SEGUNDOS Y DE AHÍ AUTOMATICAMENTE PASA A LA GUIENTE PANTALLA POR 3 SEGUDOS Y AUTOMATICAMENTE PASA A LA GUIENTE PANTALLA EN LA CUAL PONDREMOS LA CLAVE UTILIZANDO LAS 16 TECLAS DEL TECLADO CON UNA CONVINACION DE 4 DIGITOS (TAMBIEN SE PUEDEN 68

74 UTILIZAR LAS FLECHAS) AL INTRODUCIR LOS 4 DIGITOS S DA LA GUIENTE PANTALLA AQUÍ AHÍ QUE VERIFICAR LA CLAVE PARA QUE EN CASO DE EQUIVOCARSE PONGA UNA CLAVE CORRECTA, LA CLAVE ES CORRECTA PASA A LA GUIENTE PANTALLA DURANTE 3 SEGUNDOS Y PASA A LA GUIENTE PANTALLA 69

75 QUE ESTA PANTALLA ES LA DE INICIO DE AQUÍ EN ADELANTE DESPUES DE HABER DO MODIFICADA LA CLAVE POR PRIMERA VES POR LO TANTO ESTE PASO NUNCA VOLVERA A REPETIRSE Y EL DATO ES INCORRECTO APARECERA LA GUIENTE PANTALLA ESTA PATALLA APARECE POR 3 SEGUNDOS APROX Y REGRESARA AL PUNTO DE PARTIDA QUE EN ESTE CASO ES Y A SE TENDRA QUE REPETIR LA SECUENCIA DESDE EL PRINCIPIO PREONANDO LAS FLECHAS DEL MENÚ TENEMOS QUE S MUESTRA EL MENÚ EN EL ORDEN DE 70

76 71

77 EN ESTE CASO SALE LA PANTALLA 6 SOLO ESTA HA DO CONFIGURADA EN EL CASO DE YA HABER DO CONFIGURADA ESTA PANTALLA SE OMITE Y APARECE LA GUIENTE PANTALLA AL ENTRAR AL MENU 1 QUE ES ACTIVAR O DESACTIVAR EL STEMA TENEMOS LA GUIENTE PANTALLA AL INTRODUCIR LA CLAVE SE OBSERVARA DE LA GUIENTE MANERA EN CASO DE QUE LA CLAVE SEA CORRECTA PONDRA EN PANTALLA LA GUIENTES PANTALLAS 72

78 (3 SEGUNDOS) Y PASA A PONER EL GUIENTE MENSAJE EN ESE MOMENTO EL STEMA DE ALARMA ESTARA ACTIVADO Y LA SEñAL ES QUE SE OIRA POR 3 SEGUNDOS EL BUZZER Y EL ESTROBO TAMBIEN ENCENDERA. PARA DESACTIVAR EL STEMA ES NECESARIO PREONAR LA TECLA ENTER QUE EN EL CASO DE EL TECLADO SERA LA TECLA INDICADA CON LA EL MBOLO DE (#) EN ESE MOMENTO MOSTRARA LA GUIENTE PANTALLA DESPUES CUANDO LA CLAVE ES INTRODUCIDA SE VERA DE LA GUENTE MANERA 73

79 ENTONCES MUESTRA (3 SEGUNDOS) DESPUES MOSTRARA LA GUIENTE PANTALLA STEMA DESACTIVADO DURA APROX 30 SEG MIENTRAS EL ESTROBO PERMANECE ENCENDIDO ESTO INDICARA QUE LA CHAPA ELECTRICA ESTARA ABIERTA DESPUES DE ESO SE MOSTRARA LA PANTALLA NUMERO 1 DEL MENU AL SELECCIONAR LA PANTALLA NUMERO DOS QUE ES HORA/FECHA TENDREMOS LA GUIENTE PANTALLA 74

80 EN ESTE CASO CON LAS FLECHAS QUE TIENEN EN UN COSTADO FECHA/HORA SE PODRA SELECCIONAR EL DIA DESEADO, YA QUE HALLAMOS INTRODUCIDO EL DATO CORRECTO PRECIONAMOS LA TECLA CON EL MBOLO DE # QUE S HARA IR A LA GUIENTE PANTALLA EN ESTE CASO SE REPITEN PARA EL PUNTO ANTERIOR APARECIENDO EN PANTALLA LOS MESES DEL AñO Y EN ESTE CASO SE REPITE EL CASO ANTERIOR Y LA GUIENTE PANTALLA ES Y SE REPITE EL PASO ANTERIOR 75

81 Y LA GUIENTE PANTALLA ES AL TERMINAR DE INGRESAR LOS SEGUNDOS S REGRESARA AL MENU AN LA PANTALLA NUMERO 2 EL STEMA TRAE POR DE FAULT UNA TEMPERATURA DE 27 GRADOS CENTIGRADOS COMO MAXIMO Y A 25 SE DESACTIVA EL VENTILADOR EN EL CASO DE SER NECESARIO LA CONFIGURACION DE OTRA TEMPERATURA SE SELECIONA LA PANTALLA NUMERO 3 Y APARECERA LA GUIENTE PANTALLA LA CUAL INDICA LA TEMPERATURA ALA DERECHA A LA HORA COMO SE DECIA EN EL PARRAFO ANTERIOR QUE A LOS 27 C SE VA ACTIVAR EL VENTILADOR Y A LOS 25 C SE DESACTIVARA EN ESTA MISMA PANTALLA SE 76

82 PODRAN HACER LOS CAMBIOS DE TEMPERATURA DESEADA LA CUAL SE PODRA HACER CON LAS FLECHAS DEL LADO DERECHO DE MENU Y SE PODRA MOVER LOS GRADOS DE DOS EN DOS COMENZANDO DESDE LA CUAL PDREMOS IR INCREMENTANDO SEGUN LAS NESEDADES HASTA LA TEMPERATURA DE AL TENER LA TEMPERATURA DESEADA PRECIONAMOS LA TECLA # Y APRARECERA LA PANTALLA NUMERO 3 DE AHÍ PASAMOS A LA GUIENTE PANTALLA QUE SERA LA NUMERO 4 LA CUAL SERA PARA PROGRAMAR UN EVENTO DIARIO AL ENTRAR A ESTA APARECERA LA GUIENTE PANTALLA 77

83 EL CUAL S INDICA QUE ES LA CONFIGURACION DE EL PUERO EXTRA NUMERO 1 EN EL CUAL PODREMOS CONFIGURAR UNA CARGA A DETERMINADA HORA DE INICIOP Y FIN. AL PRECIONAR ENTER (#) APARECERA EN PANTALLA POR US 2 SEGUNDOS LA GUIENTE PANTALLA Y DESPUES APARECERA LA GUIENTE PANTALLA AUTOMATICAMENTE Y SE PODRA CONFIGURAR LA HORA MEDIANTE LAS FLECHAS DE FECHA/HORA AL PONER LA HORA LE DAMOS ENTER (#) PASAREMOS A LA GUIENTE PANTALLA 78

84 AL PRECIONAR ENTER APARECERA POR US 2 SEGURNDOS LA PANTALLA Y AUTOMATICAMENTE DESPUES APARECERA LA GUIENTE PANTALLA AL SELECCIONAR CON LAS FLECHAS DEL HORA /FECHA LA HORA DESEADA Y PRECIONAR ENTER PASAREMOS A LA GUIENTE PANTALLA Y AL DARLE ENTER TENDREMOS CONFIGURADO EL PUERO 1 PARA CONFIGURAR EL PUERTO DOS EN LA PANTALLA DEL MENU NUMERO 4 Y QUE AL DARLE ENTER ENTRAMOS AL MENU 79

85 PODRA SELECCIONAR ENTRE EL PUERTO 1 O 2 SEGÚN SEA NECESARIO O LOS DOS CONFIGURANDO DE U EN U Y PARA SELECCIONAR EL PUERO DOS EN ESTA PANTALLA SOLO ES NECESARIO UTILIZAR LAS FLECHAS DE MENU PARA SELECCIONAR EL PUERO NECESARIO, LA FORMA DE CONFIGURAR EL PUERTO DOS ES COMPLETAMENTE IGUAL A LA DEL PUERTO 1Y AL CONFIGURARLOS Y DARLE ENTER (#) SE SALE DE LA CONFIGURACION Y LLEGA NUEVAMNTE A LA PANTALLA 4 DE AHÍ PASAMOS A LA PANTALLA 5 AL PASAR ALA PANTALLA NUMERO 5 DEL MENU QUE ES LA GUIENTE Y AL DARLE ENTER (#) APARECERA LA GUIENTE PANTALLA 80

86 AL PRECIONAR LA CLAVE ACTUAL APARECERA DE LA GUIENTE MANERA AL DAR LOS 4 NUMERO POR US BREBES SEGUNDOS APRROX 2 SEGUNDOS Y DESPUES AUTOMATICAMENTE APARECERA LA GUIENTE PANTALLA AL PONER LA NUEVA CLAVE APARECERA DE LA GUIENTE MANERA AUTOMATICAMENTE AL INTRODUCIR LA CLAVE ESTA APARECERA LA PANTALLA 81

87 POR US SEGUNDOS APROX 2 SEGUNDOS Y REGRESARA A LA PANTALLA DEL MENU PRICIPAL NUMERO 5 Y YA ESTA CONFIGURADO, DE AHÍ PASAMOS A MENU 6 EN EL CUAL PARECERA LA GUIENTE PANTALLA ESTO SOLO COMO RECORDATORIO DE QUE HA DO CONFIGURADA LA FECHA Y LA HORA EN CASO CONTRARIO OSEA QUE ESTA HALLA DO CONFIGURADO SERA LA GUIENTE PANTALLA EN LA CUAL S INDICARA LA FECHA ARRIBA, ABAJO LA TEMPERATURA ACTUAL DE LA LECTURA DEL SENSOR DE TEMPERATURA Y ENSEGUIDA DE LA TEMPERATURA LA HORA ACTUAL TENIENDO HORAS, MINUTOS Y SEGUNDOS 5.2 Mmanualanual del niple La programación de los microcontroladores resulta una tarea muy compleja dado que el usuario debe conocer la arquitectura del procesador y además debe dominar el lenguaje de programación Ensamblador. Si bien existen distintas versiones del lenguaje C o Basic Adaptadas a la programación de microcontroladores, todavía la programación resulta muy compleja por el alto grado de abstracción que implica. 82

88 Niple es un entorno de desarrollo visual para programación de microcontroladores PIC. Con Niple, el usuario sólo diseña un diagrama de flujo de manera totalmente visual y en alto nivel de programación, en lenguaje humano, y el software genera el código Assembler de manera automática. Además, el software controla y supervisa todo el proceso de diseño, advirtiendo al usuario sobre posibles errores en la lógica del programa que se está diseñando. Esta ventaja no la tiene ningún otro lenguaje de programación. Figura 5.1 comparaciones de lenguajes de programación En esta imagen se pretende mostrar las ventajas que ofrece nicle en comparación con otras formas de programar el PIC De ésta manera Niple ofrece la posibilidad de realizar desarrollos con microcontroladores con un mínimo de esfuerzo. El principal objetivo de Niple es facilitar al máximo la programación de los microcontroladores. Para esto, el software ofrece un entorno totalmente visual, donde todo el sistema se adapta a las características del modelo de microcontrolador seleccionado; es decir que; carga el mapa de memoria con sus respectivos nombres de registros y bits, asigna las funciones correspondientes a cada Registro y Bit dentro del sistema, ajusta el tamaño de 83

89 la memoria EEPROM, activa los módulos correspondientes, etc. Es decir que, Ud. Tendrá disponible sólo las características que corresponden al modelo de micro en uso. El concepto de la programación es que el usuario se concentre en qué es lo que quiere hacer, y Nicle sabe cómo hacerlo. Es decir que el usuario sólo se dedica a diseñar la estructura lógica del proceso que desea realizar y el software se encarga de resolver todo el desarrollo del código Assembler, controlando hasta el más mínimo detalle. 5.3 Introducción al Niple Niple es un Entorno Visual de Desarrollo para p programación de Microcontroladores PIC. Con Niple podrá programar los PIC a través del diseño de un diagrama de flujo de manera gráfica y de alto nivel de programación, sin necesidad de escribir código Assembler, o escribiendo la menor cantidad de código, convirtiéndose en la forma más rápida, sencilla y productiva de desarrollar proyectos con microcontroladores PIC. Diseñe un diagrama de flujo de manera gráfica y en lenguaje humano mientras Niple realiza el trabajo pesado por Ud., controlando errores lógicos o de configuración, realizando cálculos, coordinando la interacción entre las distintas partes del proyecto y generando de manera automática el código Assembler Estas características, hacen de Niple la herramienta ideal tanto para quienes se inician en el mundo de los microcontroladores como para aquellos usuarios más experimentados que quieran aumentar su productividad. Entre las principales prestaciones que Niple ofrece podemos destacar: Entono Visual de Alto Nivel de programación: Niple ofrece una metodología de programación totalmente visual y en lenguaje humano. Bloques estandarizados, lo cual facilita la interpretación del proyecto. Ud. se concentra en Que Hacer y Niple se encarga de Como Hacerlo. Control automático de errores lógicos. Supervisa el ingreso de datos. 84

90 Control automático de registros y bits: Controla la existencia de todos los registros y bits necesarios para el correcto funcionamiento del proyecto en el momento de generar el código Assembler. Controla que no existan nombres de registros y bits duplicados. Valida los nombres de los registros y los bits en el momento de ser declarados.. Corrección automática de errores lógicos Controla la correcta configuración de los puertos. Controla la configuración y activación de las interrupciones. Supervisa la creación de vínculos entre bloques.. Generación del Código Assembler: Control automático de la sintaxis del código generado. Control automático del cambio de página. Generación automática de etiquetas.. Modelos de PIC soportados por Niple: Niple para PIC 12F6xx. 12F F675 Niple para PIC 16F84. 16F84 Niple para PIC 16F6xx. 16F F F648 Niple para PIC 16F87x. 16F F F F F877 Velocidades de reloj soportadas: 4 Mhz, 10 Mhz, 20 Mhz. 85

91 5.4 Funciones disponibles Las funciones disponibles dependen del modelo de microcontrolador utilizado pero en general podemos mencionar:. Selección del cristal utilizado (4, 10 o 20 Mhz). Asignación de valores a registros y bits. Configuración y manejo de interrupciones. Manejo de rutinas de usuario. Configuración, Lectura y Escritura de puertos. Lectura / Escritura de EEPROM interna del PIC. Funciones de comparación de registros y bits (condiciones =, >, <, >=, <=, <>). Manejo automático de tablas. Temporizadores por bucle (de tiempo fijo o variable). Visualización de datos en dígitos 7 segmentos (Ánodo común y Cátodo común). Ingreso de datos por teclado matricial (3x3 y 3x4). Visualización de datos en pantallas LCD (16x2, 20x2 y 20x4). Manejo de memorias EEPROM 24Cxxx por comunicación I2C. Manejo de memorias RAM PCF8570 por comunicación I2C.. Manejo de reloj/calendario de tiempo real PCF8583, con control de alarmas por fecha.. Configuración y manejo de temporizadores internos (TMR0, TMR1 y TMR2). Comunicaciones RS232 por código y por USART. Comunicaciones RS485. Comparadores analógicos. Conversión A/D. La cantidad de canales depende del modelo de micro. Módulos CCP (Compara, Captura y PWM). Cálculos matemáticos: (+, -, /, *, en 8 o 16 bits), conversión a BCD. Escalado de valores de un rango a otro (a 8 y 16 bits). Manejo de registros de desplazamiento 86

92 Conclusiones generales El objetivo planteado al inicio de esta tesis se cumplió satisfactoriamente al lograr el optimo funcionamiento de cada modulo diseñado. Nosotros llegamos a la conclusión que la realización de una tesis te ayuda a la vida laboral ya que se reafirman situaciones y necesidades que no siempre tenemos oportunidad de realizar, además aprendimos mas sobre un dispositivo muy importante y que puede ayudarnos a realizar un sinfín de tareas que es el PIC16F877. Con la realización de este proyecto se aprendió a utilizar las herramientas de software aplicables al área de electrónica como son: NIPLE. Software de programación de pics mediante diagramas de flujo. ALTIUM DXP Software de diseño y simulación de esquemáticos y PCB. PROTEUS. Software de diseño y simulación de circuitos. COREL DRAW 13. software de diseño grafico Trabajo a futuro Las propuestas a futuro se pueden resumir en los siguientes puntos:. Aumento de sensores infrarrojos de presencia externos.. Cerca electrificada.. Alarma manual de incendio.. Aspersores antiincendio controlados con la misma alarma.. Control GSM.. Monitoreo por internet. 87

93 CAPITULO VI PROGRAMACION Iniciar 6.1 diagrama general de flujo E/A = SSE/XXEEEEEA B = SSSSSSSS C = SSSSSSSS Programa D = SSSSSSSS principal A/D=Activado, tecla2 = 0x00 RD0 = 0 hora_evento2 = 0xFF RD3 = 0 RD1 = 0 hora_evento1 = 0xFF hora_evento2fin = 0xFF RD2 = 0 hora_evento1fin = 0xFF reloj = 0x00 tecla3 = 0x00 tecla4 = 0x00 nuevo = 0x00 aster3 = 0xFA grados = 0xAF tecla = 0xF0 aster4 = 0xFA aster1 = 0xFA tecla1 = 0x00 enie = 0xBE aster2 = 0xFA evento1 = 0x00 evento2 = 0x00 temperatura_off = D'25' temperatura_on = D'27' Reg alarma = 0x01 LCD(1)=Activo, alarma = EEPROM,06 nuevo2 = EEPROM,00 LCD(1)=Config, LCD_BUS=B(4-7), LCD_RS=B(3), LCD_RW=B(2), LCD_Buffer=D(6), LCD_E=D(7), GIE=Activado, RBIE=Activado, estado = EEPROM,05 usr_lcd_armando_sistema Reg estado = 0x02 LCD(1)=Activo, 10_seg usr_lcd_bienvenida usr_sistema_de_seguridad usr_menu Reg tecla = 0x14 estado = 0x02 usr_default usr_compara_clave 88

94 Rutina de interrupción lectura del teclado Interrupción por RB4 a 7 Teclado(4x4), tecla=tecla_pulsada, Fila_1=B0, Fila_2=B1, Fila_3=B2, Fila_4=B3, Col_1=B4, Col_2=B5, Col_3=B6, Col_4=B7, tecla = _np_tabla_teclado(tecla), 0=0x00-0, 1=0x01-1, 2=0x02 - Fin de la interrupción 89

95 Rutina de inicio por primera vez. Pide clave 0000 Rutina de usuario usr_default LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, aster1 = 0xF0 contador_tecla = D'0' aster2 = 0xF0 aster4 = 0xF0 aster3 = 0xF0 tecla = 0xF0 LCD(1)=Activo, usr_lcd_clave Reg tecla <> 0xF0 contador_tecla = contador_tecla + D'01' Reg contador_tecla = D'1' Reg contador_tecla = D'2' Reg contador_tecla = D'3' Reg contador_tecla = D'4' tecla1 = tecla tecla2 = tecla tecla3 = tecla tecla4 = tecla aster1 = 0xFA aster2 = 0xFA aster3 = 0xFA aster4 = 0xFA LCD_CAR, LCD_CAR, LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD=16x2, LCD=16x2, LCD(2,11)=ASCII(aster1), LCD(2,12)=ASCII(aster2), LCD(2,13)=ASCII(aster3), LCD(2,14)=ASCII(aster4), Reg contador_tecla = D'4' 500_mse LCD(1,11)='.', 500_mse 500_mse LCD(1,12)='.', LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, LCD(1,10)='.', 500_mse LCD(1,03)='ESPERE.', 500_mse Fin de rutina 90

96 Rutina de usuario Rutina de comparación de Clave, y cambio de clave En caso de que sea la primera Vez de funcionamiento Del circuito usr_compara_clave Reg nuevo = 0x00 Reg nuevo2 <> 0x01 key1 = EEPROM,01 key2 = EEPROM,02 Reg tecla1 = 0x00 key4 = EEPROM,04 key3 = EEPROM,03 Reg tecla2 = 0x00 Reg tecla1 = key1 Reg tecla3 = 0x00 Reg tecla2 = key2 Reg tecla4 = 0x00 Reg tecla3 = key3 nuevo = 0x01 EEPROM,00 = 0x01 Reg tecla4 = key4 LCD(1)=Activo, LCD(1)=Activo, LCD(1)=Activo, LCD(1)=Activo, usr_lcd_clave_incorrecta usr_lcd_clave_primera_vez usr_lcd_clave_primera_vez usr_lcd_clave_incorrecta 3_seg 3_seg 3_seg usr_cambio_de_clave Fin de rutina 91

97 Rutina para el cambio de clave Rutina de usuario usr_cambio_de_clave Reg estado = 0x02 contador_tecla = 0x00 LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, tecla = 0xF0 LCD(1)=Activo, Reg nuevo = 0x01 usr_lcd_clave_actual Reg nuevo2 <> 0x00 Reg tecla <> 0xF0 contador_tecla = contador_tecla + D'01' contador_tecla = 0x00 LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, Reg Reg Reg Reg contador_tecla = contador_tecla = = contador_tecla = contador_tecla D'1' D'2' D'4' D'3' tecla = 0xF0 LCD(1)=Activo, tecla1 = tecla tecla2 = tecla tecla3 = tecla tecla4 = tecla usr_lcd_nueva_clave LCD_CAR, LCD_CAR, LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD=16x2, LCD=16x2, LCD(1,14)=ASCII(aster2), LCD(1,16)=ASCII(aster4), LCD(1,13)=ASCII(aster1), LCD(1,15)=ASCII(aster3), Reg tecla <> 0xF0 Reg contador_tecla = D'4' contador_tecla = contador_tecla + D'01' 1_seg Reg Reg = contador_tecla = contador_tecla D'2' D'1' tecla1 = tecla tecla2 = tecla Reg contador_tecla = D'3' tecla3 = tecla Reg contador_tecla = D'4' key2 = EEPROM,02 tecla4 = tecla LCD_CAR, LCD_CAR, LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD=16x2, LCD=16x2, LCD(2,13)=ASCII(aster2), LCD(2,12)=ASCII(aster1), LCD(2,14)=ASCII(aster3), LCD(2,15)=ASCII(aster4), key1 = EEPROM,01 key3 = EEPROM,03 key4 = EEPROM,04 Reg contador_tecla = D'4' 1_seg Reg key1 = tecla1 Reg key2 = tecla2 contador_tecla = D'0' Reg key3 = tecla3 LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, tecla = 0xF0 LCD(1)=Activo, usr_lcd_verificar_clave 92 Reg key4 = tecla4

98 contador_tecla = D'1' contador_tecla = D'2' contador_tecla = D'3' contador_tecla = D'4' tecla1 = tecla tecla2 = tecla tecla3 = tecla tecla4 = tecla LCD_CAR, LCD_CAR, LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD=16x2, LCD=16x2, LCD(2,13)=ASCII(aster2), LCD(2,12)=ASCII(aster1), LCD(2,14)=ASCII(aster3), LCD(2,15)=ASCII(aster4), key2 = EEPROM,02 key3 = EEPROM,03 key4 = EEPROM,04 Reg contador_tecla = D'4' Reg key1 = tecla1 1_seg Reg key2 = tecla2 contador_tecla = D'0' Reg key3 = tecla3 LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, Reg key4 = tecla4 tecla = 0xF0 LCD(1)=Activo, usr_lcd_verificar_clave Reg tecla <> 0xF0 contador_tecla = contador_tecla + D'01' Reg Reg Reg Reg contador_tecla = contador_tecla = contador_tecla = contador_tecla = D'1' D'4' D'2' D'3' key1 = tecla key2 = tecla key3 = tecla key4 = tecla LCD_CAR, LCD_CAR, LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD=16x2, LCD=16x2, LCD(2,12)=ASCII(aster1), LCD(2,13)=ASCII(aster2), LCD(2,14)=ASCII(aster3), LCD(2,15)=ASCII(aster4), Reg contador_tecla = D'4' 1_seg Reg key4 = tecla4 Reg key3 = tecla3 Reg key2 = tecla2 Reg key1 = tecla1 EEPROM,01 = tecla1 nuevo = 0x00 EEPROM,02 = tecla2 EEPROM,00 = 0x00 EEPROM,03 = tecla3 LCD(1)=Activo, EEPROM,04 = tecla4 EEPROM,00 = 0x01 EEPROM,05 = 0x02 LCD(1)=Activo, usr_lcd_clave_cambiada 3_seg usr_lcd_clave_incorrecta 93

99 Reg key2 = tecla2 Reg key1 = tecla1 EEPROM,01 = tecla1 nuevo = 0x00 EEPROM,02 = tecla2 EEPROM,00 = 0x00 EEPROM,03 = tecla3 LCD(1)=Activo, EEPROM,04 = tecla4 usr_lcd_clave_incorrecta EEPROM,00 = 0x01 EEPROM,05 = 0x02 LCD(1)=Activo, usr_lcd_clave_cambiada 3_seg Fin de rutina 94

100 Rutina del menú principal Rutina de usuario usr_menu tecla = 0xF0 flecha_a = 0x4E flecha_b = 0x4F LCD(1)=Activo, usr_lcd_menu Reg tecla = 0xF2 Reg tecla = 0xF1 tecla = 0xF0 LCD(1)=Activo, usr_sistema_de_seguridad usr_lcd_on_off_alarma Reg tecla = 0x14 Reg tecla = 0xF2 Reg tecla = 0xF1 tecla = 0xF0 LCD(1)=Activo, usr_ajustar_fecha_y_hora usr_lcd_ajustar_fecha_y_hora Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 tecla = 0xF0 95 LCD(1)=Activo, usr_ajustar_temperatura usr_lcd_ajustar_temperatura Reg tecla = 0x14

101 LCD(1)=Activo, usr_ajustar_fecha_y_hora usr_lcd_ajustar_fecha_y_hora Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 tecla = 0xF0 LCD(1)=Activo, usr_ajustar_temperatura usr_lcd_ajustar_temperatura Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 tecla = 0xF0 LCD(1)=Activo, usr_programar_evento usr_lcd_programar_evento Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 tecla = 0xF0 LCD(1)=Activo, usr_cambio_de_clave usr_lcd_cambiar_clave Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 tecla = 0xF0 96 Reg reloj <> 0x01 usr_lcd_fech_y_ora_no_config GIE=Desactivado, RBIE=Desactivado, PCF8583,

102 Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 tecla = 0xF0 Reg reloj <> 0x01 usr_lcd_fech_y_ora_no_config GIE=Desactivado, RBIE=Desactivado, PCF8583, Señal_Reloj=RE2, Señal_Datos=RE1, Nro_Disp=0, dia=día, mes=mes, anio=año, horas=horas, minutos=minutos, segundos=segundos, usr_fecha_hora_y_tempe usr_lcd_tempe_fecha_y_hora usr_eventos_externos usr_leer_temperatura GIE=Activado, RBIE=Activado, Reg tecla = 0xF1 Reg tecla = 0xF2 Reg tecla = 0x14 Fin de rutina 97

103 Rutina de sistema de seguridad Rutina de usuario usr_sistema_de_seguridad Reg alarma = 0x01 usr_activar_sist_clave Reg alarma = 0x01 RC0 = 1 LCD(1)=Activo, Fin de rutina Bit RA5 = 0 Bit RA4_T0CKI = 1 RD1 = 1 usr_lcd_sistema_activado Bit RA3 = 1 Bit RA2 = 1 Bit RA1 = 0 RD0 = 1 RC2 = 1 RC3 = 1 Reg tecla = 0x14 usr_desact_sist_clave Reg alarma = 0x00 Fin de rutina 98

104 rutina para activar el sistema de seguridad Rutina de usuario usr_activar_sist_clave LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, contador_tecla = 0x00 tecla = 0xF0 LCD(1,01)='INTRODUCIR CLAVE', contador_tecla = contador_tecla + D'01' Reg contador_tecla = D'1' Reg tecla <> 0xF0 Reg contador_tecla = D'2' LCD_CAR, LCD=16x2, LCD(2,07)=ASCII(aster1), Reg contador_tecla = D'3' tecla3 = tecla tecla2 = tecla Reg contador_tecla = D'4' tecla1 = tecla LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD(2,08)=ASCII(aster2), LCD(2,09)=ASCII(aster3), tecla4 = tecla LCD_CAR, LCD=16x2, LCD(2,10)=ASCII(aster4), Reg contador_tecla = D'4' tecla = 0xF0 key1 = EEPROM,01 1_seg key2 = EEPROM,02 key3 = EEPROM,03 key4 = EEPROM,04 Reg key1 = tecla1 Reg key2 = tecla2 Fin de rutina RC2 = 0 Reg key3 = tecla3 RD0 = 0 Reg key4 = tecla4 RD1 = 0 RC2 = 1 LCD(1)=Activo, LCD(1)=Activo, 3_seg usr_lcd_clave_incorrecta RD1 = 1 usr_lcd_clave_correcta 3_seg EEPROM,06 = 0x01 alarma = 0x01 RD0 = 1 RC3 = 1 10_mse RC3 = 0 99

105 rutina para desactivar el sistema de seguridad Rutina de usuario usr_desact_sist_clave LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, contador_tecla = 0x00 tecla = 0xF0 Reg tecla <> 0xF0 contador_tecla = contador_tecla + D'01' LCD(1,01)='INTRODUCIR CLAVE', Reg contador_tecla = D'1' Reg contador_tecla = D'2' Reg contador_tecla = D'3' Reg contador_tecla = D'4' tecla2 = tecla tecla3 = tecla tecla4 = tecla tecla1 = tecla LCD_CAR, LCD_CAR, LCD_CAR, LCD=16x2, LCD=16x2, LCD=16x2, LCD(2,07)=ASCII(aster1),LCD(2,08)=ASCII(aster2), LCD(2,09)=ASCII(aster3), LCD_CAR, LCD=16x2, LCD(2,10)=ASCII(aster4), Reg contador_tecla = D'4' key2 = EEPROM,02 key1 = EEPROM,01 1_seg tecla = 0xF0 key4 = EEPROM,04 Reg key1 = tecla1 Reg key2 = tecla2 Reg key3 = tecla3 Reg key4 = tecla4 key3 = EEPROM,03 RD1 = 0 EEPROM,06 = 0x00 alarma = 0x00 LCD(1)=Activo, RD0 = 0 usr_lcd_clave_incorrecta RC0 = 0 3_seg RC1 = 1 LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, 3_seg RD1 = 1 RC2 = 1 LCD(1,05)='STEMA', RD0 = 1 RC3 = 1 Fin de rutina RC2 = 0 RC1 = 0 LCD(2,03)='DESACTIVADO', RC3 = 0 15_seg 10_mse LCD(1)=Activo, usr_lcd_clave_correcta 100

106 Rutina del sistema de ventilacion Rutina de usuario usr_leer_temperatura A/D=Activado, Conv_AD, Resolución=8_Bits, Canal=0, Resultado=temperatura1, Reg temperatura1 >= temperatura_on Reg temperatura1 <= temperatura_off RC5 = 1 RC5 = 0 Fin de rutina 101

107 Rutina para programar los eventos externos En el puerto 1 y 2 Rutina de usuario usr_programar_evento LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, LCD(2,02)='EXTER No. 1', LCD(1,01)='PUERTO DE SALIDA', tecla = 0xF0 Reg tecla = 0x14 Reg tecla = 0xF1 Reg tecla = 0xF2 Reg tecla = 0x13 LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, tecla = 0xF0 LCD(1,01)='HORA DE INICIO', LCD(2,02)='EXTER No. 2', Reg tecla = 0x13 Reg tecla = 0x14 Reg tecla = 0xF2 3_seg usr_minutos usr_horas minutos_evento1 = minutos hora_evento1 = horas LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, 3_seg usr_horas minutos_evento1fin = minutos LCD(1,01)='HORA D FINALIZAR', hora_evento1fin = horas usr_minutos LCD(1,01)='HORA DE INICIO', 3_seg usr_minutos minutos_evento2 = minutos 3_seg usr_horas minutos_evento2fin = minutos Reg tecla = 0xF1 usr_horas hora_evento2 = horas LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, LCD(1,01)='HORA D FINALIZAR', hora_evento2fin = horas usr_minutos Fin de rutina 102

108 Rutina para el control de cargas en los puertos externos 1 y 2 Rutina de usuario usr_eventos_externos Reg hora_evento1 = horas Reg minutos_evento1 = minutos evento1 = 0x01 Reg hora_evento1fin = horas evento1 = 0x00 Reg minutos_evento1fin = minutos Fin de rutina Reg hora_evento2 = horas Reg hora_evento2fin = horas Reg minutos_evento2fin = minutos Reg minutos_evento2 = minutos RD3 = 1 RD3 = 0 evento2 = 0x01 RC6 = 1 evento2 = 0x00 Reg evento1 = 0x01 RD2 = 0 RC7 = 0 Reg evento2 = 0x01 RC7 = 1 RC6 = 0 RD2 = 1 103

109 Rutina para ajustar la temperatura Rutina de usuario usr_ajustar_temperatura LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, contador = D'20' LCD(2,11)=ASCII(grados), decontador = D'40' LCD(2,06)=ASCII(grados), LCD(2,01)='on 27.C-25.C off', tecla = 0xF0 LCD(1,01)='SELECCIONE TEMP.', Reg tecla = 0xF1 contador = contador + D'2' contador = D'20' Reg tecla = 0xF2 Reg tecla = 0x14 decontador = decontador - D'2' decontador = contador contador = decontador Reg contador >= D'20' Reg decontador <= D'40' Reg contador <= D'40' Fin de rutina Reg decontador >= D'20' decontador = D'40' Reg(8)_->_BCD, Reg(8)_->_BCD, (contador), (decontador), Unidad=tempe_unidad, Unidad=tempe_unidad, LCD(2,04)=ASCII(tempe_decena), LCD(2,10)=ASCII(tempe_unidad), LCD(2,05)=ASCII(tempe_unidad), LCD(2,09)=ASCII(tempe_decena), temperatura_on = contador temperatura_off = contador - D'2' Reg(8)_->_BCD, (temperatura_off), Unidad=tempe_unidad, 104

110 Rutina para ajustar Fecha y Hora Rutina de usuario usr_ajustar_fecha_y_hora usr_dia_del_mes usr_mes usr_anio usr_horas usr_minutos usr_segundos PCF8583, Señal_Reloj=RE2, Señal_Datos=RE1, Nro_Disp=0, Modo=32768_Khz, Iniciar=, Formato=24_Horas, Día=dia, Mes=mes, Año=anio, Horas=horas, Minutos=minutos, Segundos=segundos, Apagar_Alarma, Reiniciar_Timer, reloj = 0x01 Fin de rutina 105

111 Rutina para el dia del mes Rutina de usuario usr_dia_del_mes LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, LCD(1,01)='SELECCIONE', contador = D'0' LCD(2,14)='--', decontador = D'32' tecla = 0xF0 LCD(2,01)='DIA DEL MES:', Reg tecla = 0xF3 Reg tecla = 0xF4 Reg tecla = 0x14 contador = contador + D'01' decontador = decontador - D'1' Fin de rutina decontador = contador contador = decontador Reg contador >= D'1' Reg decontador <= D'31' Reg contador <= D'31' decontador = D'32' Reg decontador >= D'1' Reg(8)_->_BCD, Reg(8)_->_BCD, (contador), (decontador), Unidad=dias_unidad, Unidad=dias_unidad, contador = D'0' dia = contador LCD(2,14)=ASCII(dia_decena), LCD(2,15)=ASCII(dias_unidad), 106

112 Rutina para el mes Rutina de usuario usr_mes LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, LCD(2,01)=' ', contador = D'0' decontador = D'13' tecla = 0xF0 contador = D'0' LCD(1,02)='SELEC. EL MES', Reg tecla = 0xF3 Reg tecla = 0x14 Reg tecla = 0xF4 contador = contador + D'01' decontador = decontador - D'1' Fin de rutina decontador = contador contador = decontador Reg contador >= D'1' Reg decontador <= D'12' Reg contador <= D'12' Reg decontador >= D'1' decontador = D'13' Reg(8)_->_BCD, Reg(8)_->_BCD, (contador), (decontador), Unidad=mes_unidad, Unidad=mes_unidad, LCD(2,16)=ASCII(mes_unidad), LCD(2,15)=ASCII(mes_decena), mes = contador LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, Reg mes = D'1' LCD(2,01)='01 ENERO', LCD(2,01)='02 FEBRERO', LCD(2,01)='03 MARZO', Reg mes = D'2' Reg mes = D'3' 107

113 contador = D'0' D'1' Reg contador <= D'12' Reg decontador >= D'1' decontador = D'13' Reg(8)_->_BCD, Reg(8)_->_BCD, (contador), (decontador), Unidad=mes_unidad, Unidad=mes_unidad, LCD(2,16)=ASCII(mes_unidad), LCD(2,15)=ASCII(mes_decena), mes = contador LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, Reg mes = D'1' LCD(2,01)='01 ENERO', LCD(2,01)='02 FEBRERO', LCD(2,01)='03 MARZO', LCD(2,01)='04 ABRIL', LCD(2,01)='05 MAYO', LCD(2,01)='06 JUNIO', LCD(2,01)='07 JULIO', Reg mes = D'2' Reg mes = D'3' Reg mes = D'4' Reg mes = D'5' Reg mes = D'6' Reg mes = D'7' Reg mes = D'8' LCD(2,01)='08 AGOSTO', Reg mes = D'9' LCD(2,01)='09 SEPTIEMBRE', Reg mes = D'10' LCD(2,01)='10 OCTUBRE', LCD(2,01)='11 VIEMBRE', LCD(2,01)='12 DICIEMBRE', Reg mes = D'11' Reg mes = D'12' 108

114 Rutina para el año Rutina de usuario usr_anio LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, decontador = D'4' contador = 0xFF LCD(2,06)='20XX', LCD(1,01)='SELEC. EL A O', tecla = 0xF0 LCD(1,12)=ASCII(enie), Reg tecla = 0xF3 contador = 0xFF Reg tecla = 0xF4 Reg tecla = 0x14 contador = contador + D'01' decontador = decontador D'01' Fin de rutina decontador = contador contador = decontador Reg contador <= D'3' Reg decontador <= D'3' anio = contador Reg anio = 0x00 decontador = D'4' LCD(2,08)='08', LCD(2,08)='09', LCD(2,08)='10', LCD(2,08)='07', Reg anio = 0x01 Reg anio = 0x02 Reg anio = 0x03 109

115 Rutina para convertir el año Rutina de usuario usr_convertir_anio LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, Reg anio = 0x00 LCD(1,15)='08', Reg anio = 0x01 LCD(1,15)='09', Reg anio = 0x02 LCD(1,15)='10', Reg anio = 0x03 LCD(1,15)='07', Fin de rutina 110

116 rutina para ajustar las horas Rutina de usuario usr_horas LCD_CMD, LCD=16x2, LCD_CMD=Limpiar_Pantalla, contador = 0xFF decontador = D'24' LCD(1,01)='AJUSTE --:--:--', tecla = 0xF0 LCD(2,01)=' HORA', Reg tecla = 0xF4 Reg tecla = 0xF3 Reg tecla = 0x14 contador = 0x00 contador = contador + D'01' decontador = contador contador = decontador Reg contador <= D'23' decontador = decontador - D'1' Fin de rutina Reg decontador <= D'23' decontador = D'24' Reg(8)_->_BCD, Reg(8)_->_BCD, (decontador), (contador), Unidad=hora_unidad, Unidad=hora_unidad, LCD(1,09)=ASCII(hora_decena), LCD(1,10)=ASCII(hora_unidad), horas = contador 111

117 rutina para ajustar los minutos Rutina de usuario usr_minutos decontador = D'60' contador = 0xFF tecla = 0xF0 LCD(2,01)='MINUTOS', Reg tecla = 0xF4 Reg tecla = 0x14 Reg tecla = 0xF3 contador = contador + D'01' decontador = contador contador = 0x00 minutos = contador Reg contador <= D'59' decontador = decontador - D'1' Fin de rutina contador = decontador Reg contador <= D'59' decontador = D'60' Reg(8)_->_BCD, Reg(8)_->_BCD, (decontador), (contador), Unidad=minutos_unidad, Unidad=minutos_unidad, LCD(1,12)=ASCII(minutos_decenas), LCD(1,13)=ASCII(minutos_unidad), 112

118 Rutina para ajustar los segundos Rutina de usuario usr_segundos decontador = D'60' contador = 0xFF tecla = 0xF0 LCD(2,01)='SEGUNDOS', Reg tecla = 0xF3 Reg tecla = 0xF4 Reg tecla = 0x14 contador = contador + D'01' decontador = decontador - D'1' Fin de rutina decontador = contador contador = 0x00 segundos = contador Reg contador <= D'59' contador = decontador Reg contador <= D'59' decontador = D'60' Reg(8)_->_BCD, Reg(8)_->_BCD, (contador), (decontador), Unidad=segundos_unidad, Unidad=segundos_unidad, LCD(1,16)=ASCII(segundos_unidad), LCD(1,15)=ASCII(segundos_decenas), 113

119 rutina para convertir los datos a BCD y mostrar en pantalla Reg(8)_->_BCD, (temperatura1), usr_convertir_anio Unidad=tempe_unidad, usr_fecha_hora_y_tempe Rutina de usuario Reg(8)_->_BCD,Reg(8)_->_BCD, Reg(8)_->_BCD, Reg(8)_->_BCD, (horas), (mes), (dia), (minutos), Unidad=horas_unidad, Unidad=mes_unidad, Unidad=dia_unidad, Unidad=minutos_unidad, Reg(8)_->_BCD, (segundos), Fin de rutina Unidad=segundos_unidad, Decena=segundos_decenas, Algunas rutinas se omitieron por no mostrar ningun contenido de importancia. 114

120 REFERENCIAS: I. Automatización de procesos con microcontroladores de la familia PIC16F8XX de microchip. Tesis Profesional #213 II. A partir de el 20 de marzo de 2007 a mayo 2007 aquí se consulto todo sobre la programación y algunos detalles del PIC III. A partir de septiembre 2006 a enero 2007 y en esta pagina se consutaron detalles sobre el pic que se utilizo en la tesis IV. A partir de septiembre 2006 a mayo 2007 y en esta pagina se consultaron las hojas de datos de los circuitos utilizados en la tesis V. A partir de septiembre 2006 a mayo 2007 en esta pagina se consutaron algunas configuraciones y circuitos usados en la tesis 115

ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR

ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR ORGANIZACIÓN INTERNA + INTRODUCCIÓN AL ENSAMBLADOR ORGANIZACIÓN de la MEMORIA Dentro del PIC16F877 se distinguen tres bloques de memoria. Memoria de programa En sus 8192 posiciones (8K) contiene el programa

Más detalles

Practica de PIC 16F84

Practica de PIC 16F84 Practica de PIC 16F84 Los PIC son circuitos que pueden controlar dispositivos y diferentes sistemas, son como los PLC (controles lógico programable), además debo decir que es un circuito que tiene todas

Más detalles

INSTRUCCIONES DE ENSAMBLADOR

INSTRUCCIONES DE ENSAMBLADOR MPLAB INSTRUCCIONES DE ENSAMBLADOR ORGANIZACIÓN de la MEMORIA Dentro del PIC16F877 se distinguen tres bloques de memoria. Memoria de programa En sus 8192 posiciones (8K) contiene el programa con las instrucciones

Más detalles

Set de instrucciones Microcontrolador PIC.

Set de instrucciones Microcontrolador PIC. Microcontroladores Pic 16F84A. Los PIC son una extensa familia microcontroladores divididos en tres gamas, la gama baja con memoria programa 12 bits, la gama media y la gama alta con memoria programa 14

Más detalles

Características generales

Características generales REPERTORIO DE INSTRUCCIONES En esta sección se pretende: Conocer las características generales de las instrucciones para el PIC16F84 Los distintos modos de direccionamiento, y Los diferentes grupos de

Más detalles

DESCRIPCIÓN DE LAS INSTRUCCIONES

DESCRIPCIÓN DE LAS INSTRUCCIONES Todas las instrucciones del PIC cumplen las siguientes condiciones: Las instrucciones son simples y rápidas. Todas tienen un tiempo de ejecución de un ciclo de instrucción (cuatro ciclos de reloj) a excepción

Más detalles

O B J E T I V O I N T R O D U C C I O N M A R C O T E O R I C O

O B J E T I V O I N T R O D U C C I O N M A R C O T E O R I C O O B J E T I V O Realizar un contador decimal que se exhiba en un display de 7 segmentos, cada número deberá estar exhibido durante un segundo. I N T R O D U C C I O N En la mayoría de los sistemas electrónicos

Más detalles

Instrucciones para programar el PIC16F877

Instrucciones para programar el PIC16F877 Instrucciones para programar el PIC16F877 2 Estos microcontroladores responden a una serie de instrucciones o códigos que se deben grabar en su memoria de programa, en total son 35. A continuación se encuentra

Más detalles

Lenguaje ensamblador Semana 2 Trabajando con el lenguaje ensamblador

Lenguaje ensamblador Semana 2 Trabajando con el lenguaje ensamblador 2016 Lenguaje ensamblador Semana 2 Trabajando con el lenguaje ensamblador Contenido Trabajando con el lenguaje ensamblador... 2 Introducción... 2 UNIDADES DE INFORMACIÓN... 3 BIT... 3 BYTE... 3 NIBBLE...

Más detalles

Las Instrucciones. A continuación vamos a presentar el conjunto de instrucciones básico de los Microcontroladores Picmicro.

Las Instrucciones. A continuación vamos a presentar el conjunto de instrucciones básico de los Microcontroladores Picmicro. Las Instrucciones A continuación vamos a presentar el conjunto de instrucciones básico de los Microcontroladores Picmicro. En general la instrucciones de los microcontroladores pueden clasificarse como:

Más detalles

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI DEFINICIÓN Es un microcontrolador de Microchip Technology fabricado en tecnología CMOS, completamente estático es decir si el reloj se detiene los datos

Más detalles

Sistemas con Microprocesadores I

Sistemas con Microprocesadores I Sistemas con Microprocesadores I 1 Microcontroladores Introducción Harvard vs. von-neumann Clasificación del procesador Segmentado o Pipeline Ortogonal vs. No ortogonal 2 Microcontroladores PIC Siglas

Más detalles

PANORAMA GENERAL DE LOS µc

PANORAMA GENERAL DE LOS µc PANORAMA GENERAL DE LOS µc Sistemas Digitales II Este tipo de dispositivos en la actualidad se encuentran en los supermercados, artículos electrodomésticos, instrumentos musicales, juguetes, equipo automotriz

Más detalles

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA

UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA UNIVERSIDAD NACIONAL DE COLOMBIA SEDE BOGOTÁ FACULTAD DE INGENIERÍA INGENIERÍA MECATRÓNICA INTRODUCCIÓN AL PIC NOMENCLATURA ARQUITECTURA. TEMPORIZACIÓN. SET DE INSTRUCCIONES. MODOS DE DIRECCIONAMIENTO.

Más detalles

UNIDAD 1. COMPONENTES DEL COMPUTADOR

UNIDAD 1. COMPONENTES DEL COMPUTADOR UNIDAD 1. COMPONENTES DEL COMPUTADOR OBJETIVO Nº 1.1: DEFINICIÓN DE COMPUTADOR: Es un dispositivo electrónico compuesto básicamente de un procesador, una memoria y los dispositivos de entrada/salida (E/S).

Más detalles

Arquitectura de Computadoras

Arquitectura de Computadoras Arquitectura de Computadoras Dr. Andrés David García García Escuela de Diseño, Ingeniería y Arquitectura Departamento de Mecatrónica 1 Microprocesadores y Periféricos Objetivos: Analizar la arquitectura

Más detalles

MICROCONTROLADOR PIC DE MICROCHIP

MICROCONTROLADOR PIC DE MICROCHIP MICROCONTROLADOR PIC DE MICROCHIP PIC16F877-28-PIN 8-BIT CMOS FLASH MICROCONTROLLER PIC16F877: ESTRUCTURA INTERNA Bus de Datos Bus de Datos (programa) Registro de trabajo (acumulador) Conversor A/D Contador/Temporizador

Más detalles

Capítulo 3. Microcontroladores 3.1 Definiciones

Capítulo 3. Microcontroladores 3.1 Definiciones Capítulo 3. Microcontroladores En este capítulo se define el microcontrolador, con una breve semblanza histórica sobre procesadores. Se habla más detenidamente sobre los PICs y se muestran características

Más detalles

UNIDAD IV PROGRAMACION. Programación del microcontrolador

UNIDAD IV PROGRAMACION. Programación del microcontrolador UNIDAD IV PROGRAMACION Programación del microcontrolador Para grabar la memoria de programa el microcontrolador debe llevarse a un modo especial de trabajo suministrando 13.5V a la línea MCLR y el voltaje

Más detalles

Microcontroladores ( C)

Microcontroladores ( C) Microcontroladores ( C) Bibliografia: Hoja de datos del PIC 16F84 y 16F628 (www.microchip.com) Microcontroladores PIC: la clave del diseño (biblioteca) Microcontroladores PIC: diseño práctico de aplicaciones

Más detalles

Introducción a la arquitectura PIC

Introducción a la arquitectura PIC 18 de septiembre de 2012 Contenido 1 Microprocesadores y Microcontroladores 2 3 4 Microprocesadores y Microcontroladores Microcomputadora consiste básicamente de: Unidad central de procesamiento (CPU),

Más detalles

MICROCONTROLADOR PIC DE MICROCHIP

MICROCONTROLADOR PIC DE MICROCHIP MICROCONTROLADOR PIC DE MICROCHIP Sistema Microprocesador (varios C.I. en una PCB) Microcontrolador (único C.I.) MICROCONTROLADOR PIC DE MICROCHIP PIC16F877-28-PIN 8-BIT CMOS FLASH MICROCONTROLLER Manuel

Más detalles

Capítulo 2. Microcontroladores: Características y aplicaciones generales

Capítulo 2. Microcontroladores: Características y aplicaciones generales 1. Definición Capítulo 2. Microcontroladores: Características y aplicaciones generales Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o varios procesos. Por ejemplo,

Más detalles

Registros SFR vistos hasta ahora: Microcontroladores PIC

Registros SFR vistos hasta ahora: Microcontroladores PIC Registros SFR vistos hasta ahora: Microcontroladores PIC Microcontroladores PIC: Timer Características del Timer TMR0: Cumple básicamente la función de contador de eventos (o divisor de frecuencia). El

Más detalles

CONCEPTOS BÁSICOS. + Intensidad

CONCEPTOS BÁSICOS. + Intensidad CONCEPTOS BÁSICOS Si en una frase tuviera que definir que es un microcontrolador, creo que lo más acertado sería definirlo como un controlador de entrada/ salida con capacidad de decisión. Para poder explicar

Más detalles

MICROCONTROLADORES. 1. El PIC 16F84A es un microcontrolador de: a) 16 bits b) 8 bits c) 4 bits d) 32 bits e) 64 bits

MICROCONTROLADORES. 1. El PIC 16F84A es un microcontrolador de: a) 16 bits b) 8 bits c) 4 bits d) 32 bits e) 64 bits 1. El PIC 16F84A es un microcontrolador de: a) 16 bits b) 8 bits c) 4 bits d) 32 bits e) 64 bits MICROCONTROLADORES 2. La memoria de programa del PIC 16F84A es de tipo: a) ROM b) OTP c) RAM d) EPROM e)

Más detalles

REGISTRO DE TEMPERATURA USANDO EL MICROCONTROLADOR PIC16C71. José González Flórez *, Eusebio García García ** Abstract

REGISTRO DE TEMPERATURA USANDO EL MICROCONTROLADOR PIC16C71. José González Flórez *, Eusebio García García ** Abstract UNIVERSIDAD PEDAGOGICA NACIONAL REGISTRO DE TEMPERATURA USANDO EL MICROCONTROLADOR PIC16C71 José González Flórez *, Eusebio García García ** Abstract A digital measurement temperature employs the PIC 16C71

Más detalles

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas MARCO TEORICO. Estructura Interna

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas MARCO TEORICO. Estructura Interna AUTOMATIZACION GUIA DE TRABAJO 3 DOCENTE: VICTOR HUGO BERNAL UNIDAD No. 3 OBJETIVO GENERAL Realizar una introducción a los controladores lógicos programables OBJETIVOS ESPECIFICOS: Reconocer la arquitectura

Más detalles

Microcontrolador PIC16F84: Arquitectura

Microcontrolador PIC16F84: Arquitectura Microcontrolador PIC16F84: Arquitectura La arquitectura del PIC es tipo Harvard: Mem. de Programa (instrucciones) (tipo FLASH) Control DIR DATOS µp (tipo RISC, pipeline de 2 etapas) Control DIR DATOS 14

Más detalles

UNIVERSIDAD TECNICA DE AMBATO NOVENO SEMESTRE INGENIERIA ROBOTICA MICROCONTROLADORES Y SU APLICACION EN ROBOTICA PROFESOR: UTA 2009 ING. G.

UNIVERSIDAD TECNICA DE AMBATO NOVENO SEMESTRE INGENIERIA ROBOTICA MICROCONTROLADORES Y SU APLICACION EN ROBOTICA PROFESOR: UTA 2009 ING. G. MICROCONTROLADORES Y SU APLICACION EN UTA 2009 PROFESOR: ING. G. ALMEIDA SEMESTRE MARZO - JULIO 2009 OBJETIVOS DISTINGUIR LOS ASPECTOS GENERALES, CARACTERISTICAS Y FUNCIONAMIENTO DE UN MICROCONTROLADOR.

Más detalles

Qué es un Microcontrolador?

Qué es un Microcontrolador? Qué es un Microcontrolador? Es un circuito integrado programable que contiene todos los componentes de un computadora, aunque de limitadas prestaciones y se destina a gobernar una sola tarea. Cómo se compone

Más detalles

Control de pantallas de cristal líquido mediante PIC

Control de pantallas de cristal líquido mediante PIC INGENIERÍA Control de pantallas de cristal líquido mediante PIC Ejemplo práctico de interconexión y control de una pantalla de cristal líquido (LCD) por un microcontrolador PIC CELESTINO BENÍTEZ VÁZQUEZ

Más detalles

Qué es un Microcontrolador?

Qué es un Microcontrolador? Qué es un Microcontrolador? Es un circuito integrado programable que contiene todos los componentes de un computadora, aunque de limitadas prestaciones y se destina a gobernar una sola tarea. Cómo se compone

Más detalles

ARQUITECTURA DEL PIC16F84A

ARQUITECTURA DEL PIC16F84A ARQUITECTURA DEL PIC16F84A Arquitectura interna del PIC16F84A CPU ALU Decodificador de Instrucciones - Buses Registro de trabajo W PC Contador de Programa Organización de la memoria Memoria de Programa

Más detalles

Capítulo 1. Introducción a los PIC de 8 bits

Capítulo 1. Introducción a los PIC de 8 bits Capítulo 1. Introducción a los PIC de 8 bits 1.1 Memorias y Registros Entre los componentes básicos de un microcontrolador podemos definir el contador, sus registros, la memoria, el watchdog timer, el

Más detalles

PIC s 1ª PARTE RESUMEN Y EJERCICIOS_06/07

PIC s 1ª PARTE RESUMEN Y EJERCICIOS_06/07 PIC s 1ª PARTE RESUMEN Y EJERCICIOS_06/07 INDICE 1-Microcontroladores, arquitectura PIC. 2-Hardware PIC 16f84. Bancos de registros. 3-Grabación del PIC. Listado Instrucciones 4-Líneas de I/O del PIC 5-Directivas

Más detalles

Arquitectura de Computadores II

Arquitectura de Computadores II Facultad de Ingeniería Universidad de la República Instituto de Computación Temas Repaso de conceptos Microcontroladores CISC vs RISC CISC Complex Instruct Set Computers RISC Reduced Instruct Set Computers

Más detalles

Unidad 2: Taller de Cómputo. Estructura y Componentes de la Computadora UNIDAD DOS: INTRODUCCIÓN

Unidad 2: Taller de Cómputo. Estructura y Componentes de la Computadora UNIDAD DOS: INTRODUCCIÓN UNIDAD DOS: INTRODUCCIÓN Una computadora es una máquina electrónica diseñada para manipular y procesar información de acuerdo a un conjunto de ordenes o programas. para que esto sea posible se requiere

Más detalles

Características PIC16F84

Características PIC16F84 Departamento de Electrónica Fundación San Valero del Toda la información que grabamos (memoria de programa y de datos) se puede modificar con el microcontrolador conectado a la aplicación. (ICSP = In-Circuit

Más detalles

PIC 18F45XX CARACTERÍSTICAS GENERALES

PIC 18F45XX CARACTERÍSTICAS GENERALES PIC 18F45XX CARACTERÍSTICAS GENERALES 1. Características generales CPU con arquitectura Harvard (77 instrucciones) Todas las instrucciones constan de 1 sola palabra de 16 bits (2 bytes) excepto las de

Más detalles

Diagrama a bloques 2

Diagrama a bloques 2 Arquitectura 1 Diagrama a bloques 2 Diagrama a bloques 3 Diagrama a bloques 4 Diagrama a bloques 5 Unidad aritmética-lógica La unidad Aritmética Lógica se encarga de realizar las operaciones Suma, Resta,

Más detalles

UNIVERSIDAD TECNOLÓGICA DE LA MIXTECA. Ingeniería en Electrónica EL MICROCONTROLADOR PIC16F84 PRESENTA: M. C. Felipe Santiago Espinosa

UNIVERSIDAD TECNOLÓGICA DE LA MIXTECA. Ingeniería en Electrónica EL MICROCONTROLADOR PIC16F84 PRESENTA: M. C. Felipe Santiago Espinosa UNIVERSIDAD TECNOLÓGICA DE LA MIXTECA Ingeniería en Electrónica EL MICROCONTROLADOR PIC16F84 PRESENTA: M. C. Felipe Santiago Espinosa Noviembre de 2007 Objetivos 2 Que los participantes adquieran el conocimiento

Más detalles

Unidad IV: Programación de microcontroladores

Unidad IV: Programación de microcontroladores Unidad IV: Programación de microcontroladores El microcontrolador ejecuta el programa cargado en la memoria Flash. Esto se denomina el código ejecutable y está compuesto por una serie de ceros y unos,

Más detalles

El único lenguaje que entienden los microcontroladores es el código máquina formado por ceros y unos del sistema binario.

El único lenguaje que entienden los microcontroladores es el código máquina formado por ceros y unos del sistema binario. 1 LENGUAJE ENSAMBLADOR El único lenguaje que entienden los microcontroladores es el código máquina formado por ceros y unos del sistema binario. El lenguaje ensamblador expresa las instrucciones de una

Más detalles

Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA

Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA Programación y Aplicaciones de los Microcontroladores PIC16FXXX (Nivel Básico) ING. EULER DEZA FIGUEROA ESTRUCTURA Y CONTENIDO: SESIONES DE CLASE CONTENIDOS PRACTICA PRIMERA (5 horas ) SEGUNDA (5 horas

Más detalles

UNIDAD 1: - ESTRUCTURA Y FUNCIONAMIENTO DE UN ORDENADOR

UNIDAD 1: - ESTRUCTURA Y FUNCIONAMIENTO DE UN ORDENADOR UNIDAD 1: - ESTRUCTURA Y FUNCIONAMIENTO DE UN ORDENADOR INTRODUCCIÓN Los ordenadores necesitan para su funcionamiento programas. Sin un programa un ordenador es completamente inútil. Concepto de Ordenador

Más detalles

MICROCONTROLADORES (III)

MICROCONTROLADORES (III) Prof. Manuel Rivas MICROCONTROLADORES (III) Pautas generales de programación Operaciones con datos Operaciones aritméticas Operaciones de comparación Subrutinas Selección múltiple Configuración de puertos

Más detalles

INTRODUCCIÓN A LOS MICROPROCESADORES Y MICROCONTROLADORES

INTRODUCCIÓN A LOS MICROPROCESADORES Y MICROCONTROLADORES INTRODUCCIÓN A LOS MICROPROCESADORES Y MICROCONTROLADORES TEC Digital ÍNDICE Parte I Microprocesadores Parte II Memorias Parte III Periféricos Parte IV Integración de periféricos, memorias y microprocesadores

Más detalles

2.- Con qué palabras inglesas se define la parte física del ordenador y cómo se llama la parte de programas, la que no se ve.

2.- Con qué palabras inglesas se define la parte física del ordenador y cómo se llama la parte de programas, la que no se ve. CUESTIONARIO TEMA 2 UNIDADES FUNCIONALES. 1.- Definición de ordenador. Máquina electrónica capaz de almacenar información y tratarla automáticamente mediante operaciones matemáticas y lógicas controladas

Más detalles

PRÁCTICA 2: Programas básicos. Tipos de direccionamiento.

PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 2: Programas básicos. Tipos de direccionamiento. Tipos de direccionamiento Ejemplos y ejercicios - 1 - 1. Objetivos - Introducir

Más detalles

Tema: Microprocesadores

Tema: Microprocesadores Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad I: Introducción a los Microprocesadores y Microcontroladores. Tema: Microprocesadores Arq. de Computadora I Ing. Carlos Ortega H. 1

Más detalles

EL ORDENADOR Y SUS COMPONENTES

EL ORDENADOR Y SUS COMPONENTES EL ORDENADOR Y SUS COMPONENTES Esta presentación ha sido realizada por Mónica Escamilla. Virgilio Marco Aparicio, profesor de Apoyo al Área Práctica del IES Tiempos Modernos de Zaragoza, la tradujo del

Más detalles

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ)

0-31 : caracteres de control : carac. Comunes : especiales (flechas, símbolos) y particulares (ñ) Hardware y Software (1/6) Lenguaje binario Los ordenadores sólo entienden 1 y 0. Lógica positiva: 0: no hay señal 1: hay señal Código ASCII American Standard Code for Information Interchange Carácter =

Más detalles

CODIGO EN ASSEMBLER TRANSMISOR. list p=16f876 ;selecion de pic

CODIGO EN ASSEMBLER TRANSMISOR. list p=16f876 ;selecion de pic TRANSMISOR CODIGO EN ASSEMBLER list p=16f876 ;selecion de pic radix hex ; codigo hex indf equ 0h ;direcionamiento indirecto tmro equ 1h ;contador de tiempo real pc equ 2h ;contador del programa status

Más detalles

Elección de un microcontrolador

Elección de un microcontrolador Elección de un microcontrolador Decisión multivariable. No hay un óptimo evidente Factores: Herramientas de desarrollo Base de conocimientos Precio y disponibilidad Familia versátil y en desarrollo Cantidad

Más detalles

EL ORDENADOR HARDWARE SOFTWARE

EL ORDENADOR HARDWARE SOFTWARE EL ORDENADOR HARDWARE Y SOFTWARE Profesor: Julio Serrano Qué es y cómo funciona un Ordenador? Es un máquina electrónica que se encarga del tratamiento digital de la información de una forma rápida. Cómo

Más detalles

TEMA 1: Concepto de ordenador

TEMA 1: Concepto de ordenador TEMA 1: Concepto de ordenador 1.1 Introducción Los ordenadores necesitan para su funcionamiento programas. Sin un programa un ordenador es completamente inútil. Para escribir estos programas necesitamos

Más detalles

Programación de microcontroladores usos y aplicaciones. Desde Ensamblador a C.

Programación de microcontroladores usos y aplicaciones. Desde Ensamblador a C. Programación de microcontroladores usos y aplicaciones. Desde Ensamblador a C. Familias 8-bit de Microchip: PIC10F, PIC12F, PIC16F y PIC18F /cursos/microchip/ Espinher Electróingeniería, S.A. de C.V. Ing.

Más detalles

SOFTWARE DE APLICACIÓN. CINDEA Sesión 02

SOFTWARE DE APLICACIÓN. CINDEA Sesión 02 SOFTWARE DE APLICACIÓN CINDEA Sesión 02 CONFIGURACIÓN BÁSICA DE UNA COMPUTADORA Los computadores se componen de dos partes llamadas hardware y software. CONFIGURACIÓN BÁSICA Hardware es la máquina física,

Más detalles

ESTRUCTURA BÁSICA DE UN ORDENADOR

ESTRUCTURA BÁSICA DE UN ORDENADOR ESTRUCTURA BÁSICA DE UN ORDENADOR QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... QUÉ ES UN ORDENADOR? Un ordenador es una máquina... Qué son los

Más detalles

MICROCONTROLADORES PIC BÁSICO (PIC 16F84A / 16F627)

MICROCONTROLADORES PIC BÁSICO (PIC 16F84A / 16F627) MICROCONTROLADORES PIC BÁSICO (PIC 16F84A / 16F627) TEMARIO Objetivo: El estudiante comprenderá la evolución de los microcontroladores y microprocesadores así como sus diferencias, desarrollara su habilidad

Más detalles

Lenguaje binario. Código ASCII. Medidas de la información

Lenguaje binario. Código ASCII. Medidas de la información Hardware y Software (1/5) Lenguaje binario Los ordenadores sólo entienden 1 y 0. Lógica positiva: 0: no hay señal 1: hay señal Código ASCII Medidas de la información Unidad mínima de información: BIT (0

Más detalles

Tema 6: Microcontroladores

Tema 6: Microcontroladores Tema 6: Microcontroladores Carlos Garre del Olmo 1 Microcontroladores Contenidos Introducción a los microcontroladores. Principales familias y sus características. La familia PIC16. Programación de microcontroladores.

Más detalles

Centro Universitario de Ciencias Exactas e Ingenierías DIVISION DE ELECTRONICA Y COMPUTACION

Centro Universitario de Ciencias Exactas e Ingenierías DIVISION DE ELECTRONICA Y COMPUTACION SISTEMA DE SEGURIDAD PARA CASA HABITACION González Padilla Carlos Efraín, Hernández García Edgar Aureliano, López Seda Celia Cristina, Vázquez Domínguez Armando. e-mail: [email protected], [email protected],

Más detalles

Microcontroladores PIC

Microcontroladores PIC Introducción Los microcontroladores son procesadores que poseen memoria y dispositivo de entrada salida todo encapsulado en un mismo integrado, lo que permite su uso sin la necesidad de estar disponiendo

Más detalles

Medidas de Distancia mediante Rayos Infrarrojos

Medidas de Distancia mediante Rayos Infrarrojos Medidas de Distancia mediante Rayos Infrarrojos Con un nuevo módulo sensor de proximidad. La casa Sharp ha fabricado un nuevo sensor, en la forma del módulo GP2D02 que, con la ayuda de un microcontrolador,

Más detalles

Introducción. Modo monitor. Cuaderno técnico 4: Grabación de microcontroladores PIC

Introducción. Modo monitor. Cuaderno técnico 4: Grabación de microcontroladores PIC Cuaderno técnico 4: Grabación de microcontroladores PIC [Introducción] [Modo monitor] [Arquitectura] [Autores] [Licencia] [Download] [Links] [Noticias] Introducción Los microcontroladores PIC se graban

Más detalles

INDICE Capitulo 1. Microcontroladores Programables: La Solución está en un CHIP Capitulo 2. Microcontroladores de 8 BITS: Los <<PIC>>

INDICE Capitulo 1. Microcontroladores Programables: La Solución está en un CHIP Capitulo 2. Microcontroladores de 8 BITS: Los <<PIC>> INDICE Prólogo XIII Capitulo 1. Microcontroladores Programables: La Solución está en un CHIP 1 1.1. Qué es un microcontrolador? 1 1.1.1. Diferencia entre microprocesador y microcontrolador 3 1.4. Arquitectura

Más detalles

EL ORDENADOR A. PERIFÉRICOS. B. UNIDAD CENTRAL. 1. HARDWARE Y SOFTWARE. 2. FUNCIONAMIENTO DE UN SISTEMA INFORMÁTICO 3. CONCEPTO DE SISTEMA INFORMÁTICO

EL ORDENADOR A. PERIFÉRICOS. B. UNIDAD CENTRAL. 1. HARDWARE Y SOFTWARE. 2. FUNCIONAMIENTO DE UN SISTEMA INFORMÁTICO 3. CONCEPTO DE SISTEMA INFORMÁTICO EL ORDENADOR 1. HARDWARE Y SOFTWARE. 2. FUNCIONAMIENTO DE UN SISTEMA INFORMÁTICO 3. CONCEPTO DE SISTEMA INFORMÁTICO 4. PARTES DE UN SISTEMA INFORMÁTICO A. PERIFÉRICOS. B. UNIDAD CENTRAL. a) CARCASA b)

Más detalles

Partes Internas y Externas de la Computadora

Partes Internas y Externas de la Computadora Partes Internas y Externas de la Computadora La computadora está compuesta por hardware que se clasifican según donde se encuentran: PARTES EXTERNAS MONITOR: es un dispositivo de salida que, mediante una

Más detalles

Indice. Escrito por Administrator Martes, 02 de Septiembre de 2008 17:45 - Actualizado Domingo, 20 de Septiembre de 2009 07:45 1 / 15

Indice. Escrito por Administrator Martes, 02 de Septiembre de 2008 17:45 - Actualizado Domingo, 20 de Septiembre de 2009 07:45 1 / 15 1 / 15 El contenido del libro " MICROCONTROLADOR PIC16F84. Desarrollo de proyectos " de la Editorial Ra CAPÍTULOS: 1. MICROCONTROLADOR PIC16F84 2. PERIFÉRICOS BÁSICOS 3. GRABACIÓN DE MICROCONTROLADORES

Más detalles

Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación

Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación Taller de Firmware Introducción al PIC16F877 Facultad de Ingeniería Instituto de Com putación Contenido Introducción a los microcontroladores PIC. Presentación del PIC 16F877. Introducción a los microcontroladores

Más detalles

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA INDUSTRIAL. ESPECIALIDAD ELECTRÓNICA BOLETÍN 1. CURSO 2003/04

INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA INDUSTRIAL. ESPECIALIDAD ELECTRÓNICA BOLETÍN 1. CURSO 2003/04 INFORMÁTICA INDUSTRIAL. 3º INGENIERÍA TÉCNICA INDUSTRIAL. ESPECIALIDAD ELECTRÓNICA BOLETÍN 1. CURSO 20/04 1. Se colocan tres interruptores en las líneas RA0, RA1 y RA2 de la puerta A de un PIC16F84. Y

Más detalles

ÍNDICE INTRODUCCIÓN...17

ÍNDICE INTRODUCCIÓN...17 ÍNDICE INTRODUCCIÓN...17 CAPÍTULO 1. MICROCONTROLADORES...19 1.1 MICROCONTROLADOR...19 1.1.1 Controlador y microcontrolador...19 1.1.2 Diferencia entre microprocesador y microcontrolador...21 1.1.3 Aplicaciones

Más detalles

SISTEMA DE NUMERACIÓN DECIMAL

SISTEMA DE NUMERACIÓN DECIMAL SISTEMA DE NUMERACIÓN DECIMAL La matemática es una gran ciencia! Todo es tan lógico y simple... El universo de los números se puede describir con sólo diez dígitos. No obstante, realmente tiene que ser

Más detalles

1. DATOS e INFORMACIÓN.

1. DATOS e INFORMACIÓN. TEMA 1 HARDWARE 1. DATOS e INFORMACIÓN. Datos (en informática): Información codificada, lista para ser introducida y procesada por un ordenador. Carecen de significado y sólo lo alcanzan cuando son descodificados

Más detalles

MICROCONTROLADORES : COMPILADOR MPLAB 16FXX, UNA INTRODUCCION. ING. YESID EUGENIO SANTAFE RAMON DOCENTE PROGRAMA DE INGENIERIA ELECTRONICA

MICROCONTROLADORES : COMPILADOR MPLAB 16FXX, UNA INTRODUCCION. ING. YESID EUGENIO SANTAFE RAMON DOCENTE PROGRAMA DE INGENIERIA ELECTRONICA MICROCONTROLADORES : COMPILADOR MPLAB 16FXX, UNA INTRODUCCION. ING. YESID EUGENIO SANTAFE RAMON DOCENTE PROGRAMA DE INGENIERIA ELECTRONICA [] Tendencias Video Walls & Virtual-Real Meetings In the Office

Más detalles

Contenidos. Arquitectura de ordenadores (fundamentos teóricos) Elementos de un ordenador. Periféricos

Contenidos. Arquitectura de ordenadores (fundamentos teóricos) Elementos de un ordenador. Periféricos Arquitectura de ordenadores (fundamentos teóricos) Representación de la información Estructura de un microprocesador Memorias Sistemas de E/S Elementos de un ordenador Microprocesador Placa base Chipset

Más detalles

Partes internas del CPU.

Partes internas del CPU. Partes internas del CPU. DISCO DURO Es un dispositivo de almacenamiento de datos no volátil que emplea un sistema de grabación magnética para almacenar datos digitales. Se compone de uno o más platos o

Más detalles

HARDWARE DE UN COMPUTADOR (PARTE 01)

HARDWARE DE UN COMPUTADOR (PARTE 01) INSTITUCIÓN EDUCATIVA JOSÉ EUSEBIO CARO ÁREA DE TECNOLOGÍA E INFORMÁTICA DOCENTE JESÚS EDUARDO MADROÑERO RUALES HARDWARE DE UN COMPUTADOR (PARTE 01) COMPUTADORA PERSONAL La computadora u ordenador es una

Más detalles

GAMA BAJA (PIC16C5X) ARQUITECTURA BÁSICA

GAMA BAJA (PIC16C5X) ARQUITECTURA BÁSICA GAMA BAJA (PIC6CX) ARQUITECTURA BÁSICA Instrucciones -bit de palabra de instrucción ROM/EPROM desde a 04 palabras Hasta 4 páginas (xbits) de memoria de programa -bit de datos RAM desde a bytes Hasta 4

Más detalles

UNIDAD CENTRAL DE PROCESO

UNIDAD CENTRAL DE PROCESO UNIDAD CENTRAL DE PROCESO NO SON CPU, SON CASES COMPONENTES DE UN SISTEMA DE CÓMPUTOS DISPOSITIVOS DE ALMACENAMIENTO Disco Rígido, Disquete, CD, DVD DISPOSITIVOS DE ENTRADA Teclado Mouse Micrófono Cámara

Más detalles

El ordenador. Llamamos ordenador a una máquina capaz de procesar información, es decir, de recibir datos, almacenarlos, hacer

El ordenador. Llamamos ordenador a una máquina capaz de procesar información, es decir, de recibir datos, almacenarlos, hacer El ordenador 1. Introducción al ordenador 1.1. El ordenador Llamamos ordenador a una máquina capaz de procesar información, es decir, de recibir datos, almacenarlos, hacer La ciencia que estudia el tratamiento

Más detalles

Bibliografía básica de referencia: Fundamentos de Informática para Ingeniería Industrial, Fernando Díaz del Río et al.

Bibliografía básica de referencia: Fundamentos de Informática para Ingeniería Industrial, Fernando Díaz del Río et al. 1 Informática E.P.S. Universidad de Sevilla TEMA 2: Estructura de Computadores 2 BIBLIOGRAFIA Bibliografía básica de referencia: Fundamentos de Informática para Ingeniería Industrial, Fernando Díaz del

Más detalles

CAPITULO III CONTROLADORES

CAPITULO III CONTROLADORES CAPITULO III CONTROLADORES 3.1 Controladores El controlador es el segundo elemento en un sistema de control automático, éste toma una señal de entrada y la compara con un valor establecido para obtener

Más detalles

PRÁCTICA 4 LOS BITS DE CONFIGURACIÓN DEL PIC16F628

PRÁCTICA 4 LOS BITS DE CONFIGURACIÓN DEL PIC16F628 Los Bits de Configuración del PIC16F628 44 PRÁCTICA 4 LOS BITS DE CONFIGURACIÓN DEL PIC16F628 OBJETIVOS Identificar cada uno de los bits de configuración que rigen el funcionamiento del PIC16F628. Verificar

Más detalles

VOCABULARIO DEL HARDWARE. Docente Yeni Ávila

VOCABULARIO DEL HARDWARE. Docente Yeni Ávila VOCABULARIO DEL HARDWARE Docente Yeni Ávila HARDWARE El Hardware Básico: son las piezas fundamentales e imprescindibles para que la computadora funcione como son: Placa base, monitor, teclado y ratón.

Más detalles

Microcontroladores PIC

Microcontroladores PIC Microcontroladores PIC Procesador RISC. Arquitectura Harvard Pipeline Formato de instrucciones ortogonal Arquitectura basada en banco de registros Distintos periféricos: temporizadores, puertos paralelo/serie,

Más detalles

PROFESOR: Práctica 10. Manejo de Tabla de datos con Microcontrolador PIC

PROFESOR: Práctica 10. Manejo de Tabla de datos con Microcontrolador PIC INSTITUTO POLITÉCNICO NACIONAL Centro de Estudios Científicos y Tecnológicos Nº 1 Gonzalo Vázquez Vela Academia de Sistemas Digitales Prácticas de Arquitectura de Microprocesadores y Microcontroladores

Más detalles

Arquitectura y Periféricos

Arquitectura y Periféricos Arquitectura y Periféricos Departamento de Electrónica Fundación San Valero Características fundamentales: Arquitectura RISC avanzada Harvard: 16- bit con 8- bit de datos. 77 instrucciones Desde 18 a 80

Más detalles

Microcontroladores PIC

Microcontroladores PIC Microcontroladores PIC Departamento de Electrónica Fundación San Valero Ventajas Existen varias razones por las cuales conviene utilizar PIC: Por la cantidad de información disponible sobre estos microcontroladores,

Más detalles

El Microprocesador. Tecnología y Funcionamiento

El Microprocesador. Tecnología y Funcionamiento El Microprocesador Tecnología y Funcionamiento EL MICROPROCESADOR (I) El microprocesador aparece como un circuito integrado con una muy elevada escala de integración VHSI. El empleo de los microprocesadores

Más detalles

Tema 2 INTRODUCCION A LOS MICROCONTROLADORES

Tema 2 INTRODUCCION A LOS MICROCONTROLADORES Tema 2 INTRODUCCION A LOS MICROCONTROLADORES 1 2.1 Introducción 2.2 Características 2.3 Los microcontroladores más utilizados 2.4 Lenguajes de programación 2.5 Herramientas de desarrollo 2 2.1. Introducción

Más detalles

4. Escribe con palabras lo que significan las siguientes letras y di cuántos bytes hay aproximadamente: a) 1 Gb? b) 1 Mb? C) 1 Kb?

4. Escribe con palabras lo que significan las siguientes letras y di cuántos bytes hay aproximadamente: a) 1 Gb? b) 1 Mb? C) 1 Kb? 1. Qué es un bit? 2. Qué valores puede tener un bit? 3. Cuántos bits hay en 1 byte? 4. Escribe con palabras lo que significan las siguientes letras y di cuántos bytes hay aproximadamente: a) 1 Gb? b) 1

Más detalles

ARQUITECTURA DE VON NEUMANN Y HARVARD

ARQUITECTURA DE VON NEUMANN Y HARVARD ARQUITECTURA DE VON NEUMANN Y HARVARD ARQUITECTURA VON NEUMANN En esta arquitectura se observa que las computadoras utilizan el mismo dispositivo de almacenamiento para datos e instrucciones conectados

Más detalles

Página 1 de 12 CONCEPTOS INFORMÁTICOS BÁSICOS

Página 1 de 12 CONCEPTOS INFORMÁTICOS BÁSICOS Página 1 de 12 CONCEPTOS INFORMÁTICOS BÁSICOS CONTENIDOS a. CONCEPTOS INFORMÁTICOS i. Informática ii. Sistema informático iii. Ordenador iv. El sistema binario v. Medidas de almacenamiento de la información

Más detalles