MICROPROCESADORES Y MICROCONTROLADORES I
UNEFM-ING. BIOMEDICA
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I: MICROCONTROLADOR
Es un circuito integrado programable que contiene todos los
componentes de un computador. Se emplea para controlar el funcionamiento
de una tarea determinada y, debido a su reducido tamaño, suele ir incorporado
en el propio dispositivo al que gobierna. Esta última característica es la que le
confiere la denominación de «controlador incrustado» (embedded controller).
(Jose Maria Angulo)
Un MICROPROCESADOR es un sistema abierto con el que puede
construirse un computador con las características que se desee,
acoplándole los módulos necesarios.
Un MICROCONTROLADOR es un sistema cerrado que contiene un
computador completo y de prestaciones limitadas que no se pueden
modificar.
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I MICROCONTROLADOR Y MICROPROCESADOR
Microcontroladores PIC, se debe
a la conjunción de tres técnicas:
- Arquitectura Harvard
- Computador tipo RISC
- Segmentación (Pipe line)
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : MICROCONTROLADOR Y MICROPROCESADOR
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I :MICROCONTROLADORES PIC
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : ARQUITECTURA DE LOS MICROCONTROLADOR PIC
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : MEMORIAS DE PROGRAMA
El microcontrolador está diseñado para que en su memoria de
programa se almacenen todas las instrucciones del programa de control.
No hay posibilidad de utilizar memorias externas de ampliación. Como
el programa a ejecutar siempre es el mismo, debe estar grabado de forma
permanente.
Los tipos de memoria adecuados para soportar esta función admiten
cinco versiones
diferentes:
1. ROM con mascara (MROM)
2. EPROM
3. OTP ROM (One Time Programmable ROM) - ROM programable una sola vez
4. EEPROM
5. FLASH
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : MEMORIAS DE DATOS
Los datos que manejan los programas varían continuamente, y esto exige que
la memoria que les contiene debe ser de lectura y escritura, por lo que la
memoria RAM estática (SRAM) (random access memory) - Memoria de
acceso aleatorio, es la más adecuada, aunque sea volátil.
Hay Microcontroladores que también disponen como memoria de datos una de
lectura y escritura no volátil, del tipo EEPROM (Electrically erasable
programmable rom) - ROM programable y borrable Eléctricamente. De esta
forma, un corte en el suministro de la alimentación no ocasiona la pérdida de la
información, que está disponible al reiniciarse el programa.
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : UNIDAD CENTRAL DE PROCESAMIENTO
(CENTRAL PROCESSOR UNIT - CPU)
Decodificador de instrucciones es la parte que descodifica las instrucciones
del programa y acciona otros circuitos basándose en esto. El “conjunto de
instrucciones” que es diferente para cada familia de microcontrolador expresa
las capacidades de este circuito;
Unidad lógica aritmética (Arithmetical Logical Unit - ALU) realiza todas las
operaciones matemáticas y lógicas
sobre datos;
Acumulador o registro de trabajo Es un registro SFR estrechamente
relacionado con el funcionamiento de la ALU.
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : LINEAS DE ENTRADA SALIDA
A excepción de los dos pines destinadas a recibir la alimentación, otros dos
para el cristal de cuarzo, que regula la frecuencia de trabajo, y otro más para
provocar el Reset, las restantes pines de un microcontrolador sirven para
soportar su comunicación con los periféricos externos que controla.
Las líneas de E/S que se adaptan con los periféricos manejan información en
paralelo y se agrupan en conjuntos de ocho, que reciben el nombre de Puertas
(Puertos). Hay modelos con líneas que soportan la comunicación en serie;
otros disponen de conjuntos de líneas que implementan puertos de
comunicación para diversos protocolos, como el I2C,SPI, el USB, etc.
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : RECURSOS AUXILIARES
Según las aplicaciones a las que orienta el fabricante cada modelo de
microcontrolador, incorpora una diversidad de complementos que refuerzan la
potencia y la flexibilidad del dispositivo.
Entre los recursos más comunes se citan a los siguientes:
a) Circuito de reloj, encargado de generar los impulsos que sincronizan el
funcionamiento
de todo el sistema.
b) Temporizadores, orientados a controlar tiempos.
c) Perro Guardián («watchdog»), destinado a provocar una reinicialización
cuando el programa queda bloqueado.
d) Conversores AD y DA, para poder recibir y enviar señales analógicas.
e) Comparadores analógicos, para verificar el valor de una señal analógica.
f) Sistema de protección ante fallos de la alimentación.
g) Estado de Reposo, en el que el sistema queda «congelado» y el consumo
de energía se reduce al mínimo.
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : PROGRAMACION DE LOS MICROCONTROLADORES
La utilización de los lenguajes más cercanos a la máquina (de bajo nivel)
representan un considerable ahorro de código en la confección de los
programas, lo que es muy importante dada la estricta limitación de la capacidad
de la memoria de instrucciones. Los programas bien realizados en lenguaje
Ensamblador optimizan el tamaño de la memoria que ocupan y su ejecución es
muy rápida.
Los lenguajes de alto nivel más empleados con microcontroladores
son el C y el BASIC, de los que existen varias empresas que comercializan
versiones de compiladores e intérpretes para diversas familias de
microcontroladores. En el caso de los PIC es muy competitivo e interesante el
compilador de C PCM de la empresa CCS , el intérprete PBASIC de
PARALLAX y los compiladores de mikroC PRO, mikroBasic y mikroPascal
conteniendo una cantidad de librerías que reducen el proceso de configuración
y utilización de periféricos avanzados que incorporan estos PIC.
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I : FAMILIA DE LOS MICROCONTROLADORES PIC
PIC12CXXX : 8-pin 12-bit/14-bit program word
PICmicro® RISC architecture en 8-pin DIP y SOIC hasta 4Mhz. 12-bit o 14-bit deinstrucción, 1024
palabras de programa. Bajo voltaje de operación: 2.5V. Manejo de interrupciones y pila por hardware.
33 Instrucciones. 128 bytes EEPROM y 64 bytes RAM.
PIC16C5X Family: 12-bit program word
PICmicro® RISC architecture en 14-, 18-, 20- y 28-pin SOIC y SSOP. 12- bit de
instrucción hasta 20Mhz y hasta 2k programa Bajo voltaje de operación: 2.0V para los OTP Hasta 128
bytes de RAM.
PIC16CXXX Family: 14-bit program word
PICmicro® RISC architecture con encapsulados de 18- y 68-pin. 14- bit de instrucción hasta 20Mhz,
hasta 8k programa. Manejo de interrupciones y 8-niveles de pila. 35 Instrucciones. Conversor:
Analógico -a-Digital a 12-bits. Hasta 368 bytes de RAM y 256 bytes de EEPROM.
PIC17CXXX Family: 16-bit program word
PICmicro® MCU’s RISC con arquitectura extendida. 16-bit instruction word hasta 33Mhz y 16384
palabras de programa. Conjunto de instrucciones ampliado a 58 instrucciones. Pila de 16 niveles.
Interrupciones vectorizadas. Hasta 902 bytes de RAM y 256 bytes de EEPROM.
PIC18CXXX Family: 16-bit program word
Arquitectura RISC avanzada Harvard: 16-bit con 8-bit de datos. 77 instrucciones y hasta 64K bytes de
programa y 40Mhz, hasta 2 Mbytes en ROM less. Pila de 32 niveles. Múltiples fuentes de interrupción
Hasta 1536 bytes de RAM y 1024 bytes de EEPROM
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I:
MICROCONTROLADOR PIC16F887
arquitectura RISC
-El microcontrolador cuenta con solo 35
instrucciones diferentes
-Todas las instrucciones son uni-ciclo
excepto por las de ramificación
Frecuencia de operación 0-20 MHz
Oscilador interno de alta precisión
-Calibrado de fábrica
-Rango de frecuencia de 8MHz a 31KHz
seleccionado por
software
Voltaje de la fuente de alimentación de
2.0V a5.5V
-Consumo: 220uA (2.0V, 4MHz), 11uA (2.0
V, 32 KHz) 50nA (en modo de espera)
Ahorro de energía en el Modo de
suspensión
Brown-out Reset (BOR) con opción para
controlar por software
35 pines de entrada/salida
-alta corriente de fuente y de drenador para
manejo de LED
-resistencias pull-up programables
individualmente por software
-interrupción al cambiar el estado del pin
memoria ROM de 8K con tecnología
FLASH
-El chip se puede re-programar hasta
100.000 veces
Opción de programación serial en el
circuito
-El chip se puede programar incluso
incorporado en el dispositivo destino.
256 bytes de memoria EEPROM
Los datos se pueden grabar más de
1.000.000 veces
368 bytes de memoria RAM
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I:
MICROCONTROLADOR PIC16F887
Convertidor A/D:
-14 canales
-resolución de 10 bits
3 temporizadores/contadores
independientes
Temporizador perro guardián
Módulo comparador analógico con
-Dos comparadores analógicos
-Referencia de voltaje fija (0.6V)
-Referencia de voltaje programable en
el chip
Módulo PWM incorporado
Módulo USART mejorado
-Soporta las comunicaciones seriales
RS-485, RS-232 y
-LIN2.0
-Auto detección de baudios
Puerto Serie Síncrono Maestro
(MSSP)
-Soporta los modos SPI e I2C
MICROPROCESADORES Y MICROCONTROLADORES I
UNIDAD I :MICROCONTROLADOR PIC16F887

Introducción

  • 1.
  • 2.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I: MICROCONTROLADOR Es un circuito integrado programable que contiene todos los componentes de un computador. Se emplea para controlar el funcionamiento de una tarea determinada y, debido a su reducido tamaño, suele ir incorporado en el propio dispositivo al que gobierna. Esta última característica es la que le confiere la denominación de «controlador incrustado» (embedded controller). (Jose Maria Angulo) Un MICROPROCESADOR es un sistema abierto con el que puede construirse un computador con las características que se desee, acoplándole los módulos necesarios. Un MICROCONTROLADOR es un sistema cerrado que contiene un computador completo y de prestaciones limitadas que no se pueden modificar.
  • 3.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I MICROCONTROLADOR Y MICROPROCESADOR
  • 4.
    Microcontroladores PIC, sedebe a la conjunción de tres técnicas: - Arquitectura Harvard - Computador tipo RISC - Segmentación (Pipe line) MICROPROCESADORES Y MICROCONTROLADORES I UNIDAD I : MICROCONTROLADOR Y MICROPROCESADOR
  • 5.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I :MICROCONTROLADORES PIC
  • 6.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : ARQUITECTURA DE LOS MICROCONTROLADOR PIC
  • 7.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : MEMORIAS DE PROGRAMA El microcontrolador está diseñado para que en su memoria de programa se almacenen todas las instrucciones del programa de control. No hay posibilidad de utilizar memorias externas de ampliación. Como el programa a ejecutar siempre es el mismo, debe estar grabado de forma permanente. Los tipos de memoria adecuados para soportar esta función admiten cinco versiones diferentes: 1. ROM con mascara (MROM) 2. EPROM 3. OTP ROM (One Time Programmable ROM) - ROM programable una sola vez 4. EEPROM 5. FLASH
  • 8.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : MEMORIAS DE DATOS Los datos que manejan los programas varían continuamente, y esto exige que la memoria que les contiene debe ser de lectura y escritura, por lo que la memoria RAM estática (SRAM) (random access memory) - Memoria de acceso aleatorio, es la más adecuada, aunque sea volátil. Hay Microcontroladores que también disponen como memoria de datos una de lectura y escritura no volátil, del tipo EEPROM (Electrically erasable programmable rom) - ROM programable y borrable Eléctricamente. De esta forma, un corte en el suministro de la alimentación no ocasiona la pérdida de la información, que está disponible al reiniciarse el programa.
  • 9.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : UNIDAD CENTRAL DE PROCESAMIENTO (CENTRAL PROCESSOR UNIT - CPU) Decodificador de instrucciones es la parte que descodifica las instrucciones del programa y acciona otros circuitos basándose en esto. El “conjunto de instrucciones” que es diferente para cada familia de microcontrolador expresa las capacidades de este circuito; Unidad lógica aritmética (Arithmetical Logical Unit - ALU) realiza todas las operaciones matemáticas y lógicas sobre datos; Acumulador o registro de trabajo Es un registro SFR estrechamente relacionado con el funcionamiento de la ALU.
  • 10.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : LINEAS DE ENTRADA SALIDA A excepción de los dos pines destinadas a recibir la alimentación, otros dos para el cristal de cuarzo, que regula la frecuencia de trabajo, y otro más para provocar el Reset, las restantes pines de un microcontrolador sirven para soportar su comunicación con los periféricos externos que controla. Las líneas de E/S que se adaptan con los periféricos manejan información en paralelo y se agrupan en conjuntos de ocho, que reciben el nombre de Puertas (Puertos). Hay modelos con líneas que soportan la comunicación en serie; otros disponen de conjuntos de líneas que implementan puertos de comunicación para diversos protocolos, como el I2C,SPI, el USB, etc.
  • 11.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : RECURSOS AUXILIARES Según las aplicaciones a las que orienta el fabricante cada modelo de microcontrolador, incorpora una diversidad de complementos que refuerzan la potencia y la flexibilidad del dispositivo. Entre los recursos más comunes se citan a los siguientes: a) Circuito de reloj, encargado de generar los impulsos que sincronizan el funcionamiento de todo el sistema. b) Temporizadores, orientados a controlar tiempos. c) Perro Guardián («watchdog»), destinado a provocar una reinicialización cuando el programa queda bloqueado. d) Conversores AD y DA, para poder recibir y enviar señales analógicas. e) Comparadores analógicos, para verificar el valor de una señal analógica. f) Sistema de protección ante fallos de la alimentación. g) Estado de Reposo, en el que el sistema queda «congelado» y el consumo de energía se reduce al mínimo.
  • 12.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : PROGRAMACION DE LOS MICROCONTROLADORES La utilización de los lenguajes más cercanos a la máquina (de bajo nivel) representan un considerable ahorro de código en la confección de los programas, lo que es muy importante dada la estricta limitación de la capacidad de la memoria de instrucciones. Los programas bien realizados en lenguaje Ensamblador optimizan el tamaño de la memoria que ocupan y su ejecución es muy rápida. Los lenguajes de alto nivel más empleados con microcontroladores son el C y el BASIC, de los que existen varias empresas que comercializan versiones de compiladores e intérpretes para diversas familias de microcontroladores. En el caso de los PIC es muy competitivo e interesante el compilador de C PCM de la empresa CCS , el intérprete PBASIC de PARALLAX y los compiladores de mikroC PRO, mikroBasic y mikroPascal conteniendo una cantidad de librerías que reducen el proceso de configuración y utilización de periféricos avanzados que incorporan estos PIC.
  • 13.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I : FAMILIA DE LOS MICROCONTROLADORES PIC PIC12CXXX : 8-pin 12-bit/14-bit program word PICmicro® RISC architecture en 8-pin DIP y SOIC hasta 4Mhz. 12-bit o 14-bit deinstrucción, 1024 palabras de programa. Bajo voltaje de operación: 2.5V. Manejo de interrupciones y pila por hardware. 33 Instrucciones. 128 bytes EEPROM y 64 bytes RAM. PIC16C5X Family: 12-bit program word PICmicro® RISC architecture en 14-, 18-, 20- y 28-pin SOIC y SSOP. 12- bit de instrucción hasta 20Mhz y hasta 2k programa Bajo voltaje de operación: 2.0V para los OTP Hasta 128 bytes de RAM. PIC16CXXX Family: 14-bit program word PICmicro® RISC architecture con encapsulados de 18- y 68-pin. 14- bit de instrucción hasta 20Mhz, hasta 8k programa. Manejo de interrupciones y 8-niveles de pila. 35 Instrucciones. Conversor: Analógico -a-Digital a 12-bits. Hasta 368 bytes de RAM y 256 bytes de EEPROM. PIC17CXXX Family: 16-bit program word PICmicro® MCU’s RISC con arquitectura extendida. 16-bit instruction word hasta 33Mhz y 16384 palabras de programa. Conjunto de instrucciones ampliado a 58 instrucciones. Pila de 16 niveles. Interrupciones vectorizadas. Hasta 902 bytes de RAM y 256 bytes de EEPROM. PIC18CXXX Family: 16-bit program word Arquitectura RISC avanzada Harvard: 16-bit con 8-bit de datos. 77 instrucciones y hasta 64K bytes de programa y 40Mhz, hasta 2 Mbytes en ROM less. Pila de 32 niveles. Múltiples fuentes de interrupción Hasta 1536 bytes de RAM y 1024 bytes de EEPROM
  • 14.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I: MICROCONTROLADOR PIC16F887 arquitectura RISC -El microcontrolador cuenta con solo 35 instrucciones diferentes -Todas las instrucciones son uni-ciclo excepto por las de ramificación Frecuencia de operación 0-20 MHz Oscilador interno de alta precisión -Calibrado de fábrica -Rango de frecuencia de 8MHz a 31KHz seleccionado por software Voltaje de la fuente de alimentación de 2.0V a5.5V -Consumo: 220uA (2.0V, 4MHz), 11uA (2.0 V, 32 KHz) 50nA (en modo de espera) Ahorro de energía en el Modo de suspensión Brown-out Reset (BOR) con opción para controlar por software 35 pines de entrada/salida -alta corriente de fuente y de drenador para manejo de LED -resistencias pull-up programables individualmente por software -interrupción al cambiar el estado del pin memoria ROM de 8K con tecnología FLASH -El chip se puede re-programar hasta 100.000 veces Opción de programación serial en el circuito -El chip se puede programar incluso incorporado en el dispositivo destino. 256 bytes de memoria EEPROM Los datos se pueden grabar más de 1.000.000 veces 368 bytes de memoria RAM
  • 15.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I: MICROCONTROLADOR PIC16F887 Convertidor A/D: -14 canales -resolución de 10 bits 3 temporizadores/contadores independientes Temporizador perro guardián Módulo comparador analógico con -Dos comparadores analógicos -Referencia de voltaje fija (0.6V) -Referencia de voltaje programable en el chip Módulo PWM incorporado Módulo USART mejorado -Soporta las comunicaciones seriales RS-485, RS-232 y -LIN2.0 -Auto detección de baudios Puerto Serie Síncrono Maestro (MSSP) -Soporta los modos SPI e I2C
  • 16.
    MICROPROCESADORES Y MICROCONTROLADORESI UNIDAD I :MICROCONTROLADOR PIC16F887