How to know the current CPU and peripheral frequency?

Post Reply
a_ziliu
Posts: 208
Joined: 20 Mar 2017, 10:52

31 May 2021, 16:05

In the NuMicro® family microcontroller (MCU), I/O is designed with CKO function (Clock Output). After I/O multi-function pin function is switched to CKO, the oscilloscope can be used to measure I/O to observe the CPU and peripheral frequency. Due to the I/O slew rate limit, there may be no way to output a very high frequency. Therefore, user can use the pre-scaler of CKO function to divide the output frequency by a number before measurement.
In addition, in Power-down mode, user can also use CKO to observe whether the CPU frequency has stopped, and confirm that the Power-down mode is actually entered.

Taking the M031 series as an example, the user can refer to the CLK_ClockDetector sample in the BSP. From the clk.c file in the BSP, you can find the CLK_EnableCKO() function. This function can be used to measure the signals of HXT, LXT, HCLK, HIRC, LIRC, PLL and SOF through the CX pin.

Switch PB14 to CKO function
SYS->GPB_MFPH = (SYS->GPB_MFPH & ~SYS_GPB_MFPH_PB14MFP_Msk) | SYS_GPB_MFPH_PB14MFP_CLKO;
Turn on the CKO output and output the HCLK signal. This signal will be divided by the second and third digits.
CLK_EnableCKO(CLK_CLKSEL1_CLKOSEL_HCLK, 1, 0);

Post Reply
  • Information
  • Who is online

    Users browsing this forum: No registered users and 6 guests