Expand description

Configuring the system clock sources. You will typically need to create an instance of GenericClockController before you can set up most of the peripherals on the atsamd21 device. The other types in this module are used to enforce at compile time that the peripherals have been correctly configured.

Structs

A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
Represents a configured clock generator. Can be converted into the effective clock frequency. Its primary purpose is to be passed in to methods such as GenericClockController::tcc2_tc3 to configure the clock for a peripheral.
GenericClockController encapsulates the GCLK hardware. It provides a type safe way to configure the system clocks. Initializing the GenericClockController instance configures the system to run at 48Mhz by setting gclk1 as a 32khz source and feeding it into the DFLL48 hardware which in turn drives gclk0 at 48Mhz.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.
A typed token that indicates that the clock for the peripheral(s) with the matching name has been configured. The effective clock frequency is available via the freq method, or by converting the object into a Hertz instance. The peripheral initialization code will typically require passing in this object to prove at compile time that the clock has been correctly initialized.

Constants

The frequency of the 8 Mhz source.
The frequency of the 32Khz source.
The frequency of the 48Mhz source.

Functions

Turn on the external 32hkz oscillator
Turn on the internal 32hkz oscillator

Type Definitions