A N 3 7 0
24
Rev. 1.0
6.3. System Clock Control
The nominal, fastest, internal system clock frequency is 24 MHz. The user can set the lower frequency at any time
by setting the SYSGEN.SYSGEN_DIV[2:0] three bit field. It is highly recommended that the application uses the
vSys_SetClkSys() function to set that field. The function operation is guaranteed glitchless. The value of 0 means
24MHz, the value of 1 means 24 MHz/2, value of 3 results in 24 MHz/4 and so on.
Some API functions require the fastest, 24 MHz, clock for operation. Those functions will force the 24 MHz clock
frequency. There are some functions which force different than 24 MHz system clock frequency as well.
All of the functions which manipulate the system clock frequency do it only temporarily during their execution. Upon
entry they record the current system clock frequency and restore that original clock frequency value just before
returning.
Note that most of those functions are fully interruptible, so the user interrupt service routines should not rely on the
user specified clock frequency. If the user ISR routines rely on the user set system frequency they need to check
the value of the SYSGEN_DIV field inside of ISR and act accordingly.
There are functions which force the system clock frequency directly and then functions which force it indirectly by
calling the direct manipulation functions. Table 3 shows the system clock control:
Table 3. System Clock Control
Function
Clock [MHz]
Notes
Direct Functions
vSys_8BitDecLoop
24
8 bit software delay function
vSys_16BitDecLoop
24
16 bit software delay function
vFCast_Tune
24
vMtp_Strobe
24
bMtp_Write
24
iMVdd_Measure
6
vSys_SetClkSys
User
Function used to actually set the clock fre-
quency per user input requirement. Added to
the table for completeness.
Calling Direct Functions
vSys_BandGapLdo
24
From vSys_8BitDecLoop
vPa_Tune
24
From vSys_8BitDecLoop
vSys_FirstPowerUp
24
From vSys_16BitDecLoop
vSys_ForceLc
24
From vSys_16BitDecLoop
vNvm_McEnableRead
24
From vSys_16BitDecLoop
pbMtp_Read
24
From vMtp_Strobe
Note:
All functions force the clock only during their execution. They record the current frequency setting upon
entry and restore it before the return from the function.