Programación Específica > Microcontroladores
Registro "rcon" Del 16f876
Pegasux:
Muy buenas. Tengo un problema con la interrupcion del timer1 en un programa básico. Todo esta bien aparentemente, solo que no salta al vector de interrupcion (0x04h).
Tengo un libro de los pic 16F87X y 18FXXX, en el cual, en el capitulo de interrupciones, me habla de un registro "RCON" que contiene el bit "IPEN" que sirve para permitir las interrupciones. Sorprendentemente, en el mapa de registros este "RCON" no aparece en ningun banco y el MPLAB tampoco lo reconoce. Al principio pensé que por culpa de no configurar este registro no me funciona el programa, pero ahora creo que o bien es de la serie 18, o bien es un gazapo en el libro. El caso es que el programilla no me funciona en la simulación y no se porque. ¿Alguien me puede ayudar?
Gracias y un saludo.
Alternative:
SAludos..
Mira nose que manual estas checando pero para TMR1 selo se utilizan los registros
INTCON
PIR1
PIE1
TMR1L
TMR1H
T1CON
no existe ningun registro que dices que utilizas
asi que te recomiendo que cheques el DataSheet
descargalo de la pagina de microchip :hola:
Pegasux:
Gracias por la respuesta. Bueno, ahora que ya sabemos que ese registro no existe, no se porque no me funciona el programa, las interrupciones del timer1 y la general estan habilitadas, el timer cuenta y se produce el bit de aviso al sobrepasar el contador, pero no salta al vector de interrupción. El codigo es muy sencillo, solo hay una rutina de retardos. ¿Alguien puede echarle un vistazo?
Gracisa de nuevo y un saludo.
Alternative:
SAludos Pegasux
Esta bueno eso de que para una pregunta que sabes respondes.
Bueno me alegrastes el dia :D
Rapido en tu programa te estas equivocando de
bancos checa que el PIR1 y PIE1 esta uno en
banco 1 y otro en banco 2
al simularlo en MPLAB puedes ver que cuando hay
un desbordamiento se activa TMR1F, es decir tu bandera
Saludos
Pegasux:
Hola Alternative. Gracias por contestar. No se a que te refieres exactamente, en el datasheet viene el PIR1 en el banco 0 y el PIE1 en el banco 1, yo programo el PIE1 con el banco 1 seleccionado y en la simulación lo hace bien, el PIR1 no tengo que programarlo, creo que sirve para implementar la rutina general de atencion a la interrupcion cuando esta salta, pero no salta al vector de interrupción, asi que no entiendo bien lo que ocurre.
Saludos y gracias!!
Navegación
[#] Página Siguiente
Ir a la versión completa