Computadoras Electrónicas 2010
Introducción a la programaciónIntroducción a la programaciónde microcontroladoresde microcontroladores
TCO. NOGUERA Guillermo SebastiánInstituto Politécnico San Arnoldo Janssen
www.guillenoguera.com.ar
Conceptos Previos
Repasamos (sintesis al 010410 - webpage)
sistemas digitales. problema técnico. metodología. algoritmo. programa. lenguajes de programación. programación estructurada: estructuras de
datos, de control, operadores, operandos. diagrama de flujo y pseudocódigo.
Controlador: recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o más procesos.
Algunos ejemplos:
Velocidad de motores. Temperatura de un recinto (habitación, horno,etc). Humedad, presión, etc. Nivel de líquido en un tanque. Alarmas hogareñas. Encendido/apagado de dispositivos. Contador de eventos y control de acceso. Nivel e intensidad de luz.
¿Algunos aportes más acerca de los procesos que podemos controlar?
Controladores
Evolución histórica: Componentes mecánicos. Componentes de lógica discreta. Sistemas con microprocesadores.
¿Cuál es el esquema básico de un sistema basadoen un microprocesador?
Evolución histórica
Microcontrolador
Un circuito integrado de alta escala de integración que incorpora la mayor parte de los elementos que conforman un controlador. “La solución en un chip”...
¿Qué es un microcontrolador ?
- Procesador o UCP (Unidad Central de Proceso).- Memoria RAM para Contener los datos.- Memoria para el programa tipo ROM/PROM/EPROM.- Líneas de E/S para comunicarse con el exterior.- Diversos módulos para el control de periféricos (temporizadores, Puertas Serie y Paralelo, CAD: Conversores Analógico/Digital, CDA: Conversores Digital/Analógico, etc.).- Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema.
http://www.areacapacitacion.com.ar/
Arquitectura interna - Elementos
Procesador o UCP: se encarga de direccionar la memoria de programa, recibir el OP de la instrucción en curso, su decodificación y la ejecución de la operaciónque implica la instrucción, asi como la búsqueda de operandos y el almacena-miento del resultado.
Memoria: una parte de memoria no volatil (destinada al almacenamiento del prog.)y una parte de memoria volatil destinada a guardar variables y datos.
Puertas de E/S: líneas que comunican la UCP con los periféricos exteriores.
Reloj: los microcontroladores disponen de un oscilador que genera una onda cua-Drada de alta frecuencia, que configura los impulsos de reloj usados en la sincro-nización de todas sus operaciones internas.
Recursos especiales: “Timers” o temporizadores, Watchdog, Conversores A/D y D/A, Comparadores, PWM o moduladores de anchura de pulso, Puertos de comu-Nicación (USART, USB, I2C, etc.)
Actividad 1: Elaborar un diagrama de bloques o esquema básico que represente la arquitectura interna del PIC16F84.
Los PIC16 tienen 3 bloques de memoria
Memoria de Programa Flash/RomMemoria de Datos RAMMemoria de Datos E2prom
La memoria de datos y de programa tienen buses separados, lo que permite accesos a ambas zonas en un mismo ciclo de máquina. (Harvard)
PIC16 - Organizacion de Memoria
Organización de MemoriaMemoria de Programa
Memoria de Datos / Recursos
Organización de MemoriaMemoria de Programa
Memoria de Datos / Recursos
PIC16 - Memoria
La serie PIC16 tiene un PC (Contador de programa) de 13 bits.
El Vector de Reset se encuentra en la dirección 0000h
El Vectores de Interrupción se encuentran en la direccion 0004h.
Mapas de Memoria
PIC16 – Funcionamiento
Un ciclo de instrucción (C.I) consiste en cuatro ciclos de reloj (Q1,Q2, Q3, Q4). La instrucción encontrada es latcheada en el R.I en el Estado Q1, luego es decodificada y ejecutada durante Q2, Q3 y Q4.Lectura de datos durante Q2 y escritura durante Q4. En un mismoC.I mientras se ejecuta una instrucción se busca la siguiente (pipeline).
Actividad 2: tomando como base el concepto de ciclo instrucción, si unmicrontrolador tiene como Fosc = 4Mhz. ¿cuánto tardaría en ejecutar un programa de 1000 instrucciones?.Deducir una fórmula general que relacione Tosc y CM (C.I)
Diagramas de tiempo – Ciclo instrucción
PIC16 – Circuito y Funcionamiento
Programación de uCLenguaje Máquina: 1000110101010 (“entiende el microcontrolador”)Lenguaje Ensamblador: MOVWF portb (“comprende el programador”)
SET de Instrucciones
El Set de instrucciones o repertorio del PIC 16F84A está compuesto por35 instrucciones que podemos agrupar en:
1. Instrucciones de carga: transfieren el contenido de un registro origen (f) a unregistro destindo (d) o bien cargan el destino con una constante (k).2. Instrucciones aritméticas: permiten realizar sumas, restas, incrementar un registro o decrementarlo.3. Instrucciones lógicas: and, or, xor, swap, complemento a 1, rotar a la izq. oderecha.4. Instrucciones de bit: setean (1) o borran (0) un determinado bit de un registrode la memoria de datos.5. Instrucciones de salto: incondicional a la dirección k, salta si b es 0 o 1 de (f),decrementa e incrementa y salta si 0.6. Instrucciones para el manejo de subrutinas: llamadas y retornos a subrutinas.7. Instrucciones especiales: nop, clrwdt, sleep.
¿ CONSULTAS ?
Continuamos con la última actividad...
Actividad 3: considerando el set de instrucciones del PIC16F84 clasificarlas instrucciones. Dos ejemplos de cada tipo.
FINConsultas vía email: [email protected]: programapic
Materiales en: www.guillenoguera.com.ar
Usted es libre de:Usted es libre de:Copiar, distribuir, exhibir, y ejecutar esta obraCopiar, distribuir, exhibir, y ejecutar esta obraHacer obras derivadasHacer obras derivadasBajo las siguientes condiciones:Bajo las siguientes condiciones:Atribución. Usted debe atribuir la obra en la forma especificada Atribución. Usted debe atribuir la obra en la forma especificada por el autor o el licenciante.por el autor o el licenciante.No Comercial. Usted no puede usar esta obra con fines comerciales.No Comercial. Usted no puede usar esta obra con fines comerciales.Si usted altera, transforma, o crea sobre esta obra, sólo podrá distribuirSi usted altera, transforma, o crea sobre esta obra, sólo podrá distribuirla obra derivada resultante bajo una licencia idéntica a ésta.la obra derivada resultante bajo una licencia idéntica a ésta.
Top Related