picminas
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip

2 participantes

Ir para baixo

Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip Empty Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip

Mensagem  pedromariano Seg Set 05, 2011 6:44 pm

Olá pessoal !
Sou novato em programar o Pic, o pic que estou utilizando no meu projeto é Pic 18f4620. Estou com dificuldades para usar o Timer 0 do Pic, pois como falei sou novato!
gostaría da ajuda de vcs!
1- Já estudei um pouco a biblioteca timer.h, mas não entendi muita coisa.
2- Gostaría que alguém postasse alguma coisa sobre essa biblioteca e como usar as funções.
3- Desenvolvi um código, o compilador não acusa nenhum erro, mas não observo resultado nenhum no Proteus.
4- Se alguém puder, gostaría que corrigissem meu código( logo abaixo).

void amarelo_piscante(void)
{

int cont;
INTCONbits.TMR0IF=0;
PORTCbits.RC1=0;
PORTCbits.RC4=0;
OpenTimer0(T0_8BIT & T0_SOURCE_EXT & T0_PS_1_128 & TIMER_INT_ON);

for(cont=0; cont<30; cont++)
{

if(INTCONbits.TMR0IF == 1)
{

PORTCbits.RC1=~PORTCbits.RC1;
PORTCbits.RC4=~ PORTCbits.RC4;
INTCONbits.TMR0IF=0;

}

}
CloseTimer0();
}

A detalhe pessoal !

A função acima teria que fazer o Led piscar durante 30 segundos e depois parar de piscar!

pedromariano

Mensagens : 1
Data de inscrição : 05/09/2011

Ir para o topo Ir para baixo

Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip Empty Re: Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip

Mensagem  Bruno S. Avelar Sex Set 16, 2011 10:46 am

Olá Pedro,
Bem vindo ao fórum.

Usar o timer no PIC não é muito complicado e a biblioteca timer.h ajuda bastante.
Eu fiz um post explicando interrupção e timer aqui no forum no tópico
https://picminas.forumeiros.com/t56-duvida-relogio-digital
Da uma olhada lá que acho que você vai entender o módulo timer.

Olhando rapidamente seu código eu tenho uma dica para te dar. O Timer funciona separado na CPU, é um hardware a parte e por isto chamamos ele de periférico então seu código deve ter uma rotina para tratamento de interrupção. Se você deseja fazer espera ocupada da CPU (puling) para contar tempo eu recomendo que utilize a biblioteca de delays (delays.h) que eu comento aqui no forum no post: https://picminas.forumeiros.com/t14-a-funcao-delay.

Espero ter ajudado,
Bruno S. Avelar
Bruno S. Avelar
Bruno S. Avelar
Admin

Mensagens : 74
Data de inscrição : 26/07/2009
Idade : 39
Localização : Belo Horizonte MG

https://picminas.forumeiros.com

Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos