Universal frequency meter

19,511

Circuit Image

This is a 7-digit frequency meter measuring frequency from 10 Hz up to 1300 MHz. It is based on ideas of PIC16F84 based frequency meter. The measuring range is divided into two subranges: 10Hz - 25MHz and 25 MHz - 1300MHz. The decimal point is after MHz digit, but can be set at any position. It contains: PIC 16F84, 74HC137 (BCD -> 1 of 8 decoder), SAB6456 VHF-UHF divider by 256, 7-digit calculator display (common cathode), some resistors, capacitors and 2 switching diodes. Note: "Calculator display" means (say) 7 digit LED multiplexed display. Common cathode display is used. Software is written for common cathode. For common anode displays it requires some software and hardware modification. PIC is used as 3 byte counter. If it counts 0.1 s maximum measured frequency is FF FF FF, e.g. 167.77215 MHz (theoretically) - practically 25 - 30 MHz. SAB6456 is used as 1:256 predivider. Its upper limit is 1300MHz. The device uses internal prescaler of PIC as low byte of counter, TMR0 as middle byte and some register as high byte of counter. The software DOESN'T read anything from any input port. RA4 is used as prescaler input.

The frequency meter operates within a specified frequency range of 10 Hz to 1300 MHz, utilizing a PIC16F84 microcontroller as its core processing unit. The design divides the frequency measurement into two distinct ranges: 10 Hz to 25 MHz and 25 MHz to 1300 MHz, allowing for optimized performance across these bands. The decimal point in the display can be configured to show values in a user-friendly manner, typically positioned after the MHz digit.

The system employs several key components, including the 74HC137, which serves as a BCD to 1-of-8 decoder, facilitating the conversion of binary-coded decimal inputs into a format suitable for the display. The SAB6456 is integrated as a VHF-UHF divider with a division factor of 256, effectively scaling down the input frequency to a manageable level for the PIC microcontroller.

The display mechanism utilizes a 7-digit common cathode LED multiplexed display, which is suitable for visualizing the frequency readings. The software controlling the display is specifically designed for common cathode configurations; modifications would be necessary for compatibility with common anode displays.

The PIC16F84 is configured as a 3-byte counter, where the maximum frequency that can be measured is theoretically 167.77215 MHz, although practical limitations reduce this to around 25-30 MHz due to various factors such as signal integrity and processing speed. The internal prescaler of the PIC is utilized as the low byte of the counter, while Timer0 (TMR0) functions as the middle byte, and an additional register is employed as the high byte. This architecture allows for efficient counting and processing of input frequencies.

Notably, the software is designed to operate without reading from any input ports, simplifying the control logic. The RA4 pin is designated as the prescaler input, ensuring that the frequency data is accurately captured and processed by the microcontroller. Overall, this frequency meter design represents a robust solution for frequency measurement across a wide range of applications, leveraging both hardware and software components effectively.This is 7-digit frequency meter measuring frequency from 10 Hz up to 1300 MHz. It is based on ideas of PIC16F84 based frequency meter. The measuring range is divided into two subranges: 10Hz - 25MHz and 25 MHz - 1300MHz. The decimal point is after MHz digit, but can be set at any position.

It contains: PIC 16F84 74HC137 (BCD -> 1 of 8 decoder) SAB6456 VHF-UHF divider by 256 7-digit calculator display (common cathode), some resistors, capacitors and 2 switching diodes Note: "Calculator display" means (say) 7 digit LED multiplexed display. Common cathode display is used. Software is written for common cathode. For common anode displays it requires some software and hardware modification . PIC is used as 3 byte counter. If it counts 0.1 s maximum measured frequency is FF FF FF, e. g. 167.77215 MHz (theoretically) - practically 25 - 30 MHz. SAB6456 is used as 1:256 predivider. Its upper limit is 1300MHz. The device uses internal prescaler of PIC as low byte of counter, TMR0 as middle byte and some register as high byte of counter.

The software DOESN'T read anything from any input port. RA4 is used as prescaler input.

🔗 External reference