MICROCONTROLADORES
INTEGRANTES
Chipres Montaño Jesus Eduardo
Cruz Aguirre Nicole Balvaneda
García Torres Jesús David
León Robledo Itzel Guadalupe
Reyes Lara Isaías
Componentes Microcontrolador
El Microcontrolador es un circuito integrado que es
el componente principal de una aplicación
embebida. Es como una pequeña computadora que
incluye sistemas para controlar elementos de
entrada/salida. También incluye un procesador y
por supuesto memoria que puede guardar el
programa y sus variables (flash y RAM).
Un microcontrolador puede usarse para muchas
aplicaciones, algunas de ellas son: manejo de
sensores, controladores, juegos, calculadoras,
agendas, etc.
01 02 03
CPU Memoria ROM
Módulos para el control
Unidad Central de Proceso Utilizada para de periféricos
configuraciones o no volátil
04 05 06
Memoria RAM Lineas de E/S Reloj
Contener los datos. Circuitos digitales que nos Sincronizan el
permiten una interacción con funcionamiento de todo el
el mundo exterior sistema.
Ventajas y Desventajas Microcontrolador
Ventajas:
● Se requiere poco tiempo para realizar la operación.
● El chip del procesador es extremadamente pequeño y se produce adaptabilidad.
● El costo y el tamaño del sistema son menores.
● El microcontrolador es sencillo de interconectar RAM, ROM y puerto de E / S
adicionales.
Desventajas:
● Generalmente se utiliza en microequipos.
● Tiene una estructura compleja.
● El microcontrolador no puede conectar directamente un dispositivo de potencia mejor.
● El número de ejecuciones es limitado.
Familia Microcontroladores
FAMILIA PIC Familia HC05
La familia PIC es creada por Es muy utilizada porque es
Microchip y se divide por muy versátil de recursos y es
gamas: enana, baja, media y muy fácil de programar
alta.
Familia 68HC11
tienen la característica de ser
muy potentes
Distinción Convertidores A/D y D/A
Convertidores A/D
Se utiliza para convertir señales
analógicas en un determinado
número de bits digitales.
Convertidores D/A
Traducen las palabras entregadas en
binario por una computadora u otro
circuito a niveles analógicos
proporcionales al valor binario
presentado.
Recursos comunes de los MC
Procesador (CPU) Memoria No volatil
Instrucciones. Guarda datos.
Puertos E/S Memoria de lectura
Entradas y salidas de Manejan datos.
datos.
ROM, EPROM, OTP, EEPROM, FLASH
Recursos especiales de los MC
01 02 03
Reloj principal Temporizadores Perro Guardian
Sincronización. Controlar tiempos. Reinicio.
04 05 06
Convertidores AD/DC Sistema de protección Estado de reposo
Recibir y enviar señales Fallas de corriente. Sistema congelado y
analógicas. consumo mínimo.
Microcontroladores familia PIC
● Los microcontroladores PIC son circuitos integrados que pueden ser programados para ejecutar una
secuencia de instrucciones automáticamente. El programa se escribe en un computador en un ambiente
de programación adecuado y luego se transfiere como código binario a la memoria de programa del
microcontrolador para su ejecución en el momento de encendido del dispositivo.
Tipos de microcontroladores PIC
● Para poder clasificarlos se los pone en tres familias según su capacidad, estas familias son las de: 8
bits, 16 bits y 32 bits. Estas a su vez tienen subdivisiones las cuales ya son por las gamas de los
microcontroladores que podemos usar.
¿Por qué los PIC?
. Bajo costo
· Bajo consumo de potencia
· Alta inmunidad al ruido
· Distintos modelos adecuados para cada necesidad
· Herramientas de desarrollo gratuitas
· Fácil de empezar a usar
· Abundante información técnica gratuita oficial y de terceros (ambas por Internet)
· Protección del código de programa por encriptación
· Modo SLEEP (estado de reposo o de muy bajo consumo)
· Predisposición para osciladores RC (Resistor/Capacitor), XT (XTal), HS (High Speed) y LP (Low Power)
· Solo 35 instrucciones RISC (Reduced Instruction Set Computer)
· Interrupciones programables
· Circuito de vigilancia tipo perro guardián (watch dog timer o WDT)
· Modelos con conversores A/D
· Modelos con salida PWM (modulación de anchura de pulsos)
· Modelos con varios temporizadores internos
Microchip: Gama media PIC16F87X
Características generales
● Buses de instrucción (14 bit) y de datos (8 bits) separados.
● Ejecución en pipeline (2 etapas): 1 ciclo por instrucción (excepto el salto que son 2
ciclos).
● 68 bytes de RAM (datos) + 64 bytes EEPROM (datos). 1K palabras de FLASH
(instrucciones).
● 13 pins de entrada/salida (configurables de forma individual). 1 timer/contador.
● Modo SLEEP. Timer Watchdog.
● Varias opciones de generación de clock (cristal, R-C y externo).
Microchip: Gama media
Microchip: Gama Alta.PIC18XXX
Pertenecen a la gama mejorada, poseen una arquitectura abierta pudiéndose expansionar en el exterior al
poder sacar los buses de datos, direcciones y control.
Así se pueden configurar sistemas similares a los que utilizan los microprocesadores convencionales,
siendo capaces de ampliar la configuración interna del PIC añadiendo nuevos dispositivos de memoria y
de E/S externas. Esta facultad obliga a estos componentes a tener un elevado número de pines
comprendido entre 40 y 44.
Admiten interrupciones, poseen puerto serie, varios temporizadores y mayores capacidades de memoria
que alcanzan las 8 k palabras en la memoria de instrucciones, para memoria de datos cuentan con 454 a
3968 bytes y disponen de 77 Instrucciones de 16 bits de ancho.
Microchip: Gama Alta.
Características generales
● Puertos de entrada y salida.
● Se usan 3 entradas digitales para los conmutadores (RC3, RC4, RC5); 3 como salidas de la
plataforma PICCI (RB0, RB1, RB2), y otras 3 (RC0, RC1, RC2) como salidas para los
indicadores LED.
● 4Temporizadores (TMR0, TMR1, TMR2, TMR3): 2 de 16 bits y 2 de 8 bits. Convertidor A/D de
10 bits (RA0/AN0, RA1/AN1, RA2/AN2, RA3/AN3, RA5/AN52).
● USART (RC6, RC7). Receptor transmisor asíncrono síncrono direccionable universal. Permite la
transmisión y recepción de cadenas de bits.
● Programación RB6, RB7: Reloj y entrada y salida de datos para modo programación
respectivamente desde el PIC.
● MCLR/VPP: Dedicado a encender (RUN) y apagar (STOP) el PIC según exista 5 y 0 Voltios con
respecto a VSS respectivamente. Además, si se excita con 13 V, se consigue entrar en modo
programación. Servirá de RESET del microcontrolador (RESET durante funcionamiento).
Microchip: Gama Alta.
Características generales
● Sumidero/fuente de alta corriente 25 mA/25 mA
● Prescaler programable de 8 bits
● Módulo convertidor de analógico a digital (A/D) de 10 bits compatible con:
• Velocidad de muestreo rápida
• Conversión disponible durante SLEEP
• Linealidad ≤ 1 LSb
● Detección programable de bajo voltaje (PLVD)
● Temporizador de vigilancia (WDT) con su propio oscilador RC en chip para un funcionamiento confiable
● Protección de código programable Modo SLEEP de ahorro de energía
● Restablecimiento de apagón programable (BOR)
Microchip: Gama Alta.
CONCEPTOS
DIAGRAMA NASSI-
ALGORITMO CICLO DE VIDA SCHNEIDERMAN
Contiene los procesos, actividades y Diagrama de flujo en el que se omiten las
Método para resolver un problema
debe ser preciso e indicar el orden de tareas relacionadas con el desarrollo flechas de unión y las cajas son contiguas.
y mantenimiento de un producto de Las acciones sucesivas se escriben en cajas
realización de cada paso, debe estar
software, abarcando la vida sucesivas y, como en los diagramas de
bien definido y ser finito. Describe flujo, se pueden escribir diferentes
tres partes: Entrada, proceso y salida. completa del sistema desde la
acciones en una caja. Un algoritmo se
definición de requisitos hasta la
representa con un rectángulo en el que
finalización de su uso. cada banda es una acción a realizar.
DIAGRAMAS DE FLUJO PROGRAMACIÓN MODULAR
Un diagrama de flujo es un diagrama que utiliza los símbolos El programa se divide en módulos (partes independientes), cada
(cajas) estándar que tiene los pasos de algoritmo escritos en uno de los cuales ejecuta una única actividad o tarea y se codifican
independientemente de otros módulos. Cada uno de estos módulos
esas cajas unidas por flechas, denominadas líneas de flujo, que
se analiza, codifica y pone a punto por separado.
indican la secuencia en que se debe ejecutar.
PROGRAMACIÓN
DISEÑO DESCENDENTE
ESTRUCTURADA
Algoritmo con lenguaje procedimental como un Se determina cómo hace el programa la tarea
conjunto de instrucciones o sentencias. solicitada. Los métodos más eficaces para el proceso
de diseño se basan en el conocido divide y vencerás.
PRUEBAS PSEUDOCÓDIGO
Procesos con los que se pretende probar un sistema o aplicación El pseudocódigo es una herramienta de programación en la que
en diferentes momentos para comprobar su correcto las instrucciones se escriben en palabras similares al inglés o
español, que facilitan tanto la escritura como la lectura de
funcionamiento. Este tipo de pruebas abarca cualquier estadio del
programas. En esencia, el pseudocódigo se puede definir como un
desarrollo del sistema, desde su creación hasta su puesta en lenguaje de especificaciones de algoritmos.
producción.
FACTORES
CALIDAD VERIFICACI
Grado con el que el sistema el proceso
cumple los requerimientos especificados
ÓN
Proceso de ejecución del programa con
una amplia variedad de datos de entrada,
y las necesidades del programador. Se llamando datos de test que determinan si
clasifican en 2 grupos: el programa tiene o no errores.
-Medidas directas
-Medidas indirectas
Simbología de los diagrama de flujo
Simbología de los diagrama de flujo
Operadores Matematicos
Las expresiones realizan acciones específicas, según un operador, con uno o dos operados. Un operando puede ser una
constante, una variable o el resultado de una función. Los operadores son aritméticos, lógicos y relacionales. Al igual que
sucede en C, la funcionalidad de un operador puede variar según el tipo de datos de los operadores especificados en la
expresión.
Operadores aritméticos ( +, -, *, /, **, % )
Los operadores aritméticos realizan operaciones
matemáticas, como sumas o restas con operadores.
Hay dos tipos de operadores matemáticos: unarios y
binarios. Los operadores unarios realizan una acción
con un solo operando. Los operadores binarios
realizan acciones con dos operadores. En una
expresión compleja (dos o más operadores), el orden
de evaluación depende de las reglas de precedencia.
Operadores lógicos (AND, OR)
Los operadores lógicos permiten combinar más de una prueba relacionar en una comparación. Los operadores lógicos
devuelven el valor TRUE (1) o FALSE (0). Los operadores lógicos tienen una menor precedencia que los operadores
aritméticos.
Orden de prioridad
Cuando se producen varias operaciones en una
expresión, se evalúa y se resuelve cada parte en
un orden predeterminado denominado prioridad de
operador. Cuando las expresiones contienen
operadores de más de una categoría, los
operadores aritméticos se evalúan primero, los
operadores de comparación se evalúan a
continuación y los operadores lógicos se evalúan
en último lugar. Todos los operadores de
comparación tienen la misma prioridad; es decir, se
evalúan en el orden en que aparecen, de izquierda
a derecha.
Ejemplos
Ejemplos
Ejemplos
Ejemplos
Ejemplos