Frequency Counter's
.
Modified on Jan. 13th, 2020
added simple Freq. counter program for STM32F4xx
linked F746 Frequency Counter document(Japanese).
https://onedrive.live.com/?id=E726C1E354E854B2%211099156&cid=E726C1E354E854B2
I made several type of "Frequency Counter" using mbed boards.
Type 1) Simple and easy set-up
Range: Max 24MHz (F411)
Gate time: 1 second only
Base Clock : CPU Clock on mbed board
mbed Board's: LPC1768, LPC1114FN28, Nucleo-F401RE, Nucleo-F411RE
URL: /users/kenjiArai/notebook/simple-frequency-counter/
Import programFrequency_Counter
Only for mbed LPC1768, mbed LPC1114FN28, Nucleo-F401 and Nucleo-F411. No way to change pin assign.
Modified on Jan. 13th, 2020
Import programFrequency_Counter_for_STM32F4xx
Simple frequency counter, run without modification on Nucleo board, Input pin PA0, PA1, PB3. Only for STM32F4 series (Tested on Nucleo-F401RE,-F411RE and F446RE)
Only for STM32F401,F411 and F446 (maybe extend STM32 series(no tested)).
Assign additional input pin as PA0, PA1, PB3.
Use internal clock -> This means not so accurate compare with Type2 and others.
Type 2) Basic concept
Range: Max 24MHz
Gate time: 1 second only
Base Clock :
(1) 25MHz VCTXO with temperature controlled Oven
(2) GPS 1PPS signal
mbed Board: Nucleo-F411RE
URL: Not available any documentation
Import programFrequency_Counter_w_GPS_1PPS
Accurate Frequency Counter up to 25MHz. Base clock is compensated by GPS 1PPS pulse. This program runs only on mbed NucleoF411RE.
Type 3) Simple but enough accuracy
Range:
(1) Max 100MHz (without prescaler)=F746, Max 90MHz=F446, Max 48MHz=F411
(2) Max 1GHz (with prescaler)=F746
(3) Reciprocal 0.01Hz to 5KHz
Gate time: 1 second, 10sec, 100sec, 1000sec max 4095sec
Base Clock : GPS 1PPS signal
mbed Board: DISCO-F746NG, Nucleo-F411RE, Nucleo-F446RE
URL: here
Operation concept:
(1) F746
/media/uploads/kenjiArai/block_diagram_fc_f746_wo_oven.pdf
(2) F411&F446
/media/uploads/kenjiArai/block_diagram_fc_f411_wo_oven.pdf
Hardware Circuit:(common F746,F446 and F411)
/media/uploads/kenjiArai/fc_f746ng_circuit.pdf
program:
(1) Output to PC (via USB(VCOM line))
Import programFreqCntr_GPS1PPS_F746F4xx_w_recipro
Very simple but enough accuracy "Frequency Counter". Using GPS 1PPS signal for 1sec gate. CPU is F746, F446 and F411.
(2) DISCO-F746NG Graphic User Interface
Import programFreq_Cntr_GPS1PPS_F746NG_GUI
Frequency Counter. User interface are used DISCO-F746NG GUI with touch panel.
Type 4) Complex and accurate type (extended Type 2))
Range:
(1) Max 100MHz (without prescaler)
(2) Max 1GHz (with prescaler)
(3) Reciprocal 0.01Hz to 5KHz
Gate time: 1 second, 10sec, 100sec, 1000sec max 4095sec
Base Clock :
(1) 50MHz VCTXO with temperature controlled Oven
(2) GPS 1PPS signal
mbed Board: Nucleo-F746ZG
URL: here
Operation concept:
/media/uploads/kenjiArai/block_diagram_fc_f746_w_oven.pdf
Hardware Circuit:
/media/uploads/kenjiArai/fc_gps1pps_w_oven_final.pdf
/media/uploads/kenjiArai/50mhz_oven.pdf
/media/uploads/kenjiArai/lcd_sw.pdf
program:
Import programFrequency_Cntr_1PPS_F746ZG
Frequency counter using GPS 1PPS signal and temperature controlled 50MHz Base clock. Ported from F411 Frequency Counter.
Recomendation
Best solution is Type 3) Nucleo-F446RE mbed.
This solution is very simple and enough accuracy with reasonable cost.
Pictures
Type 3) F446
Tera Term output Type3)F446
Type 3) DISCO-F746NG
Type 4) Nucleo-F746ZG
1 comment on Frequency Counter's:
Please log in to post comments.
I have STM32F401 Nucleo Board; trying to execute/run => Type 2) Basic concept, but it couldnot work for me. Kindly let me know changes I need to make?