#[doc = "Register `STATR0` reader"]
pub type R = crate::R<Statr0Spec>;
#[doc = "Field `P0_0REI` reader - Status of Rising Edge Interrupt for P0\\[0\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_0reiR = crate::BitReader;
#[doc = "Field `P0_1REI` reader - Status of Rising Edge Interrupt for P0\\[1\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_1reiR = crate::BitReader;
#[doc = "Field `P0_2REI` reader - Status of Rising Edge Interrupt for P0\\[2\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_2reiR = crate::BitReader;
#[doc = "Field `P0_3REI` reader - Status of Rising Edge Interrupt for P0\\[3\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_3reiR = crate::BitReader;
#[doc = "Field `P0_4REI` reader - Status of Rising Edge Interrupt for P0\\[4\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_4reiR = crate::BitReader;
#[doc = "Field `P0_5REI` reader - Status of Rising Edge Interrupt for P0\\[5\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_5reiR = crate::BitReader;
#[doc = "Field `P0_6REI` reader - Status of Rising Edge Interrupt for P0\\[6\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_6reiR = crate::BitReader;
#[doc = "Field `P0_7REI` reader - Status of Rising Edge Interrupt for P0\\[7\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_7reiR = crate::BitReader;
#[doc = "Field `P0_8REI` reader - Status of Rising Edge Interrupt for P0\\[8\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_8reiR = crate::BitReader;
#[doc = "Field `P0_9REI` reader - Status of Rising Edge Interrupt for P0\\[9\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_9reiR = crate::BitReader;
#[doc = "Field `P0_10REI` reader - Status of Rising Edge Interrupt for P0\\[10\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_10reiR = crate::BitReader;
#[doc = "Field `P0_11REI` reader - Status of Rising Edge Interrupt for P0\\[11\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_11reiR = crate::BitReader;
#[doc = "Field `P0_12REI` reader - Status of Rising Edge Interrupt for P0\\[12\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_12reiR = crate::BitReader;
#[doc = "Field `P0_13REI` reader - Status of Rising Edge Interrupt for P0\\[13\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_13reiR = crate::BitReader;
#[doc = "Field `P0_14REI` reader - Status of Rising Edge Interrupt for P0\\[14\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_14reiR = crate::BitReader;
#[doc = "Field `P0_15REI` reader - Status of Rising Edge Interrupt for P0\\[15\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_15reiR = crate::BitReader;
#[doc = "Field `P0_16REI` reader - Status of Rising Edge Interrupt for P0\\[16\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_16reiR = crate::BitReader;
#[doc = "Field `P0_17REI` reader - Status of Rising Edge Interrupt for P0\\[17\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_17reiR = crate::BitReader;
#[doc = "Field `P0_18REI` reader - Status of Rising Edge Interrupt for P0\\[18\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_18reiR = crate::BitReader;
#[doc = "Field `P0_19REI` reader - Status of Rising Edge Interrupt for P0\\[19\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_19reiR = crate::BitReader;
#[doc = "Field `P0_20REI` reader - Status of Rising Edge Interrupt for P0\\[20\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_20reiR = crate::BitReader;
#[doc = "Field `P0_21REI` reader - Status of Rising Edge Interrupt for P0\\[21\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_21reiR = crate::BitReader;
#[doc = "Field `P0_22REI` reader - Status of Rising Edge Interrupt for P0\\[22\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_22reiR = crate::BitReader;
#[doc = "Field `P0_23REI` reader - Status of Rising Edge Interrupt for P0\\[23\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_23reiR = crate::BitReader;
#[doc = "Field `P0_24REI` reader - Status of Rising Edge Interrupt for P0\\[24\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_24reiR = crate::BitReader;
#[doc = "Field `P0_25REI` reader - Status of Rising Edge Interrupt for P0\\[25\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_25reiR = crate::BitReader;
#[doc = "Field `P0_26REI` reader - Status of Rising Edge Interrupt for P0\\[26\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_26reiR = crate::BitReader;
#[doc = "Field `P0_27REI` reader - Status of Rising Edge Interrupt for P0\\[27\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_27reiR = crate::BitReader;
#[doc = "Field `P0_28REI` reader - Status of Rising Edge Interrupt for P0\\[28\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_28reiR = crate::BitReader;
#[doc = "Field `P0_29REI` reader - Status of Rising Edge Interrupt for P0\\[29\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_29reiR = crate::BitReader;
#[doc = "Field `P0_30REI` reader - Status of Rising Edge Interrupt for P0\\[30\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
pub type P0_30reiR = crate::BitReader;
impl R {
    #[doc = "Bit 0 - Status of Rising Edge Interrupt for P0\\[0\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_0rei(&self) -> P0_0reiR {
        P0_0reiR::new((self.bits & 1) != 0)
    }
    #[doc = "Bit 1 - Status of Rising Edge Interrupt for P0\\[1\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_1rei(&self) -> P0_1reiR {
        P0_1reiR::new(((self.bits >> 1) & 1) != 0)
    }
    #[doc = "Bit 2 - Status of Rising Edge Interrupt for P0\\[2\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_2rei(&self) -> P0_2reiR {
        P0_2reiR::new(((self.bits >> 2) & 1) != 0)
    }
    #[doc = "Bit 3 - Status of Rising Edge Interrupt for P0\\[3\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_3rei(&self) -> P0_3reiR {
        P0_3reiR::new(((self.bits >> 3) & 1) != 0)
    }
    #[doc = "Bit 4 - Status of Rising Edge Interrupt for P0\\[4\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_4rei(&self) -> P0_4reiR {
        P0_4reiR::new(((self.bits >> 4) & 1) != 0)
    }
    #[doc = "Bit 5 - Status of Rising Edge Interrupt for P0\\[5\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_5rei(&self) -> P0_5reiR {
        P0_5reiR::new(((self.bits >> 5) & 1) != 0)
    }
    #[doc = "Bit 6 - Status of Rising Edge Interrupt for P0\\[6\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_6rei(&self) -> P0_6reiR {
        P0_6reiR::new(((self.bits >> 6) & 1) != 0)
    }
    #[doc = "Bit 7 - Status of Rising Edge Interrupt for P0\\[7\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_7rei(&self) -> P0_7reiR {
        P0_7reiR::new(((self.bits >> 7) & 1) != 0)
    }
    #[doc = "Bit 8 - Status of Rising Edge Interrupt for P0\\[8\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_8rei(&self) -> P0_8reiR {
        P0_8reiR::new(((self.bits >> 8) & 1) != 0)
    }
    #[doc = "Bit 9 - Status of Rising Edge Interrupt for P0\\[9\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_9rei(&self) -> P0_9reiR {
        P0_9reiR::new(((self.bits >> 9) & 1) != 0)
    }
    #[doc = "Bit 10 - Status of Rising Edge Interrupt for P0\\[10\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_10rei(&self) -> P0_10reiR {
        P0_10reiR::new(((self.bits >> 10) & 1) != 0)
    }
    #[doc = "Bit 11 - Status of Rising Edge Interrupt for P0\\[11\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_11rei(&self) -> P0_11reiR {
        P0_11reiR::new(((self.bits >> 11) & 1) != 0)
    }
    #[doc = "Bit 12 - Status of Rising Edge Interrupt for P0\\[12\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_12rei(&self) -> P0_12reiR {
        P0_12reiR::new(((self.bits >> 12) & 1) != 0)
    }
    #[doc = "Bit 13 - Status of Rising Edge Interrupt for P0\\[13\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_13rei(&self) -> P0_13reiR {
        P0_13reiR::new(((self.bits >> 13) & 1) != 0)
    }
    #[doc = "Bit 14 - Status of Rising Edge Interrupt for P0\\[14\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_14rei(&self) -> P0_14reiR {
        P0_14reiR::new(((self.bits >> 14) & 1) != 0)
    }
    #[doc = "Bit 15 - Status of Rising Edge Interrupt for P0\\[15\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_15rei(&self) -> P0_15reiR {
        P0_15reiR::new(((self.bits >> 15) & 1) != 0)
    }
    #[doc = "Bit 16 - Status of Rising Edge Interrupt for P0\\[16\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_16rei(&self) -> P0_16reiR {
        P0_16reiR::new(((self.bits >> 16) & 1) != 0)
    }
    #[doc = "Bit 17 - Status of Rising Edge Interrupt for P0\\[17\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_17rei(&self) -> P0_17reiR {
        P0_17reiR::new(((self.bits >> 17) & 1) != 0)
    }
    #[doc = "Bit 18 - Status of Rising Edge Interrupt for P0\\[18\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_18rei(&self) -> P0_18reiR {
        P0_18reiR::new(((self.bits >> 18) & 1) != 0)
    }
    #[doc = "Bit 19 - Status of Rising Edge Interrupt for P0\\[19\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_19rei(&self) -> P0_19reiR {
        P0_19reiR::new(((self.bits >> 19) & 1) != 0)
    }
    #[doc = "Bit 20 - Status of Rising Edge Interrupt for P0\\[20\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_20rei(&self) -> P0_20reiR {
        P0_20reiR::new(((self.bits >> 20) & 1) != 0)
    }
    #[doc = "Bit 21 - Status of Rising Edge Interrupt for P0\\[21\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_21rei(&self) -> P0_21reiR {
        P0_21reiR::new(((self.bits >> 21) & 1) != 0)
    }
    #[doc = "Bit 22 - Status of Rising Edge Interrupt for P0\\[22\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_22rei(&self) -> P0_22reiR {
        P0_22reiR::new(((self.bits >> 22) & 1) != 0)
    }
    #[doc = "Bit 23 - Status of Rising Edge Interrupt for P0\\[23\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_23rei(&self) -> P0_23reiR {
        P0_23reiR::new(((self.bits >> 23) & 1) != 0)
    }
    #[doc = "Bit 24 - Status of Rising Edge Interrupt for P0\\[24\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_24rei(&self) -> P0_24reiR {
        P0_24reiR::new(((self.bits >> 24) & 1) != 0)
    }
    #[doc = "Bit 25 - Status of Rising Edge Interrupt for P0\\[25\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_25rei(&self) -> P0_25reiR {
        P0_25reiR::new(((self.bits >> 25) & 1) != 0)
    }
    #[doc = "Bit 26 - Status of Rising Edge Interrupt for P0\\[26\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_26rei(&self) -> P0_26reiR {
        P0_26reiR::new(((self.bits >> 26) & 1) != 0)
    }
    #[doc = "Bit 27 - Status of Rising Edge Interrupt for P0\\[27\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_27rei(&self) -> P0_27reiR {
        P0_27reiR::new(((self.bits >> 27) & 1) != 0)
    }
    #[doc = "Bit 28 - Status of Rising Edge Interrupt for P0\\[28\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_28rei(&self) -> P0_28reiR {
        P0_28reiR::new(((self.bits >> 28) & 1) != 0)
    }
    #[doc = "Bit 29 - Status of Rising Edge Interrupt for P0\\[29\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_29rei(&self) -> P0_29reiR {
        P0_29reiR::new(((self.bits >> 29) & 1) != 0)
    }
    #[doc = "Bit 30 - Status of Rising Edge Interrupt for P0\\[30\\]. 0 = No rising edge detected. 1 = Rising edge interrupt generated."]
    #[inline(always)]
    pub fn p0_30rei(&self) -> P0_30reiR {
        P0_30reiR::new(((self.bits >> 30) & 1) != 0)
    }
}
#[doc = "GPIO Interrupt Status for Rising edge for Port 0.\n\nYou can [`read`](crate::Reg::read) this register and get [`statr0::R`](R). See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct Statr0Spec;
impl crate::RegisterSpec for Statr0Spec {
    type Ux = u32;
}
#[doc = "`read()` method returns [`statr0::R`](R) reader structure"]
impl crate::Readable for Statr0Spec {}
#[doc = "`reset()` method sets STATR0 to value 0"]
impl crate::Resettable for Statr0Spec {}
