Pessoal, preciso utilizar o recurso de Timer0 do ATMega1280, porém acho poucas coisas sobre interruções em atmel. Alguém ja usou este recurso? Sabe seus parâmetros e configurações?

Eu preciso fazer um relogio no arduino, não encontrei nada pronto na web para pegar como modelo. Se alguém sabe algo sobre o assunto e possa contribuir fico agradecido.

 

Obrigado!

Exibições: 423

Responder esta

Respostas a este tópico

Cara, vc está procurando algo como o millis? ou um "zerador" do millis?

No caso do zerador, você pode usar um wachdog como feito na cafeteira que twitta.

O código desta está em nossa wiki.

Cara, eu preciso fazer um relógio, pois preciso saber as horas para realizar determinado acionamento ou desligamento. Mas não posso fazer isso com millis pois ai a unica coisa que meu programa faria seriacontar o tempo, e dispediçar um arduino pra contar o tempo é ridiculo.

 

Você ja programou microcontroladores PIC? Assim como o PIC o microcontrolador atmega1280 tem recursos timer0, timer1 e timer2. O timer0 é uma interrupção interna sempre que o registrador do timer0 virar de 255 para 0, o flag de interrupção é ligado e o programa é redirecionada para a rotina do timer, independente o que for que esteja trabalhando o programa sempre vai ser redirecionado para a rotina da interrupção. Com isso você tem a idéia de um processamento paralelo pois tudo acontece tão rapido que parece que é ao mesmo tempo.

 

Com este recurso eu posso saber as horas e realizar testes para ver se esta na hora de ligar ou desligar algo.

 

O problema é que não encontrei as rotinas em C do timer0 do atmega, apenas pouca coisa em assembly. Ja estou pensando em aprender assembly mesmo.

 

Té mais.

 

Leonardo Yoshiaki Kamigauti disse:

Cara, vc está procurando algo como o millis? ou um "zerador" do millis?

No caso do zerador, você pode usar um wachdog como feito na cafeteira que twitta.

O código desta está em nossa wiki.

Cara, lembre-se da frase "o difícil é ser simples" de Jung.
Mas legal esse comando, pois não o conhecia hehe, mas ainda acho que o millis é mais simples, já que a função do relógio é esta de contar tempo :)
Mas irei testar e aprender a usar esse comando, então escreverei qual acho mais simples para função.

Pois é cara, o detalhe é que o millis depois de 50 dias estoura e vai resetar, e acho que o propósito do millis não seria extamente a contagem do tempo. Não se trata efetivamente de um interrupção.

Mas valeu pelos conselhos até o momento.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço