CC27xxDriverLibrary
[ckmd.h] Clock Management Controller
Collaboration diagram for [ckmd.h] Clock Management Controller:

Macros

#define CKMD_WATCHDOG_UNLOCK   0x1ACCE551
 Watchdog unlocking value. More...
 

Functions

__STATIC_INLINE void CKMDSetInitialCapTrim (uint32_t q1CapTrim, uint32_t q2CapTrim)
 Sets initial HFXT capacitor ramp trims. More...
 
__STATIC_INLINE void CKMDSetInitialQ1CapTrim (uint32_t q1Cap)
 Sets initial HFXT Q1 capacitor ramp trim. More...
 
__STATIC_INLINE void CKMDSetInitialQ2CapTrim (uint32_t q2Cap)
 Sets initial HFXT Q2 capacitor ramp trim. More...
 
__STATIC_INLINE void CKMDSetInitialIrefTrim (uint32_t iref)
 Sets initial HFXT IREF ramp trim. More...
 
__STATIC_INLINE void CKMDSetInitialIdacTrim (uint32_t idac)
 Sets initial HFXT IDAC ramp trim. More...
 
__STATIC_INLINE void CKMDSetInitialAmplitudeThresholdTrim (uint32_t amplitudeThreshold)
 Sets initial HFXT amplitude threshold ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetInitialQ1CapTrim (void)
 Gets initial HFXT Q1 capacitor ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetInitialQ2CapTrim (void)
 Gets initial HFXT Q2 capacitor ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetInitialIrefTrim (void)
 Gets initial HFXT IREF ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetInitialIdacTrim (void)
 Gets initial HFXT IDAC ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetInitialAmplitudeThresholdTrim (void)
 Gets initial HFXT amplitude threshold ramp trim. More...
 
__STATIC_INLINE void CKMDSetTargetCapTrim (uint32_t q1CapTrim, uint32_t q2CapTrim)
 Sets target HFXT capacitor ramp trims. More...
 
__STATIC_INLINE void CKMDSetTargetQ1CapTrim (uint32_t q1Cap)
 Sets target HFXT Q1 capacitor ramp trim. More...
 
__STATIC_INLINE void CKMDSetTargetQ2CapTrim (uint32_t q2Cap)
 Sets target HFXT Q2 capacitor ramp trim. More...
 
__STATIC_INLINE void CKMDSetTargetIrefTrim (uint32_t iref)
 Sets target HFXT IREF ramp trim. More...
 
__STATIC_INLINE void CKMDSetTargetIdacTrim (uint32_t idac)
 Sets target HFXT IDAC ramp trim. More...
 
__STATIC_INLINE void CKMDSetTargetAmplitudeThresholdTrim (uint32_t amplitudeThreshold)
 Sets target HFXT amplitude threshold ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetTargetQ1CapTrim (void)
 Gets target HFXT Q1 capacitor ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetTargetQ2CapTrim (void)
 Gets target HFXT Q2 capacitor ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetTargetIrefTrim (void)
 Gets target HFXT IREF ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetTargetIdacTrim (void)
 Gets target HFXT IDAC ramp trim. More...
 
__STATIC_INLINE uint32_t CKMDGetTargetAmplitudeThresholdTrim (void)
 Gets target HFXT amplitude threshold ramp trim. More...
 
__STATIC_INLINE void CKMDEnableHighPerformanceClockBuffer (void)
 Enable high performance clock buffer. More...
 
__STATIC_INLINE void CKMDDisableHighPerformanceClockBuffer (void)
 Disable high performance clock buffer. More...
 
__STATIC_INLINE uint_least16_t CKMDGetLfoscRtnPpm (void)
 Gets the worst-case LFOSC frequency jump due to RTN. More...
 
__STATIC_INLINE uint_least16_t CKMDGetLfoscMidTempCoefficientPpmPerC (void)
 Gets the the worst-case LFOSC temperature coefficient in the "middle" temperature range. More...
 
__STATIC_INLINE uint_least16_t CKMDGetLfoscExtTempCoefficientPpmPerC (void)
 Gets the the worst-case LFOSC temperature coefficient in the "extended" temperature range. More...
 
__STATIC_INLINE void CKMDUnlockWatchdog (void)
 Unlock write access to the Watchdog. More...
 
__STATIC_INLINE void CKMDLockWatchdog (void)
 Lock write access to the Watchdog. More...
 
__STATIC_INLINE void CKMDSetWatchdogCounter (uint32_t value)
 Set watchdog counter value. More...
 
__STATIC_INLINE void CKMDSetWatchdogDebugConfig (bool stopWhenCpuIsHalted)
 Configure if the Watchdog should stop when the CPU is halted by a debugger. More...
 
__STATIC_INLINE void CKMDSelectCanClock (uint32_t source)
 Selects the clock source for the CAN peripheral. More...
 
__STATIC_INLINE void CKMDSelectAfclk (uint32_t source)
 Selects the clock source for AFCLK. More...
 

LFOSC Temperature Coefficient Temperature Limits

If the temperature in Celsius is within the range [ CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN, CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX ], inclusive, then the temperature coefficient CKMDGetLfoscMidTempCoefficientPpmPerC() shall be used, otherwise CKMDGetLfoscExtTempCoefficientPpmPerC().

If CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN is INT16_MIN, then there is no lower limit for the above mentioned temperature range.

If CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX is INT16_MAX, then there is no upper limit for the above mentioned temperature range.

#define CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN   (INT16_MIN)
 
#define CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX   (70)
 
#define CKMD_CAN_CLOCK_SOURCE_CLKAF   CKMD_CANCLKSEL_SRC_CLKAF
 Values to pass to CKMDSelectCanClock() to select the CAN clock source. More...
 
#define CKMD_CAN_CLOCK_SOURCE_CLKHF   CKMD_CANCLKSEL_SRC_CLKHF
 Select the 96MHz CLKHF (HFOSC) as the CAN clock source. More...
 
#define CKMD_CAN_CLOCK_SOURCE_NONE   CKMD_CANCLKSEL_SRC_DIS
 Disable clock for CAN. More...
 
#define CKMD_AFCLK_SOURCE_CLKAF   CKMD_AFCLKSEL_SRC_CLKAF
 Values to pass to CKMDSelectAfclk() to select the AFCLK source. More...
 
#define CKMD_AFCLK_SOURCE_CLKHF   CKMD_AFCLKSEL_SRC_CLKHF
 Select the 96MHz CLKHF (HFOSC) as the AFCLK source. More...
 
#define CKMD_AFCLK_SOURCE_CLKREF   CKMD_AFCLKSEL_SRC_CLKREF
 Select the 48MHz reference clock (HFXT) as the AFCLK source. More...
 
#define CKMD_AFCLK_SOURCE_NONE   CKMD_AFCLKSEL_SRC_DIS
 Disable the AFCLK. More...
 

Detailed Description

Macro Definition Documentation

§ CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN

#define CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN   (INT16_MIN)

§ CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX

#define CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX   (70)

§ CKMD_CAN_CLOCK_SOURCE_CLKAF

#define CKMD_CAN_CLOCK_SOURCE_CLKAF   CKMD_CANCLKSEL_SRC_CLKAF

Values to pass to CKMDSelectCanClock() to select the CAN clock source.

Select the AFOSC as the CAN clock source

§ CKMD_CAN_CLOCK_SOURCE_CLKHF

#define CKMD_CAN_CLOCK_SOURCE_CLKHF   CKMD_CANCLKSEL_SRC_CLKHF

Select the 96MHz CLKHF (HFOSC) as the CAN clock source.

§ CKMD_CAN_CLOCK_SOURCE_NONE

#define CKMD_CAN_CLOCK_SOURCE_NONE   CKMD_CANCLKSEL_SRC_DIS

Disable clock for CAN.

§ CKMD_AFCLK_SOURCE_CLKAF

#define CKMD_AFCLK_SOURCE_CLKAF   CKMD_AFCLKSEL_SRC_CLKAF

Values to pass to CKMDSelectAfclk() to select the AFCLK source.

Select the AFOSC as the AFCLK source

§ CKMD_AFCLK_SOURCE_CLKHF

#define CKMD_AFCLK_SOURCE_CLKHF   CKMD_AFCLKSEL_SRC_CLKHF

Select the 96MHz CLKHF (HFOSC) as the AFCLK source.

§ CKMD_AFCLK_SOURCE_CLKREF

#define CKMD_AFCLK_SOURCE_CLKREF   CKMD_AFCLKSEL_SRC_CLKREF

Select the 48MHz reference clock (HFXT) as the AFCLK source.

§ CKMD_AFCLK_SOURCE_NONE

#define CKMD_AFCLK_SOURCE_NONE   CKMD_AFCLKSEL_SRC_DIS

Disable the AFCLK.

§ CKMD_WATCHDOG_UNLOCK

#define CKMD_WATCHDOG_UNLOCK   0x1ACCE551

Watchdog unlocking value.

Referenced by CKMDUnlockWatchdog().

Function Documentation

§ CKMDSetInitialCapTrim()

__STATIC_INLINE void CKMDSetInitialCapTrim ( uint32_t  q1CapTrim,
uint32_t  q2CapTrim 
)

Sets initial HFXT capacitor ramp trims.

This function sets the initial HFXT capacitor ramp trims. It will overwrite the initial HFXT ramp trim values set during startup.

This trim value is used when initially turning on the HFXT.

Note
The value for capTrim must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
q1CapTrimInitial Q1 capacitor trim.
q2CapTrimInitial Q2 capacitor trim.
Returns
None
See also
CKMD_O_HFXTINIT for trim range

§ CKMDSetInitialQ1CapTrim()

__STATIC_INLINE void CKMDSetInitialQ1CapTrim ( uint32_t  q1Cap)

Sets initial HFXT Q1 capacitor ramp trim.

This function sets the initial HFXT Q1 capacitor ramp trim. It will overwrite the initial HFXT ramp trim value set during startup.

This trim value is used when initially turning on the HFXT.

Note
The value for q1Cap must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
q1CapInitial Q1 capacitor trim.
Returns
None
See also
CKMD_O_HFXTINIT for trim range

§ CKMDSetInitialQ2CapTrim()

__STATIC_INLINE void CKMDSetInitialQ2CapTrim ( uint32_t  q2Cap)

Sets initial HFXT Q2 capacitor ramp trim.

This function sets the initial HFXT Q2 capacitor ramp trim. It will overwrite the initial HFXT ramp trim value set during startup.

This trim value is used when initially turning on the HFXT.

Note
The value for q2Cap must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
q2CapInitial Q2 capacitor trim.
Returns
None
See also
CKMD_O_HFXTINIT for trim range

§ CKMDSetInitialIrefTrim()

__STATIC_INLINE void CKMDSetInitialIrefTrim ( uint32_t  iref)

Sets initial HFXT IREF ramp trim.

This function sets initial HFXT IREF ramp trim. It will overwrite the initial HFXT ramp trim value set during startup.

This trim value is used when initially turning on the HFXT.

Note
The value for iref must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
irefInitial IREF trim.
Returns
None
See also
CKMD_O_HFXTINIT for trim range

§ CKMDSetInitialIdacTrim()

__STATIC_INLINE void CKMDSetInitialIdacTrim ( uint32_t  idac)

Sets initial HFXT IDAC ramp trim.

This function sets the initial HFXT IDAC ramp trim. It will overwrite the initial HFXT ramp trim value set during startup.

This trim value is used when initially turning on the HFXT.

Note
The value for idac must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
idacInitial IDAC trim.
Returns
None
See also
CKMD_O_HFXTINIT for trim range

§ CKMDSetInitialAmplitudeThresholdTrim()

__STATIC_INLINE void CKMDSetInitialAmplitudeThresholdTrim ( uint32_t  amplitudeThreshold)

Sets initial HFXT amplitude threshold ramp trim.

This function sets the initial HFXT amplitude threshold ramp trim. It will overwrite the initial HFXT ramp trim value set during startup.

This trim value is used when initially turning on the HFXT.

Note
The value for amplitudeThreshold must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
amplitudeThresholdInitial amplitude threshold trim.
Returns
None
See also
CKMD_O_HFXTINIT for trim range

§ CKMDGetInitialQ1CapTrim()

__STATIC_INLINE uint32_t CKMDGetInitialQ1CapTrim ( void  )

Gets initial HFXT Q1 capacitor ramp trim.

This function gets the initial HFXT Q1 capacitor ramp trim.

Returns
Initial Q1 capacitor trim.
See also
CKMD_O_HFXTINIT for trim range

§ CKMDGetInitialQ2CapTrim()

__STATIC_INLINE uint32_t CKMDGetInitialQ2CapTrim ( void  )

Gets initial HFXT Q2 capacitor ramp trim.

This function gets the initial HFXT Q2 capacitor ramp trim.

Returns
Initial Q2 capacitor trim.
See also
CKMD_O_HFXTINIT for trim range

§ CKMDGetInitialIrefTrim()

__STATIC_INLINE uint32_t CKMDGetInitialIrefTrim ( void  )

Gets initial HFXT IREF ramp trim.

This function gets the initial HFXT IREF ramp trim.

Returns
Initial IREF trim.
See also
CKMD_O_HFXTINIT for trim range

§ CKMDGetInitialIdacTrim()

__STATIC_INLINE uint32_t CKMDGetInitialIdacTrim ( void  )

Gets initial HFXT IDAC ramp trim.

This function gets the initial HFXT IDAC ramp trim.

Returns
Initial IDAC trim.
See also
CKMD_O_HFXTINIT for trim range

§ CKMDGetInitialAmplitudeThresholdTrim()

__STATIC_INLINE uint32_t CKMDGetInitialAmplitudeThresholdTrim ( void  )

Gets initial HFXT amplitude threshold ramp trim.

This function initial HFXT amplitude threshold ramp trim.

Returns
Initial amplitude threshold trim.
See also
CKMD_O_HFXTINIT for trim range

§ CKMDSetTargetCapTrim()

__STATIC_INLINE void CKMDSetTargetCapTrim ( uint32_t  q1CapTrim,
uint32_t  q2CapTrim 
)

Sets target HFXT capacitor ramp trims.

This function sets the target HFXT capacitor ramp trims. It will overwrite the target HFXT ramp trim values set during startup.

This trim value is used when target turning on the HFXT.

Note
The value for capTrim must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
q1CapTrimTarget Q1 capacitor trim.
q2CapTrimTarget Q2 capacitor trim.
Returns
None
See also
CKMD_O_HFXTTARG for trim range

§ CKMDSetTargetQ1CapTrim()

__STATIC_INLINE void CKMDSetTargetQ1CapTrim ( uint32_t  q1Cap)

Sets target HFXT Q1 capacitor ramp trim.

This function target HFXT Q1 capacitor ramp trim. It will overwrite the target HFXT ramp trim value set during startup.

This trim value is used after HFXT has ramped to change crystal performance.

Note
The value for q1Cap must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
q1CapTarget Q1 capacitor trim.
Returns
None

§ CKMDSetTargetQ2CapTrim()

__STATIC_INLINE void CKMDSetTargetQ2CapTrim ( uint32_t  q2Cap)

Sets target HFXT Q2 capacitor ramp trim.

This function target HFXT Q2 capacitor ramp trim. It will overwrite the target HFXT ramp trim value set during startup.

This trim value is used after HFXT has ramped to change crystal performance.

Note
The value for q2Cap must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
q2CapTarget Q2 capacitor trim.
Returns
None

§ CKMDSetTargetIrefTrim()

__STATIC_INLINE void CKMDSetTargetIrefTrim ( uint32_t  iref)

Sets target HFXT IREF ramp trim.

This function target HFXT IREF ramp trim. It will overwrite the target HFXT ramp trim value set during startup.

This trim value is used after HFXT has ramped to change crystal performance.

Note
The value for iref must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
irefTarget IREF trim.
Returns
None

§ CKMDSetTargetIdacTrim()

__STATIC_INLINE void CKMDSetTargetIdacTrim ( uint32_t  idac)

Sets target HFXT IDAC ramp trim.

This function target HFXT IDAC ramp trim. It will overwrite the target HFXT ramp trim value set during startup.

This trim value is used after HFXT has ramped to change crystal performance.

Note
The value for idac must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
idacTarget IDAC trim.
Returns
None

§ CKMDSetTargetAmplitudeThresholdTrim()

__STATIC_INLINE void CKMDSetTargetAmplitudeThresholdTrim ( uint32_t  amplitudeThreshold)

Sets target HFXT amplitude threshold ramp trim.

This function target HFXT amplitude threshold ramp trim. It will overwrite the target HFXT ramp trim value set during startup.

This trim value is used after HFXT has ramped to change crystal performance.

Note
The value for amplitudeThreshold must be found experimentally based on the chosen crystal and desired ramp behaviour.
Parameters
amplitudeThresholdTarget amplitude threshold trim.
Returns
None

§ CKMDGetTargetQ1CapTrim()

__STATIC_INLINE uint32_t CKMDGetTargetQ1CapTrim ( void  )

Gets target HFXT Q1 capacitor ramp trim.

This function gets the target HFXT Q1 capacitor ramp trim.

Returns
Target Q1 capacitor trim.
See also
CKMD_O_HFXTTARG for trim range

§ CKMDGetTargetQ2CapTrim()

__STATIC_INLINE uint32_t CKMDGetTargetQ2CapTrim ( void  )

Gets target HFXT Q2 capacitor ramp trim.

This function gets the target HFXT Q2 capacitor ramp trim.

Returns
Target Q2 capacitor trim.
See also
CKMD_O_HFXTTARG for trim range

§ CKMDGetTargetIrefTrim()

__STATIC_INLINE uint32_t CKMDGetTargetIrefTrim ( void  )

Gets target HFXT IREF ramp trim.

This function gets the target HFXT IREF ramp trim.

Returns
Target IREF trim.
See also
CKMD_O_HFXTTARG for trim range

§ CKMDGetTargetIdacTrim()

__STATIC_INLINE uint32_t CKMDGetTargetIdacTrim ( void  )

Gets target HFXT IDAC ramp trim.

This function gets the target HFXT IDAC ramp trim.

Returns
Target IDAC trim.
See also
CKMD_O_HFXTTARG for trim range

§ CKMDGetTargetAmplitudeThresholdTrim()

__STATIC_INLINE uint32_t CKMDGetTargetAmplitudeThresholdTrim ( void  )

Gets target HFXT amplitude threshold ramp trim.

This function target HFXT amplitude threshold ramp trim.

Returns
Target amplitude threshold trim.
See also
CKMD_O_HFXTTARG for trim range

§ CKMDEnableHighPerformanceClockBuffer()

__STATIC_INLINE void CKMDEnableHighPerformanceClockBuffer ( void  )

Enable high performance clock buffer.

Referenced by CKMDEnableHighPerformanceClockBuffer_veneer().

§ CKMDDisableHighPerformanceClockBuffer()

__STATIC_INLINE void CKMDDisableHighPerformanceClockBuffer ( void  )

Disable high performance clock buffer.

Referenced by CKMDDisableHighPerformanceClockBuffer_veneer().

§ CKMDGetLfoscRtnPpm()

__STATIC_INLINE uint_least16_t CKMDGetLfoscRtnPpm ( void  )

Gets the worst-case LFOSC frequency jump due to RTN.

Returns
The absolute value of the worst-case jump due to RTN in ppm.

Referenced by CKMDGetLfoscRtnPpm_veneer().

§ CKMDGetLfoscMidTempCoefficientPpmPerC()

__STATIC_INLINE uint_least16_t CKMDGetLfoscMidTempCoefficientPpmPerC ( void  )

Gets the the worst-case LFOSC temperature coefficient in the "middle" temperature range.

This function can be used to determine the the worst-case LFOSC temperature coefficient in units of ppm/C in the temperature range [ CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN, CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX ].

Returns
The absolute value of worst-case temperature coefficient in ppm/C.

Referenced by CKMDGetLfoscMidTempCoefficientPpmPerC_veneer().

§ CKMDGetLfoscExtTempCoefficientPpmPerC()

__STATIC_INLINE uint_least16_t CKMDGetLfoscExtTempCoefficientPpmPerC ( void  )

Gets the the worst-case LFOSC temperature coefficient in the "extended" temperature range.

This function can be used to determine the the worst-case LFOSC temperature coefficient in units of ppm/C when the temperature is outside of the temperature range [ CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MIN, CKMD_LFOSC_MID_TEMP_COEFFICIENT_RANGE_MAX ].

Returns
The absolute value of worst-case temperature coefficient in ppm/C.

Referenced by CKMDGetLfoscExtTempCoefficientPpmPerC_veneer().

§ CKMDUnlockWatchdog()

__STATIC_INLINE void CKMDUnlockWatchdog ( void  )

Unlock write access to the Watchdog.

The function will wait until the Watchdog has actually been unlocked, before returning.

References CKMD_WATCHDOG_UNLOCK.

Referenced by CKMDUnlockWatchdog_veneer().

§ CKMDLockWatchdog()

__STATIC_INLINE void CKMDLockWatchdog ( void  )

Lock write access to the Watchdog.

Referenced by CKMDLockWatchdog_veneer().

§ CKMDSetWatchdogCounter()

__STATIC_INLINE void CKMDSetWatchdogCounter ( uint32_t  value)

Set watchdog counter value.

Calling this function will immediately start (or restart) the counter. It will count down from the value

Parameters
valueis the value to write to the Watchdog counter.

Referenced by CKMDSetWatchdogCounter_veneer().

§ CKMDSetWatchdogDebugConfig()

__STATIC_INLINE void CKMDSetWatchdogDebugConfig ( bool  stopWhenCpuIsHalted)

Configure if the Watchdog should stop when the CPU is halted by a debugger.

Parameters
stopWhenCpuIsHaltedif true, the Watchdog will stop counting while the CPU is stopped by a debugger. If false, the Watchdog will continue counting while the CPU is stopped by a debugger.

Referenced by CKMDSetWatchdogDebugConfig_veneer().

§ CKMDSelectCanClock()

__STATIC_INLINE void CKMDSelectCanClock ( uint32_t  source)

Selects the clock source for the CAN peripheral.

Parameters
sourceis the clock source to select:

Referenced by CKMDSelectCanClock_veneer().

§ CKMDSelectAfclk()