#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrBurst {
#[doc = "The clock is not gated by an external signal."]
NONE = 0x0,
#[doc = "XC0 is ANDed with the selected clock."]
XC0 = 0x01,
#[doc = "XC1 is ANDed with the selected clock."]
XC1 = 0x02,
#[doc = "XC2 is ANDed with the selected clock."]
XC2 = 0x03,
}
impl CmrBurst {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrBurst {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrBurst {
#[inline(always)]
fn from(val: u8) -> CmrBurst {
CmrBurst::from_bits(val)
}
}
impl From<CmrBurst> for u8 {
#[inline(always)]
fn from(val: CmrBurst) -> u8 {
CmrBurst::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrEtrgedg {
#[doc = "The clock is not gated by an external signal."]
NONE = 0x0,
#[doc = "Rising edge"]
RISING = 0x01,
#[doc = "Falling edge"]
FALLING = 0x02,
#[doc = "Each edge"]
EDGE = 0x03,
}
impl CmrEtrgedg {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrEtrgedg {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrEtrgedg {
#[inline(always)]
fn from(val: u8) -> CmrEtrgedg {
CmrEtrgedg::from_bits(val)
}
}
impl From<CmrEtrgedg> for u8 {
#[inline(always)]
fn from(val: CmrEtrgedg) -> u8 {
CmrEtrgedg::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrLdra {
#[doc = "None"]
NONE = 0x0,
#[doc = "Rising edge of TIOA"]
RISING = 0x01,
#[doc = "Falling edge of TIOA"]
FALLING = 0x02,
#[doc = "Each edge of TIOA"]
EDGE = 0x03,
}
impl CmrLdra {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrLdra {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrLdra {
#[inline(always)]
fn from(val: u8) -> CmrLdra {
CmrLdra::from_bits(val)
}
}
impl From<CmrLdra> for u8 {
#[inline(always)]
fn from(val: CmrLdra) -> u8 {
CmrLdra::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrLdrb {
#[doc = "None"]
NONE = 0x0,
#[doc = "Rising edge of TIOA"]
RISING = 0x01,
#[doc = "Falling edge of TIOA"]
FALLING = 0x02,
#[doc = "Each edge of TIOA"]
EDGE = 0x03,
}
impl CmrLdrb {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrLdrb {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrLdrb {
#[inline(always)]
fn from(val: u8) -> CmrLdrb {
CmrLdrb::from_bits(val)
}
}
impl From<CmrLdrb> for u8 {
#[inline(always)]
fn from(val: CmrLdrb) -> u8 {
CmrLdrb::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrTcclks {
#[doc = "Clock selected: TCLK1"]
TIMER_CLOCK1 = 0x0,
#[doc = "Clock selected: TCLK2"]
TIMER_CLOCK2 = 0x01,
#[doc = "Clock selected: TCLK3"]
TIMER_CLOCK3 = 0x02,
#[doc = "Clock selected: TCLK4"]
TIMER_CLOCK4 = 0x03,
#[doc = "Clock selected: TCLK5"]
TIMER_CLOCK5 = 0x04,
#[doc = "Clock selected: XC0"]
XC0 = 0x05,
#[doc = "Clock selected: XC1"]
XC1 = 0x06,
#[doc = "Clock selected: XC2"]
XC2 = 0x07,
}
impl CmrTcclks {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrTcclks {
unsafe { core::mem::transmute(val & 0x07) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrTcclks {
#[inline(always)]
fn from(val: u8) -> CmrTcclks {
CmrTcclks::from_bits(val)
}
}
impl From<CmrTcclks> for u8 {
#[inline(always)]
fn from(val: CmrTcclks) -> u8 {
CmrTcclks::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Acpa {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Acpa {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Acpa {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Acpa {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Acpa {
CmrWaveEq1Acpa::from_bits(val)
}
}
impl From<CmrWaveEq1Acpa> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Acpa) -> u8 {
CmrWaveEq1Acpa::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Acpc {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Acpc {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Acpc {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Acpc {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Acpc {
CmrWaveEq1Acpc::from_bits(val)
}
}
impl From<CmrWaveEq1Acpc> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Acpc) -> u8 {
CmrWaveEq1Acpc::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Aeevt {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Aeevt {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Aeevt {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Aeevt {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Aeevt {
CmrWaveEq1Aeevt::from_bits(val)
}
}
impl From<CmrWaveEq1Aeevt> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Aeevt) -> u8 {
CmrWaveEq1Aeevt::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Aswtrg {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Aswtrg {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Aswtrg {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Aswtrg {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Aswtrg {
CmrWaveEq1Aswtrg::from_bits(val)
}
}
impl From<CmrWaveEq1Aswtrg> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Aswtrg) -> u8 {
CmrWaveEq1Aswtrg::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Bcpb {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Bcpb {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Bcpb {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Bcpb {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Bcpb {
CmrWaveEq1Bcpb::from_bits(val)
}
}
impl From<CmrWaveEq1Bcpb> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Bcpb) -> u8 {
CmrWaveEq1Bcpb::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Bcpc {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Bcpc {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Bcpc {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Bcpc {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Bcpc {
CmrWaveEq1Bcpc::from_bits(val)
}
}
impl From<CmrWaveEq1Bcpc> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Bcpc) -> u8 {
CmrWaveEq1Bcpc::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Beevt {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Beevt {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Beevt {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Beevt {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Beevt {
CmrWaveEq1Beevt::from_bits(val)
}
}
impl From<CmrWaveEq1Beevt> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Beevt) -> u8 {
CmrWaveEq1Beevt::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Bswtrg {
#[doc = "None"]
NONE = 0x0,
#[doc = "Set"]
SET = 0x01,
#[doc = "Clear"]
CLEAR = 0x02,
#[doc = "Toggle"]
TOGGLE = 0x03,
}
impl CmrWaveEq1Bswtrg {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Bswtrg {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Bswtrg {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Bswtrg {
CmrWaveEq1Bswtrg::from_bits(val)
}
}
impl From<CmrWaveEq1Bswtrg> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Bswtrg) -> u8 {
CmrWaveEq1Bswtrg::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Burst {
#[doc = "The clock is not gated by an external signal."]
NONE = 0x0,
#[doc = "XC0 is ANDed with the selected clock."]
XC0 = 0x01,
#[doc = "XC1 is ANDed with the selected clock."]
XC1 = 0x02,
#[doc = "XC2 is ANDed with the selected clock."]
XC2 = 0x03,
}
impl CmrWaveEq1Burst {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Burst {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Burst {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Burst {
CmrWaveEq1Burst::from_bits(val)
}
}
impl From<CmrWaveEq1Burst> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Burst) -> u8 {
CmrWaveEq1Burst::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Eevt {
#[doc = "TIOB"]
TIOB = 0x0,
#[doc = "XC0"]
XC0 = 0x01,
#[doc = "XC1"]
XC1 = 0x02,
#[doc = "XC2"]
XC2 = 0x03,
}
impl CmrWaveEq1Eevt {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Eevt {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Eevt {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Eevt {
CmrWaveEq1Eevt::from_bits(val)
}
}
impl From<CmrWaveEq1Eevt> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Eevt) -> u8 {
CmrWaveEq1Eevt::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Eevtedg {
#[doc = "None"]
NONE = 0x0,
#[doc = "Rising edge"]
RISING = 0x01,
#[doc = "Falling edge"]
FALLING = 0x02,
#[doc = "Each edge"]
EDGE = 0x03,
}
impl CmrWaveEq1Eevtedg {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Eevtedg {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Eevtedg {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Eevtedg {
CmrWaveEq1Eevtedg::from_bits(val)
}
}
impl From<CmrWaveEq1Eevtedg> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Eevtedg) -> u8 {
CmrWaveEq1Eevtedg::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Tcclks {
#[doc = "Clock selected: TCLK1"]
TIMER_CLOCK1 = 0x0,
#[doc = "Clock selected: TCLK2"]
TIMER_CLOCK2 = 0x01,
#[doc = "Clock selected: TCLK3"]
TIMER_CLOCK3 = 0x02,
#[doc = "Clock selected: TCLK4"]
TIMER_CLOCK4 = 0x03,
#[doc = "Clock selected: TCLK5"]
TIMER_CLOCK5 = 0x04,
#[doc = "Clock selected: XC0"]
XC0 = 0x05,
#[doc = "Clock selected: XC1"]
XC1 = 0x06,
#[doc = "Clock selected: XC2"]
XC2 = 0x07,
}
impl CmrWaveEq1Tcclks {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Tcclks {
unsafe { core::mem::transmute(val & 0x07) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Tcclks {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Tcclks {
CmrWaveEq1Tcclks::from_bits(val)
}
}
impl From<CmrWaveEq1Tcclks> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Tcclks) -> u8 {
CmrWaveEq1Tcclks::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CmrWaveEq1Wavsel {
#[doc = "UP mode without automatic trigger on RC Compare"]
UP = 0x0,
#[doc = "UPDOWN mode without automatic trigger on RC Compare"]
UPDOWN = 0x01,
#[doc = "UP mode with automatic trigger on RC Compare"]
UP_RC = 0x02,
#[doc = "UPDOWN mode with automatic trigger on RC Compare"]
UPDOWN_RC = 0x03,
}
impl CmrWaveEq1Wavsel {
#[inline(always)]
pub const fn from_bits(val: u8) -> CmrWaveEq1Wavsel {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for CmrWaveEq1Wavsel {
#[inline(always)]
fn from(val: u8) -> CmrWaveEq1Wavsel {
CmrWaveEq1Wavsel::from_bits(val)
}
}
impl From<CmrWaveEq1Wavsel> for u8 {
#[inline(always)]
fn from(val: CmrWaveEq1Wavsel) -> u8 {
CmrWaveEq1Wavsel::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum Tc0xc0s {
#[doc = "Signal connected to XC0: TCLK0"]
TCLK0 = 0x0,
_RESERVED_1 = 0x01,
#[doc = "Signal connected to XC0: TIOA1"]
TIOA1 = 0x02,
#[doc = "Signal connected to XC0: TIOA2"]
TIOA2 = 0x03,
}
impl Tc0xc0s {
#[inline(always)]
pub const fn from_bits(val: u8) -> Tc0xc0s {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for Tc0xc0s {
#[inline(always)]
fn from(val: u8) -> Tc0xc0s {
Tc0xc0s::from_bits(val)
}
}
impl From<Tc0xc0s> for u8 {
#[inline(always)]
fn from(val: Tc0xc0s) -> u8 {
Tc0xc0s::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum Tc1xc1s {
#[doc = "Signal connected to XC1: TCLK1"]
TCLK1 = 0x0,
_RESERVED_1 = 0x01,
#[doc = "Signal connected to XC1: TIOA0"]
TIOA0 = 0x02,
#[doc = "Signal connected to XC1: TIOA2"]
TIOA2 = 0x03,
}
impl Tc1xc1s {
#[inline(always)]
pub const fn from_bits(val: u8) -> Tc1xc1s {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for Tc1xc1s {
#[inline(always)]
fn from(val: u8) -> Tc1xc1s {
Tc1xc1s::from_bits(val)
}
}
impl From<Tc1xc1s> for u8 {
#[inline(always)]
fn from(val: Tc1xc1s) -> u8 {
Tc1xc1s::to_bits(val)
}
}
#[repr(u8)]
#[derive(Copy, Clone, Debug, Eq, PartialEq, Ord, PartialOrd)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum Tc2xc2s {
#[doc = "Signal connected to XC2: TCLK2"]
TCLK2 = 0x0,
_RESERVED_1 = 0x01,
#[doc = "Signal connected to XC2: TIOA1"]
TIOA1 = 0x02,
#[doc = "Signal connected to XC2: TIOA2"]
TIOA2 = 0x03,
}
impl Tc2xc2s {
#[inline(always)]
pub const fn from_bits(val: u8) -> Tc2xc2s {
unsafe { core::mem::transmute(val & 0x03) }
}
#[inline(always)]
pub const fn to_bits(self) -> u8 {
unsafe { core::mem::transmute(self) }
}
}
impl From<u8> for Tc2xc2s {
#[inline(always)]
fn from(val: u8) -> Tc2xc2s {
Tc2xc2s::from_bits(val)
}
}
impl From<Tc2xc2s> for u8 {
#[inline(always)]
fn from(val: Tc2xc2s) -> u8 {
Tc2xc2s::to_bits(val)
}
}
#[repr(transparent)]
#[derive(Copy, Clone, Eq, PartialEq, Ord, PartialOrd)]
pub struct WpKey(u32);
impl WpKey {
#[doc = "Writing any other value in this field aborts the write operation of the WPEN bit.Always reads as 0."]
pub const PASSWD: Self = Self(0x0054_494d);
}
impl WpKey {
pub const fn from_bits(val: u32) -> WpKey {
Self(val & 0x00ff_ffff)
}
pub const fn to_bits(self) -> u32 {
self.0
}
}
impl core::fmt::Debug for WpKey {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
match self.0 {
0x0054_494d => f.write_str("PASSWD"),
other => core::write!(f, "0x{:02X}", other),
}
}
}
#[cfg(feature = "defmt")]
impl defmt::Format for WpKey {
fn format(&self, f: defmt::Formatter) {
match self.0 {
0x0054_494d => defmt::write!(f, "PASSWD"),
other => defmt::write!(f, "0x{:02X}", other),
}
}
}
impl From<u32> for WpKey {
#[inline(always)]
fn from(val: u32) -> WpKey {
WpKey::from_bits(val)
}
}
impl From<WpKey> for u32 {
#[inline(always)]
fn from(val: WpKey) -> u32 {
WpKey::to_bits(val)
}
}