pub type R = crate::R<BCRrs>;
pub type W = crate::W<BCRrs>;
pub use super::bcr1::ASYNCWAIT;
pub use super::bcr1::ASYNCWAIT_R;
pub use super::bcr1::ASYNCWAIT_W;
pub use super::bcr1::BURSTEN;
pub use super::bcr1::BURSTEN_R;
pub use super::bcr1::BURSTEN_W;
pub use super::bcr1::CBURSTRW;
pub use super::bcr1::CBURSTRW_R;
pub use super::bcr1::CBURSTRW_W;
pub use super::bcr1::CPSIZE;
pub use super::bcr1::CPSIZE_R;
pub use super::bcr1::CPSIZE_W;
pub use super::bcr1::EXTMOD;
pub use super::bcr1::EXTMOD_R;
pub use super::bcr1::EXTMOD_W;
pub use super::bcr1::FACCEN;
pub use super::bcr1::FACCEN_R;
pub use super::bcr1::FACCEN_W;
pub use super::bcr1::MBKEN;
pub use super::bcr1::MBKEN_R;
pub use super::bcr1::MBKEN_W;
pub use super::bcr1::MTYP;
pub use super::bcr1::MTYP_R;
pub use super::bcr1::MTYP_W;
pub use super::bcr1::MUXEN;
pub use super::bcr1::MUXEN_R;
pub use super::bcr1::MUXEN_W;
pub use super::bcr1::MWID;
pub use super::bcr1::MWID_R;
pub use super::bcr1::MWID_W;
pub use super::bcr1::WAITCFG;
pub use super::bcr1::WAITCFG_R;
pub use super::bcr1::WAITCFG_W;
pub use super::bcr1::WAITEN;
pub use super::bcr1::WAITEN_R;
pub use super::bcr1::WAITEN_W;
pub use super::bcr1::WAITPOL;
pub use super::bcr1::WAITPOL_R;
pub use super::bcr1::WAITPOL_W;
pub use super::bcr1::WRAPMOD;
pub use super::bcr1::WRAPMOD_R;
pub use super::bcr1::WRAPMOD_W;
pub use super::bcr1::WREN;
pub use super::bcr1::WREN_R;
pub use super::bcr1::WREN_W;
impl R {
#[inline(always)]
pub fn mbken(&self) -> MBKEN_R {
MBKEN_R::new((self.bits & 1) != 0)
}
#[inline(always)]
pub fn muxen(&self) -> MUXEN_R {
MUXEN_R::new(((self.bits >> 1) & 1) != 0)
}
#[inline(always)]
pub fn mtyp(&self) -> MTYP_R {
MTYP_R::new(((self.bits >> 2) & 3) as u8)
}
#[inline(always)]
pub fn mwid(&self) -> MWID_R {
MWID_R::new(((self.bits >> 4) & 3) as u8)
}
#[inline(always)]
pub fn faccen(&self) -> FACCEN_R {
FACCEN_R::new(((self.bits >> 6) & 1) != 0)
}
#[inline(always)]
pub fn bursten(&self) -> BURSTEN_R {
BURSTEN_R::new(((self.bits >> 8) & 1) != 0)
}
#[inline(always)]
pub fn waitpol(&self) -> WAITPOL_R {
WAITPOL_R::new(((self.bits >> 9) & 1) != 0)
}
#[inline(always)]
pub fn wrapmod(&self) -> WRAPMOD_R {
WRAPMOD_R::new(((self.bits >> 10) & 1) != 0)
}
#[inline(always)]
pub fn waitcfg(&self) -> WAITCFG_R {
WAITCFG_R::new(((self.bits >> 11) & 1) != 0)
}
#[inline(always)]
pub fn wren(&self) -> WREN_R {
WREN_R::new(((self.bits >> 12) & 1) != 0)
}
#[inline(always)]
pub fn waiten(&self) -> WAITEN_R {
WAITEN_R::new(((self.bits >> 13) & 1) != 0)
}
#[inline(always)]
pub fn extmod(&self) -> EXTMOD_R {
EXTMOD_R::new(((self.bits >> 14) & 1) != 0)
}
#[inline(always)]
pub fn asyncwait(&self) -> ASYNCWAIT_R {
ASYNCWAIT_R::new(((self.bits >> 15) & 1) != 0)
}
#[inline(always)]
pub fn cpsize(&self) -> CPSIZE_R {
CPSIZE_R::new(((self.bits >> 16) & 7) as u8)
}
#[inline(always)]
pub fn cburstrw(&self) -> CBURSTRW_R {
CBURSTRW_R::new(((self.bits >> 19) & 1) != 0)
}
}
impl core::fmt::Debug for R {
fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
f.debug_struct("BCR")
.field("cburstrw", &self.cburstrw())
.field("asyncwait", &self.asyncwait())
.field("extmod", &self.extmod())
.field("waiten", &self.waiten())
.field("wren", &self.wren())
.field("waitcfg", &self.waitcfg())
.field("wrapmod", &self.wrapmod())
.field("waitpol", &self.waitpol())
.field("bursten", &self.bursten())
.field("faccen", &self.faccen())
.field("mwid", &self.mwid())
.field("mtyp", &self.mtyp())
.field("muxen", &self.muxen())
.field("mbken", &self.mbken())
.field("cpsize", &self.cpsize())
.finish()
}
}
impl W {
#[inline(always)]
pub fn mbken(&mut self) -> MBKEN_W<BCRrs> {
MBKEN_W::new(self, 0)
}
#[inline(always)]
pub fn muxen(&mut self) -> MUXEN_W<BCRrs> {
MUXEN_W::new(self, 1)
}
#[inline(always)]
pub fn mtyp(&mut self) -> MTYP_W<BCRrs> {
MTYP_W::new(self, 2)
}
#[inline(always)]
pub fn mwid(&mut self) -> MWID_W<BCRrs> {
MWID_W::new(self, 4)
}
#[inline(always)]
pub fn faccen(&mut self) -> FACCEN_W<BCRrs> {
FACCEN_W::new(self, 6)
}
#[inline(always)]
pub fn bursten(&mut self) -> BURSTEN_W<BCRrs> {
BURSTEN_W::new(self, 8)
}
#[inline(always)]
pub fn waitpol(&mut self) -> WAITPOL_W<BCRrs> {
WAITPOL_W::new(self, 9)
}
#[inline(always)]
pub fn wrapmod(&mut self) -> WRAPMOD_W<BCRrs> {
WRAPMOD_W::new(self, 10)
}
#[inline(always)]
pub fn waitcfg(&mut self) -> WAITCFG_W<BCRrs> {
WAITCFG_W::new(self, 11)
}
#[inline(always)]
pub fn wren(&mut self) -> WREN_W<BCRrs> {
WREN_W::new(self, 12)
}
#[inline(always)]
pub fn waiten(&mut self) -> WAITEN_W<BCRrs> {
WAITEN_W::new(self, 13)
}
#[inline(always)]
pub fn extmod(&mut self) -> EXTMOD_W<BCRrs> {
EXTMOD_W::new(self, 14)
}
#[inline(always)]
pub fn asyncwait(&mut self) -> ASYNCWAIT_W<BCRrs> {
ASYNCWAIT_W::new(self, 15)
}
#[inline(always)]
pub fn cpsize(&mut self) -> CPSIZE_W<BCRrs> {
CPSIZE_W::new(self, 16)
}
#[inline(always)]
pub fn cburstrw(&mut self) -> CBURSTRW_W<BCRrs> {
CBURSTRW_W::new(self, 19)
}
}
pub struct BCRrs;
impl crate::RegisterSpec for BCRrs {
type Ux = u32;
}
impl crate::Readable for BCRrs {}
impl crate::Writable for BCRrs {
type Safety = crate::Unsafe;
}
impl crate::Resettable for BCRrs {
const RESET_VALUE: u32 = 0x30d0;
}