PIC16F877 Timers.

Slides:



Advertisements
Presentaciones similares
PIC 16F873 CONVERSIÓN A/D Y TRANSMISIÓN POR PUERTO SERIE
Advertisements

Curso de java básico (scjp)
Ejemplo de Programa C++
MICROCONTROLADORES PIC
Seminario de Actualización - Excel Avanzado y Macros
1.5 Algoritmos, Pseudocódigo y Diagramas de Flujo
EJERCICIOS DE PROGRAMACION
Comparador de iluminación Sensor de puerta Potencia Iluminación Generador Alarma.
INFORMATICA I Funciones CLASE 13.
CS1101X Programming Methodology
Microcontroladores PIC16F84A.
INTERRUPCIONES Y TEMPORIZADORES Programación en C para electrónica.
Unidad III Elementos del lenguaje C++
Introducción a la Programación
José Estay A / jea I semestre académico 2014 Computadores (TU Sistemas Computacionales) Elementos de estructura de computadores.
INTERRUPCIONES Introducción.
TIMER 1 El módulo TIMER1 así como el TIMER0 es un temporizador/contador con las siguientes características. Trabaja con 16 bits (con 2 registros de 8 bits:TMR1H.
CONTROL REMOTO SEGURO Álvaro Bravo Mercado Domingo Devotto Nelson Figueroa.
¿Qué hora es? To ask what time is it in Spanish, we say… ¿Qué hora es?
B ENEMÉRITA UNIVERSIDAD AUTÓNOMA DE PUEBLA Sistemas Programables Juan José Fonseca Zárate T IMER 2 PIC 18 F
4.1 Continuidad en un punto 4.2 Tipos de discontinuidades 4.3 Continuidad en intervalos.
Chapter 6 Looping Dale/Weems/Headington. 2 Chapter 6 Topics l While Statement Syntax l Count-Controlled Loops l Event-Controlled Loops l Using the End-of-File.
1 Asignación Dinámica de Memoria Agustín J. González Versión original de Kip Irvine ELO 329.
Parte 4: Estructura FOR Basada en diapositivas de Prof. Elizabeth Vidal Duarte.
Décimo Curso de Programación Básica con NQC “Quinta Clase” Cristián A. Arenas Ulloa Septiembre 26 de 2009.
ELO3201 C++ Biblioteca Estándar de Templates Standar Template Library Agustín J. González ELO320.
José Estay A / jea I semestre académico 2014 Computadores (TU Sistemas Computacionales) Elementos de estructura de computadores.
COMP 250.  Ejemplo:  Suponer que se necesita codificar un programa donde se muestre como resultado el string “Bienvenidos al mundo de JAVA!!!” cien.
Sistemas Operativos Semáforos.
José M. Galarce Junio 19 de 2010 Quinta Clase. Estructuras de Control Complejas Se basan en las estructuras de control básicas: if(){}else{}while(){}
Universidad Técnica Federico Santa María Departamento de Electrónica Seminario II1 Timers A - B. Usos y programación. Paola Rojas Pablo Naveas Carlos Silva.
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
Sesión 09: TIMER como base de tiempo.
Programar PIC`s en lenguaje C18 En 64 horas. El siguiente material está desarrollado como complemento didáctico para la materia de microcontroladores,
1 Algunas ideas básicas de C++ Agustín J. González ELO-329.
LENGUAJE C PARA PICS PIC 18F4550.
Sesión 08: Interrupciones - IRQ. 2009/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Circuitos Digitales III 2010/1 Sistemas Digitales.
Símbolos de Programación Estructurada
Conceptos Básicos de Programación. Put a pin into input mode Loop Check if the pin is 0 or 5 volts If the pin has 5 volts Do something End if End Loop.
1 Algunas ideas básicas de C++ Agustín J. González ELO-329.
1 Algunas ideas básicas de C++ Agustín J. González ELO-329.
Programar PIC`s en lenguaje C18 En 64 horas.
Programar PIC`s en lenguaje C18 En 64 horas.
INTRODUCCIÓN AL LENGUAJE C++. Instrucciones Temas.
Programar PIC`s en lenguaje C18 En 64 horas.
LENGUAJE “C” Programación.
Arquitectura de Computadoras
Programación estructurada
Base de datos Francisco Castro. Creación de una tabla drop table TABLA cascade constraints; /*==============================================================*/
Javier Mauricio Galvis Moreno
EAR EMTIIB Curso-Taller programación en Lenguaje C para microcontroladores PIC PIC18F452.
Estructura de Repetición en Visual Basic
Arquitectura de Computadoras
ALC 36 Hoy es viernes el 9 de diciembre. Haz un nuevo ALC de 8 cuadros. Necesitan las tarjetas de la bienvenida.
TIPOS DE DATOS Estructuras de control y repetición PARCIAL III.
Programación de microcontroladores PIC16f877a en linux
Global Warming Project and Presentation. Save this PowerPoint to your S- User Then, answer the following questions about Global Warming. (Luego contesta.
CICLOS ESTRUCTURA DE REPETICIÓN PROG 2270LGUILLERMO SOLLA.
Parte I Pines de E/S Interrupciones
Programación orientada a objetos Capítulo 3 Interacción de objetos.
SISTEMAS ELECTRÓNICOS 3ºGIERM1 1. Introducción 2. Tipos de datos 3. Estructuras típicas de programación 4. Manejo de bits Tema 7. Programación de microcontroladores.
Bucles For&NextBucles DoEl control TimerReferencia Rápida.
Unidad V: Estatutos en Basic De control o selección if. De ciclos: Do, for, while. Otros estatutos. Solución de problemas aplicando estatutos de control.
Encoders Opticos Armando Mtz. Reyes ITNL.
Ciclos while y do ... while Ixent Galpin.
Seguridad Web Ing. Elieser Estrada Rodríguez. Contents Click to add Title
SENTENCIAS CONTROL DE FLUJO EN C I.E. Mario Jiménez.
Interrupciones Una interrupción consiste en que el procesador suspende temporalmente la tarea que está ejecutando para atender a algún periférico, mediante.
Arrays Programming COMP102 Prog. Fundamentals I: Arrays / Slide 2 Arrays l An array is a collection of data elements that are of the same type (e.g.,
CICLOS. OPERADOR DE ASIGNACION COMPUESTA CICLO WHILE.
Transcripción de la presentación:

PIC16F877 Timers

Timers en el PIC16F877A Timer0 (8 bits) Timer1 (16 bits)

Timer0 Block Diagram

Timer0 OPTION_REG

Ejemplo de encender y apagar LEDs en el PORTB cada segundo usando el TMR0. unsigned int cnt; void interrupt() { cnt++; // Increment value of cnt on every interrupt TMR0 = 96; INTCON = 0x20; // Set T0IE, clear T0IF } void main() { OPTION_REG = 0x84; // Assign prescaler to TMR0 TRISB = 0; // PORTB is output PORTB = 0xFF; // Initialize PORTB TMR0 = 96; INTCON = 0xA0; // Enable TMR0 interrupt cnt = 0; // Initialize cnt do { if (cnt == 400) { PORTB = ~PORTB; // Toggle PORTB LEDs cnt = 0; // Reset cnt } while(1);

Timer1 Control Register

Ejemplo de encender y apagar LEDs en el PORTB cada segundo usando el TMR1. char cnt; void interrupt() { cnt++ ; PIR1.TMR1IF = 0; // clear TMR1IF } void main() { TRISB = 0; T1CON = 1; // enables TMR1 PIE1 = 1; // enable TMR1 interrupts PORTB = 0; cnt = 0; // initialize cnt INTCON = 0xC0; do { if (cnt == 30) { // if cnt is 30, then toggle portb PORTB = ~PORTB; // 1 sec leds and reset cnt cnt = 0; } while (1);

Timer2 Block Diagram

Timer2 Control Register

Ejemplo de encender y apagar LEDs en el PORTB cada segundo usando el TMR2. char i; void interrupt() { i++ ; PIR1.TMR2IF = 0 ; // clears TMR2IF } void main() { i = 0; PORTB = 0xFF; TRISB = 0; T2CON = 0xFF; //postcaler 16, prescaler 16 TMR2 = 0; PIE1 = 2; // enable interupt INTCON = 0xC0; // for tmr2 while (1) { // endless loop if (i > 30) { PORTB = ~PORTB; // toggle portb