Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Configurar o Timer0 do Pic18f4620 no Compilador C18 - Microchip

Mensagem  pedromariano em 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

Ver perfil do usuário

Voltar ao Topo Ir em baixo

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

Mensagem  Bruno S. Avelar em 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
http://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: http://picminas.forumeiros.com/t14-a-funcao-delay.

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

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

Ver perfil do usuário http://picminas.forumeiros.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum