Retardo 1 Seg PIC16F887

7
Microcontroladores Programables Práctica 2 Contador Decimal Exhibido en un Display 1 P R A C T I C A 1 TEMPORIZADOR DE UN SEGUNDO O B J E T I V O Apagar y encender un led durante una temporización de un segundo, esto nos servirá para tener un primer acercamiento con el usos de los puertos del PIC y el conocimiento de algunas instrucciones del lenguaje ensamblador de los microcontroladores y además la realización de algunas subrutinas. I N T R O D U C C I O N Los microcontroladores están conquistando el mundo. Están presentes en nuestro trabajo, en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el funcionamiento de los ratones y teclados de los computadores, en los teléfonos, en los hornos microondas y los televisores de nuestro hogar. Pero la invasión acaba de comenzar y el nacimiento del siglo XXI será testigo de la conquista masiva de estos diminutos computadores, que gobernarán la mayor parte de los aparatos que fabricaremos y usamos los humanos. En la actualidad es necesario tener pleno control sobre los procesos de producción, para realizar este control se utilizan los microcontroladores, los cuales dependiendo de sus características nos permitirán realizar múltiples actividades; por tal motivo como estudiantes de de ciencias aplicadas es necesario conocer el manejo de los microcontroladores y que mejor forma de hacerlo que haciendo practicas que nos permitan adquirir la experiencia necesaria en el manejo de estos. Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o varios procesos. Por ejemplo, el controlador que regula el funcionamiento de un horno dispone de un sensor que mide constantemente su temperatura interna y, cuando traspasa los límites prefijados, genera las señales adecuadas que accionan los efectores que intentan llevar el valor de la temperatura dentro del rango estipulado. Hace tres décadas, los controladores se construían exclusivamente con componentes de lógica discreta, posteriormente se emplearon los microprocesadores, que se rodeaban con chips de memoria y E/S sobre una tarjeta de circuito impreso. En la actualidad, todos los elementos del controlador se han podido incluir en un chip, el cual recibe el nombre de microcontrolador. B. Benito Salmerón Quiroz

description

Practica de TIimer 1 Seg, PIC 16F887

Transcript of Retardo 1 Seg PIC16F887

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 1

    P R A C T I C A 1

    TEMPORIZADOR DE UN SEGUNDO

    O B J E T I V O

    Apagar y encender un led durante una temporizacin de un segundo, esto nos servir

    para tener un primer acercamiento con el usos de los puertos del PIC y el conocimiento de

    algunas instrucciones del lenguaje ensamblador de los microcontroladores y adems la

    realizacin de algunas subrutinas.

    I N T R O D U C C I O N

    Los microcontroladores estn conquistando el mundo. Estn presentes en nuestro trabajo,

    en nuestra casa y en nuestra vida, en general. Se pueden encontrar controlando el

    funcionamiento de los ratones y teclados de los computadores, en los telfonos, en los hornos

    microondas y los televisores de nuestro hogar.

    Pero la invasin acaba de comenzar y el nacimiento del siglo XXI ser testigo de la

    conquista masiva de estos diminutos computadores, que gobernarn la mayor parte de los

    aparatos que fabricaremos y usamos los humanos.

    En la actualidad es necesario tener pleno control sobre los procesos de produccin, para

    realizar este control se utilizan los microcontroladores, los cuales dependiendo de sus

    caractersticas nos permitirn realizar mltiples actividades; por tal motivo como estudiantes de

    de ciencias aplicadas es necesario conocer el manejo de los microcontroladores y que mejor

    forma de hacerlo que haciendo practicas que nos permitan adquirir la experiencia necesaria en

    el manejo de estos.

    Recibe el nombre de controlador el dispositivo que se emplea para el gobierno de uno o

    varios procesos. Por ejemplo, el controlador que regula el funcionamiento de un horno dispone

    de un sensor que mide constantemente su temperatura interna y, cuando traspasa los lmites

    prefijados, genera las seales adecuadas que accionan los efectores que intentan llevar el valor

    de la temperatura dentro del rango estipulado.

    Hace tres dcadas, los controladores se construan exclusivamente con componentes de

    lgica discreta, posteriormente se emplearon los microprocesadores, que se rodeaban con chips

    de memoria y E/S sobre una tarjeta de circuito impreso.

    En la actualidad, todos los elementos del controlador se han podido incluir en un chip, el

    cual recibe el nombre de microcontrolador.

    B. Benito Salmern Quiroz

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 2

    M A R C O T E O R I C O

    Un microcontrolador es un circuito integrado de alta escala de integracin que incorpora

    la mayor parte de los elementos que configuran un controlador.

    Un microcontrolador dispone normalmente de los siguientes componentes:

    Procesador o UCP (Unidad Central de Proceso).

    Memoria RAM para Contener los datos.

    Memoria para el programa tipo ROM/PROM/EPROM.

    Lneas de E/S para comunicarse con el exterior.

    Diversos mdulos para el control de perifricos (temporizadores, Puertas Serie y

    Paralelo, CAD: Conversores Analgico/Digital, CDA: Conversores Digital/Analgico,

    etc.).

    Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema.

    Los productos que para su regulacin incorporan un microcontrolador disponen de las

    siguientes ventajas:

    Aumento de prestaciones: un mayor control sobre un determinado elemento representa

    una mejora considerable en el mismo.

    Aumento de la fiabilidad: al reemplazar el microcontrolador por un elevado nmero de

    elementos disminuye el riesgo de averas y se precisan menos ajustes.

    Reduccin del tamao en el producto acabado: La integracin del microcontrolador en

    un chip disminuye el volumen, la mano de obra y los stocks.

    Mayor flexibilidad: las caractersticas de control estn programadas por lo que su

    modificacin slo necesita cambios en el programa de instrucciones.

    El microcontrolador es en definitiva un circuito integrado que incluye todos los

    componentes de un computador. Debido a su reducido tamao es posible montar el controlador

    en el propio dispositivo al que gobierna. En este caso el controlador recibe el nombre de

    controlador empotrado (embedded controller).

    En cuanto a las tcnicas de fabricacin, cabe decir que prcticamente la totalidad de los

    microcontroladores actuales se fabrican con tecnologa CMOS 4 (Complementary Metal Oxide

    Semiconductor). Esta tecnologa supera a las tcnicas anteriores por su bajo consumo y alta

    inmunidad al ruido.

    Los detalles ms importantes que tienen los PIC son los siguientes:

    o Sencillez de manejo: Tienen un juego de instrucciones reducido; 35 en la gama media.

    o Buena informacin, fcil de conseguir y econmica.

    o Precio: Su coste es comparativamente inferior al de sus competidores.

    B. Benito Salmern Quiroz

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 3

    o Poseen una elevada velocidad de funcionamiento. Buen promedio de parmetros:

    velocidad, consumo, tamao, alimentacin, cdigo compacto, etc.

    o Herramientas de desarrollo fciles y baratas. Muchas herramientas software se pueden

    recoger libremente a travs de Internet desde Microchip.

    o Existe una gran variedad de herramientas hardware que permiten grabar, depurar, borrar

    y comprobar el comportamiento de los PIC.

    o Diseo rpido.

    o La gran variedad de modelos de PIC permite elegir el que mejor responde a los

    requerimientos de la aplicacin.

    Una de las razones del xito de los PIC se basa en su utilizacin. Cuando se aprende a

    manejar uno de ellos, conociendo su arquitectura y su repertorio de instrucciones, es muy fcil

    emplear otro modelo.

    Descripcin de las caractersticas ms representativas de los PIC:

    Arquitectura. La arquitectura del procesador sigue el modelo Harvard. En esta arquitectura, la CPU se conecta de forma independiente y con buses distintos con la memoria de instrucciones

    y con la de datos.

    La arquitectura Harvard permite a la CPU acceder simultneamente a las dos memorias.

    Adems, propicia numerosas ventajas al funcionamiento del sistema como se irn describiendo.

    Segmentacin. Se aplica la tcnica de segmentacin (pipe-line) en la ejecucin de las instrucciones. La segmentacin permite al procesador realizar al mismo tiempo la ejecucin de

    una instruccin y la bsqueda del cdigo de la siguiente. De esta forma se puede ejecutar cada

    instruccin en un ciclo (un ciclo de instruccin equivale a cuatro ciclos de reloj). Las

    instrucciones de salto ocupan dos ciclos al no conocer la direccin de la siguiente instruccin

    hasta que no se haya completado la de bifurcacin.

    Formato de las instrucciones. El formato de todas las instrucciones es de la misma longitud. Todas las instrucciones de los microcontroladores de la gama baja tienen una longitud de 12

    bits. Las de la gama media tienen 14 bits y ms las de la gama alta. Esta caracterstica es muy

    ventajosa en la optimizacin de la memoria de instrucciones y facilita enormemente la

    construccin de ensambladores y compiladores.

    Juego de instrucciones. Procesador RISC (Computador de Juego de Instrucciones Reducido). Los modelos de la gama baja disponen de un repertorio de 33 instrucciones, 35 los de la gama

    media y casi 60 los de la alta.

    Todas las instrucciones son ortogonales. Cualquier instruccin puede manejar cualquier elemento de la arquitectura como fuente o como destino.

    Arquitectura basada en un banco de registros. Esto significa que todos los objetos del sistema (puertas de E/S, temporizadores, posiciones de memoria, etc.) estn implementados

    fsicamente como registros.

    B. Benito Salmern Quiroz

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 4

    D I A G R A M A D E F L U J O

    El diagrama de flujo nos dice que debemos ir al banco 1 para poder configurar el puerto

    B e inmediatamente despus debemos retornar al banco 0 para poder escribir las lneas de

    lenguaje ensamblador que puedan encender el led, despus se llama a la subrutina retardo para

    que este permanezca encendido durante un segundo.

    Al termino de un segundo ser necesario apagar el led un segundo para poder distinguir

    la temporizacin de un segundo. Cuando se halla terminado un ciclo de encender y apagar el

    led debemos de ciclar la rutina.

    Ahora el diagrama de flujo de la subrutina retardo se muestra a continuacin. Esta

    subrutina de retardo tiene una duracin de T=3!*0x21*0x64*0x64 seg. Donde los valores

    hexadecimales son cargados a los registros Contador0, Contador 1 y Contador2,

    respectivamente, para obtener aproximadamente 1 segundo ya que realmente se tiene

    B. Benito Salmern Quiroz

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 5

    T=.3!*33*100*100=0.99seg. El diagrama de flujo muestra un ciclo exterior y dos ciclos

    interiores por lo que son llamados ciclos anidados. Un ciclo anidado quiere decir que un ciclo

    est dentro de otro ciclo.

    B. Benito Salmern Quiroz

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 6

    D I A G R A M A E S Q U E M A T I C O

    C D I G O F U E N T E

    ; *****************************************************************************************

    ; ******************************* Temporizador de un Segundo ********************************

    ; *****************************************************************************************

    LIST P=16F877

    ;*** declaracin de los registros ***

    ; ****************************

    ESTADO EQU 0x03

    PUERTOB EQU 0X06

    CONTADOR0 EQU 0x20

    CONTADOR1 EQU 0x21

    CONTADOR2 EQU 0x22

    ORG 00 ;lugar dnde se colocara la sig. instruccin

    goto usuario ;ir a la etiqueta usuario

    ORG 05

    usuario bsf ESTADO,5 ;en 1 el bit 5 de estado para estar en el banco 1

    bcf PUERTOB,0 ;como salida B.0

    bcf ESTADO,5 ;en 0 el bit 5 para estar en el banco 0

    us0 bsf PUERTOB,0 ;led encendido

    call retardo ;llama a la subrutina retardo

    bcf PUERTOB,0 ;led apagado

    call retardo

    goto us0 ;ciclo

    B. Benito Salmern Quiroz

  • Microcontroladores Programables Prctica 2

    Contador Decimal Exhibido en un Display

    Dr. J. Fermi Guerrero Castellanos, M.C. J. Pedro Snchez Santana 7

    ;*** cuerpo de la subrutina retardo ***

    ; ******************************

    retardo movlw 0x21 ;w=33

    movwf CONTADOR2 ;contador2=w

    reta2 movlw 0x64 ;w=100

    movwf CONTADOR1 ;contador1=w

    reta1 movlw 0x64 ;w=100

    movwf CONTADOR0 ;contador0=w

    reta0 decfsz CONTADOR0,1 ;decrementa contador0, si es 0 salta la sig. inst.

    goto reta0

    decfsz CONTADOR1,1

    goto reta1

    decfsz CONTADOR2,1

    goto reta2

    return ;regresa al programa principal

    END ;fin del programa

    C O M E N T A R I O S

    Los elementos requeridos para la implementacin del circuito son muy pocos, esto nos

    da una idea de que es posible realizar aplicaciones ms complejas sin tener que contar con una

    circuitera demasiado grande.

    Al realizar un programa en ensamblador, es necesario llevar un orden, es decir, ubicar

    muy bien el lugar de las etiquetas, de los comandos y de los comentarios para no tener ninguna

    confusin en caso de que sea necesaria una revisin al listado del programa.

    SUGERENCIAModificar este programa con el objetivo de obtener una temporizacin de medio

    segundo.

    MATERIAL

    1 fuente de alimentacin de +5V DC.

    1 microcontrolador PIC16F877.

    1 cristal de 4 Mhz.

    2 capacitores 33 pf.

    1 protoboard

    1 resistencia de 10 k"#$

    1 resistencia de 100 "#$

    1 resistencia de 220 "#

    1 push button.

    1 LED (Diodo Emisor de Luz).

    B. Benito Salmern Quiroz