pub struct Pclk<P, I>where
P: PclkId,
I: PclkSourceId,{ /* private fields */ }Expand description
Peripheral channel clock for a given peripheral
Peripheral channel clocks connect generic clock generators (Gclks) to
various peripherals. Pclks usually act as leaves in the clock tree, except
when they feed the DFLL and DPLL peripherals.
The type parameter P is a PclkId that determines which of the 48
peripherals this Pclk feeds. The type parameter I represents the Id
type for the EnabledGclk acting as the Pclk’s Source. It must be
one of the valid PclkSourceIds, which is simply a trait alias for
GclkId. See the clock module documentation for more detail on
Id types.
Pclks cannot act as general purpose clock Sources; rather, they map
1:1 with corresponding peripherals. Thus, enabled Pclks do not need a
compile-time counter of consumer clocks, so they are not wrapped with
Enabled. Enabled Pclks are created directly from PclkTokens with
Pclk::enable.
See the module-level documentation for an example.
Implementations§
Source§impl<P, I> Pclk<P, I>where
P: PclkId,
I: PclkSourceId,
impl<P, I> Pclk<P, I>where
P: PclkId,
I: PclkSourceId,
Trait Implementations§
Source§impl<I: PclkSourceId> From<Pclk<Ac, I>> for AcClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Ac, I>> for AcClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Adc0, I>> for Adc0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Adc0, I>> for Adc0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Adc1, I>> for Adc1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Adc1, I>> for Adc1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<CM4Trace, I>> for Cm4TraceClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<CM4Trace, I>> for Cm4TraceClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Ccl, I>> for CclClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Ccl, I>> for CclClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Dac, I>> for DacClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Dac, I>> for DacClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Eic, I>> for EicClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Eic, I>> for EicClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys0, I>> for Evsys0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys0, I>> for Evsys0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys1, I>> for Evsys1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys1, I>> for Evsys1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys10, I>> for Evsys10Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys10, I>> for Evsys10Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys11, I>> for Evsys11Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys11, I>> for Evsys11Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys2, I>> for Evsys2Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys2, I>> for Evsys2Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys3, I>> for Evsys3Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys3, I>> for Evsys3Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys4, I>> for Evsys4Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys4, I>> for Evsys4Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys5, I>> for Evsys5Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys5, I>> for Evsys5Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys6, I>> for Evsys6Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys6, I>> for Evsys6Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys7, I>> for Evsys7Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys7, I>> for Evsys7Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys8, I>> for Evsys8Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys8, I>> for Evsys8Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<EvSys9, I>> for Evsys9Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<EvSys9, I>> for Evsys9Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<FreqMMeasure, I>> for FreqmMsrClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<FreqMMeasure, I>> for FreqmMsrClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§fn from(pclk: Pclk<FreqMMeasure, I>) -> Self
fn from(pclk: Pclk<FreqMMeasure, I>) -> Self
Source§impl<I: PclkSourceId> From<Pclk<FreqMReference, I>> for FreqmRefClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<FreqMReference, I>> for FreqmRefClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§fn from(pclk: Pclk<FreqMReference, I>) -> Self
fn from(pclk: Pclk<FreqMReference, I>) -> Self
Source§impl<I: PclkSourceId> From<Pclk<I2S0, I>> for I2S0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<I2S0, I>> for I2S0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<I2S1, I>> for I2S1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<I2S1, I>> for I2S1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<PDec, I>> for PdecClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<PDec, I>> for PdecClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sdhc0, I>> for Sdhc0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sdhc0, I>> for Sdhc0Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sercom0, I>> for Sercom0CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sercom0, I>> for Sercom0CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sercom1, I>> for Sercom1CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sercom1, I>> for Sercom1CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sercom2, I>> for Sercom2CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sercom2, I>> for Sercom2CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sercom3, I>> for Sercom3CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sercom3, I>> for Sercom3CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sercom4, I>> for Sercom4CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sercom4, I>> for Sercom4CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Sercom5, I>> for Sercom5CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Sercom5, I>> for Sercom5CoreClock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Tc0Tc1, I>> for Tc0Tc1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Tc0Tc1, I>> for Tc0Tc1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Tc2Tc3, I>> for Tc2Tc3Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Tc2Tc3, I>> for Tc2Tc3Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Tc4Tc5, I>> for Tc4Tc5Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Tc4Tc5, I>> for Tc4Tc5Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Tcc0Tcc1, I>> for Tcc0Tcc1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Tcc0Tcc1, I>> for Tcc0Tcc1Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Tcc2Tcc3, I>> for Tcc2Tcc3Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Tcc2Tcc3, I>> for Tcc2Tcc3Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
Source§impl<I: PclkSourceId> From<Pclk<Tcc4, I>> for Tcc4Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API
impl<I: PclkSourceId> From<Pclk<Tcc4, I>> for Tcc4Clock
V2 to V1 compatibility layer that allows to convert V2 Pclk constructs
into corresponding V1 *Clock types. Thus, user can manage V1 clocking
compatible peripherals while using V2 clocking API