¿Cómo medir la frecuencia de onda sinusoidal usando un microcontrolador pic? Encontré el artículo en este sitio web. enlace Pero no entendí el código. ¿Alguien puede ayudarme a entender el código en este sitio web?
¿Cómo medir la frecuencia de onda sinusoidal usando un microcontrolador pic? Encontré el artículo en este sitio web. enlace Pero no entendí el código. ¿Alguien puede ayudarme a entender el código en este sitio web?
Este es el elemento clave del código de medición de frecuencia:
TMR0=0; // clear TMR0
Delay_ms(1000); // Delay 1 Sec
...
Display_Freq(TMR0/2); // divide by 2
El autor está utilizando el contador / temporizador TMR0 para contar los eventos de cruce por cero de la señal de entrada. (El artículo usa un transformador para reducir la frecuencia de la línea de red de 220VACrms 50Hz a 9VACrms, luego usa un puente rectificador completo y un divisor resistivo para generar la señal de evento de cruce por cero. No estoy seguro de cómo intentaron probar este circuito).
Después de ejecutar el contador durante 1 segundo, el valor en el contador es igual al doble de la frecuencia, porque cada ciclo rectificado de onda completa tiene dos impulsos.
El resto del código en Display_Freq(f)
es solo el código de la interfaz de usuario, para convertir la frecuencia numérica en caracteres para mostrar en la pantalla LCD.
Lea otras preguntas en las etiquetas microcontroller measurement frequency-measurement