pub type R = crate::R<C2IMR2rs>;
pub type W = crate::W<C2IMR2rs>;
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum INTERRUPT_MASK {
Masked = 0,
Unmasked = 1,
}
impl From<INTERRUPT_MASK> for bool {
#[inline(always)]
fn from(variant: INTERRUPT_MASK) -> Self {
variant as u8 != 0
}
}
pub type MR32_R = crate::BitReader<INTERRUPT_MASK>;
impl MR32_R {
#[inline(always)]
pub const fn variant(&self) -> INTERRUPT_MASK {
match self.bits {
false => INTERRUPT_MASK::Masked,
true => INTERRUPT_MASK::Unmasked,
}
}
#[inline(always)]
pub fn is_masked(&self) -> bool {
*self == INTERRUPT_MASK::Masked
}
#[inline(always)]
pub fn is_unmasked(&self) -> bool {
*self == INTERRUPT_MASK::Unmasked
}
}
pub type MR32_W<'a, REG> = crate::BitWriter<'a, REG, INTERRUPT_MASK>;
impl<'a, REG> MR32_W<'a, REG>
where
REG: crate::Writable + crate::RegisterSpec,
{
#[inline(always)]
pub fn masked(self) -> &'a mut crate::W<REG> {
self.variant(INTERRUPT_MASK::Masked)
}
#[inline(always)]
pub fn unmasked(self) -> &'a mut crate::W<REG> {
self.variant(INTERRUPT_MASK::Unmasked)
}
}
pub use MR32_R as MR33_R;
pub use MR32_R as MR34_R;
pub use MR32_R as MR35_R;
pub use MR32_R as MR36_R;
pub use MR32_R as MR37_R;
pub use MR32_R as MR38_R;
pub use MR32_R as MR39_R;
pub use MR32_R as MR40_R;
pub use MR32_R as MR41_R;
pub use MR32_R as MR42_R;
pub use MR32_R as MR43_R;
pub use MR32_R as MR44_R;
pub use MR32_R as MR46_R;
pub use MR32_R as MR47_R;
pub use MR32_R as MR48_R;
pub use MR32_R as MR49_R;
pub use MR32_R as MR50_R;
pub use MR32_R as MR51_R;
pub use MR32_R as MR52_R;
pub use MR32_R as MR53_R;
pub use MR32_R as MR54_R;
pub use MR32_R as MR55_R;
pub use MR32_R as MR56_R;
pub use MR32_R as MR57_R;
pub use MR32_R as MR58_R;
pub use MR32_R as MR59_R;
pub use MR32_R as MR60_R;
pub use MR32_R as MR61_R;
pub use MR32_R as MR62_R;
pub use MR32_R as MR63_R;
pub use MR32_W as MR33_W;
pub use MR32_W as MR34_W;
pub use MR32_W as MR35_W;
pub use MR32_W as MR36_W;
pub use MR32_W as MR37_W;
pub use MR32_W as MR38_W;
pub use MR32_W as MR39_W;
pub use MR32_W as MR40_W;
pub use MR32_W as MR41_W;
pub use MR32_W as MR42_W;
pub use MR32_W as MR43_W;
pub use MR32_W as MR44_W;
pub use MR32_W as MR46_W;
pub use MR32_W as MR47_W;
pub use MR32_W as MR48_W;
pub use MR32_W as MR49_W;
pub use MR32_W as MR50_W;
pub use MR32_W as MR51_W;
pub use MR32_W as MR52_W;
pub use MR32_W as MR53_W;
pub use MR32_W as MR54_W;
pub use MR32_W as MR55_W;
pub use MR32_W as MR56_W;
pub use MR32_W as MR57_W;
pub use MR32_W as MR58_W;
pub use MR32_W as MR59_W;
pub use MR32_W as MR60_W;
pub use MR32_W as MR61_W;
pub use MR32_W as MR62_W;
pub use MR32_W as MR63_W;
impl R {
#[inline(always)]
pub fn mr32(&self) -> MR32_R {
MR32_R::new((self.bits & 1) != 0)
}
#[inline(always)]
pub fn mr33(&self) -> MR33_R {
MR33_R::new(((self.bits >> 1) & 1) != 0)
}
#[inline(always)]
pub fn mr34(&self) -> MR34_R {
MR34_R::new(((self.bits >> 2) & 1) != 0)
}
#[inline(always)]
pub fn mr35(&self) -> MR35_R {
MR35_R::new(((self.bits >> 3) & 1) != 0)
}
#[inline(always)]
pub fn mr36(&self) -> MR36_R {
MR36_R::new(((self.bits >> 4) & 1) != 0)
}
#[inline(always)]
pub fn mr37(&self) -> MR37_R {
MR37_R::new(((self.bits >> 5) & 1) != 0)
}
#[inline(always)]
pub fn mr38(&self) -> MR38_R {
MR38_R::new(((self.bits >> 6) & 1) != 0)
}
#[inline(always)]
pub fn mr39(&self) -> MR39_R {
MR39_R::new(((self.bits >> 7) & 1) != 0)
}
#[inline(always)]
pub fn mr40(&self) -> MR40_R {
MR40_R::new(((self.bits >> 8) & 1) != 0)
}
#[inline(always)]
pub fn mr41(&self) -> MR41_R {
MR41_R::new(((self.bits >> 9) & 1) != 0)
}
#[inline(always)]
pub fn mr42(&self) -> MR42_R {
MR42_R::new(((self.bits >> 10) & 1) != 0)
}
#[inline(always)]
pub fn mr43(&self) -> MR43_R {
MR43_R::new(((self.bits >> 11) & 1) != 0)
}
#[inline(always)]
pub fn mr44(&self) -> MR44_R {
MR44_R::new(((self.bits >> 12) & 1) != 0)
}
#[inline(always)]
pub fn mr46(&self) -> MR46_R {
MR46_R::new(((self.bits >> 14) & 1) != 0)
}
#[inline(always)]
pub fn mr47(&self) -> MR47_R {
MR47_R::new(((self.bits >> 15) & 1) != 0)
}
#[inline(always)]
pub fn mr48(&self) -> MR48_R {
MR48_R::new(((self.bits >> 16) & 1) != 0)
}
#[inline(always)]
pub fn mr49(&self) -> MR49_R {
MR49_R::new(((self.bits >> 17) & 1) != 0)
}
#[inline(always)]
pub fn mr50(&self) -> MR50_R {
MR50_R::new(((self.bits >> 18) & 1) != 0)
}
#[inline(always)]
pub fn mr51(&self) -> MR51_R {
MR51_R::new(((self.bits >> 19) & 1) != 0)
}
#[inline(always)]
pub fn mr52(&self) -> MR52_R {
MR52_R::new(((self.bits >> 20) & 1) != 0)
}
#[inline(always)]
pub fn mr53(&self) -> MR53_R {
MR53_R::new(((self.bits >> 21) & 1) != 0)
}
#[inline(always)]
pub fn mr54(&self) -> MR54_R {
MR54_R::new(((self.bits >> 22) & 1) != 0)
}
#[inline(always)]
pub fn mr55(&self) -> MR55_R {
MR55_R::new(((self.bits >> 23) & 1) != 0)
}
#[inline(always)]
pub fn mr56(&self) -> MR56_R {
MR56_R::new(((self.bits >> 24) & 1) != 0)
}
#[inline(always)]
pub fn mr57(&self) -> MR57_R {
MR57_R::new(((self.bits >> 25) & 1) != 0)
}
#[inline(always)]
pub fn mr58(&self) -> MR58_R {
MR58_R::new(((self.bits >> 26) & 1) != 0)
}
#[inline(always)]
pub fn mr59(&self) -> MR59_R {
MR59_R::new(((self.bits >> 27) & 1) != 0)
}
#[inline(always)]
pub fn mr60(&self) -> MR60_R {
MR60_R::new(((self.bits >> 28) & 1) != 0)
}
#[inline(always)]
pub fn mr61(&self) -> MR61_R {
MR61_R::new(((self.bits >> 29) & 1) != 0)
}
#[inline(always)]
pub fn mr62(&self) -> MR62_R {
MR62_R::new(((self.bits >> 30) & 1) != 0)
}
#[inline(always)]
pub fn mr63(&self) -> MR63_R {
MR63_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl core::fmt::Debug for R {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
f.debug_struct("C2IMR2")
.field("mr32", &self.mr32())
.field("mr33", &self.mr33())
.field("mr34", &self.mr34())
.field("mr35", &self.mr35())
.field("mr36", &self.mr36())
.field("mr37", &self.mr37())
.field("mr38", &self.mr38())
.field("mr39", &self.mr39())
.field("mr40", &self.mr40())
.field("mr41", &self.mr41())
.field("mr42", &self.mr42())
.field("mr43", &self.mr43())
.field("mr44", &self.mr44())
.field("mr46", &self.mr46())
.field("mr47", &self.mr47())
.field("mr48", &self.mr48())
.field("mr49", &self.mr49())
.field("mr50", &self.mr50())
.field("mr51", &self.mr51())
.field("mr52", &self.mr52())
.field("mr53", &self.mr53())
.field("mr54", &self.mr54())
.field("mr55", &self.mr55())
.field("mr56", &self.mr56())
.field("mr57", &self.mr57())
.field("mr58", &self.mr58())
.field("mr59", &self.mr59())
.field("mr60", &self.mr60())
.field("mr61", &self.mr61())
.field("mr62", &self.mr62())
.field("mr63", &self.mr63())
.finish()
}
}
impl W {
#[inline(always)]
pub fn mr32(&mut self) -> MR32_W<C2IMR2rs> {
MR32_W::new(self, 0)
}
#[inline(always)]
pub fn mr33(&mut self) -> MR33_W<C2IMR2rs> {
MR33_W::new(self, 1)
}
#[inline(always)]
pub fn mr34(&mut self) -> MR34_W<C2IMR2rs> {
MR34_W::new(self, 2)
}
#[inline(always)]
pub fn mr35(&mut self) -> MR35_W<C2IMR2rs> {
MR35_W::new(self, 3)
}
#[inline(always)]
pub fn mr36(&mut self) -> MR36_W<C2IMR2rs> {
MR36_W::new(self, 4)
}
#[inline(always)]
pub fn mr37(&mut self) -> MR37_W<C2IMR2rs> {
MR37_W::new(self, 5)
}
#[inline(always)]
pub fn mr38(&mut self) -> MR38_W<C2IMR2rs> {
MR38_W::new(self, 6)
}
#[inline(always)]
pub fn mr39(&mut self) -> MR39_W<C2IMR2rs> {
MR39_W::new(self, 7)
}
#[inline(always)]
pub fn mr40(&mut self) -> MR40_W<C2IMR2rs> {
MR40_W::new(self, 8)
}
#[inline(always)]
pub fn mr41(&mut self) -> MR41_W<C2IMR2rs> {
MR41_W::new(self, 9)
}
#[inline(always)]
pub fn mr42(&mut self) -> MR42_W<C2IMR2rs> {
MR42_W::new(self, 10)
}
#[inline(always)]
pub fn mr43(&mut self) -> MR43_W<C2IMR2rs> {
MR43_W::new(self, 11)
}
#[inline(always)]
pub fn mr44(&mut self) -> MR44_W<C2IMR2rs> {
MR44_W::new(self, 12)
}
#[inline(always)]
pub fn mr46(&mut self) -> MR46_W<C2IMR2rs> {
MR46_W::new(self, 14)
}
#[inline(always)]
pub fn mr47(&mut self) -> MR47_W<C2IMR2rs> {
MR47_W::new(self, 15)
}
#[inline(always)]
pub fn mr48(&mut self) -> MR48_W<C2IMR2rs> {
MR48_W::new(self, 16)
}
#[inline(always)]
pub fn mr49(&mut self) -> MR49_W<C2IMR2rs> {
MR49_W::new(self, 17)
}
#[inline(always)]
pub fn mr50(&mut self) -> MR50_W<C2IMR2rs> {
MR50_W::new(self, 18)
}
#[inline(always)]
pub fn mr51(&mut self) -> MR51_W<C2IMR2rs> {
MR51_W::new(self, 19)
}
#[inline(always)]
pub fn mr52(&mut self) -> MR52_W<C2IMR2rs> {
MR52_W::new(self, 20)
}
#[inline(always)]
pub fn mr53(&mut self) -> MR53_W<C2IMR2rs> {
MR53_W::new(self, 21)
}
#[inline(always)]
pub fn mr54(&mut self) -> MR54_W<C2IMR2rs> {
MR54_W::new(self, 22)
}
#[inline(always)]
pub fn mr55(&mut self) -> MR55_W<C2IMR2rs> {
MR55_W::new(self, 23)
}
#[inline(always)]
pub fn mr56(&mut self) -> MR56_W<C2IMR2rs> {
MR56_W::new(self, 24)
}
#[inline(always)]
pub fn mr57(&mut self) -> MR57_W<C2IMR2rs> {
MR57_W::new(self, 25)
}
#[inline(always)]
pub fn mr58(&mut self) -> MR58_W<C2IMR2rs> {
MR58_W::new(self, 26)
}
#[inline(always)]
pub fn mr59(&mut self) -> MR59_W<C2IMR2rs> {
MR59_W::new(self, 27)
}
#[inline(always)]
pub fn mr60(&mut self) -> MR60_W<C2IMR2rs> {
MR60_W::new(self, 28)
}
#[inline(always)]
pub fn mr61(&mut self) -> MR61_W<C2IMR2rs> {
MR61_W::new(self, 29)
}
#[inline(always)]
pub fn mr62(&mut self) -> MR62_W<C2IMR2rs> {
MR62_W::new(self, 30)
}
#[inline(always)]
pub fn mr63(&mut self) -> MR63_W<C2IMR2rs> {
MR63_W::new(self, 31)
}
}
pub struct C2IMR2rs;
impl crate::RegisterSpec for C2IMR2rs {
type Ux = u32;
}
impl crate::Readable for C2IMR2rs {}
impl crate::Writable for C2IMR2rs {
type Safety = crate::Unsafe;
}
impl crate::Resettable for C2IMR2rs {
const RESET_VALUE: u32 = 0xfff5_ffff;
}