Вы находитесь на странице: 1из 68

INTRODUCCIÓN

GENERAL
DE LOS
MCU
Aplicaciones actuales de los Mcu

 Transmisión móvil (celulares, radios,


etc.)
 Electrodomésticos (microondas,
cocinas, lavadoras, televisores, equipos
de sonido, etc.)
 Industria (procesos automáticos, control
de robots, control y velocidad de
motores, etc.)
 Hobby
OBJETIVO
 Repaso general de los sistemas de
numeración HEX, DEC, BIN; y
operaciones básicas de lógica de bool.

 Familiarizarse con la estructura,


características y modelo de programación
del microcontrolador.
INTRODUCCIÓN
¿Qué es un microcontrolador?
 Es un circuito integrado programable que
contiene todos los componentes de una
computadora. Se emplea para controlar el
funcionamiento de una tarea determinada y
debido a su reducido tamaño, suele ir
incorporado en l circuito que gobierna.
 El PIC es diseñado con las siguientes
características
Arquitectura Hardvard
Procesador tipo RISC
Diferencia entre un Mcu y un
Mpu
 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.
Componentes básicos del Mcu
 Procesador.
 Memoria no volátil.
 Memoria volátil.
 Sistema I\O. Comunicación serial y
paralelo.
 Sistema temporizador.
 Convertidor A\D.
 Protección de integridad de software.
 Controlador de interrupciones.
Arquitectura de los uP

 Arquitectura Harvard
Buses se conectan a dos o mas tipos de
memoria, datos y código están localizados
en diferentes memorias (ver datasheet)
Arquitectura de los Mcu
RISC
Computador de juego de instrucciones
reducido
Tiempo de ejecución constante
Extensión del código de operación mínimo
Tipos de memoria de los
Mcu
 ROM (Mascara)
 EPROM
 EEPROM
 FLASH
 RAM
Conceptos básicos
 Buses
 Pila
 Código de operación
 Directiva
 Instrucción
 Ciclo de ejecución
 Modo de direccionamiento
 Interrupción
 Mapa de memoria
CARACTERÍSTICAS
DE LOS
MICROCONTROLAD
ORES
Mcu serie PIC 16F88
 Procesador tipo RISC
Juego de 35 instrucciones todas ejecutadas
en un ciclo de reloj excepto las de salto que
se ejecutan en dos ciclos
Instrucciones de 14 bits de ancho
Extensión de datos de 8 bits
 No disponibilidad de buses para modo
extendido
Mcu serie PIC 16F88
 Memoria
4K de FLASH
256 bytes de EEPROM
368 bytes de RAM
 3 temporizadores estándar de 8 bits
 16 líneas de puertos I\O repartidas en 2
puertos
 Controlador de interrupciones
 Sistema COP
Mcu serie PIC 16F88
¨ Sistema de comunicación serial
sincrónica y asincrónica.
¨ Convertidor análogo digital de hasta 10
bits.
¨ Modulador por ancho de pulso
independiente de los temporizadores.
¨ Comparadores análogos de referencia.
MODELO BÁSICO
DE
PROGRAMACIÓN
Modelo de programación
 Representa la estructura de manipulación
de datos que soporta el conjunto de
instrucciones, usualmente compuesta por:
Unidad aritmética y lógica
Los registros de trabajo
El registro de condiciones
La memoria de datos
Modelo del PIC16F88
Funciones del registro de estado

 Acarreo C
Se pone en 1 cuando la ultima operación
ejecutada llevo acarreo
 Acarreo de Nibble H o DC
Igual que el anterior pero para BCD
 Cero Z
Se pone en 1 cuando el resultado de la
ultima operación fue cero.
Funciones del registro de estado

 Indicador de integridad To
 Selección de banco en direccionamiento
directo RP1 RP0
 Selección de banco en direccionamiento
indirecto IRP
Pasos para el desarrollo de
aplicaciones
 Creación del programa fuente
 Compilación del programa fuente
 Localización del programa
 Transferencia del programa al
dispositivo
HERRAMIENTAS
DE DISEÑO
DE LOS MCU
Objetivos
 Fundamentos del proceso de creación
de algoritmos
 Entender el proceso de creación de
aplicaciones para microcontroladores
 Conocer las herramientas de simulación
diseño, quemado (flashing) y su utilidad
para el proceso de desarrollo y diseño
Pasos para desarrollar un
programa
 Definición del problema
 Dividir en partes
 Definir el algoritmo
 Codificar
 Ensamblar
 Depurar
 DOCUMENTAR
Escritura de algoritmos
 Lenguaje natural
 Pseudo código
 Diagrama de flujo
Herramientas
 PIC
Ensamblador: MPLAB IDE v7.20
Descarga gratuita en Internet y siempre de manera
actualizada en la pagina oficial de MICROCHIP.
Simulador: MPLAB Sim
WinPic800 v3.56b
Descarga gratuita en Internet siempre de manera
actualizada. Se puede encontrar de manera fácil en
google.com
Pasos
 Codificar la aplicación en un editor de
texto.
 Guardar en formato de texto simple con
la extensión .asm
 Compilar con el ensamblador
 Depurar con el simulador
PASOS PARA CREAR
PROGRAMAS CON
PIC16F8XX
Creación del programa fuente

 Escriba el código fuente usando el


editor de MPLAB.
 Selecciones la opción (file>new) y
escriba su código fuente.
 Guarde el archivo en el directorio de su
eleccion, (file>save).
Ensamblaje
 Para ensamblar el programa cree un
proyecto nuevo con MPLAB,
ayudandose con el asistente
(Project>Project Wisard). Este
asistente le orientara con los pasos
para la creación de su proyecto
 Después de este proceso deberá de
compilar el proyecto, para tener los
códigos de operación listos para ser
procesados por el simulador o una
tarjeta de evaluación (Project>Build
Simulador
 Para verificar que el programa
funciona se puede utilizar el simulador
de MPLAB, seleccionando:
(Debugger>Select_Tool>MPLAB SIM.
 Esta opción le habilitara diferentes
barras y menús para poder desarrollar
sus tareas de depuración.
Depuración
Otras funciones del
simulador
 Capacidad para poder poner
Breakpoints.
 Posibilidad de agregar estímulos a los
pines del Mcu.
 Despliegue de trace grafico.
 Monitoreo de ciclos de reloj, entre
otras cosas.
Programas para la clase
 Desarrolle un algoritmo sencillo
para poder sumar o restar dos
números enteros no signados.
 Desarrolle un algoritmo sencillo
para multiplicar dos números
Trabajo complementario
 Investigue y estudie las instrucciones
del microcontrolador.
 Este manual se lo proporcionaremos
en formato digital.
INTRODUCCIÓN AL
LENGUAJE
EMSAMBLADOR
DEL PIC
Objetivos
 Conocer los modos de
direccionamiento de los
microcontroladores
 Comprender el funcionamiento del
conjunto de instrucciones de los
microcontroladores
Modo de direccionamiento
 Son las diferentes capacidades de
las que dispone el microprocesador
para alcanzar los datos contenidos
en la memoria; las cuales tienden a
facilitar el desarrollo de
aplicaciones.
Modos de direccionamiento del
PIC
 Direccionamiento inmediato
movlw (valor en la forma 0xhh)
 Direccionamiento Directo
Addwf f,d
○ f = memoria o registro fuente
○ d = indicador de destino (d=0>W, d=1>f)
 Direccionamiento indirecto
movwf FSR
Tipos de instrucciones
del PIC
 Orientadas a manejar registros del
tamaño byte
 Orientadas a manejar bits
 Orientadas a manejar valores
inmediatos
 Para el manejo de saltos
 De control y especiales
Formato de instrucción
PIC
Instrucciones para manejo de registros tipo byte

SINTAXIS OPERACIÓN
ADDWF f,d Suma W y f
ANDWF f,d Andea W y f
CLRF f Borra f
CLRW Borra W
COMF f,d Invierte W o f
DECF f,d Decrementa W o f
INCF f,d Incrementa W o f
IORWF f,d Orea W y f
Instrucciones para manejo de registros tipo byte

SINTAXIS OPERACION
MOVF f,d Mueve f
MOVWF f Mueve W
NOP No opera
RLF f,d Rota a la izquierda con acarreo

RRF f,d Rota a la derecha con acarreo

SUBWF f,d Resta W a f


SWAPF f,d Intercambia Nibbles
XORWF Xor entre W y f
Instrucciones para manejo de bits

SINTAXIS OPERACION
BCF f,b Borra bits de f
BSF f,b Pone a 1 bits de f
Instrucciones para manejo de valores inmediatos

SINTAXIS OPERACION
ADDLW k Suma W con k
ANDLW k Andea W con k
IORLW k Orea W con k
MOVLW k Mueve k a W
SUBLW k Resta W de k
XORLW k Xor entre W y k
Instrucciones para manejo de saltos
SINTAXIS OPERACION
BTFSC f,b Chequea un bit de f y salta si vale 0

BTFSS f,b Chequea un bit de f y salta si vale 1

DECFSZ f,d Decrementa f si su valor es 0 y salta

INCFSZ f,d
Instrucciones de control y especiales
SINTAXIS OPERACION
CALL k Llamada a subrutina
CLRWDT Borra el registro
GOTO k Salto incondicional
RETFIE Retorno de interrupción

RETLW k Retorno de subrutina y carga W


con el valor de k

RETURN Retorno de subrutina


SLEEP Pasa al modo de reposo
MANEJO DE PUERTOS DE SALIDA

OBJETIVOS:
 Conocer los registros básicos
relacionados con las salidas del
microcontrolador.
 Enviar datos digitales a las salidas de
un puerto del microcontrolador y
verificarlos usando LEDs.
REGISTRO ESPECIAL
ANSEL
Registro de selección
análoga.
 Forma parte del
modulo de conversión
de Análogo a digital.
 Bit 7 – Sin
implementar, se lee
como cero.
 Bit 6-0 – Bit de
selección análoga
 1=Entrada/Salida
análoga
 0=Entrada/Salida
digital
PROGRAMA BÁSICO A UNA
SALIDA
 Operación del programa:
Encender un LED conectado en un
pin especifico de microcontrolador,
en este caso debe ser el pin 13
(RB7) del dispositivo.
 INICIO
 Limpiar registro de STATUS
 Dirigirse al banco del registro de configuración
del oscilador interno
 Definir la frecuencia de oscilación a un valor
 Dirigirse al banco de ANSEL
 Configurar ANSEL como E/S digital
 Configurar Puerto A como entrada (TRISA)
 Configurar Puerto B como salida (TRISB)
 Dirigirse al banco cero
 Limpiar la salida del puerto B
 Poner a 1 la salida deseada
 Ir al paso anterior.
 NOTA: Como se desea una salida
permanente en 1, este programa
se queda en un lazo infinito sin
salida.
Asignación para la clase
 Escribir y quemar un programa para los 8
bits de salida de un puerto del
microcontrolador, que presente números
binarios en un grupo de LEDs.
APLICACIONES
COMERCIALES E
INDUSTRIALES DEL
Objetivos:
MCU
Conocer la evolución histórica y a
los principales fabricantes de MCU’s.
Conocer algunas aplicaciones de
control automático y redes
neuronales para los MCU’s.

54
CONTENIDO
 Algo de historia
 Algunos fabricantes y sus microcontroladores
 Aplicaciones comerciales generales
 Aplicaciones industriales generales
 Aplicación practica: Robótica e
 Aplicación practica: Transmisión de datos
 Aplicación practica: Eficiencia energética
 Conclusiones y seguimiento

55
ALGO DE HISTORIA
INTEL Exhibicion WESCON
INTEL
Aparece la 1ra microcomputadora
MOTOROLA en un solo ckto, que luego seria
Se crea el primer
Publica el Salen
6800 yallos
mercado
pimerosel 6501
llamadoy 6502
MCUa con CPU,
microprocesador de 4 bits,unos accesibles $25,almacenamiento
para competir, de 1Kb, memoria
perifericos dedicados de la
el 4004 con 6000
historia, elel6820
8080y baja de $179
el 6850, se de a $70,
datossolo en y temporizador de
de 64b
operaciones por segundo un año se venden 158millones desolo encapsulado
bits en un
inicia la migracion a la
1971 tecnologia6502
MOS 1975 1978

1969 1972 1974 1976


INTEL INTEL y TI INTEL ZILOG
Se crea
Nace la idea el primer
de un Sale al mercado Con el Z80 nace el 1er
el 8080,
INTEL
microprocesador
IC programable. conde758instrucciones,
microprocesador 1981
bits a
Macian Hoof y 45 instrucciones, El 1er con
direccionameintocompatible
de 64Kb sucesor del 8048 es el 8051
el 8080,
cargo delelproyecto
8008 con 300
de mil
memoria a uncon coninstrucciones,
176
precio 2 temporizadores programables
operaciones por de 16 bits, comunicacion
inicial de $360 direccionamiento de 64Kb serie full
segundo y duplex,y256b
de memoria otrasde memoria de datos,
direccionamiento de 8Kb de
opciones. memoria
Intel para programa. Se
pierde la
16Kb de memoria constituye
batalla comercialelcon
estandar
el industrial de
8085 los MCU
56
ALGUNOS FABRICANTES Y SUS MCU’s
FABRICANTE SERIE DE MCU's
AMCC Serie 4xx
Atmel AVR32 arquitectura RISC AT90 MARC4

Cypress
MicroSystems CY8c2xxxx

Freescale
Semiconductor 68HC0x 8 bits 68HC12 16 bits 683xx 32 bits
Fujitsu Familia FR Familia FR-V
Intel Familia 8051 8 bits 8096 16 bits 80960 32 bits

Serie PIC instrucciones 14 Serie PIC instrucciones 16


Microchip Serie PIC instrucciones 12 bits bits bits

National
Semiconductors COP8 CR16  
NEC LPC2000

Renesas Tech. Corp. H8 M16C M32R

Fam SM2xx controlador de tarjeta de mem SM350 Formatos


Silicon Motion flash SM722 Graficos moviles MP3/JPEG
Texas Instruments ST62 ST7 ST10
Toshiba TLCS-870 8 bits TLCS-900 16 bits TX19A 32 bits
ZiLOG Z8 Z86E02

57
APLICACIONES COMERCIALES
GENERALES
 Kits de Robotica
 Modulos de entrenamiento
 Sistemas de seguridad
 Electrodomesticos

58
APLICACIONES INDUSTRIALES
GENERALES
 Sistemas de control automatico / digital
 Procesos controlados
 Transmision de datos
 Adquisitores de datos

59
APLICACION PRACTICA: ROBOTICA
E IA. COMPETENCIA MICROMOUSE

Peso: 713 g
Altura: 7cm
Largo: 12.2 cm
Ancho: 8cm
Giro: 0.7 cm/s
Velocidad horiz: 2.4 m/s
Aceleracion: 2.5 m/s/s
Peso : 332 g
Motor driver : SLA 7026
Altura: 5 cm
Largo: 11.7 cm
Ancho: 7.5 cm
Giro:0.8 m/s
Velocidad horiz: 2.0 m/s
Aceleracion:2.5 m/s/s
Motor driver : L293D
IR transmisor : OLD2203
IR receptor : TSL261
60
APLICACION PRACTICA: ROBOTICA
E IA. COMPETENCIA MICROMOUSE

Peso : 290 g
Altura: 4.1 cm
Longitud: 11.3 cm
Ancho: 7.4 cm
Giro:0.8 m/s
Peso : 165g
Velocidad horiz: 2.1 m/s
Altura: 4.1 cm
Aceleracion:2.8 m/s/s
Largo: 11.3 cm
Motor driver : Zetex
Ancho: 7.4 cm
ZXMD63C02X
Giro:1.1 m/s
IR transmisor : OLD2203
Velocidad horiz: 3.1 m/s
IR receptor : TSL261
Aceleracion:4.5 m/s/s
Motor driver : Zetex
ZXMD63C02X
IR transmisor : OPE5594
IR receptor : TSL261
Gyro : Analog Devices
adxrs300 61
APLICACION PRACTICA: ROBOTICA
E IA. COMPETENCIA MICROMOUSE

62
Aplicacion practica: Transmision
de datos

Overview
La tarjeta de CPU es un MCU de Renesas
H8/3069F y un Cypress SL811HST con
controlador de USB host. Un adaptador WLAN,
2 camaras STV0680 y una mem. USB se
conectan al USB host a traves de un HUB de 4
puertos

63
Aplicacion practica: Transmision
de datos

Cada camara toma una fotografia cada


10min. Estas imagenes se convierten a
formato JPEG por la tarjeta CPU, luego
se suben a un servidor FTP via LAN
inalambrica.

Al CPU le toma 20 segundos sintetizar


una imagen de dimension QVGA (320 x
240) y convertirlo a JPEG. Como puede
verse la calidad es relativamente baja.

La memoria USB se usa para guardar


un archivo de configuracion de red en el
cual estan escritos direcciones IP,
usuario y password del FTP, etc.

64
Aplicacion practica: Eficiencia
energetica
Investigadores del Instituto Politécnico Nacional diseñaron un Sistema
Automático de Ahorro de Energía Eléctrica para Casas Habitación, que
permite reducir los costos de este consumible hasta en un 60 por
ciento, ya que, en promedio, en los hogares mexicanos se desperdicia
la energía eléctrica hasta por tres horas diarias al dejar lámparas
encendidas, lo cual afecta la economía familiar.
El sistema desarrollado por los investigadores politécnicos está construido
con microcontroladores que pueden programarse para automatizar la
iluminación en el hogar.
El dispositivo cuenta con un control de encendido y apagado de luces
mediante sensores infrarrojos y de temperatura que se accionan de
manera automática cuando detectan la presencia de alguna persona en
el sitio, acotó.
A su vez, Calderón Díaz dijo que el dispositivo enciende únicamente cuando
las condiciones de luz natural lo ameritan, y después de un lapso sin
detectar movimiento se apaga a fin de evitar desperdicio de energía.
Destacó que a diferencia de otros sistemas de importación que existen en el
mercado y que no son tan eficientes, el sistema diseñado en el
Politécnico controla la intensidad lumínica de las lámparas
incandescentes al gusto de los habitantes de la casa.

65
Conclusión y
seguimiento
 Comentarios Finales
 Seguimiento: La primera asignacion consiste
en preparar un JDM funcional para programar
el PIC16F88
 La segunda asignacion consiste en realizar un
ckto con el PIC que tome 2 numeros binarios
de 2 bits en el puerto A, los multiplique y
muestre su resultado en un display en el
puerto B, todo eso corrido en tiempo real.

66

Вам также может понравиться