Hola a todos,
estoy empezando en este mundillo de los microcontroladores, y la verdad es que estoy un poco perdida. Estoy intentando aprender c'omo va el tema de las interrupciones de timer, pero no consigo que funcionen... Estoy usando el pic 16f877a y CCS, y lo que intento hacer es generar 1000 interrupciones por segundo. El c'odigo es bastante simple, pero no s'e qu'e es lo que estoy haciendo mal...:
Agradeceria cualquier correccion o consejo.
Un saludo,
estoy empezando en este mundillo de los microcontroladores, y la verdad es que estoy un poco perdida. Estoy intentando aprender c'omo va el tema de las interrupciones de timer, pero no consigo que funcionen... Estoy usando el pic 16f877a y CCS, y lo que intento hacer es generar 1000 interrupciones por segundo. El c'odigo es bastante simple, pero no s'e qu'e es lo que estoy haciendo mal...:
Código:
---------------------------------------------------------------------------------------------
#include <16f877a.h>
#fuses HS, NOWDT, NOPROTECT, NOLVP
#use delay(clock=19660800)
long Tmr1_inic;
#int_timer1
void OvFlw_Tmr1() {
set_timer1(Tmr1_inic); // inicializaTimer1 para el siguiente conteo
output_toggle(PIN_B1); // cambia el estado del led
}
void main() {
Tmr1_inic = 60620; // Valor inicial del timer1
setup_timer_1(T1_INTERNAL | T1_DIV_BY_1); // modo de trabajo
set_timer1(Tmr1_inic); // Timer1 para el siguiente conteo
enable_interrupts(GLOBAL); // Activa las interrupciones globales
enable_interrupts(INT_TIMER1); // INterrupciones de timer1
while (TRUE); // infinite loop
}
------------------------------------------------------------------------------
Un saludo,
Última edición por un moderador: