Haz una pregunta
  Foros de Electrónica » Diseño digital » Interfaces y Programación
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

27/02/2013 #1


contador en ccs con timer0
hola saludos a todos
mi pregunta de hoy es la siguiente: se me pidió realizar un programa en el cual hay un pulsador conectado al pin ra4 de un pic 16f877 y cuando presiono el pulsador activa la interrupción timer0 que esta configurada como contador a través de ra4 y debe mostrar en un lcd el conteo pero al momento de simular en proteus no hace nada el programa, pd: solo funciona si le coloco una señal de reloj al pin ra4 pero el ejercicio me pide que ejecute la función del timer solo cuando se pulse. adjunto el código en c
Código:
#include <16F876A.h>
#fuses XT,NOWDT
#use delay(clock=4000000)
#use standard_io(b)
#use standard_io(a)
#use standard_io(c)
#define  lcd_data_port getenv("sfr:portc")
#include <lcd.c>
int h=0;
#int_TIMER0 //la siguiente función tiene que ser la de interrupción del TMR0

void  TIMER0_isr(void) //function interrupción TMR0
{
printf(lcd_putc,"\fconteo= %u",h);
h++;
delay_ms(100);
}
 

void main()

{
lcd_init();
enable_interrupts(GLOBAL);
setup_timer_0(RTCC_EXT_L_TO_H|RTCC_DIV_4);
enable_interrupts(INT_TIMER0);
set_TIMER0(0x00);

 

 //inicializa el timer0

//el bucle infinito es necesario ya que si el micro entra en sleep

//desactiva la interrupción del TMR0

while(true){
output_b(0x55);
}
}
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Interfaces y Programación

Lenguajes de programación, gestión y manejo de puertos

Cerrar
Foros de Electrónica » Diseño digital » Interfaces y Programación

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.