Buenas Gente, soy nuevo en el foro, he visto que realmente se comentan soluciones efectivas y espero poder ayudar cuendo sea necesario.
ahora tengo una consulta sobre el uso del Timer 0 en un PIC 16f877, Estou programando un contador de tiempo variable, lo estoy programando en c sobre el Mikroc.
Al momento de ejecutar la rutina de prueva del timer 0 me encuentro que no varia la variable "cnt" y aun pero el registro TMR0 esta estatico. dejo el codigo para ver si alguien con mas experiencia ve algo que no estoy haciendo bien.
Muchas Gracias a todos.
unsigned cnt; // Declarar la variable cnt
void interrupt() { // Rutina de interrupción
cnt++; // Interrupción causa el incremento de cnt por 1
TMR0 = 155; // Temporizador (o contador) Timer0 devuelve su valor inicial
INTCON = 0x20; // Bit T0IE está a 1, bit T0IF está a 0
}
void main() {
OPTION_REG = 0x04; // Pre-escalador (1:32) se le asigna al temporizador Timer0
TMR0 = 155; // Temporizador T0 cuenta de 155 a 255
INTCON = 0xA0; // Habilitada la generación de interrupción para el
// temporizador Timer0
while (1)
{
}
ahora tengo una consulta sobre el uso del Timer 0 en un PIC 16f877, Estou programando un contador de tiempo variable, lo estoy programando en c sobre el Mikroc.
Al momento de ejecutar la rutina de prueva del timer 0 me encuentro que no varia la variable "cnt" y aun pero el registro TMR0 esta estatico. dejo el codigo para ver si alguien con mas experiencia ve algo que no estoy haciendo bien.
Muchas Gracias a todos.
unsigned cnt; // Declarar la variable cnt
void interrupt() { // Rutina de interrupción
cnt++; // Interrupción causa el incremento de cnt por 1
TMR0 = 155; // Temporizador (o contador) Timer0 devuelve su valor inicial
INTCON = 0x20; // Bit T0IE está a 1, bit T0IF está a 0
}
void main() {
OPTION_REG = 0x04; // Pre-escalador (1:32) se le asigna al temporizador Timer0
TMR0 = 155; // Temporizador T0 cuenta de 155 a 255
INTCON = 0xA0; // Habilitada la generación de interrupción para el
// temporizador Timer0
while (1)
{
}