II) MICROCONTROLADORES
|
|
|
- Antonia Lucero Martin
- hace 7 años
- Vistas:
Transcripción
1 II) MICROCONTROLADORES 1- Descripción y Características Son dispositivos electrónicos digitales sincrónicos programables que para funcionar necesitan, además de alimentación y señales externas, un programa, el cual contiene las instrucciones o comandos a seguir. Bloques Principales En su descripción se observa que son una evolución de los circuitos digitales combinacionales y secuenciales. El núcleo interno es el procesador. El externo delimita al controlador. Se lo define como micro por estar integrado todo en un solo chip. Sus partes principales son: ALU- Unidad encargada de todas las operaciones lógicas-matemáticas. Es un circuito combinacional sin capacidad de almacenamiento. Consta de dos entradas donde se le presentan los operandos, y dos salida, una para el resultado y otra de indicadores de la clase de resultado. Para poder operar, a la ALU se le asocia Acumulador, Banderines y líneas de control. Según la cantidad de bit de las entradas se clasifica al procesador. Memoria de programa Dispositivo donde se almacenan ordenadas las instrucciones a seguir. Es una memoria ROM Memoria de trabajo Dispositivo donde se puede escribir y leer para guardar cualquier dato variable durante la ejecución del programa. Es una memoria RAM. Registros internos Dispositivos para guardar información o datos importantes, de mayor frecuencia de uso o configuración de funcionamiento. Pueden formar parte o no del mapa de memoria RAM. Acumulador Registro que actúa en conjunto con la ALU. Le suministra uno de los operandos o es el destino de su resultado. La mayoría de las instrucciones lo usan como destino o fuente de datos. Banderines es el registro que guarda la información sobre la clase de resultado. También puede guardar información sobre el estado del programa. Bus de Datos DB. Líneas físicas que interconectan todos los elementos que manejan datos en el sistema. Bus de Direcciones AB. Líneas físicas que llevan la información para seleccionar el registro de la memoria con que se va a trabajar o cual puerto periférico activar Bus de Control CB. Líneas físicas que llevan las señales que se encargan de comandar el 1
2 funcionamiento de cada elemento. Aunque cada bit del bus tiene diferente significado o destino, igual comparten la finalidad de controlar. Registro de Instrucciones En el se guarda la instrucción mientras se la interpreta e implementa la secuencia de acciones a realizar. Contador de Programa Registro que guarda la posición de la próxima instrucción a ejecutar. Registro de Direcciones Registro donde se guarda la información sobre la posición de memoria con la cual se esta trabajando. De él nace el AB. Periféricos Dispositivos que comunican el sistema con el mundo exterior. Bloque de control- Se encarga de seleccionar la secuencia de acciones de cada elemento del micro. Características Generales Los microcontroladores son dispositivos electrónicos digitales sincrónicos programables. Son digitales por que manejan señales discretas, es decir con solo dos valores posibles (1 o 0). Por lo tanto, la escritura de una salida o lectura de una entradas solo se realiza en forma pulsante. Son sincrónicos debido a que todas sus acciones están acompasadas por una oscilación de referencia o señal de RELOJ (CK). Son programables, pués para funcionar además de la alimentación y señales externas necesitan de un programa que dirija sus acciones. Ejecutan una instrucción por vez, pero algunos procesan más de una al mismo tiempo. En tal caso superponen la ejecución de una instrucción, con la búsqueda y almacenaje en el Registro de Instrucciones de la siguiente. Pueden verificar una condición y determinar entre dos posibles respuestas. Ahí es donde se presenta la aparente inteligencia de un micro. Trabajan con baja tensión y corriente, por eso la necesidad de periféricos para interactuar con el universo. Los micros manejan múltiples señales de las cuales las más comunes son: OSC. Señal de oscilación generada dentro o fuera del sistema para funcionamiento del mismo. CLK o reloj. Sincroniza todas las acciones de los dispositivos internos o externos al chip. Las acciones de un micro se rigen por las instrucciones: Primero busca la instrucción y después la ejecuta. Interrupciones. No todos los micros pueden manejarlas, son señales que solicitan al micro ejecutar un programa particular en respuesta. DMA. Señal que le solicita al micro dejar en alta impedancia los buses, para ser utilizados por otro elemento, modulo o chip. RST o reset. Señal que indica al micro inicializarse. Reinicia sus contadores y comienza el programa desde el principio nuevamente. Puede o no borrar el contenido de los registros internos. TXD y RXD. Son señales de transmisión serial: Una de envío y la otra de recepción de datos. Ejemplos de señales de OSC y CLK: Para el 8080 se necesita dos señales de diferente en fase y ciclo de trabajo. Para el 8088 se necesita una señal con un ciclo de trabajo del 33% Para el 8085 se utiliza una señal del 50% de ciclo de trabajo en OSC y entrega un CLK de la mitad de frecuencia 2
3 Para el PIC16F84A se necesita una señal del 50% de ciclo de trabajo y entrega un CLK de un cuarto de frecuencia. La señal interna de reloj del procesador es siempre de mayor frecuencia que la suministrada al sistema. Esto permite al procesador que en cada ciclo máquina (periodo de CLK) se lleve a cabo varias acciones, mientras que el sistema realiza una sola. Su utilidad radica en que el micro puede ser considerado un complejo cúmulo de flipflop y puertas lógicas. Funcionamiento Básico El funcionamiento básico de todo micro consiste en tomar una instrucción a la vez desde la memoria de programa, y se guarda en el registro de instrucciones. Esta acción se llama FETCH. Desde ahí el bloque de control la decodifica y ejecuta los pasos indicados por ese comando. Genera la secuencia indicada por la instrucción. Esta acción se llama EJECUCION. El bloque de control se une a todos los elementos del sistema mediante el bus de control. Sincroniza todas las acciones de los componentes del micro. También dirige las acciones de los dispositivos del sistema. Por comodidad solo se dibuja la sección más relevante. Mediante el contador de programa (PC) se sabe que instrucción ejecutara a continuación. La memoria es direccionada por el registro de direcciones, que se conecta por el bus de direcciones, e intercambia datos mediante el bus de datos. La conexión hacia el exterior ya sea para tomar o entregar datos se realiza a través de los periféricos. Estos sirven de acopladores entre el microsistema y el exterior. Según cuantas partes estén dentro de un solo chip se habla de procesador, microprocesador o microcontrolador. La búsqueda (fetch) y ejecución de una instrucción se llama ciclo de instrucción. Dura un determinado número de ciclos de reloj o ciclo maquina. El ciclo máquina se genera a partir de las señal OSC del oscilador del sistema. Algunos micros necesitan dos señales de oscilador y otros las generan dentro del chip (oscilador interno). La duración de un ciclo de instrucción depende de la clase de instrucción a ejecutar y del micro en particular. Clasificación Se clasifican según la cantidad de bit de los datos que maneja su ALU. Pueden ser de micros 8, 10, 16, 32, 64, etc bits. Según la organización de la memoria del sistema. Los 2 modelos más usados son: -VON NEWMAN se usa un solo bus de datos y direcciones para la memoria de datos y programa. -HARVARD cada área de memoria tiene su bus de datos y direcciones. 3
4 Según esté estructurado el sistema que pueden ser ARQUITECTURA CERRADA o ARQUITECTURA ABIERTA. En los micros de arquitectura cerrada su sistema solo se puede tener lo que el fabricante suministra. No es posible agregarle RAM, ROM, u otros periféricos. Los de arquitectura abierta pueden formar sistemas de varias configuraciones de RAM, ROM o periféricos. La diferencia está en si el micro tiene o no los buses accesible al usuario. Esto influye directamente en el número de patillas del chip, por cada línea del bus se necesita una patilla o pin. Según el set de instrucciones. Estas son determinadas por el fabricante, el cual usa las mismas para cada familia de dispositivos y le hace pequeñas variaciones según cada elemento. CISC- Complex Instruction Set Computer. Conjunto de muchas instrucciones complejas, potentes y hasta redundantes. RISC- Reduced Instruction Set Computer. Conjunto de pocas instrucciones, generalmente básicas. Muchos parámetros están definidos por defecto por ejemplo uno de los operandos y el destino de la operación. SISC- Specific Instruction Set Computer. Conjunto de instrucciones que además de ser reducido es especifico al uso del procesador. VLIW- Very Large Instruction Word. Conjunto de instrucciones muy complejas. Cada instrucción define todos los parámetros de funcionamiento. Sustituye a muchas instrucciones de un sistema RISC. Según la cantidad de memoria del sistema. La cantidad de memoria ROM nos habla de lo complejo que podrá ser el programa y la cantidad de memoria RAM la capacidad de manejar variables. El micro que estudiaremos será el PIC16F84A. Es un microcontrolador con CPU de 8 bit, arquitectura Harvard cerrada y un set de instrucciones reducido (RISC). 4
5 P I C 1 6 F 8 4 A Características y Patillaje Microcontrolador fabricado por Microchip. Es un dispositivo de la gama media. Internamente tiene una CPU con arquitectura HARVARD y tecnología RISC de alto rendimiento. Sus características destacables son: *Set de instrucciones reducidas a 35 grupos. *Todas las instrucciones se ejecutan en un ciclo de maquina, excepto los saltos que se ejecutan en 2 ciclos. *Velocidad de funcionamiento: DC a frecuencia máxima indicada por el fabricante. *Memoria de Programa FLASH-ROM de 1024 palabras *Memoria de Datos RAM de 68 byte *Memoria de Datos EEPROM de 64 byte *Todas las instrucciones son de una sola palabra de 14 bits *Datos de 8 bit *15 registros internos con funciones especiales *Estructura Pila de 8 niveles *Modos de Direccionamiento Directo, Indirecto y Relativo *Cuatro Fuentes de Interrupción: - Externa pin RB0/INT - TMR0 timer overflow - PORTB<7:4> interrupts on change - Data EEPROM write complete *13 patillas de entrada/salida con control de dirección individual * Alta corriente de fuente/sumidero para manejo directo de LED - Corriente de Sumidero 25 ma máx. por pin - Corriente de Fuente 25 ma máx. por pin * TMR0: Contador/Temporizador de 8 bit con pre-escalador programable de 8 bit. * Memoria de Programa Flash reforzada para 1000 ciclos de borrado/escritura Características Especiales del Microcontrolador: * Memoria de Datos EEPROM con 1: de ciclos de borrado/escritura * Retención de Datos EEPROM mayor a 40 años * (ICSP ) Circuito de Programación Serial Interno - vía 2 pin * Reset al energizar (POR) * Retardo al encender (PWRT) * Retardo de arranque del Oscilador (OST) * Cronómetro del Watchdog (WDT) con su propio oscilador RC interno para un funcionamiento confiable * Protección de Código * Modo SLEEP economizador de energía * Módulo incompleto de oscilador con 4 modos de funcionamiento Características CMOS: * Tecnología de bajo consumo, alta velocidad * Diseño totalmente estático que permite detener el OSC * Amplio rango de voltaje de operación: 2.0V a 5.5V * Bajo consumo de corriente: - < 2 ma 5V, 4 MHz - 15 ma 2V, 32 Khz. - < 0.5 ma típico corriente de 2V 5
6 Patillaje: 16 OSC1 Terminal del Oscilador. 15 OSC2 Terminal del Oscilador. 4 MCLR Entrada de reset (Master Clear) y de voltaje de programación. Este pin es activo en L, para resetear el dispositivo. 17 RA0 I/O bi-direccional del PUERTO A. Corriente máxima 25 ma. 18 RA1 I/O bi-direccional del PUERTO A. Corriente máxima 25 ma. 1 RA2 I/O bi-direccional del PUERTO A. Corriente máxima 25 ma. 2 RA3 I/O bi-direccional del PUERTO A. Corriente máxima 25 ma. 3 RA4/T0CKI I/O bi-direccional del PUERTO A. También puede ser seleccionada como entrada de reloj para el contador/temporizador TMR0. La salida es tipo colector abierto. Significa que solo puede drenar corriente hacia masa. Corriente máxima 25 ma. 6 RB0/INT I/O bi-direccional del PUERTO B. También puede ser seleccionada como una entrada de interrupción. Resistencia pull-up programable por software. Las resistencias pull-up se conectan entre el terminal y la fuente positiva. De esta manera, si no hay nada conectado en el exterior, tiene valor lógico 1. Corriente máxima 25 ma. 7 RB1 I/O bi-direccional del PUERTO B. Resistencia pull-up programable por software. Corriente máxima 25 ma. 8 RB2 I/O bi-direccional del PUERTO B. Resistencia pull-up programable por software. Corriente máxima 25 ma. 9 RB3 I/O bi-direccional del PUERTO B. Resistencia pull-up programable por software. Corriente máxima 25 ma. 10 RB4 I/O bi-direccional del PUERTO B. Interrupción al cambiar su estado. Resistencia pullup programable por software. Corriente máxima 25 ma. 11 RB5 I/O bi-direccional del PUERTO B. Interrupción al cambiar su estado. Resistencia pullup programable por software. Corriente máxima 25 ma. 12 RB6 I/O bi-direccional del PUERTO B. Interrupción al cambiar su estado. Pin de CLOCK durante la programación serial. Resistencia pull-up programable por software. Corriente máxima 25 ma. 13 RB7 I/O bi-direccional del PUERTO B. Interrupción al cambiar su estado. Pin de DATA durante la programación serial. Resistencia pull-up programable por software. Corriente máxima 25 ma. 5 VSS Alimentación negativa para el IC y referencia (GND) para los pins I/O. 14 VDD Alimentación positiva para el IC y referencia para los pins I/O. 6
7 Diagrama de Bloques Interno El PIC16F84A es un microcontrolador de la empresa Microchip. Dispositivo de la gama media de la familia PICmicro. La memoria de programa contiene 1024 palabras de 14 bit, la misma longitud que cada una de las instrucciones del micro. La memoria de datos RAM tiene 68 registros de un byte y la memoria EEPROM de datos 64 registros de 8 bits. El contador de programa (PC) es de 13 bit lo que permite direccionar 8 K o páginas, pero solo está implementado el primer K o página. La ALU es de 8 bit al igual que el Bus de Datos. Tiene dos buses de datos, uno de programa (14 bits) y otro de datos (8 bits). También contiene los dos buses de direcciones. El AB ROM sale del contador de programa (PC) (13 bits). El PC se comunica con la Pila que son 8 registros de 13 bits. El AB RAM (7 bits) sale del multiplexor de direcciones el cual selecciona la fuente para la dirección de memoria. Esta fuente puede ser la instrucción o el FSR, que es un registro usado como puntero de RAM. Este multiplexor puede direccionar 128 posiciones pero solo están implementadas las primeras 80. La memoria EEPROM es un módulo aparte. Se usan 4 registros para operar con ella: el registro EEDATA como buffer de datos, el registro EEADR para direccionar y los registros EECON1 y EECON2 para controlar el funcionamiento. La ALU tiene la capacidad de operar con dos números de 8 bit cada uno. Obtiene sus operandos del reg W y del multiplexor de datos. Este último selecciona si el dato proviene de una instrucción o a través del DB. El W es el registro más versátil y usado. El reg STATUS además de los indicadores de la ALU guarda indicadores del estado del micro y el programa. Hay 13 pins de I/O configurables por el usuario uno a uno. Algunos pin están multiplexados con otras funciones del dispositivo. Estas funciones incluyen -Interrupción Externa. (RB0/INT) -Interrupción por cambios en el Puerto B. (RB4-RB7) -Entrada de reloj para el contador interno TIMER0. (RA4/TOCKI) Los registros de Identificación ID son 4 registros de 4 bits bit, solo accesibles durante el quemado del micro para grabarle cualquier dato. Su uso puede ser guardar el número de serie del chip o la versión de software. La ICSP es el módulo que se encarga de quemar la memoria. Se conecta al exterior a través de los pines 4, 11 y 12. Es capaz de impedir la lectura del código o programa grabado. En tal caso se lee toda la memoria como 0000, excepto el valor de los ID. 7
8 La instrucción a ser ejecutada se lee de la ROM y se carga en el registro de instrucciones. De las instrucciones se pueden extraer distintos datos: comandos para el bloque de control, dato para operar, dirección de RAM, etc. El Bloque de control tiene varios elementos a destacar: Tiene una sección que se encarga de interpretar la instrucción y generar la secuencia a ejecutar, o sea controla todos los elementos del micro. Brown-Out (POR)- Reset de Encendido. Circuito que mantiene un reset interno mientras la tensión de funcionamiento no llegue al valor mínimo. Power-Up Timer (PWRT)- Temporizador del Retardo de Encendido. Permite demorar el funcionamiento del micro 72 nanosegundos a partir que se energiza. Oscillator Start-up Timer (OST)- Temporizacion de Arranque del Oscilador. Una vez terminado el retardo del PWRT genera una demora en generar señales de sincronismo, asegurando que el oscilador se estabilice. Watch Dog Timer (WDT)- Temporizador Vigilante o Perro Guardián. Es un contador de 8 bit con su propio oscilador independiente. Mediante software se le debe reiniciar o el WDT se desbordaría. En caso de desborde realiza un reset del micro. Generador de Clock (CK) y Sincronismo. Es un modulo de oscilador incompleto. Necesita de componentes externos para funcionar. Genera la señal de CK interno y externo. Tipos de Fuente El PIC16F84A es un integrado con un amplio rango de funcionamiento. Funciona desde 2,0 volt hasta 5,5 volt. Por su bajo consumo la fuente más simple es con un regulador 78L05. Los capacitares son para filtrado y estabilización de la fuente. Es importante evitar los ruidos a la entrada del regulador, así su salida será mas confiable. Es la adecuada cuando en la alimentación se presentan picos positivos o negativos de tensión. En caso de existir ruidos electromagnéticos es necesario blindar el sistema incluida la fuente. La línea punteada significa una jaula de Faraday o caja aterrada. 8
9 Si se le alimenta con 4 pilas comunes es necesario bajar la tensión con dos diodos. Cuatro pilas con el máximo de carga seria 6,16 volt. Si se coloca un solo diodo estamos en el limite físico del chip, con dos en cambio, se esta cómodamente dentro del rango de su funcionamiento. Se utilizan diodos y no resistencias por que los primeros dan una caída de tensión bastante independiente de la corriente. Para desacoplar los propios ruidos de consumo del chip es necesario que se coloque, lo más cerca posible, entre los terminales 5 y 14 un condensador de 0,1uF. Son apropiados los componentes SMD. Estos ruidos se deben a variaciones del consumo dentro del propio integrado. 9
10 Clases de Oscilador El PIC16F84A tiene un circuito oscilador interno muy completo. Necesita de pocos componentes para generar la señal de reloj CK. Acepta varias clases de fuente de oscilación puede ser un circuito de resistencia-condensador en serie, un cristal piezoeléctrico o una onda cuadrada desde el exterior. La selección se realiza durante la quema del chip: XT- Oscilador a cristal o resonador HS- Oscilador a cristal o resonador de alta velocidad LP- Oscilador a cristal o resonador de bajo consumo RC- Oscilador a Condensador y Resistencia Modos HS, XT y LP aceptan un cristal o resonador cerámico conectado a los terminales OSC1/CLKIN y OSC2/CLKOUT. El cristal necesita de un par de capacitores a masa. Estos elementos tienen una frecuencia muy estable, excepto frente a la temperatura. En la documentación del micro esta la información sobre los valores de dichos capacitares según la frecuencia del cristal. El resonador cerámico no necesita de estos condensadores. El pin central es la conexión a masa del resonador. Estos modos también aceptan que un generador de onda cuadrada externo sea conectado al pin OSC1/CLKIN. Por el pin OSC2/CLKOUT saldrá una señal de CK con un ¼ de la frecuencia de oscilación de dicha onda. Si se selecciona el modo RC se debe conectar un circuito resistenciacapacitor al terminal OSC1/CLKIN. Por el terminal OSC2/CLKOUT se tiene una señal CK de ¼ de la frecuencia de oscilación en OSC1. El oscilador a cristal tiene como ventaja la robustez, exactitud y estabilidad en el tiempo. Los resonadores tienen iguales prestaciones que los cristales y además la simpleza de su instalación. Como desventaja ambos presentan mucha dependencia con la temperatura. En caso de ser necesario se le hace trabajar caliente adosándoles una resistencia. El oscilador RC en cambio es estable frente a la temperatura y muy económico, pero presenta un gran porcentaje de error y con el tiempo variaciones de valor en su capacitor. 10
11 Memoria Interna Mapa de Memoria La memoria del PIC16F84A se divide en dos grandes bloques, Memoria de Programa y Memoria de Datos. Cada bloque tiene su bus de datos, bus de direcciones y selector de direcciones. Memoria de Programa Flash ROM La memoria de programa tiene un contador (PC) de 13 bit, lo que le permite direccionar 8 Kbyte. Solo tiene implementado el primer Kbyte para las instrucciones del programa. Se extiende desde 0000h hasta 03FFh. Las posiciones de memoria 2000h a 2003h se llaman ID. Solo son accesibles durante el proceso de programación del micro, para guardar datos. Únicamente el nible bajo de cada posición esta implementado. Permite así por ejemplo guardar un número de serie del chip o la versión de software grabada. En la posición 2007h se ubican los bits de configuración, que permiten setear el funcionamiento del micro. Memoria de Datos RAM Estática La memoria de datos es la memoria RAM del sistema. Tiene dos partes, una es una RAM estática (permite escritura y lectura veloz y no pierde los datos aunque se detenga el clock) y la otra es una EEPROM (se necesita un procedimiento especial de lectura/escritura pero no pierde los datos aunque se quite la alimentación). La RAM estática se distribuye en dos bancos, BANCO1 y BANCO0. Cada uno controla 80 registros. Los primeros 12 registros (00h-0Bh y 80h- 8B) se llaman SFR, son registros de función especial para el funcionamiento del micro. Los restantes (0C-4F y 8C- CF) son registros GPR de propósito general. El banco 1 tiene su acceso mapeado sobre el banco 0. Acceder al registro 8Ch es lo mismo que acceder a 0Ch. Memoria de Datos EEPROM La memoria EEPROM esta mapeada aparte y se necesita un proceso especial para leerla o escribirla. Contiene 64 registros de 8 bit cada uno. Comparte con la RAM el bus de datos, pero tiene su propio selector de direcciones. 11
12 Memoria: Programa -Instrucciones de Programa (000h - 3FFh) -Bloques de Identificación ID ( ) -Bits de Configuración (2007h) Datos -RAM estática (00h - 4Fh) y (80h - CFh) SFR (00h - 0Bh) y (80h - 8Bh) GPR (0Ch - 4Fh) y (8Ch - CFh) -EEPROM (00h - 3Fh) Registros Internos Los registros internos en este micro comprenden toda la memoria del sistema. Pero en general se le denomina así a los registros de uso particular, o sea los SFR. Varios registros están presentes en ambos bancos de datos por lo tanto tienen dos direcciones. El bit 7 de la dirección de cada registro RAM se toma del bit selector de banco. PC Contador de programa (13 bit). Se le puede modificar durante la ejecución del programa, pero solo se lee el byte bajo del mismo. STACK o PILA Son 8 registros de 13 bit, no accesibles por el programador. En ellos se guarda la dirección de retorno de las subrutinas y las interrupciones. Se dice entonces que tiene 8 niveles de subrutinas. Si se realiza un noveno llamado a subrutina se sobrescribe la primera W Registro de Trabajo (8 bit). Es siempre uno de los operandos de todas las operaciones y destino de la mayoría de las instrucciones. No tiene una dirección específica, siempre se le direcciona en forma inherente. PORTA Posición 05h. Registro que copia/fuerza el valor de los pines RA0-RA4. Los 3 bit MSB son leídos como 0. En el caso de efectuar una lectura sobre un pin, que esta dispuesto como salida, se lee el bit correspondiente de este registro. Si el circuito exterior varía la tensión del pin, se produce una lectura diferente a lo escrito y esto lo evita. Por ejemplo: si se escribe un 1, y si la corriente a masa es muy grande en el pin, este puede bajar su tensión hasta 1/5 Vdd y esto se lee como nivel lógico 0. Si se setea un terminal como entrada, el bit correspondiente es inmune a las operaciones de escritura. PORTB Posición 06h. Registro que copia/fuerza el valor de los pines de RB0-RB7. En el caso de efectuar una lectura sobre un pin que está dispuesto como salida, se lee el bit correspondiente de este registro. Esto evita que, si el circuito exterior varía la tensión del pin se produzca una lectura diferente a lo escrito. Por ejemplo: si escribimos un 1, y si la corriente a masa es muy grande en el pin, este puede bajar su tensión hasta 1/5 Vdd y esto será leído como nivel lógico 0. Si seteamos un terminal como entrada, el bit correspondiente será inmune a las operaciones de escritura. TRISA Posición 85h. Selecciona si los pines del puerto A serán entradas o salidas. Valor 1 el terminal será Entrada Valor 0 el terminal será Salida TRISB Posición 86h. Selecciona si los pines del puerto B serán entradas o salidas. 1 - Entrada 0 - Salida 12
13 TMR0 Posición 01h. Registro que se usa para cargar o copiar el valor de TIMER0. Este contador se incrementa mediante eventos en el pin 3 o con ciclos de máquina. Cada vez que es escrito TMR0, el TIMER0 se detiene durante 2 ciclos de reloj. Cuando se opta por incrementarlo con ciclos de instrucción, no se le aplica la señal de Clock directamente sino a través de un pre-escalador o divisor. STATUS Posición 03h y 83h. Contiene información sobre el estado del sistema, banco seleccionado y banderines de la última operación realizada. Como todo registro puede ser destino de cualquier instrucción. Algunos bits no pueden ser escritos. Se forma por los bit: IRP, RP1, RP0, TO, PD, Z, DC, C IRP y RP1 no se usan en el PIC16F84A y deben ser mantenidos a cero. RP0 selecciona el banco de memoria de datos a usar. Si vale 0 selecciona el banco 0 (00h - 4Fh), si vale 1 es el banco 1 (80h - CFh). TO indica salida del Watch Dog Timer. Después de encender el chip, o de una instrucción SLEEP o CLRWDT vale 1. Cuando termina el tiempo del WDT vale 0. No puede ser escrito por el programador. PD Bit de bajo consumo. Después de encender el chip, o de una instrucción CLRWDT vale 1. Después de una instrucción SLEEP vale 0. No puede ser escrito por el programador. Z Bit de Cero. Si el resultado de una operación lógica o matemática es cero vale 1 DC Bit de Semiacarreo o Acarreo Digital. Si hay acarreo/borrow entre los bit 3 y bit 4 de una suma/resta (instrucciones ADDLW, ADDWF, SUBLW o SUBWF) vale 1. C Bit de Acarreo. Indica si hay acarreo o borrow de la suma o resta. FSR Posición 04h y 84h. Puntero que se usa para el direccionamiento indirecto de la RAM. Aunque puede direccionar 256 registros solo 156 posiciones tienen implementación física. Si se direcciona con un valor mayor a 4Fh al leer da 00h y la escritura es tirar los datos. INDF Posición 00h y 80h. Registro sin implementación física. Se usa en conjunto con FSR para el direccionamiento indirecto por registro. Toda instrucción que lo use en realidad usa el registro direccionado por FSR. Para toda operación o movimiento que esté dirigida al INDF, en realidad se lleva a cabo con el registro direccionado por el valor del FSR. PCL Posición 02h y 82h.El byte bajo del PC es modificado y leído a través de este registro. PCLATH Posición 0Ah y 8Ah. Los 5 bit MSB del PC solo pueden ser escritos pero no leídos. Se vuelcan en el PC cuando el PCL es escrito u operado. OPTION Posición 81h Registro que regula parte del funcionamiento interno del micro. Sus bit son los siguientes: RBPU, INTA, T0CS, T0SE, PSA, PS2, PS1, PS0 RBPU - Habilita resistencia pull-up internas a las entradas del puerto B. Estas resistencias son de aproximadamente 10 KΩ. Valor 1 - Inhabilitadas. Valor 0 - Habilitadas INTA - Selecciona el flanco de activación de interrupción para el pin RB0/INT. Valor 1 - Interrupción por flanco de subida Valor 0 - Interrupción por flanco de bajada T0CS - Selecciona el origen del reloj del TIMER0, si será RA4/TOCKI o clock interno. Valor 1 - Transición del pin RA4/TOCKI Valor 0 - Ciclo de reloj interno o ciclo maquina o ciclo de instrucción. T0SE - Elige el flanco de activación de RA4/TOCKI. Valor 1 - Activación por flanco de bajada Valor 0 - Activación por flanco de subida PSA - Selecciona a cual contador se le aplica el pre-escalador, si a TIMER0 o WDT. Hay un solo divisor, este se puede aplicar al TIMER0 o al Vigilante. Si se aplica el divisor al WDT, el TIMER0 se incrementa con cada 2 ciclos de CK. Si se aplica el divisor al TIMER0, el Vigilante se incrementa con cada ciclo de CK. Vale 1 Divisor aplicado al WDT Vale 0 Divisor aplicado al TMR0 PS2:PS1:PS0 Seleccionan la proporción del pre-escalador. La escala según su aplicación es diferente. 13
14 PS2:PS1:PS0 Timer0 WDT 000 1:2 1: :4 1: :8 1: :16 1: :32 1: :64 1: :128 1: :256 1:128 EEDATA Posición 08h. Se usa en la escritura/lectura de la memoria EEPROM, almacena el dato con cual se está trabajando. Funciona como buffer de la memoria EEPROM EEADR Posición 09h. Se usa con la EEPROM, almacena la dirección de memoria del registro en uso. Es el selector de posición para la EEPROM. EECON1 Posición 88h. Controla el uso de la memoria EEPROM. Solo tiene implementado los 5 bit LSB. Sus bits son EEIF, WRERR, WREN, WR, RD. EEIF - Bandera de fin de la operación de escritura. Por software lo ponemos a 0. Valor 1 - La operación de escritura termino ya sea correcta o incorrectamente. Valor 0 - El ciclo de escritura no fue completado o no ha empezado. WRERR - Indicador de error en el proceso de escritura. Valor 1 - La operación de escritura fue terminada prematuramente. Valor 0 - La operación fue exitosa. WREN - Habilita la escritura en la EEPROM Valor 1 - Permite el ciclo de escritura Valor 0 - Inhibe el ciclo de escritura WR - Control de escritura. Inicia la escritura de la EEPROM. Por software solo puede ser puesto a 1. Cuando termina el ciclo de escritura el hardware lo lleva a 0. RD - Control de lectura. Inicia la lectura de la EEPROM. Toma solo un ciclo de reloj. Es llevada a 0 por hardware. EECON2 Posición 82h. Registro de control de escritura en la EEPROM. No es un registro implementado físicamente. Se usa como cerradura lógica del proceso de escritura. Solo al enviar el dato correcto a esta posición se habilita la misma. INTCON Posición 0Bh y 8Bh. Controla el funcionamiento y la respuestas a las interrupciones. Tiene 4 fuentes de petición de interrupción, las cuales puede habilitar o no en forma individual o global. Sus bit son GIE, EEIE, T0IE, INTE, RBIE, T0IF, INTF, RBIF GIE - Habilitación general de todas las interrupciones. Valor 1 - Habilita todas interrupciones no enmascaradas. Valor 0 - Deshabilita todas las interrupciones EEIE - Habilitación de interrupción por finalización de la escritura en la EEPROM. Valor 1 - Habilita la interrupción. Valor 0 - Bloquea la interrupción T0IE - Habilita la interrupción por desborde del TIMER0 Valor 1 - Habilita la interrupción. Valor 0 - Bloquea la interrupción INTE - Habilitación de interrupción del pin RB0/INTE Valor 1 - Habilita la interrupción. Valor 0 - Bloquea la interrupción RBIE - Habilita la interrupción por cambio de nivel lógico de cualquier pin RB4-RB7 Valor 1 - Habilita la interrupción. Valor 0 - Bloquea la interrupción T0IF - Indicador de solicitud de interrupción al pasar de FFh a 00h de TMR0 Valor 1 - El TIMER0 desbordo. Debe ser puesto a 0 por software. INTF - Indicador de interrupción solicitada por RB0/INT Valor 1 - Ocurrió un flanco valido en el pin 6. Debe ser puesto a 0 por software. RBIF - Indicador de petición de interrupción por cambio en el puerto B. Valor 1 - Al menos uno de los pines RB4-RB7 cambió de nivel lógico. Debe ser 14
15 puesto a 0 por software. Posición 07h y 87h no tienen implementación física. Resumen de los Registros de Funciones Especiales DIR Nombre Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 Banco 0 00h INDF Usa el contenido de FSR para direccionar la Memoria de datos. Sin implementación física 01h TMR0 Contador de tiempo real de 8 bit 02h PCL 8 bit de menor orden del Contador de Programa (PC) 03h STATUS IRP RP1 RP0 TO PD Z DC C 04h FSR Puntero de direccionamiento indirecto por registro de la memoria de datos 05h PORTA RA4/T0CKI RA3 RA2 RA1 RA0 06h PORTB RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 07h Posición No implementada. Se lee como 00 08h EEDAT Buffer de Datos de la EEPROM 09h EEADR Puntero para direccionar la EEPROM 0Ah PCLATH Buffer para la escritura de los 5 bit MSB del PC 0Bh INTCON GIE EEIE T0IE INTE RBIE T0IF INTF RBIF DIR Nombre Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 Banco 1 80h INDF Usa el contenido de FSR para direccionar la Memoria de datos. Sin implementación física 81h OPTION RBPU INTA T0CS T0SE PSA PS2 PS1 PS0 82h PCL 8 bit de menor orden del Contador de Programa (PC) 83h STATUS IRP RP1 RP0 TO PD Z DC C 84h FSR Puntero de direccionamiento indirecto por registro de la memoria de datos 85h TRISA Control De Dirección de Datos del PORTA 86h TRISB Control de Dirección de Datos del PORTB 87h Posición No implementada. Se lee como 00 88h EECON EEIF WRERR WREN WR RD 89h EECON2 Control de Escritura en EEPROM. Sin implementación física 8Ah PCLATH Buffer para la escritura de los 5 bit MSB del PC 8Bh INTCON GIE EEIE T0IE INTE RBIE T0IF INTF RBIF 15
16 Set De Instrucciones Del Pic16f84a Nomenclatura. En los mnemónicos se representara con la letra <f> la dirección de 7 bit del registro. Algunas instrucciones necesitan una opción representada por la letra <d>. Esta indica si el destino del resultado es el registro direccionado (d = 1) o el registro W (d = 0). Las instrucciones que operan con bits utilizan un valor de 3 bit para indicar el orden del bit seleccionado y lo representan con la letra <b>. Las instrucciones con direccionamiento inmediato usan la letra <k> para indicar la posición de 8 bit. Las instrucciones que cargan el PC de forma inmediata con algún valor de 11 bit lo representan con <nnn> Instrucciones Orientadas a Registros La sintaxis de estas instrucciones es mnemónico f,d El símbolo f representa un valor numérico de 7 bit que corresponde a la dirección de memoria RAM a utilizar en la instrucción, dentro del banco en uso. El símbolo d permite seleccionar el destino del resultado, si vale 0 es el registro W y si vale 1 es el registro direccionado directamente. ADDWF f,d Sumar registros W y f. Afecta C,DC,Z ANDWF f,d W AND f Afecta Z COMF f,d Complementar f Afecta Z DECF f,d Decrementar f Afecta Z DECFSZ f,d Decrementar f y saltar si es cero INCF f,d Incrementar f Afecta Z INCFSZ f,d Incrementar f y saltar si es cero IORWF f,d W OR f Afecta Z MOVF f,d Mueve f Afecta Z RLF f,d Rotar a la Izquierda a través de Carry Afecta C f,n f,n+1 y f,7 CY ; CY f,0 RRF f,d Rotar a la Derecha a través de Carry Afecta C f,n f,n-1 y f,0 CY ; CY f,7 SUBWF f,d Resta W de f Afecta C,DC,Z SWAPF f,d Intercambia los nibles de f. f,0 f,4 ; f,1 f,5 ; f,2- f,6 ; f,3 f,7 XORWF f,d W OR-exclusiva f Afecta Z Estas instrucciones son la excepción, por la clase de acción que realizan y sobre quien la realizan. CLRW Cargar 00 en W Afecta Z CLRF f Cargar 00 en f Afecta Z MOVWF f Cargar f con W Operaciones Orientadas a Bits Su sintaxis es: mnemónico f,b El símbolo f representa un valor numérico de 7 bit que corresponde a la dirección de memoria RAM a utilizar en la instrucción, dentro del banco en uso. El símbolo b representa un valor de 3 bit que corresponde al orden del bit elegido. BCF f,b Poner a cero el bit b de f BSF f,b Poner a uno el bit b de f BTFSC f,b Saltar si el bit b de f es cero BTFSS f,b Saltar si el bit d de f es uno Operaciones con literales o valores inmediatos Su sintaxis es: mnemónico k El símbolo k representa un valor de 8 bit llamado literal. ADDLW k W + k W Afecta C,DC,Z ANDLW k W AND k W Afecta Z IORLW k W OR k W Afecta Z MOVLW k Carga k en W SUBLW k W - k W Afecta C,DC,Z XORLW k W OR-exclusiva k W Afecta Z 16
17 RETLW k Retornar de una subrutina y cargar W con k. Pila PC y k W Instrucción muy útil para tener una tabla cargada en la memoria ROM CALL nnn Llamar a la subrutina ubicada en nnn< 0FFh. PC Pila y PC nnn GOTO nnn Saltar a la instrucción en nnn. PC nnn Operaciones de Control CLRWDT Afecta TO, PD Reiniciar el WDT. NOP No Operación. Se incrementa el PC sin realizar ninguna acción. RETURN Pila PC Retornar de Subrutina. Saca de la pila el último valor guardado y lo pone en el PC. RETFIE Pila PC y INTCON,GIE 1 Retornar de una interrupción. El último valor de la pila se carga en el PC. Vuelve al programa principal en la instrucción que estaba por ejecutar.. SLEEP Afecta TO, PD Entrar en modo de bajo consumo. Deja en suspensión el oscilador maestro, pero no el WDT. Mantiene fijo el estado de las salidas. En la hoja de datos del micro el fabricante suministra un resumen de las instrucciones. De cada instrucción se indica los ciclos maquina que dura y los flag o bit de STATUS que afecta. -Si se usa con un cristal o resonador cerámico de 4 Mhz cada ciclo de maquina dura 1 microsegundo. -Solo las instrucciones que alteran el PC duran 2 microsegundos. Por ejemplo la instrucción btfsc STATUS,CY Si CY vale 1 dura 1 microsegundo y si CY = 0 dura 2 microsegundos. -En este micro la operación de movimiento MOVF afecta el flag Z. Esto permite averiguar si el contenido de un registro es cero. / ^` / DO:5 / / Y / D 5Q/ / ` `/ OL/ KL OL/ / 7/ 17
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
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
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
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
TEMA 5 LA MEMORIA DE DATOS MEMORIA RAM D.P.E. DESARROLLO DE PROYECTOS 1
TEMA 5 LA MEMORIA DE DATOS MEMORIA RAM D.P.E. DESARROLLO DE PROYECTOS 1 Estructura De La Memoria Ram (1) La memoria de datos RAM está dividida en dos partes diferenciadas: 1.- Zona SFR o zona de Registros
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,
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
RECURSOS FUNDAMENTALES
RECURSOS FUNDAMENTALES Los recursos que se considerarán son : Temporizadores Puertos de E/S La Palabra de Configuración EEPROM de datos 1 TEMPORIZADORES Una labor habitual en los programas de control suele
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
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
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
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
El PIC16F84. Capítulo 1. Pines y funciones Arquitectura Características especiales El PIC16C84 Compatibilidad con otras familias
Capítulo 1 El PIC16F84 Pines y funciones Arquitectura Características especiales El PIC16C84 Compatibilidad con otras familias Curso avanzado de Microcontroladores PIC 3 4 Curso avanzado de Microcontroladores
Características Técnicas del PIC 16F84
Características Técnicas del PIC 16F84 Repertorio de 35 Instrucciones. Todas las instrucciones se ejecutan en un solo ciclo excepto las de salto que necesitan dos. Versiones de 4 MHz (PIC16F84-04) y 10
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
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,
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...
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
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.
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
INTERIOR DEL PROCESADOR
1 INTERIOR DEL PROCESADOR En esta sección se pretende: Conocer la arquitectura y funcionamiento de los microcontroladores de la familia PIC16X8X La organización de su memoria, y Sus registros de funciones
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
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)
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
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:
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
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
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
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
2.2-1 Visión Interna PIC16F873/876. SBM
2.2-1 Visión Interna PIC16F873/876. 1 2.2-2 Visión Interna PIC16F874/877. 2 2.2-3 Sistema de memoria. Tienen arquitectura Harvard, separa la memoria de datos y la memoria de programa, y se accede a ellas
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
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
LOS PIC16F88X: EEPROM de Usuario
LOS PIC16F88X: EEPROM de Usuario IES Juan de la Cierva Aprendizaje de la Electrónica a través de la Robótica Domínguez Diagrama de bloques PIC16F884-PIC16F887 Interrupciones en de los PIC16F88X PIR2 INTCON
PIC16C5X (GAMA BAJA) Solo en dispositivos de 28 pins. Encapsulado y patillaje:
PIC6C5X (GAMA BAJA) Oscilador RESET SLEEP WatchDog Timer (WDT) Protección de código e IDs Periféricos: Timer/Contador de 8bits (T) con prescaler compartido para WDT o TMR Hasta 3 puertos I/O (RA,RB,RC)
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
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
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
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),
Tema 4. Organización de la memoria
Tema 4 Organización de la memoria 1 ARQUITECTURA DEL PIC16F84 Tema 4. Organización de la memoria Memoria de programa tipo ROM Flash de 1024 registros de 14 bits Memoria de datos dividida en dos áreas:
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
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
2.- Descripción General del PIC16F877
2.- Descripción General del PIC16F877 2.1.- La Familia del PIC16F877 El microcontrolador PIC16F877 de Microchip pertenece a una gran familia de microcontroladores de 8 bits (bus de datos) que tienen las
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
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
Microcontroladores PIC
Microcontroladores PIC 1 Características generales: Arquitectura Harvard, procesador segmentado. Compatibilidad software entre los modelos de la misma gama. Sencillez de uso y herramientas de desarrollo
SISTEMAS ELECTRONICOS DIGITALES DIRECCIONAMIENTO DE REGISTROS
SISTEMAS ELECTRONICOS DIGITALES DIRECCIONAMIENTO DE REGISTROS Las líneas de entrada-salida digitales del PIC16X84 llamadas puertas(puertos), PUERTA A Y PUERTA B, que se denominan PA y PB. En este caso
INTRODUCCIÓN. Comunicación Serial.
INTRODUCCIÓN La función principal de este tipo de comunicación es la de convertir datos de salida de forma paralela a serial y la de convertir datos de entrada de forma serial a paralela. El acceso al
- FUNDAMENTOS TEÓRICOS - EJEMPLOS DE APLICACIÓN. 09/01/2009 Ing. José A. Picón - - (0416)
MICROPROCESADORES Y MICROCONTROLADORES - FUNDAMENTOS TEÓRICOS - EJEMPLOS DE APLICACIÓN 09/01/2009 Ing. José A. Picón - www.joseapicon.com.ve - (0416) 9519990 Informes de Laboratorio Entregar informe con
MICROCONTROLADORES PIC
MICROCONTROLADORES PIC FUNDAMENTOS Y APLICACIONES UN ENFOQUE DIDÁCTICO ESCUELA DE POSGRADO MICROCONTROLADORES PIC FUNDAMENTOS Y APLICACIONES UN ENFOQUE DIDÁCTICO MATERIAL EDUCATIVO DEDICATORIA DEDICO
D:\ACCESO\ACCESO.ASM. list p=16f877 include "p16f877.inc" ROTA equ 0x20 TEMP equ 0x21 TECLA equ 0x22 DIGITOS equ 0x23 DIR equ 0x24
;Programa para el control de acceso a un sistema X ;mediante la introducción de una clave a través de un teclado ;matricial. ;Es posible cambiar la clave de acceso y guardarla en la EEPROM ;La velocidad
MICROCONTROLADORES PIC
ASSEMBLER PARA SESIÓN COMPLETA MICROCONTROLADORES PIC POR: El Registro PCL Existe un registro, llamado PCL, ubicado en la posición 0x02 en el banco de memoria, tiene mucho que ver con el flujo del programa,
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
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
ESCUELA POLITÉCNICA NACIONAL
ESCUELA POLITÉCNICA NACIONAL ESCUELA DE FORMACIÓN TECNOLÓGICA MÓDULO PARA VERIFICAR EL FUNCIONAMIENTO DE LOS PROGRAMAS GRABADOS EN EL PIC 16F84A PROYECTO PREVIO A LA OBTENCIÓN DEL TÍTULO DE TECNÓLOGO EN
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
EDU-PIC Módulo 16F84 Manual del Usuario
1 EDU-PIC Módulo 16F84 Manual del Usuario Indice : 1. Introducción 2 2. Descripción general 2 3. Definición de los pines en el 16F84 4 4. Programador de la memoria FLASH 5 5. Oscilador 5 6. Arquitectura
Microcontroladores PIC - PIC16F84
Microcontroladores PIC - PIC16F84 1 Qué es un microcontrolador? Se denomina controlador al dispositivo que se emplea para el gobierno de uno o varios procesos. Por ejemplo, el controlador que regula el
Fundamentos Taller de interrupciones
Fundamentos Taller de interrupciones Francisco García Eijó Segundo Cuatrimestre de 20 - Organización del Computador I El PIC 6F84 El PIC6F84 es un microcontrolador de la empresa Microchip. Cuenta con las
Contenido MICROCONTROLADORES PIC16F877A Y PIC16F887 / SALVATIERRA. Alfaomega. 3.4 Soporte Muestras... 25
Contenido Introducción 1 Parte 1 Conceptos básicos 3 1.0 Componentes de un MCU... 3 1.1 Partes básicas... 3 1.1.1 ALU (Unidad lógica aritmética). 4 1.1.2 I/O (INPUT/OUTPUT)... 4 1.1.3 Memoria (RAM, ROM...
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,
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
Implementación de un microcontrolador sencillo
Microelectrónica, 4 o Curso, P94 Implementación de un microcontrolador sencillo M. L. López Vallejo P. Ituero y C. López Barrio Abril 200 Índice 1. Arquitectura del PIC 1 1.1. Organización de la memoria..............................
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
Sistemas con Microprocesadores I
Sistemas con Microprocesadores I 1 El ambiente de desarrollo MPLAB IDE El Entorno MPLAB IDE Creando código de usuario Creando un Proyecto Selección del Dispositivo y ventana de salida Selección de herramientas
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
Aplicaciones de mc Lenguaje C- CC5x-Temporizadores
Aplicaciones de mc Lenguaje C- CC5x-Temporizadores Preparado por : Juan Ignacio Huircán Departamento de Ingeniería Eléctrica Universidad de La Frontera Otoño 29 Introducción El µc posee 3 Módulos Timer,
LOS PIC16F87X. Características Generales. IES Juan de la Cierva (Madrid). Desarrollo de Productos Electrónicos
LOS PIC6F87X Características Generales D. de B L O Q U E S Los Pic6F87X Fernando Remiro D. de B L O Q U E S Características () Procesador de arquitectura RISC avanzada Juego de solo 35 instrucciones con
Microcontroladores PIC de Microchip: generalidades
Microcontroladores PIC de Microchip: generalidades PIC significa Peripheral Interface Controller Los fabrica ARIZONA MICROCHIP TECHNOLOGY. Fábrica principal: Chandler (Arizona). Otras en Tender (Arizona),
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
Señales de interfase del Z80
Señales de interfase del Z80 El microprocesador Z80 está integrado en una pastilla de 40 pines. Estos terminales pueden agruparse funcionalmente como muestra la figura: Bus de direcciones El bus de direcciones
Microprocesador. Introducción. Instituto Sagrado Corazón de Jesús
Microprocesador Introducción El microprocesador es la parte de la computadora diseñada para llevar acabo o ejecutar los programas. Este viene siendo el cerebro de la computadora, el motor, el corazón de
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
Taller de Interrupciones
Taller de Interrupciones Organización del Computador I Carlos A. Di Pietro Departamento de Computación - FCEyN UBA 2 cuatrimestre 205 El PIC 6F84A El PIC6F84A es un microcontrolador de la empresa Microchip.
SISTEMA MÍNIMO BASADO EN EL PIC16F84
PRÁCTICA 0 CIRCUITO BASE SISTEMA MÍNIMO BASADO EN EL PIC16F84 1 PRÁCTICA 1_1 COMPUERTA AND DE TRES ENTRADAS Hardware X0 X1 X2 Y 2 Comportamiento esperado INICIO Configurar Puerto A como entradas y Puerto
SALTOS EN FUNCIONDE UN BIT Aquéllas que pueden producir el salto en función del estado de un bit. Son btfsc y
SISTEMAS ELECTRONICOS DIGITALES SALTO CONDICIONAL El repertorio del PIC16F84 también dispone de instrucciones de salto condicional, que son aquéllas que producen un salto en función de que se cumpla o
PIC Programable Integrates Circuit o Peripheral Interface Controller
PIC Programable Integrates Circuit o Peripheral Interface Controller un microprocesador es un sistema abierto porque su configuración es variable de acuerdo con la aplicación a la que se destine. Es diferente
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
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
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
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
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
Ejercicios del tema 4. El procesador
Ejercicios del tema 4. El procesador Estructura del procesador elemental WepSIM Address Bus Data Bus Control Bus C0 Ta Internal Bus RA RB RC LC MAR T9 Memory MRdy BE ADDR DATA R W A31-A0 BE3-BE0 D31-D0
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.
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.
EDUPIC Módulo 16F628 Manual del Usuario
1 EDUPIC Módulo 16F628 Manual del Usuario Indice : 1. Introducción 2 2. Descripción general 2 3. Definición de los pines en el 16F628 4 4. Programador de la memoria FLASH 5 5. Oscilador 5 6. Arquitectura
MICROCONTROLADORES PIC
MICROCONTROLADORES PIC LOS TIMER DE LOS 16F87x TEMA EL TIMER 1 CCFF D.P.E. MÓDULO DE PROYECTOS 1 Diagrama de Bloques del TIMER1 CCFF D.P.E. MÓDULO DE PROYECTOS 2 INTRODUCCIÓN El módulo TIMER1 es un temporizador/contador
Memoria ROM. Circuitos de interfaz. Figura 1.
1.- Introducción a los Microcontroladores. 1.1.- Introducción. El microcontrolador nace cuando las técnicas de integración han progresado lo bastante para permitir su fabricación; pero también porque,
PRÁCTICA 5: Medida del tiempo en un PIC
SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 5: Medida del tiempo en un PIC TMR0 TMR1 Display 7 segmentos - 1 - 1. Objetivos: - Gestión de los temporizadores en los
PIC16F882/883/884/886/887 4 MÓDULO DEL OSCILADOR (CON EL FAIL-SAFE CLOCK MONITOR) 4.1. Apreciación Global
4 MÓDULO DEL OSCILADOR (CON EL FAIL-SAFE CLOCK MONITOR) 4.1. Apreciación Global El módulo del Oscilador tiene una gran variedad de fuentes del reloj y características de la selección que le permiten ser
ORGANIZACIÓN DEL MICROCOMPUTADOR
ORGANIZACIÓN DEL MICROCOMPUTADOR MICROPROCESADOR RAM ROM UNIDADES DE INTERCONEXIÓN BUS DE DIRECCIONES LINEAS DE CONTROL BUS I/O BUS DE DATOS ORGANIZACIÓN DEL MICROPROCESADOR INSTRUCCIONES DE UN MICROPROCESADOR
1. Proponer un circuito que tenga el puerto b como salida conectando 8 leds, realizando un programa que me encienda los bits 0, 1, 3, 5, 7.
1. Proponer un circuito que tenga el puerto b como salida conectando 8 leds, realizando un programa que me encienda los bits 0, 1, 3, 5, 7. a. Diagrama de flujo b. Circuito C1 4 MHZ C2 R2 10k 16 15 4 R1
PRÁCTICA 6: Gobierno del display 7 segmentos
SISTEMAS ELECTRÓNICOS Y AUTOMÁTICOS PRACTICAS DE MICROCONTROLADORES PIC PRÁCTICA 6: Gobierno del display 7 segmentos Display 7 segmentos - 1 - Ingeniería de Sistemas y Automática 1. Objetivos: Gobierno
