typedef IClock.IPeripheralArray |
|
typedef IClock.StringArray |
|
typedef String StringArray[];
struct IClock.AvailableClockVariations_t |
|
Available variations of clock in a device
metaonly struct AvailableClockVariations_t {
String clockType;
Bool hasClock;
};
DETAILS
Stores true/false if any of the clock variations are
available.
SEE
struct IClock.ForceSetDefaultRegister_t |
|
Force Set Default Register
metaonly struct ForceSetDefaultRegister_t {
String register;
Bool regForceSet;
};
DETAILS
Type to store if each register needs to be forced initialized
even if the register is in default state.
SEE
IClock.getAll() // module-wide |
|
Find all peripherals of a certain type
DETAILS
The type of the peripherals returned is defined by the type of the
caller.
RETURNS
Returns an array of IPeripheral instances
IClock.getRegisters() // module-wide |
|
Find all registers defined by the peripheral
RETURNS
Returns an array of register names
config IClock.ACLKHz // instance |
|
ACLK frequency in Hertz
readonly config Float ACLKHz;
config IClock.DCOCLKHz // instance |
|
DCO clock frequency in Hertz
readonly config Float DCOCLKHz = 1000000;
config IClock.MCLKHz // instance |
|
MCLK frequency in Hertz
readonly config Float MCLKHz;
config IClock.SMCLKHz // instance |
|
SMCLK frequency in Hertz
readonly config Float SMCLKHz;
config IClock.baseAddr // instance |
|
Address of the peripheral's control register
DETAILS
A peripheral's registers are commonly accessed through a structure
that defines the offsets of a particular register from the lowest
address mapped to a peripheral. That lowest address is specified by
this parameter.
config IClock.hasAllCal // instance |
|
Specify if device has all calibration constants
config Bool hasAllCal = false;
DETAILS
G1 devices do not.
config IClock.hasHFXT1 // instance |
|
Specify if HFXT1 is available on the device
config Bool hasHFXT1 = false;
DETAILS
Not all devices have high frequency clock. This specifies if
it is available for a particular device.
config IClock.hasRosc // instance |
|
Specify if Rosc is available on the device
config Bool hasRosc = false;
DETAILS
Not all devices have Rosc circuitry. This specifies if
it is available for a particular device.
config IClock.hasVLO // instance |
|
Specify if VLO is available on the device
config Bool hasVLO = false;
DETAILS
Not all devices have very low frequency clock VLO. This specifies if
it is available for a particular device.
config IClock.hasXT2 // instance |
|
Specify if XT2 is available on the device
config Bool hasXT2 = false;
DETAILS
Not all devices have XT2 clock available. This specifies if
it is available for a particular device.
config IClock.maxCpuFrequency // instance |
|
Maximum CPU frequency in Hertz
config Float maxCpuFrequency = 0;
config IClock.name // instance |
|
Specific peripheral name given by the device
DETAILS
Devices can have more than one peripheral of the same type. In such
cases, device data sheets give different names to the instances of a
same peripheral. For example, the name for a timer module could be
TimerA3, and a device that has two such timers can name them TA0
and TA1.
config IClock.owner // instance |
|
String specifying the entity that manages the peripheral
IClock.computeDCOCLKHz() // instance |
|
Initialize to the nearest available DCO clock frequency
Void computeDCOCLKHz(Float DCOCLKHz);