feat: add display UI with splash screen, dashboard, and RSSI sparkline

Implement full SSD1306 OLED display support:
- Splash screen on boot (1.5s) with project name, version, board
- Dashboard showing radio state, config, counters, RSSI/SNR
- RSSI history sparkline (64-sample ring buffer, 2px-wide bars)
- DisplayOn/DisplayOff host commands routed via dedicated channel
- Pure render functions against generic DrawTarget (no hardware coupling)
- Display on/off control bypasses radio task entirely

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
swaitsandClaude Opus 4.6 committed 2026-03-29 20:42:54 -06:00
1 parent 7064110293
commit 3102fc747a
17624 files changed
+4564928 -38

No files matched your search

+353
View File
@@ -0,0 +1,353 @@
#[doc = "Register `CONFIG[%s]` reader"]
pub struct R(crate::R<CONFIG_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<CONFIG_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<CONFIG_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<CONFIG_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `CONFIG[%s]` writer"]
pub struct W(crate::W<CONFIG_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<CONFIG_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<CONFIG_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<CONFIG_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `MODE` reader - Mode"]
pub type MODE_R = crate::FieldReader<u8, MODE_A>;
#[doc = "Mode\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
#[repr(u8)]
pub enum MODE_A {
#[doc = "0: Disabled. Pin specified by PSEL will not be acquired by the GPIOTE module."]
DISABLED = 0,
#[doc = "1: Event mode"]
EVENT = 1,
#[doc = "3: Task mode"]
TASK = 3,
}
impl From<MODE_A> for u8 {
#[inline(always)]
fn from(variant: MODE_A) -> Self {
variant as _
}
}
impl MODE_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> Option<MODE_A> {
match self.bits {
0 => Some(MODE_A::DISABLED),
1 => Some(MODE_A::EVENT),
3 => Some(MODE_A::TASK),
_ => None,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == MODE_A::DISABLED
}
#[doc = "Checks if the value of the field is `EVENT`"]
#[inline(always)]
pub fn is_event(&self) -> bool {
*self == MODE_A::EVENT
}
#[doc = "Checks if the value of the field is `TASK`"]
#[inline(always)]
pub fn is_task(&self) -> bool {
*self == MODE_A::TASK
}
}
#[doc = "Field `MODE` writer - Mode"]
pub type MODE_W<'a, const O: u8> = crate::FieldWriter<'a, u32, CONFIG_SPEC, u8, MODE_A, 2, O>;
impl<'a, const O: u8> MODE_W<'a, O> {
#[doc = "Disabled. Pin specified by PSEL will not be acquired by the GPIOTE module."]
#[inline(always)]
pub fn disabled(self) -> &'a mut W {
self.variant(MODE_A::DISABLED)
}
#[doc = "Event mode"]
#[inline(always)]
pub fn event(self) -> &'a mut W {
self.variant(MODE_A::EVENT)
}
#[doc = "Task mode"]
#[inline(always)]
pub fn task(self) -> &'a mut W {
self.variant(MODE_A::TASK)
}
}
#[doc = "Field `PSEL` reader - GPIO number associated with SET\\[n\\], CLR\\[n\\], and OUT\\[n\\]
tasks and IN\\[n\\]
event"]
pub type PSEL_R = crate::FieldReader<u8, u8>;
#[doc = "Field `PSEL` writer - GPIO number associated with SET\\[n\\], CLR\\[n\\], and OUT\\[n\\]
tasks and IN\\[n\\]
event"]
pub type PSEL_W<'a, const O: u8> = crate::FieldWriter<'a, u32, CONFIG_SPEC, u8, u8, 5, O>;
#[doc = "Field `PORT` reader - Port number"]
pub type PORT_R = crate::BitReader<bool>;
#[doc = "Field `PORT` writer - Port number"]
pub type PORT_W<'a, const O: u8> = crate::BitWriter<'a, u32, CONFIG_SPEC, bool, O>;
#[doc = "Field `POLARITY` reader - When In task mode: Operation to be performed on output when OUT\\[n\\]
task is triggered. When In event mode: Operation on input that shall trigger IN\\[n\\]
event."]
pub type POLARITY_R = crate::FieldReader<u8, POLARITY_A>;
#[doc = "When In task mode: Operation to be performed on output when OUT\\[n\\]
task is triggered. When In event mode: Operation on input that shall trigger IN\\[n\\]
event.\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
#[repr(u8)]
pub enum POLARITY_A {
#[doc = "0: Task mode: No effect on pin from OUT\\[n\\]
task. Event mode: no IN\\[n\\]
event generated on pin activity."]
NONE = 0,
#[doc = "1: Task mode: Set pin from OUT\\[n\\]
task. Event mode: Generate IN\\[n\\]
event when rising edge on pin."]
LO_TO_HI = 1,
#[doc = "2: Task mode: Clear pin from OUT\\[n\\]
task. Event mode: Generate IN\\[n\\]
event when falling edge on pin."]
HI_TO_LO = 2,
#[doc = "3: Task mode: Toggle pin from OUT\\[n\\]. Event mode: Generate IN\\[n\\]
when any change on pin."]
TOGGLE = 3,
}
impl From<POLARITY_A> for u8 {
#[inline(always)]
fn from(variant: POLARITY_A) -> Self {
variant as _
}
}
impl POLARITY_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> POLARITY_A {
match self.bits {
0 => POLARITY_A::NONE,
1 => POLARITY_A::LO_TO_HI,
2 => POLARITY_A::HI_TO_LO,
3 => POLARITY_A::TOGGLE,
_ => unreachable!(),
}
}
#[doc = "Checks if the value of the field is `NONE`"]
#[inline(always)]
pub fn is_none(&self) -> bool {
*self == POLARITY_A::NONE
}
#[doc = "Checks if the value of the field is `LO_TO_HI`"]
#[inline(always)]
pub fn is_lo_to_hi(&self) -> bool {
*self == POLARITY_A::LO_TO_HI
}
#[doc = "Checks if the value of the field is `HI_TO_LO`"]
#[inline(always)]
pub fn is_hi_to_lo(&self) -> bool {
*self == POLARITY_A::HI_TO_LO
}
#[doc = "Checks if the value of the field is `TOGGLE`"]
#[inline(always)]
pub fn is_toggle(&self) -> bool {
*self == POLARITY_A::TOGGLE
}
}
#[doc = "Field `POLARITY` writer - When In task mode: Operation to be performed on output when OUT\\[n\\]
task is triggered. When In event mode: Operation on input that shall trigger IN\\[n\\]
event."]
pub type POLARITY_W<'a, const O: u8> =
crate::FieldWriterSafe<'a, u32, CONFIG_SPEC, u8, POLARITY_A, 2, O>;
impl<'a, const O: u8> POLARITY_W<'a, O> {
#[doc = "Task mode: No effect on pin from OUT\\[n\\]
task. Event mode: no IN\\[n\\]
event generated on pin activity."]
#[inline(always)]
pub fn none(self) -> &'a mut W {
self.variant(POLARITY_A::NONE)
}
#[doc = "Task mode: Set pin from OUT\\[n\\]
task. Event mode: Generate IN\\[n\\]
event when rising edge on pin."]
#[inline(always)]
pub fn lo_to_hi(self) -> &'a mut W {
self.variant(POLARITY_A::LO_TO_HI)
}
#[doc = "Task mode: Clear pin from OUT\\[n\\]
task. Event mode: Generate IN\\[n\\]
event when falling edge on pin."]
#[inline(always)]
pub fn hi_to_lo(self) -> &'a mut W {
self.variant(POLARITY_A::HI_TO_LO)
}
#[doc = "Task mode: Toggle pin from OUT\\[n\\]. Event mode: Generate IN\\[n\\]
when any change on pin."]
#[inline(always)]
pub fn toggle(self) -> &'a mut W {
self.variant(POLARITY_A::TOGGLE)
}
}
#[doc = "Field `OUTINIT` reader - When in task mode: Initial value of the output when the GPIOTE channel is configured. When in event mode: No effect."]
pub type OUTINIT_R = crate::BitReader<OUTINIT_A>;
#[doc = "When in task mode: Initial value of the output when the GPIOTE channel is configured. When in event mode: No effect.\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum OUTINIT_A {
#[doc = "0: Task mode: Initial value of pin before task triggering is low"]
LOW = 0,
#[doc = "1: Task mode: Initial value of pin before task triggering is high"]
HIGH = 1,
}
impl From<OUTINIT_A> for bool {
#[inline(always)]
fn from(variant: OUTINIT_A) -> Self {
variant as u8 != 0
}
}
impl OUTINIT_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> OUTINIT_A {
match self.bits {
false => OUTINIT_A::LOW,
true => OUTINIT_A::HIGH,
}
}
#[doc = "Checks if the value of the field is `LOW`"]
#[inline(always)]
pub fn is_low(&self) -> bool {
*self == OUTINIT_A::LOW
}
#[doc = "Checks if the value of the field is `HIGH`"]
#[inline(always)]
pub fn is_high(&self) -> bool {
*self == OUTINIT_A::HIGH
}
}
#[doc = "Field `OUTINIT` writer - When in task mode: Initial value of the output when the GPIOTE channel is configured. When in event mode: No effect."]
pub type OUTINIT_W<'a, const O: u8> = crate::BitWriter<'a, u32, CONFIG_SPEC, OUTINIT_A, O>;
impl<'a, const O: u8> OUTINIT_W<'a, O> {
#[doc = "Task mode: Initial value of pin before task triggering is low"]
#[inline(always)]
pub fn low(self) -> &'a mut W {
self.variant(OUTINIT_A::LOW)
}
#[doc = "Task mode: Initial value of pin before task triggering is high"]
#[inline(always)]
pub fn high(self) -> &'a mut W {
self.variant(OUTINIT_A::HIGH)
}
}
impl R {
#[doc = "Bits 0:1 - Mode"]
#[inline(always)]
pub fn mode(&self) -> MODE_R {
MODE_R::new((self.bits & 3) as u8)
}
#[doc = "Bits 8:12 - GPIO number associated with SET\\[n\\], CLR\\[n\\], and OUT\\[n\\]
tasks and IN\\[n\\]
event"]
#[inline(always)]
pub fn psel(&self) -> PSEL_R {
PSEL_R::new(((self.bits >> 8) & 0x1f) as u8)
}
#[doc = "Bit 13 - Port number"]
#[inline(always)]
pub fn port(&self) -> PORT_R {
PORT_R::new(((self.bits >> 13) & 1) != 0)
}
#[doc = "Bits 16:17 - When In task mode: Operation to be performed on output when OUT\\[n\\]
task is triggered. When In event mode: Operation on input that shall trigger IN\\[n\\]
event."]
#[inline(always)]
pub fn polarity(&self) -> POLARITY_R {
POLARITY_R::new(((self.bits >> 16) & 3) as u8)
}
#[doc = "Bit 20 - When in task mode: Initial value of the output when the GPIOTE channel is configured. When in event mode: No effect."]
#[inline(always)]
pub fn outinit(&self) -> OUTINIT_R {
OUTINIT_R::new(((self.bits >> 20) & 1) != 0)
}
}
impl W {
#[doc = "Bits 0:1 - Mode"]
#[inline(always)]
pub fn mode(&mut self) -> MODE_W<0> {
MODE_W::new(self)
}
#[doc = "Bits 8:12 - GPIO number associated with SET\\[n\\], CLR\\[n\\], and OUT\\[n\\]
tasks and IN\\[n\\]
event"]
#[inline(always)]
pub fn psel(&mut self) -> PSEL_W<8> {
PSEL_W::new(self)
}
#[doc = "Bit 13 - Port number"]
#[inline(always)]
pub fn port(&mut self) -> PORT_W<13> {
PORT_W::new(self)
}
#[doc = "Bits 16:17 - When In task mode: Operation to be performed on output when OUT\\[n\\]
task is triggered. When In event mode: Operation on input that shall trigger IN\\[n\\]
event."]
#[inline(always)]
pub fn polarity(&mut self) -> POLARITY_W<16> {
POLARITY_W::new(self)
}
#[doc = "Bit 20 - When in task mode: Initial value of the output when the GPIOTE channel is configured. When in event mode: No effect."]
#[inline(always)]
pub fn outinit(&mut self) -> OUTINIT_W<20> {
OUTINIT_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Configuration for OUT\\[n\\], SET\\[n\\], and CLR\\[n\\]
tasks and IN\\[n\\]
event\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [config](index.html) module"]
pub struct CONFIG_SPEC;
impl crate::RegisterSpec for CONFIG_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [config::R](R) reader structure"]
impl crate::Readable for CONFIG_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [config::W](W) writer structure"]
impl crate::Writable for CONFIG_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets CONFIG[%s]
to value 0"]
impl crate::Resettable for CONFIG_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+127
View File
@@ -0,0 +1,127 @@
#[doc = "Register `EVENTS_IN[%s]` reader"]
pub struct R(crate::R<EVENTS_IN_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<EVENTS_IN_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<EVENTS_IN_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<EVENTS_IN_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `EVENTS_IN[%s]` writer"]
pub struct W(crate::W<EVENTS_IN_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<EVENTS_IN_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<EVENTS_IN_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<EVENTS_IN_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `EVENTS_IN` reader - Event generated from pin specified in CONFIG\\[n\\].PSEL"]
pub type EVENTS_IN_R = crate::BitReader<EVENTS_IN_A>;
#[doc = "Event generated from pin specified in CONFIG\\[n\\].PSEL\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EVENTS_IN_A {
#[doc = "0: Event not generated"]
NOT_GENERATED = 0,
#[doc = "1: Event generated"]
GENERATED = 1,
}
impl From<EVENTS_IN_A> for bool {
#[inline(always)]
fn from(variant: EVENTS_IN_A) -> Self {
variant as u8 != 0
}
}
impl EVENTS_IN_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EVENTS_IN_A {
match self.bits {
false => EVENTS_IN_A::NOT_GENERATED,
true => EVENTS_IN_A::GENERATED,
}
}
#[doc = "Checks if the value of the field is `NOT_GENERATED`"]
#[inline(always)]
pub fn is_not_generated(&self) -> bool {
*self == EVENTS_IN_A::NOT_GENERATED
}
#[doc = "Checks if the value of the field is `GENERATED`"]
#[inline(always)]
pub fn is_generated(&self) -> bool {
*self == EVENTS_IN_A::GENERATED
}
}
#[doc = "Field `EVENTS_IN` writer - Event generated from pin specified in CONFIG\\[n\\].PSEL"]
pub type EVENTS_IN_W<'a, const O: u8> = crate::BitWriter<'a, u32, EVENTS_IN_SPEC, EVENTS_IN_A, O>;
impl<'a, const O: u8> EVENTS_IN_W<'a, O> {
#[doc = "Event not generated"]
#[inline(always)]
pub fn not_generated(self) -> &'a mut W {
self.variant(EVENTS_IN_A::NOT_GENERATED)
}
#[doc = "Event generated"]
#[inline(always)]
pub fn generated(self) -> &'a mut W {
self.variant(EVENTS_IN_A::GENERATED)
}
}
impl R {
#[doc = "Bit 0 - Event generated from pin specified in CONFIG\\[n\\].PSEL"]
#[inline(always)]
pub fn events_in(&self) -> EVENTS_IN_R {
EVENTS_IN_R::new((self.bits & 1) != 0)
}
}
impl W {
#[doc = "Bit 0 - Event generated from pin specified in CONFIG\\[n\\].PSEL"]
#[inline(always)]
pub fn events_in(&mut self) -> EVENTS_IN_W<0> {
EVENTS_IN_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Event generated from pin specified in CONFIG\\[n\\].PSEL\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [events_in](index.html) module"]
pub struct EVENTS_IN_SPEC;
impl crate::RegisterSpec for EVENTS_IN_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [events_in::R](R) reader structure"]
impl crate::Readable for EVENTS_IN_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [events_in::W](W) writer structure"]
impl crate::Writable for EVENTS_IN_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets EVENTS_IN[%s]
to value 0"]
impl crate::Resettable for EVENTS_IN_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+127
View File
@@ -0,0 +1,127 @@
#[doc = "Register `EVENTS_PORT` reader"]
pub struct R(crate::R<EVENTS_PORT_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<EVENTS_PORT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<EVENTS_PORT_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<EVENTS_PORT_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `EVENTS_PORT` writer"]
pub struct W(crate::W<EVENTS_PORT_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<EVENTS_PORT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<EVENTS_PORT_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<EVENTS_PORT_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `EVENTS_PORT` reader - Event generated from multiple input GPIO pins with SENSE mechanism enabled"]
pub type EVENTS_PORT_R = crate::BitReader<EVENTS_PORT_A>;
#[doc = "Event generated from multiple input GPIO pins with SENSE mechanism enabled\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EVENTS_PORT_A {
#[doc = "0: Event not generated"]
NOT_GENERATED = 0,
#[doc = "1: Event generated"]
GENERATED = 1,
}
impl From<EVENTS_PORT_A> for bool {
#[inline(always)]
fn from(variant: EVENTS_PORT_A) -> Self {
variant as u8 != 0
}
}
impl EVENTS_PORT_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EVENTS_PORT_A {
match self.bits {
false => EVENTS_PORT_A::NOT_GENERATED,
true => EVENTS_PORT_A::GENERATED,
}
}
#[doc = "Checks if the value of the field is `NOT_GENERATED`"]
#[inline(always)]
pub fn is_not_generated(&self) -> bool {
*self == EVENTS_PORT_A::NOT_GENERATED
}
#[doc = "Checks if the value of the field is `GENERATED`"]
#[inline(always)]
pub fn is_generated(&self) -> bool {
*self == EVENTS_PORT_A::GENERATED
}
}
#[doc = "Field `EVENTS_PORT` writer - Event generated from multiple input GPIO pins with SENSE mechanism enabled"]
pub type EVENTS_PORT_W<'a, const O: u8> =
crate::BitWriter<'a, u32, EVENTS_PORT_SPEC, EVENTS_PORT_A, O>;
impl<'a, const O: u8> EVENTS_PORT_W<'a, O> {
#[doc = "Event not generated"]
#[inline(always)]
pub fn not_generated(self) -> &'a mut W {
self.variant(EVENTS_PORT_A::NOT_GENERATED)
}
#[doc = "Event generated"]
#[inline(always)]
pub fn generated(self) -> &'a mut W {
self.variant(EVENTS_PORT_A::GENERATED)
}
}
impl R {
#[doc = "Bit 0 - Event generated from multiple input GPIO pins with SENSE mechanism enabled"]
#[inline(always)]
pub fn events_port(&self) -> EVENTS_PORT_R {
EVENTS_PORT_R::new((self.bits & 1) != 0)
}
}
impl W {
#[doc = "Bit 0 - Event generated from multiple input GPIO pins with SENSE mechanism enabled"]
#[inline(always)]
pub fn events_port(&mut self) -> EVENTS_PORT_W<0> {
EVENTS_PORT_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Event generated from multiple input GPIO pins with SENSE mechanism enabled\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [events_port](index.html) module"]
pub struct EVENTS_PORT_SPEC;
impl crate::RegisterSpec for EVENTS_PORT_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [events_port::R](R) reader structure"]
impl crate::Readable for EVENTS_PORT_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [events_port::W](W) writer structure"]
impl crate::Writable for EVENTS_PORT_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets EVENTS_PORT to value 0"]
impl crate::Resettable for EVENTS_PORT_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+669
View File
@@ -0,0 +1,669 @@
#[doc = "Register `INTENCLR` reader"]
pub struct R(crate::R<INTENCLR_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<INTENCLR_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<INTENCLR_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<INTENCLR_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `INTENCLR` writer"]
pub struct W(crate::W<INTENCLR_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<INTENCLR_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<INTENCLR_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<INTENCLR_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `IN0` reader - Write '1' to disable interrupt for event IN\\[0\\]"]
pub type IN0_R = crate::BitReader<IN0_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[0\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN0_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN0_A> for bool {
#[inline(always)]
fn from(variant: IN0_A) -> Self {
variant as u8 != 0
}
}
impl IN0_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN0_A {
match self.bits {
false => IN0_A::DISABLED,
true => IN0_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN0_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN0_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[0\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN0_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN0_AW> for bool {
#[inline(always)]
fn from(variant: IN0_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN0` writer - Write '1' to disable interrupt for event IN\\[0\\]"]
pub type IN0_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN0_AW, O>;
impl<'a, const O: u8> IN0_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN0_AW::CLEAR)
}
}
#[doc = "Field `IN1` reader - Write '1' to disable interrupt for event IN\\[1\\]"]
pub type IN1_R = crate::BitReader<IN1_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[1\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN1_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN1_A> for bool {
#[inline(always)]
fn from(variant: IN1_A) -> Self {
variant as u8 != 0
}
}
impl IN1_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN1_A {
match self.bits {
false => IN1_A::DISABLED,
true => IN1_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN1_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN1_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[1\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN1_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN1_AW> for bool {
#[inline(always)]
fn from(variant: IN1_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN1` writer - Write '1' to disable interrupt for event IN\\[1\\]"]
pub type IN1_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN1_AW, O>;
impl<'a, const O: u8> IN1_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN1_AW::CLEAR)
}
}
#[doc = "Field `IN2` reader - Write '1' to disable interrupt for event IN\\[2\\]"]
pub type IN2_R = crate::BitReader<IN2_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[2\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN2_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN2_A> for bool {
#[inline(always)]
fn from(variant: IN2_A) -> Self {
variant as u8 != 0
}
}
impl IN2_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN2_A {
match self.bits {
false => IN2_A::DISABLED,
true => IN2_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN2_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN2_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[2\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN2_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN2_AW> for bool {
#[inline(always)]
fn from(variant: IN2_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN2` writer - Write '1' to disable interrupt for event IN\\[2\\]"]
pub type IN2_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN2_AW, O>;
impl<'a, const O: u8> IN2_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN2_AW::CLEAR)
}
}
#[doc = "Field `IN3` reader - Write '1' to disable interrupt for event IN\\[3\\]"]
pub type IN3_R = crate::BitReader<IN3_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[3\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN3_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN3_A> for bool {
#[inline(always)]
fn from(variant: IN3_A) -> Self {
variant as u8 != 0
}
}
impl IN3_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN3_A {
match self.bits {
false => IN3_A::DISABLED,
true => IN3_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN3_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN3_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[3\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN3_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN3_AW> for bool {
#[inline(always)]
fn from(variant: IN3_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN3` writer - Write '1' to disable interrupt for event IN\\[3\\]"]
pub type IN3_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN3_AW, O>;
impl<'a, const O: u8> IN3_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN3_AW::CLEAR)
}
}
#[doc = "Field `IN4` reader - Write '1' to disable interrupt for event IN\\[4\\]"]
pub type IN4_R = crate::BitReader<IN4_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[4\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN4_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN4_A> for bool {
#[inline(always)]
fn from(variant: IN4_A) -> Self {
variant as u8 != 0
}
}
impl IN4_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN4_A {
match self.bits {
false => IN4_A::DISABLED,
true => IN4_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN4_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN4_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[4\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN4_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN4_AW> for bool {
#[inline(always)]
fn from(variant: IN4_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN4` writer - Write '1' to disable interrupt for event IN\\[4\\]"]
pub type IN4_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN4_AW, O>;
impl<'a, const O: u8> IN4_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN4_AW::CLEAR)
}
}
#[doc = "Field `IN5` reader - Write '1' to disable interrupt for event IN\\[5\\]"]
pub type IN5_R = crate::BitReader<IN5_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[5\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN5_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN5_A> for bool {
#[inline(always)]
fn from(variant: IN5_A) -> Self {
variant as u8 != 0
}
}
impl IN5_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN5_A {
match self.bits {
false => IN5_A::DISABLED,
true => IN5_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN5_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN5_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[5\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN5_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN5_AW> for bool {
#[inline(always)]
fn from(variant: IN5_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN5` writer - Write '1' to disable interrupt for event IN\\[5\\]"]
pub type IN5_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN5_AW, O>;
impl<'a, const O: u8> IN5_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN5_AW::CLEAR)
}
}
#[doc = "Field `IN6` reader - Write '1' to disable interrupt for event IN\\[6\\]"]
pub type IN6_R = crate::BitReader<IN6_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[6\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN6_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN6_A> for bool {
#[inline(always)]
fn from(variant: IN6_A) -> Self {
variant as u8 != 0
}
}
impl IN6_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN6_A {
match self.bits {
false => IN6_A::DISABLED,
true => IN6_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN6_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN6_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[6\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN6_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN6_AW> for bool {
#[inline(always)]
fn from(variant: IN6_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN6` writer - Write '1' to disable interrupt for event IN\\[6\\]"]
pub type IN6_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN6_AW, O>;
impl<'a, const O: u8> IN6_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN6_AW::CLEAR)
}
}
#[doc = "Field `IN7` reader - Write '1' to disable interrupt for event IN\\[7\\]"]
pub type IN7_R = crate::BitReader<IN7_A>;
#[doc = "Write '1' to disable interrupt for event IN\\[7\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN7_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN7_A> for bool {
#[inline(always)]
fn from(variant: IN7_A) -> Self {
variant as u8 != 0
}
}
impl IN7_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN7_A {
match self.bits {
false => IN7_A::DISABLED,
true => IN7_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN7_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN7_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event IN\\[7\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN7_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<IN7_AW> for bool {
#[inline(always)]
fn from(variant: IN7_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN7` writer - Write '1' to disable interrupt for event IN\\[7\\]"]
pub type IN7_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, IN7_AW, O>;
impl<'a, const O: u8> IN7_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(IN7_AW::CLEAR)
}
}
#[doc = "Field `PORT` reader - Write '1' to disable interrupt for event PORT"]
pub type PORT_R = crate::BitReader<PORT_A>;
#[doc = "Write '1' to disable interrupt for event PORT\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum PORT_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<PORT_A> for bool {
#[inline(always)]
fn from(variant: PORT_A) -> Self {
variant as u8 != 0
}
}
impl PORT_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> PORT_A {
match self.bits {
false => PORT_A::DISABLED,
true => PORT_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == PORT_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == PORT_A::ENABLED
}
}
#[doc = "Write '1' to disable interrupt for event PORT\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum PORT_AW {
#[doc = "1: Disable"]
CLEAR = 1,
}
impl From<PORT_AW> for bool {
#[inline(always)]
fn from(variant: PORT_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `PORT` writer - Write '1' to disable interrupt for event PORT"]
pub type PORT_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENCLR_SPEC, PORT_AW, O>;
impl<'a, const O: u8> PORT_W<'a, O> {
#[doc = "Disable"]
#[inline(always)]
pub fn clear(self) -> &'a mut W {
self.variant(PORT_AW::CLEAR)
}
}
impl R {
#[doc = "Bit 0 - Write '1' to disable interrupt for event IN\\[0\\]"]
#[inline(always)]
pub fn in0(&self) -> IN0_R {
IN0_R::new((self.bits & 1) != 0)
}
#[doc = "Bit 1 - Write '1' to disable interrupt for event IN\\[1\\]"]
#[inline(always)]
pub fn in1(&self) -> IN1_R {
IN1_R::new(((self.bits >> 1) & 1) != 0)
}
#[doc = "Bit 2 - Write '1' to disable interrupt for event IN\\[2\\]"]
#[inline(always)]
pub fn in2(&self) -> IN2_R {
IN2_R::new(((self.bits >> 2) & 1) != 0)
}
#[doc = "Bit 3 - Write '1' to disable interrupt for event IN\\[3\\]"]
#[inline(always)]
pub fn in3(&self) -> IN3_R {
IN3_R::new(((self.bits >> 3) & 1) != 0)
}
#[doc = "Bit 4 - Write '1' to disable interrupt for event IN\\[4\\]"]
#[inline(always)]
pub fn in4(&self) -> IN4_R {
IN4_R::new(((self.bits >> 4) & 1) != 0)
}
#[doc = "Bit 5 - Write '1' to disable interrupt for event IN\\[5\\]"]
#[inline(always)]
pub fn in5(&self) -> IN5_R {
IN5_R::new(((self.bits >> 5) & 1) != 0)
}
#[doc = "Bit 6 - Write '1' to disable interrupt for event IN\\[6\\]"]
#[inline(always)]
pub fn in6(&self) -> IN6_R {
IN6_R::new(((self.bits >> 6) & 1) != 0)
}
#[doc = "Bit 7 - Write '1' to disable interrupt for event IN\\[7\\]"]
#[inline(always)]
pub fn in7(&self) -> IN7_R {
IN7_R::new(((self.bits >> 7) & 1) != 0)
}
#[doc = "Bit 31 - Write '1' to disable interrupt for event PORT"]
#[inline(always)]
pub fn port(&self) -> PORT_R {
PORT_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bit 0 - Write '1' to disable interrupt for event IN\\[0\\]"]
#[inline(always)]
pub fn in0(&mut self) -> IN0_W<0> {
IN0_W::new(self)
}
#[doc = "Bit 1 - Write '1' to disable interrupt for event IN\\[1\\]"]
#[inline(always)]
pub fn in1(&mut self) -> IN1_W<1> {
IN1_W::new(self)
}
#[doc = "Bit 2 - Write '1' to disable interrupt for event IN\\[2\\]"]
#[inline(always)]
pub fn in2(&mut self) -> IN2_W<2> {
IN2_W::new(self)
}
#[doc = "Bit 3 - Write '1' to disable interrupt for event IN\\[3\\]"]
#[inline(always)]
pub fn in3(&mut self) -> IN3_W<3> {
IN3_W::new(self)
}
#[doc = "Bit 4 - Write '1' to disable interrupt for event IN\\[4\\]"]
#[inline(always)]
pub fn in4(&mut self) -> IN4_W<4> {
IN4_W::new(self)
}
#[doc = "Bit 5 - Write '1' to disable interrupt for event IN\\[5\\]"]
#[inline(always)]
pub fn in5(&mut self) -> IN5_W<5> {
IN5_W::new(self)
}
#[doc = "Bit 6 - Write '1' to disable interrupt for event IN\\[6\\]"]
#[inline(always)]
pub fn in6(&mut self) -> IN6_W<6> {
IN6_W::new(self)
}
#[doc = "Bit 7 - Write '1' to disable interrupt for event IN\\[7\\]"]
#[inline(always)]
pub fn in7(&mut self) -> IN7_W<7> {
IN7_W::new(self)
}
#[doc = "Bit 31 - Write '1' to disable interrupt for event PORT"]
#[inline(always)]
pub fn port(&mut self) -> PORT_W<31> {
PORT_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Disable interrupt\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intenclr](index.html) module"]
pub struct INTENCLR_SPEC;
impl crate::RegisterSpec for INTENCLR_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [intenclr::R](R) reader structure"]
impl crate::Readable for INTENCLR_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [intenclr::W](W) writer structure"]
impl crate::Writable for INTENCLR_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets INTENCLR to value 0"]
impl crate::Resettable for INTENCLR_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+669
View File
@@ -0,0 +1,669 @@
#[doc = "Register `INTENSET` reader"]
pub struct R(crate::R<INTENSET_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<INTENSET_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<INTENSET_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<INTENSET_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `INTENSET` writer"]
pub struct W(crate::W<INTENSET_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<INTENSET_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<INTENSET_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<INTENSET_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `IN0` reader - Write '1' to enable interrupt for event IN\\[0\\]"]
pub type IN0_R = crate::BitReader<IN0_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[0\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN0_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN0_A> for bool {
#[inline(always)]
fn from(variant: IN0_A) -> Self {
variant as u8 != 0
}
}
impl IN0_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN0_A {
match self.bits {
false => IN0_A::DISABLED,
true => IN0_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN0_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN0_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[0\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN0_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN0_AW> for bool {
#[inline(always)]
fn from(variant: IN0_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN0` writer - Write '1' to enable interrupt for event IN\\[0\\]"]
pub type IN0_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN0_AW, O>;
impl<'a, const O: u8> IN0_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN0_AW::SET)
}
}
#[doc = "Field `IN1` reader - Write '1' to enable interrupt for event IN\\[1\\]"]
pub type IN1_R = crate::BitReader<IN1_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[1\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN1_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN1_A> for bool {
#[inline(always)]
fn from(variant: IN1_A) -> Self {
variant as u8 != 0
}
}
impl IN1_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN1_A {
match self.bits {
false => IN1_A::DISABLED,
true => IN1_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN1_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN1_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[1\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN1_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN1_AW> for bool {
#[inline(always)]
fn from(variant: IN1_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN1` writer - Write '1' to enable interrupt for event IN\\[1\\]"]
pub type IN1_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN1_AW, O>;
impl<'a, const O: u8> IN1_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN1_AW::SET)
}
}
#[doc = "Field `IN2` reader - Write '1' to enable interrupt for event IN\\[2\\]"]
pub type IN2_R = crate::BitReader<IN2_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[2\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN2_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN2_A> for bool {
#[inline(always)]
fn from(variant: IN2_A) -> Self {
variant as u8 != 0
}
}
impl IN2_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN2_A {
match self.bits {
false => IN2_A::DISABLED,
true => IN2_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN2_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN2_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[2\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN2_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN2_AW> for bool {
#[inline(always)]
fn from(variant: IN2_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN2` writer - Write '1' to enable interrupt for event IN\\[2\\]"]
pub type IN2_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN2_AW, O>;
impl<'a, const O: u8> IN2_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN2_AW::SET)
}
}
#[doc = "Field `IN3` reader - Write '1' to enable interrupt for event IN\\[3\\]"]
pub type IN3_R = crate::BitReader<IN3_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[3\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN3_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN3_A> for bool {
#[inline(always)]
fn from(variant: IN3_A) -> Self {
variant as u8 != 0
}
}
impl IN3_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN3_A {
match self.bits {
false => IN3_A::DISABLED,
true => IN3_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN3_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN3_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[3\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN3_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN3_AW> for bool {
#[inline(always)]
fn from(variant: IN3_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN3` writer - Write '1' to enable interrupt for event IN\\[3\\]"]
pub type IN3_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN3_AW, O>;
impl<'a, const O: u8> IN3_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN3_AW::SET)
}
}
#[doc = "Field `IN4` reader - Write '1' to enable interrupt for event IN\\[4\\]"]
pub type IN4_R = crate::BitReader<IN4_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[4\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN4_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN4_A> for bool {
#[inline(always)]
fn from(variant: IN4_A) -> Self {
variant as u8 != 0
}
}
impl IN4_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN4_A {
match self.bits {
false => IN4_A::DISABLED,
true => IN4_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN4_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN4_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[4\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN4_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN4_AW> for bool {
#[inline(always)]
fn from(variant: IN4_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN4` writer - Write '1' to enable interrupt for event IN\\[4\\]"]
pub type IN4_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN4_AW, O>;
impl<'a, const O: u8> IN4_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN4_AW::SET)
}
}
#[doc = "Field `IN5` reader - Write '1' to enable interrupt for event IN\\[5\\]"]
pub type IN5_R = crate::BitReader<IN5_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[5\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN5_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN5_A> for bool {
#[inline(always)]
fn from(variant: IN5_A) -> Self {
variant as u8 != 0
}
}
impl IN5_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN5_A {
match self.bits {
false => IN5_A::DISABLED,
true => IN5_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN5_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN5_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[5\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN5_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN5_AW> for bool {
#[inline(always)]
fn from(variant: IN5_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN5` writer - Write '1' to enable interrupt for event IN\\[5\\]"]
pub type IN5_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN5_AW, O>;
impl<'a, const O: u8> IN5_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN5_AW::SET)
}
}
#[doc = "Field `IN6` reader - Write '1' to enable interrupt for event IN\\[6\\]"]
pub type IN6_R = crate::BitReader<IN6_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[6\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN6_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN6_A> for bool {
#[inline(always)]
fn from(variant: IN6_A) -> Self {
variant as u8 != 0
}
}
impl IN6_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN6_A {
match self.bits {
false => IN6_A::DISABLED,
true => IN6_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN6_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN6_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[6\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN6_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN6_AW> for bool {
#[inline(always)]
fn from(variant: IN6_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN6` writer - Write '1' to enable interrupt for event IN\\[6\\]"]
pub type IN6_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN6_AW, O>;
impl<'a, const O: u8> IN6_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN6_AW::SET)
}
}
#[doc = "Field `IN7` reader - Write '1' to enable interrupt for event IN\\[7\\]"]
pub type IN7_R = crate::BitReader<IN7_A>;
#[doc = "Write '1' to enable interrupt for event IN\\[7\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN7_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<IN7_A> for bool {
#[inline(always)]
fn from(variant: IN7_A) -> Self {
variant as u8 != 0
}
}
impl IN7_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> IN7_A {
match self.bits {
false => IN7_A::DISABLED,
true => IN7_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == IN7_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == IN7_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event IN\\[7\\]\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IN7_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<IN7_AW> for bool {
#[inline(always)]
fn from(variant: IN7_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `IN7` writer - Write '1' to enable interrupt for event IN\\[7\\]"]
pub type IN7_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, IN7_AW, O>;
impl<'a, const O: u8> IN7_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(IN7_AW::SET)
}
}
#[doc = "Field `PORT` reader - Write '1' to enable interrupt for event PORT"]
pub type PORT_R = crate::BitReader<PORT_A>;
#[doc = "Write '1' to enable interrupt for event PORT\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum PORT_A {
#[doc = "0: Read: Disabled"]
DISABLED = 0,
#[doc = "1: Read: Enabled"]
ENABLED = 1,
}
impl From<PORT_A> for bool {
#[inline(always)]
fn from(variant: PORT_A) -> Self {
variant as u8 != 0
}
}
impl PORT_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> PORT_A {
match self.bits {
false => PORT_A::DISABLED,
true => PORT_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == PORT_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == PORT_A::ENABLED
}
}
#[doc = "Write '1' to enable interrupt for event PORT\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum PORT_AW {
#[doc = "1: Enable"]
SET = 1,
}
impl From<PORT_AW> for bool {
#[inline(always)]
fn from(variant: PORT_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `PORT` writer - Write '1' to enable interrupt for event PORT"]
pub type PORT_W<'a, const O: u8> = crate::BitWriter<'a, u32, INTENSET_SPEC, PORT_AW, O>;
impl<'a, const O: u8> PORT_W<'a, O> {
#[doc = "Enable"]
#[inline(always)]
pub fn set(self) -> &'a mut W {
self.variant(PORT_AW::SET)
}
}
impl R {
#[doc = "Bit 0 - Write '1' to enable interrupt for event IN\\[0\\]"]
#[inline(always)]
pub fn in0(&self) -> IN0_R {
IN0_R::new((self.bits & 1) != 0)
}
#[doc = "Bit 1 - Write '1' to enable interrupt for event IN\\[1\\]"]
#[inline(always)]
pub fn in1(&self) -> IN1_R {
IN1_R::new(((self.bits >> 1) & 1) != 0)
}
#[doc = "Bit 2 - Write '1' to enable interrupt for event IN\\[2\\]"]
#[inline(always)]
pub fn in2(&self) -> IN2_R {
IN2_R::new(((self.bits >> 2) & 1) != 0)
}
#[doc = "Bit 3 - Write '1' to enable interrupt for event IN\\[3\\]"]
#[inline(always)]
pub fn in3(&self) -> IN3_R {
IN3_R::new(((self.bits >> 3) & 1) != 0)
}
#[doc = "Bit 4 - Write '1' to enable interrupt for event IN\\[4\\]"]
#[inline(always)]
pub fn in4(&self) -> IN4_R {
IN4_R::new(((self.bits >> 4) & 1) != 0)
}
#[doc = "Bit 5 - Write '1' to enable interrupt for event IN\\[5\\]"]
#[inline(always)]
pub fn in5(&self) -> IN5_R {
IN5_R::new(((self.bits >> 5) & 1) != 0)
}
#[doc = "Bit 6 - Write '1' to enable interrupt for event IN\\[6\\]"]
#[inline(always)]
pub fn in6(&self) -> IN6_R {
IN6_R::new(((self.bits >> 6) & 1) != 0)
}
#[doc = "Bit 7 - Write '1' to enable interrupt for event IN\\[7\\]"]
#[inline(always)]
pub fn in7(&self) -> IN7_R {
IN7_R::new(((self.bits >> 7) & 1) != 0)
}
#[doc = "Bit 31 - Write '1' to enable interrupt for event PORT"]
#[inline(always)]
pub fn port(&self) -> PORT_R {
PORT_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bit 0 - Write '1' to enable interrupt for event IN\\[0\\]"]
#[inline(always)]
pub fn in0(&mut self) -> IN0_W<0> {
IN0_W::new(self)
}
#[doc = "Bit 1 - Write '1' to enable interrupt for event IN\\[1\\]"]
#[inline(always)]
pub fn in1(&mut self) -> IN1_W<1> {
IN1_W::new(self)
}
#[doc = "Bit 2 - Write '1' to enable interrupt for event IN\\[2\\]"]
#[inline(always)]
pub fn in2(&mut self) -> IN2_W<2> {
IN2_W::new(self)
}
#[doc = "Bit 3 - Write '1' to enable interrupt for event IN\\[3\\]"]
#[inline(always)]
pub fn in3(&mut self) -> IN3_W<3> {
IN3_W::new(self)
}
#[doc = "Bit 4 - Write '1' to enable interrupt for event IN\\[4\\]"]
#[inline(always)]
pub fn in4(&mut self) -> IN4_W<4> {
IN4_W::new(self)
}
#[doc = "Bit 5 - Write '1' to enable interrupt for event IN\\[5\\]"]
#[inline(always)]
pub fn in5(&mut self) -> IN5_W<5> {
IN5_W::new(self)
}
#[doc = "Bit 6 - Write '1' to enable interrupt for event IN\\[6\\]"]
#[inline(always)]
pub fn in6(&mut self) -> IN6_W<6> {
IN6_W::new(self)
}
#[doc = "Bit 7 - Write '1' to enable interrupt for event IN\\[7\\]"]
#[inline(always)]
pub fn in7(&mut self) -> IN7_W<7> {
IN7_W::new(self)
}
#[doc = "Bit 31 - Write '1' to enable interrupt for event PORT"]
#[inline(always)]
pub fn port(&mut self) -> PORT_W<31> {
PORT_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Enable interrupt\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [intenset](index.html) module"]
pub struct INTENSET_SPEC;
impl crate::RegisterSpec for INTENSET_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [intenset::R](R) reader structure"]
impl crate::Readable for INTENSET_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [intenset::W](W) writer structure"]
impl crate::Writable for INTENSET_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets INTENSET to value 0"]
impl crate::Resettable for INTENSET_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+126
View File
@@ -0,0 +1,126 @@
#[doc = "Register `LATENCY` reader"]
pub struct R(crate::R<LATENCY_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<LATENCY_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<LATENCY_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<LATENCY_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `LATENCY` writer"]
pub struct W(crate::W<LATENCY_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<LATENCY_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<LATENCY_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<LATENCY_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `LATENCY` reader - Latency setting"]
pub type LATENCY_R = crate::BitReader<LATENCY_A>;
#[doc = "Latency setting\n\nValue on reset: 1"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum LATENCY_A {
#[doc = "0: Low power setting, for signals with minimum hold time tGPIOTE,HOLD,LP; refer to Electrical specification section"]
LOW_POWER = 0,
#[doc = "1: Low latency setting, for signals with minimum hold time tGPIOTE,HOLD,LL; refer to Electrical specification section"]
LOW_LATENCY = 1,
}
impl From<LATENCY_A> for bool {
#[inline(always)]
fn from(variant: LATENCY_A) -> Self {
variant as u8 != 0
}
}
impl LATENCY_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> LATENCY_A {
match self.bits {
false => LATENCY_A::LOW_POWER,
true => LATENCY_A::LOW_LATENCY,
}
}
#[doc = "Checks if the value of the field is `LOW_POWER`"]
#[inline(always)]
pub fn is_low_power(&self) -> bool {
*self == LATENCY_A::LOW_POWER
}
#[doc = "Checks if the value of the field is `LOW_LATENCY`"]
#[inline(always)]
pub fn is_low_latency(&self) -> bool {
*self == LATENCY_A::LOW_LATENCY
}
}
#[doc = "Field `LATENCY` writer - Latency setting"]
pub type LATENCY_W<'a, const O: u8> = crate::BitWriter<'a, u32, LATENCY_SPEC, LATENCY_A, O>;
impl<'a, const O: u8> LATENCY_W<'a, O> {
#[doc = "Low power setting, for signals with minimum hold time tGPIOTE,HOLD,LP; refer to Electrical specification section"]
#[inline(always)]
pub fn low_power(self) -> &'a mut W {
self.variant(LATENCY_A::LOW_POWER)
}
#[doc = "Low latency setting, for signals with minimum hold time tGPIOTE,HOLD,LL; refer to Electrical specification section"]
#[inline(always)]
pub fn low_latency(self) -> &'a mut W {
self.variant(LATENCY_A::LOW_LATENCY)
}
}
impl R {
#[doc = "Bit 0 - Latency setting"]
#[inline(always)]
pub fn latency(&self) -> LATENCY_R {
LATENCY_R::new((self.bits & 1) != 0)
}
}
impl W {
#[doc = "Bit 0 - Latency setting"]
#[inline(always)]
pub fn latency(&mut self) -> LATENCY_W<0> {
LATENCY_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Latency selection for Event mode (MODE=Event) with rising or falling edge detection on the pin.\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [latency](index.html) module"]
pub struct LATENCY_SPEC;
impl crate::RegisterSpec for LATENCY_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [latency::R](R) reader structure"]
impl crate::Readable for LATENCY_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [latency::W](W) writer structure"]
impl crate::Writable for LATENCY_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets LATENCY to value 0x01"]
impl crate::Resettable for LATENCY_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0x01
}
}
+145
View File
@@ -0,0 +1,145 @@
#[doc = "Register `PUBLISH_IN[%s]` reader"]
pub struct R(crate::R<PUBLISH_IN_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<PUBLISH_IN_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<PUBLISH_IN_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<PUBLISH_IN_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `PUBLISH_IN[%s]` writer"]
pub struct W(crate::W<PUBLISH_IN_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<PUBLISH_IN_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<PUBLISH_IN_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<PUBLISH_IN_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `CHIDX` reader - DPPI channel that event IN\\[n\\]
will publish to."]
pub type CHIDX_R = crate::FieldReader<u8, u8>;
#[doc = "Field `CHIDX` writer - DPPI channel that event IN\\[n\\]
will publish to."]
pub type CHIDX_W<'a, const O: u8> = crate::FieldWriter<'a, u32, PUBLISH_IN_SPEC, u8, u8, 8, O>;
#[doc = "Field `EN` reader - "]
pub type EN_R = crate::BitReader<EN_A>;
#[doc = "\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EN_A {
#[doc = "0: Disable publishing"]
DISABLED = 0,
#[doc = "1: Enable publishing"]
ENABLED = 1,
}
impl From<EN_A> for bool {
#[inline(always)]
fn from(variant: EN_A) -> Self {
variant as u8 != 0
}
}
impl EN_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EN_A {
match self.bits {
false => EN_A::DISABLED,
true => EN_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == EN_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == EN_A::ENABLED
}
}
#[doc = "Field `EN` writer - "]
pub type EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, PUBLISH_IN_SPEC, EN_A, O>;
impl<'a, const O: u8> EN_W<'a, O> {
#[doc = "Disable publishing"]
#[inline(always)]
pub fn disabled(self) -> &'a mut W {
self.variant(EN_A::DISABLED)
}
#[doc = "Enable publishing"]
#[inline(always)]
pub fn enabled(self) -> &'a mut W {
self.variant(EN_A::ENABLED)
}
}
impl R {
#[doc = "Bits 0:7 - DPPI channel that event IN\\[n\\]
will publish to."]
#[inline(always)]
pub fn chidx(&self) -> CHIDX_R {
CHIDX_R::new((self.bits & 0xff) as u8)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&self) -> EN_R {
EN_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bits 0:7 - DPPI channel that event IN\\[n\\]
will publish to."]
#[inline(always)]
pub fn chidx(&mut self) -> CHIDX_W<0> {
CHIDX_W::new(self)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&mut self) -> EN_W<31> {
EN_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Publish configuration for event IN\\[n\\]\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [publish_in](index.html) module"]
pub struct PUBLISH_IN_SPEC;
impl crate::RegisterSpec for PUBLISH_IN_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [publish_in::R](R) reader structure"]
impl crate::Readable for PUBLISH_IN_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [publish_in::W](W) writer structure"]
impl crate::Writable for PUBLISH_IN_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets PUBLISH_IN[%s]
to value 0"]
impl crate::Resettable for PUBLISH_IN_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+140
View File
@@ -0,0 +1,140 @@
#[doc = "Register `PUBLISH_PORT` reader"]
pub struct R(crate::R<PUBLISH_PORT_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<PUBLISH_PORT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<PUBLISH_PORT_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<PUBLISH_PORT_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `PUBLISH_PORT` writer"]
pub struct W(crate::W<PUBLISH_PORT_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<PUBLISH_PORT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<PUBLISH_PORT_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<PUBLISH_PORT_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `CHIDX` reader - DPPI channel that event PORT will publish to."]
pub type CHIDX_R = crate::FieldReader<u8, u8>;
#[doc = "Field `CHIDX` writer - DPPI channel that event PORT will publish to."]
pub type CHIDX_W<'a, const O: u8> = crate::FieldWriter<'a, u32, PUBLISH_PORT_SPEC, u8, u8, 8, O>;
#[doc = "Field `EN` reader - "]
pub type EN_R = crate::BitReader<EN_A>;
#[doc = "\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EN_A {
#[doc = "0: Disable publishing"]
DISABLED = 0,
#[doc = "1: Enable publishing"]
ENABLED = 1,
}
impl From<EN_A> for bool {
#[inline(always)]
fn from(variant: EN_A) -> Self {
variant as u8 != 0
}
}
impl EN_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EN_A {
match self.bits {
false => EN_A::DISABLED,
true => EN_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == EN_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == EN_A::ENABLED
}
}
#[doc = "Field `EN` writer - "]
pub type EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, PUBLISH_PORT_SPEC, EN_A, O>;
impl<'a, const O: u8> EN_W<'a, O> {
#[doc = "Disable publishing"]
#[inline(always)]
pub fn disabled(self) -> &'a mut W {
self.variant(EN_A::DISABLED)
}
#[doc = "Enable publishing"]
#[inline(always)]
pub fn enabled(self) -> &'a mut W {
self.variant(EN_A::ENABLED)
}
}
impl R {
#[doc = "Bits 0:7 - DPPI channel that event PORT will publish to."]
#[inline(always)]
pub fn chidx(&self) -> CHIDX_R {
CHIDX_R::new((self.bits & 0xff) as u8)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&self) -> EN_R {
EN_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bits 0:7 - DPPI channel that event PORT will publish to."]
#[inline(always)]
pub fn chidx(&mut self) -> CHIDX_W<0> {
CHIDX_W::new(self)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&mut self) -> EN_W<31> {
EN_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Publish configuration for event PORT\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [publish_port](index.html) module"]
pub struct PUBLISH_PORT_SPEC;
impl crate::RegisterSpec for PUBLISH_PORT_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [publish_port::R](R) reader structure"]
impl crate::Readable for PUBLISH_PORT_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [publish_port::W](W) writer structure"]
impl crate::Writable for PUBLISH_PORT_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets PUBLISH_PORT to value 0"]
impl crate::Resettable for PUBLISH_PORT_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+145
View File
@@ -0,0 +1,145 @@
#[doc = "Register `SUBSCRIBE_CLR[%s]` reader"]
pub struct R(crate::R<SUBSCRIBE_CLR_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<SUBSCRIBE_CLR_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<SUBSCRIBE_CLR_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<SUBSCRIBE_CLR_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `SUBSCRIBE_CLR[%s]` writer"]
pub struct W(crate::W<SUBSCRIBE_CLR_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<SUBSCRIBE_CLR_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<SUBSCRIBE_CLR_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<SUBSCRIBE_CLR_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `CHIDX` reader - DPPI channel that task CLR\\[n\\]
will subscribe to"]
pub type CHIDX_R = crate::FieldReader<u8, u8>;
#[doc = "Field `CHIDX` writer - DPPI channel that task CLR\\[n\\]
will subscribe to"]
pub type CHIDX_W<'a, const O: u8> = crate::FieldWriter<'a, u32, SUBSCRIBE_CLR_SPEC, u8, u8, 8, O>;
#[doc = "Field `EN` reader - "]
pub type EN_R = crate::BitReader<EN_A>;
#[doc = "\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EN_A {
#[doc = "0: Disable subscription"]
DISABLED = 0,
#[doc = "1: Enable subscription"]
ENABLED = 1,
}
impl From<EN_A> for bool {
#[inline(always)]
fn from(variant: EN_A) -> Self {
variant as u8 != 0
}
}
impl EN_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EN_A {
match self.bits {
false => EN_A::DISABLED,
true => EN_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == EN_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == EN_A::ENABLED
}
}
#[doc = "Field `EN` writer - "]
pub type EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, SUBSCRIBE_CLR_SPEC, EN_A, O>;
impl<'a, const O: u8> EN_W<'a, O> {
#[doc = "Disable subscription"]
#[inline(always)]
pub fn disabled(self) -> &'a mut W {
self.variant(EN_A::DISABLED)
}
#[doc = "Enable subscription"]
#[inline(always)]
pub fn enabled(self) -> &'a mut W {
self.variant(EN_A::ENABLED)
}
}
impl R {
#[doc = "Bits 0:7 - DPPI channel that task CLR\\[n\\]
will subscribe to"]
#[inline(always)]
pub fn chidx(&self) -> CHIDX_R {
CHIDX_R::new((self.bits & 0xff) as u8)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&self) -> EN_R {
EN_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bits 0:7 - DPPI channel that task CLR\\[n\\]
will subscribe to"]
#[inline(always)]
pub fn chidx(&mut self) -> CHIDX_W<0> {
CHIDX_W::new(self)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&mut self) -> EN_W<31> {
EN_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Subscribe configuration for task CLR\\[n\\]\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [subscribe_clr](index.html) module"]
pub struct SUBSCRIBE_CLR_SPEC;
impl crate::RegisterSpec for SUBSCRIBE_CLR_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [subscribe_clr::R](R) reader structure"]
impl crate::Readable for SUBSCRIBE_CLR_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [subscribe_clr::W](W) writer structure"]
impl crate::Writable for SUBSCRIBE_CLR_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets SUBSCRIBE_CLR[%s]
to value 0"]
impl crate::Resettable for SUBSCRIBE_CLR_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+145
View File
@@ -0,0 +1,145 @@
#[doc = "Register `SUBSCRIBE_OUT[%s]` reader"]
pub struct R(crate::R<SUBSCRIBE_OUT_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<SUBSCRIBE_OUT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<SUBSCRIBE_OUT_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<SUBSCRIBE_OUT_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `SUBSCRIBE_OUT[%s]` writer"]
pub struct W(crate::W<SUBSCRIBE_OUT_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<SUBSCRIBE_OUT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<SUBSCRIBE_OUT_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<SUBSCRIBE_OUT_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `CHIDX` reader - DPPI channel that task OUT\\[n\\]
will subscribe to"]
pub type CHIDX_R = crate::FieldReader<u8, u8>;
#[doc = "Field `CHIDX` writer - DPPI channel that task OUT\\[n\\]
will subscribe to"]
pub type CHIDX_W<'a, const O: u8> = crate::FieldWriter<'a, u32, SUBSCRIBE_OUT_SPEC, u8, u8, 8, O>;
#[doc = "Field `EN` reader - "]
pub type EN_R = crate::BitReader<EN_A>;
#[doc = "\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EN_A {
#[doc = "0: Disable subscription"]
DISABLED = 0,
#[doc = "1: Enable subscription"]
ENABLED = 1,
}
impl From<EN_A> for bool {
#[inline(always)]
fn from(variant: EN_A) -> Self {
variant as u8 != 0
}
}
impl EN_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EN_A {
match self.bits {
false => EN_A::DISABLED,
true => EN_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == EN_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == EN_A::ENABLED
}
}
#[doc = "Field `EN` writer - "]
pub type EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, SUBSCRIBE_OUT_SPEC, EN_A, O>;
impl<'a, const O: u8> EN_W<'a, O> {
#[doc = "Disable subscription"]
#[inline(always)]
pub fn disabled(self) -> &'a mut W {
self.variant(EN_A::DISABLED)
}
#[doc = "Enable subscription"]
#[inline(always)]
pub fn enabled(self) -> &'a mut W {
self.variant(EN_A::ENABLED)
}
}
impl R {
#[doc = "Bits 0:7 - DPPI channel that task OUT\\[n\\]
will subscribe to"]
#[inline(always)]
pub fn chidx(&self) -> CHIDX_R {
CHIDX_R::new((self.bits & 0xff) as u8)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&self) -> EN_R {
EN_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bits 0:7 - DPPI channel that task OUT\\[n\\]
will subscribe to"]
#[inline(always)]
pub fn chidx(&mut self) -> CHIDX_W<0> {
CHIDX_W::new(self)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&mut self) -> EN_W<31> {
EN_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Subscribe configuration for task OUT\\[n\\]\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [subscribe_out](index.html) module"]
pub struct SUBSCRIBE_OUT_SPEC;
impl crate::RegisterSpec for SUBSCRIBE_OUT_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [subscribe_out::R](R) reader structure"]
impl crate::Readable for SUBSCRIBE_OUT_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [subscribe_out::W](W) writer structure"]
impl crate::Writable for SUBSCRIBE_OUT_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets SUBSCRIBE_OUT[%s]
to value 0"]
impl crate::Resettable for SUBSCRIBE_OUT_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+145
View File
@@ -0,0 +1,145 @@
#[doc = "Register `SUBSCRIBE_SET[%s]` reader"]
pub struct R(crate::R<SUBSCRIBE_SET_SPEC>);
impl core::ops::Deref for R {
type Target = crate::R<SUBSCRIBE_SET_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl From<crate::R<SUBSCRIBE_SET_SPEC>> for R {
#[inline(always)]
fn from(reader: crate::R<SUBSCRIBE_SET_SPEC>) -> Self {
R(reader)
}
}
#[doc = "Register `SUBSCRIBE_SET[%s]` writer"]
pub struct W(crate::W<SUBSCRIBE_SET_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<SUBSCRIBE_SET_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<SUBSCRIBE_SET_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<SUBSCRIBE_SET_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Field `CHIDX` reader - DPPI channel that task SET\\[n\\]
will subscribe to"]
pub type CHIDX_R = crate::FieldReader<u8, u8>;
#[doc = "Field `CHIDX` writer - DPPI channel that task SET\\[n\\]
will subscribe to"]
pub type CHIDX_W<'a, const O: u8> = crate::FieldWriter<'a, u32, SUBSCRIBE_SET_SPEC, u8, u8, 8, O>;
#[doc = "Field `EN` reader - "]
pub type EN_R = crate::BitReader<EN_A>;
#[doc = "\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum EN_A {
#[doc = "0: Disable subscription"]
DISABLED = 0,
#[doc = "1: Enable subscription"]
ENABLED = 1,
}
impl From<EN_A> for bool {
#[inline(always)]
fn from(variant: EN_A) -> Self {
variant as u8 != 0
}
}
impl EN_R {
#[doc = "Get enumerated values variant"]
#[inline(always)]
pub fn variant(&self) -> EN_A {
match self.bits {
false => EN_A::DISABLED,
true => EN_A::ENABLED,
}
}
#[doc = "Checks if the value of the field is `DISABLED`"]
#[inline(always)]
pub fn is_disabled(&self) -> bool {
*self == EN_A::DISABLED
}
#[doc = "Checks if the value of the field is `ENABLED`"]
#[inline(always)]
pub fn is_enabled(&self) -> bool {
*self == EN_A::ENABLED
}
}
#[doc = "Field `EN` writer - "]
pub type EN_W<'a, const O: u8> = crate::BitWriter<'a, u32, SUBSCRIBE_SET_SPEC, EN_A, O>;
impl<'a, const O: u8> EN_W<'a, O> {
#[doc = "Disable subscription"]
#[inline(always)]
pub fn disabled(self) -> &'a mut W {
self.variant(EN_A::DISABLED)
}
#[doc = "Enable subscription"]
#[inline(always)]
pub fn enabled(self) -> &'a mut W {
self.variant(EN_A::ENABLED)
}
}
impl R {
#[doc = "Bits 0:7 - DPPI channel that task SET\\[n\\]
will subscribe to"]
#[inline(always)]
pub fn chidx(&self) -> CHIDX_R {
CHIDX_R::new((self.bits & 0xff) as u8)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&self) -> EN_R {
EN_R::new(((self.bits >> 31) & 1) != 0)
}
}
impl W {
#[doc = "Bits 0:7 - DPPI channel that task SET\\[n\\]
will subscribe to"]
#[inline(always)]
pub fn chidx(&mut self) -> CHIDX_W<0> {
CHIDX_W::new(self)
}
#[doc = "Bit 31"]
#[inline(always)]
pub fn en(&mut self) -> EN_W<31> {
EN_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Subscribe configuration for task SET\\[n\\]\n\nThis register you can [`read`](crate::generic::Reg::read), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [subscribe_set](index.html) module"]
pub struct SUBSCRIBE_SET_SPEC;
impl crate::RegisterSpec for SUBSCRIBE_SET_SPEC {
type Ux = u32;
}
#[doc = "`read()` method returns [subscribe_set::R](R) reader structure"]
impl crate::Readable for SUBSCRIBE_SET_SPEC {
type Reader = R;
}
#[doc = "`write(|w| ..)` method takes [subscribe_set::W](W) writer structure"]
impl crate::Writable for SUBSCRIBE_SET_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets SUBSCRIBE_SET[%s]
to value 0"]
impl crate::Resettable for SUBSCRIBE_SET_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+72
View File
@@ -0,0 +1,72 @@
#[doc = "Register `TASKS_CLR[%s]` writer"]
pub struct W(crate::W<TASKS_CLR_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<TASKS_CLR_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<TASKS_CLR_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<TASKS_CLR_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it low.\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum TASKS_CLR_AW {
#[doc = "1: Trigger task"]
TRIGGER = 1,
}
impl From<TASKS_CLR_AW> for bool {
#[inline(always)]
fn from(variant: TASKS_CLR_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `TASKS_CLR` writer - Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it low."]
pub type TASKS_CLR_W<'a, const O: u8> = crate::BitWriter<'a, u32, TASKS_CLR_SPEC, TASKS_CLR_AW, O>;
impl<'a, const O: u8> TASKS_CLR_W<'a, O> {
#[doc = "Trigger task"]
#[inline(always)]
pub fn trigger(self) -> &'a mut W {
self.variant(TASKS_CLR_AW::TRIGGER)
}
}
impl W {
#[doc = "Bit 0 - Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it low."]
#[inline(always)]
pub fn tasks_clr(&mut self) -> TASKS_CLR_W<0> {
TASKS_CLR_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it low.\n\nThis register you can [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tasks_clr](index.html) module"]
pub struct TASKS_CLR_SPEC;
impl crate::RegisterSpec for TASKS_CLR_SPEC {
type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [tasks_clr::W](W) writer structure"]
impl crate::Writable for TASKS_CLR_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets TASKS_CLR[%s]
to value 0"]
impl crate::Resettable for TASKS_CLR_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+72
View File
@@ -0,0 +1,72 @@
#[doc = "Register `TASKS_OUT[%s]` writer"]
pub struct W(crate::W<TASKS_OUT_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<TASKS_OUT_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<TASKS_OUT_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<TASKS_OUT_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is configured in CONFIG\\[n\\].POLARITY.\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum TASKS_OUT_AW {
#[doc = "1: Trigger task"]
TRIGGER = 1,
}
impl From<TASKS_OUT_AW> for bool {
#[inline(always)]
fn from(variant: TASKS_OUT_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `TASKS_OUT` writer - Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is configured in CONFIG\\[n\\].POLARITY."]
pub type TASKS_OUT_W<'a, const O: u8> = crate::BitWriter<'a, u32, TASKS_OUT_SPEC, TASKS_OUT_AW, O>;
impl<'a, const O: u8> TASKS_OUT_W<'a, O> {
#[doc = "Trigger task"]
#[inline(always)]
pub fn trigger(self) -> &'a mut W {
self.variant(TASKS_OUT_AW::TRIGGER)
}
}
impl W {
#[doc = "Bit 0 - Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is configured in CONFIG\\[n\\].POLARITY."]
#[inline(always)]
pub fn tasks_out(&mut self) -> TASKS_OUT_W<0> {
TASKS_OUT_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is configured in CONFIG\\[n\\].POLARITY.\n\nThis register you can [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tasks_out](index.html) module"]
pub struct TASKS_OUT_SPEC;
impl crate::RegisterSpec for TASKS_OUT_SPEC {
type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [tasks_out::W](W) writer structure"]
impl crate::Writable for TASKS_OUT_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets TASKS_OUT[%s]
to value 0"]
impl crate::Resettable for TASKS_OUT_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}
+72
View File
@@ -0,0 +1,72 @@
#[doc = "Register `TASKS_SET[%s]` writer"]
pub struct W(crate::W<TASKS_SET_SPEC>);
impl core::ops::Deref for W {
type Target = crate::W<TASKS_SET_SPEC>;
#[inline(always)]
fn deref(&self) -> &Self::Target {
&self.0
}
}
impl core::ops::DerefMut for W {
#[inline(always)]
fn deref_mut(&mut self) -> &mut Self::Target {
&mut self.0
}
}
impl From<crate::W<TASKS_SET_SPEC>> for W {
#[inline(always)]
fn from(writer: crate::W<TASKS_SET_SPEC>) -> Self {
W(writer)
}
}
#[doc = "Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it high.\n\nValue on reset: 0"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum TASKS_SET_AW {
#[doc = "1: Trigger task"]
TRIGGER = 1,
}
impl From<TASKS_SET_AW> for bool {
#[inline(always)]
fn from(variant: TASKS_SET_AW) -> Self {
variant as u8 != 0
}
}
#[doc = "Field `TASKS_SET` writer - Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it high."]
pub type TASKS_SET_W<'a, const O: u8> = crate::BitWriter<'a, u32, TASKS_SET_SPEC, TASKS_SET_AW, O>;
impl<'a, const O: u8> TASKS_SET_W<'a, O> {
#[doc = "Trigger task"]
#[inline(always)]
pub fn trigger(self) -> &'a mut W {
self.variant(TASKS_SET_AW::TRIGGER)
}
}
impl W {
#[doc = "Bit 0 - Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it high."]
#[inline(always)]
pub fn tasks_set(&mut self) -> TASKS_SET_W<0> {
TASKS_SET_W::new(self)
}
#[doc = "Writes raw bits to the register."]
#[inline(always)]
pub unsafe fn bits(&mut self, bits: u32) -> &mut Self {
self.0.bits(bits);
self
}
}
#[doc = "Description collection: Task for writing to pin specified in CONFIG\\[n\\].PSEL. Action on pin is to set it high.\n\nThis register you can [`write_with_zero`](crate::generic::Reg::write_with_zero), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tasks_set](index.html) module"]
pub struct TASKS_SET_SPEC;
impl crate::RegisterSpec for TASKS_SET_SPEC {
type Ux = u32;
}
#[doc = "`write(|w| ..)` method takes [tasks_set::W](W) writer structure"]
impl crate::Writable for TASKS_SET_SPEC {
type Writer = W;
}
#[doc = "`reset()` method sets TASKS_SET[%s]
to value 0"]
impl crate::Resettable for TASKS_SET_SPEC {
#[inline(always)]
fn reset_value() -> Self::Ux {
0
}
}