Ir ao conteúdo
  • Cadastre-se

Rotina de atraso


jorgeletronico

Posts recomendados

rotina de atraso... cada "nap" ou "nop" conta como 1 ciclo, aproximadamente 200ns em um PIC de 40Mhz... logo você conta quantos ciclos a rotina inteira toma e usa-a como base para medida.. em geral ela é composta por algo que checa se o atraso = 0, se não for ele roda novamente e subtrai atraso e verifica novamente, se não for zero ela roda de novo...

Link para o comentário
Compartilhar em outros sites

vou tentar simplificar a lógica

você cria uma rotina com o nome ATRASO_ (exemplo)e uma variável com a quantidade de vezes que ele vai repetir a rotina.

então ele segue da seguinte forma

200ns = 1 ciclo

1us = 5 ciclos

1ms = 5000 ciclos

ATRASO_:

Se var_atraso = 0 então retorna (equivale a 2 ciclos)

não faz nada por 1 ciclo

não faz nada por 1 ciclo

não faz nada por 1 ciclo

não faz nada por 1 ciclo

não faz nada por 1 ciclo

var_atraso = var_atraso - 1 (1 ciclo)

goto ATRASO_ (2 ciclos)

a ideia é variar o tamanho de "var_atraso" para gerar mais atraso... porém existem métodos mais práticos...

Link para o comentário
Compartilhar em outros sites

Você cria uma subrotina chamada delay;

movwf tempo ; tempo = w

call atraso

// Aqui você continua o programa.

// Subrotinas

------------------------------------

atraso:

nop

decfsz tempo

goto atraso

return

Quando você chama a função atraso ela demora 2 ciclos de máquina

O nop e o decfsz demoram 1 ciclo de máquina cada, exceto quando tempo=0 que demora 2 ciclos + 2 ciclo do return.

Esse laço se repete até que tempo = 0, é só definir o valor de tempo para ter o atraso que você quiser.

É mais interessante usar um TIMER do MCU e executar outras operações durante esse tempo.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!