Ir ao conteúdo

Como calcular instruções por segundo (PIC)


rodrigocirilo

Posts recomendados

Postado

Olá galera do CDH, estou desenvolvendo um aparelho que irá receber pulsos muitos rapidos (entre um e outro) em dois pinos do pic, e para medir isso irei usar como base de calculo o numero de instruções que o pic executa por segundo..

 

Vou usar um 16F628A com oscilador interno 4mhz ou externo 20mhz e com base nisso queria saber quantas instruções o pic realiza por segundo... 

 

pois assim crio uma função que só irá incrementar uma variavel ( fico nela até receber o pulso finalizador) assim nao tendo delays nela nao irá atrapalhar a contagem....

 

como faço pra saber isso??

 

Att.

 

Rodrigo 

 

Edit: o tempo entre um pulso e outro suponho que não passe dos 300 microsegundos...

 

Edit2: estranho é que no datasheet do 16F628a diz que ele é de 5MIPS, mas fiz uma função para incrementar uma variavel durante o tempo de 1 seg. a 20mhz e deu uma valor aprox de 331.000 ( trezentos e trinta e um mil)  não teria que dar um valor proximo a 5 milhões?? ja que são 5 milhoes de instruções por segundo??

Postado

@rodrigocirilo

 

Ele pode até ser 5MIPS, mas o incremento de uma variável não gasta somente 1 instrução.

 

Você precisa calcular o incremento. O uC não sabe com 1 + 1 = 2. É tudo calculado. A grosso modo, ele precisa carregar em um registrador, mover para outro, somar, mudar para outro, e depois soltar o resultado. Isso leva-se instruçõeS (no plural mesmo).

 

Você disse que o tempo ENTRE os pulsos não passa de 300mS. Mas não informou a duração dos pulsos.

 

Mesmo assim, na pior das hipóteses você terá um período de 302uS e com isso uma frequência de ~3400Hz.

 

O PIC lê isso com 38 pernas nas costas.

 

Falou 

Postado

Ah entendi..

 

eu disse que o tempo entre os pulsos não passará do 300 MICROsegundos...bem mais rápido do que ms

 

a duração de cada pulso deverá ser de aprox.. 500uS ou menos... será que o pic lê???

 

nao entendi esse lance de periodo e frequencia...

 

att.

Postado

Escrevi errado ali em cima. Era para ser 300uS mesmo.

O pulso sendo de 500uS + 300uS do intervalo, você tem um período de 800uS.

A frequência é o inverso do período.

1/800uS = 1250 Hz.

Mais fácil ainda.

Na pior das hipóteses você terá um pulso 1 uS + 300 uS que daria uma frequência de aproximadamente 3400 Hz. O PIC lê isso fácil fácil.

Falou

Falou

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!