Foros de Electrónica

Comunidad de discusión sobre Automatización, Electrónica industrial, Microcontroladores y electrónica digital, Robótica, Domótica, Telemática, Tecnologías móviles, y muchos temas más.




calcular en assembler el periodo de una frecuencia


       



#1  calcular en assembler el periodo de una frecuencia
pepechip
Colaborador
Registrado: 09 Feb 2007
Mensajes: 1390
Ubicación: Granada- España
citar
Hola

En otro post relacionado a la construccion de un frecuencimetro, se comentaba que habia 2 formas de medir una frecuencia:
1º Contar los impulsos durante una constante de tiempo determinado
2º Midiendo el Periodo de dicha frecuencia (medir el tiempo que transcurre entre pulso y pulso)
Este segundo metodo es bastante interesante, sobre todo si se requiere rapidez en tomar la medida. (ver ejemplo)

Sabemos que para conocer la frecuencia sabiendo el periodo tenemos que aplicar la siguiente formula F=1/P

Parece ser que realizar este calculo en C resulta facil, pero yo estaria interesado en saber como se realizaria en assembler.

ejemplo: Regulador de revoluciones x minuto
mediante un teclado introducimos el valor de las revoluciones x minuto que queremos que gire un motor. Este empieza a girar y se muestran las revoluciones sobre un display, y en el momento que llegue a las revoluciones prefijadas se le corta el suministro de tension.

Si en este caso utilizara el primer metodo para calcular la frecuencia, es muy posible que cuando detecte que he superado las revoluciones prefijadas, dichas se encuentren en un valor bastante superior al requerido. Sin embargo con el periodo en un solo giro del motor ya sabre si esta a la velocidad correcta.

saludos

#2  
Power

Registrado: 25 Jun 2006
Mensajes: 40
citar
hola pepechip, fijate en esta pagina http://www.restena.lu/convict/Jeunes/Math/Fast_operations2.htm
hay una rutina de division rapida para pic, en la cual para el peor caso con una resolucion de 8 bits demora 144 ciclos de reloj,yo la use hace un tiempo y funciona muy bien sobre todo por la velocidad de calculo lo cual era critico en mi aplicacion. Espero que te sea util.Saludos

#3  
pepechip
Colaborador
Registrado: 09 Feb 2007
Mensajes: 1390
Ubicación: Granada- España
citar
muchas gracias, esta informacion me viene bien.
un saludo

#4  
_Eduardo_

Registrado: 06 Ene 2008
Mensajes: 999
Ubicación: Santo Tome - Santa Fe - Argentina
citar
De ejemplo, mira en las notas de aplicacion de microchip, tenes librerias matematicas:
http://www.microchip.com/stell.....1=function
En particular la AN617 que son operaciones en punto fijo (tiene codigo fuente).

Saludos.

#5  
Nilfred
Colaborador
Registrado: 01 Feb 2006
Mensajes: 745
Ubicación: Corrientes, Argentina
citar
Aritmétrica de punto fijo: ¿Para que usar punto flotante cuando el punto puede estar fijo en la cabeza del programador?
La siguiente secuencia converge a la recíproca de N (1/N):

x(0) = 1
x(i+1) = x(i) * (2 - N * x(i))

x(i) será correcto hasta el 2^i bit mas a la derecha.

Ej: para calcular 1/3, hacemos la sequencia:

1
-1 = 1 * (2 - 3 * 1)
-5 = -1 * (2 - 3 * -1)
-85 = -5 * (2 - 3 * -5)
-21845 = -85 * (2 - 3 * -85)
...

Los 16 bits a la derecha de este número están garantizados de ser correctos. La representación binaria de -21845 es
...111111010101010101011

¿No entendiste un joraca? Bueno, yo tampoco, igual ya se fueron del tema. La palabra clave acá es "reciprocal" por si queres buscar mas información en Google, etc.

 Responder





 Temas de interés 
No hay mensajes nuevos Comenzar a contar desde 0
No hay mensajes nuevos Sensor para contar monedas
No hay mensajes nuevos Contar pulsos en determinado tiempo
No hay mensajes nuevos contador des(192) cuando llegue a cero no vuelva a contar
No hay mensajes nuevos Como conectar la 7490 para contar hasta 9

Foros de Electronica
|| Cuestiones Elementales de Electrónica || Fuentes de alimentacion || Circuitos de radio || Diseño de circuitos en general ||
|| Sistemas de Audio: Preamplificadores, Ecualizadores || Amplificadores || Reparación || Discusión ||
|| Microcontroladores y sistemas embebidos || Circuitos logicos combinacionales y secuenciales || Interfaces y Programacion || Dudas en general || Sistemas de Video || PC Hardware || Telematica y comunicaciones || Tecnologias moviles || Software Electronico || Robotica, Domotica y Mecatronica || Autotrónica || Automatizacion, Electronica industrial y de Potencia || Documentacion, circuitos y esquemas || Donde Las Ideas Convergen... || Tutoriales y Manuales || Proyectos Prácticos ||