#[doc = "Register `F2R2` reader"]
pub type R = crate::R<F2r2Spec>;
#[doc = "Register `F2R2` writer"]
pub type W = crate::W<F2r2Spec>;
#[doc = "Field `FB0` reader - Filter bits"]
pub type Fb0R = crate::BitReader;
#[doc = "Field `FB0` writer - Filter bits"]
pub type Fb0W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB1` reader - Filter bits"]
pub type Fb1R = crate::BitReader;
#[doc = "Field `FB1` writer - Filter bits"]
pub type Fb1W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB2` reader - Filter bits"]
pub type Fb2R = crate::BitReader;
#[doc = "Field `FB2` writer - Filter bits"]
pub type Fb2W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB3` reader - Filter bits"]
pub type Fb3R = crate::BitReader;
#[doc = "Field `FB3` writer - Filter bits"]
pub type Fb3W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB4` reader - Filter bits"]
pub type Fb4R = crate::BitReader;
#[doc = "Field `FB4` writer - Filter bits"]
pub type Fb4W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB5` reader - Filter bits"]
pub type Fb5R = crate::BitReader;
#[doc = "Field `FB5` writer - Filter bits"]
pub type Fb5W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB6` reader - Filter bits"]
pub type Fb6R = crate::BitReader;
#[doc = "Field `FB6` writer - Filter bits"]
pub type Fb6W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB7` reader - Filter bits"]
pub type Fb7R = crate::BitReader;
#[doc = "Field `FB7` writer - Filter bits"]
pub type Fb7W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB8` reader - Filter bits"]
pub type Fb8R = crate::BitReader;
#[doc = "Field `FB8` writer - Filter bits"]
pub type Fb8W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB9` reader - Filter bits"]
pub type Fb9R = crate::BitReader;
#[doc = "Field `FB9` writer - Filter bits"]
pub type Fb9W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB10` reader - Filter bits"]
pub type Fb10R = crate::BitReader;
#[doc = "Field `FB10` writer - Filter bits"]
pub type Fb10W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB11` reader - Filter bits"]
pub type Fb11R = crate::BitReader;
#[doc = "Field `FB11` writer - Filter bits"]
pub type Fb11W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB12` reader - Filter bits"]
pub type Fb12R = crate::BitReader;
#[doc = "Field `FB12` writer - Filter bits"]
pub type Fb12W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB13` reader - Filter bits"]
pub type Fb13R = crate::BitReader;
#[doc = "Field `FB13` writer - Filter bits"]
pub type Fb13W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB14` reader - Filter bits"]
pub type Fb14R = crate::BitReader;
#[doc = "Field `FB14` writer - Filter bits"]
pub type Fb14W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB15` reader - Filter bits"]
pub type Fb15R = crate::BitReader;
#[doc = "Field `FB15` writer - Filter bits"]
pub type Fb15W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB16` reader - Filter bits"]
pub type Fb16R = crate::BitReader;
#[doc = "Field `FB16` writer - Filter bits"]
pub type Fb16W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB17` reader - Filter bits"]
pub type Fb17R = crate::BitReader;
#[doc = "Field `FB17` writer - Filter bits"]
pub type Fb17W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB18` reader - Filter bits"]
pub type Fb18R = crate::BitReader;
#[doc = "Field `FB18` writer - Filter bits"]
pub type Fb18W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB19` reader - Filter bits"]
pub type Fb19R = crate::BitReader;
#[doc = "Field `FB19` writer - Filter bits"]
pub type Fb19W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB20` reader - Filter bits"]
pub type Fb20R = crate::BitReader;
#[doc = "Field `FB20` writer - Filter bits"]
pub type Fb20W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB21` reader - Filter bits"]
pub type Fb21R = crate::BitReader;
#[doc = "Field `FB21` writer - Filter bits"]
pub type Fb21W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB22` reader - Filter bits"]
pub type Fb22R = crate::BitReader;
#[doc = "Field `FB22` writer - Filter bits"]
pub type Fb22W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB23` reader - Filter bits"]
pub type Fb23R = crate::BitReader;
#[doc = "Field `FB23` writer - Filter bits"]
pub type Fb23W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB24` reader - Filter bits"]
pub type Fb24R = crate::BitReader;
#[doc = "Field `FB24` writer - Filter bits"]
pub type Fb24W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB25` reader - Filter bits"]
pub type Fb25R = crate::BitReader;
#[doc = "Field `FB25` writer - Filter bits"]
pub type Fb25W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB26` reader - Filter bits"]
pub type Fb26R = crate::BitReader;
#[doc = "Field `FB26` writer - Filter bits"]
pub type Fb26W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB27` reader - Filter bits"]
pub type Fb27R = crate::BitReader;
#[doc = "Field `FB27` writer - Filter bits"]
pub type Fb27W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB28` reader - Filter bits"]
pub type Fb28R = crate::BitReader;
#[doc = "Field `FB28` writer - Filter bits"]
pub type Fb28W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB29` reader - Filter bits"]
pub type Fb29R = crate::BitReader;
#[doc = "Field `FB29` writer - Filter bits"]
pub type Fb29W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB30` reader - Filter bits"]
pub type Fb30R = crate::BitReader;
#[doc = "Field `FB30` writer - Filter bits"]
pub type Fb30W<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `FB31` reader - Filter bits"]
pub type Fb31R = crate::BitReader;
#[doc = "Field `FB31` writer - Filter bits"]
pub type Fb31W<'a, REG> = crate::BitWriter<'a, REG>;
impl R {
    #[doc = "Bit 0 - Filter bits"]
    #[inline(always)]
    pub fn fb0(&self) -> Fb0R {
        Fb0R::new((self.bits & 1) != 0)
    }
    #[doc = "Bit 1 - Filter bits"]
    #[inline(always)]
    pub fn fb1(&self) -> Fb1R {
        Fb1R::new(((self.bits >> 1) & 1) != 0)
    }
    #[doc = "Bit 2 - Filter bits"]
    #[inline(always)]
    pub fn fb2(&self) -> Fb2R {
        Fb2R::new(((self.bits >> 2) & 1) != 0)
    }
    #[doc = "Bit 3 - Filter bits"]
    #[inline(always)]
    pub fn fb3(&self) -> Fb3R {
        Fb3R::new(((self.bits >> 3) & 1) != 0)
    }
    #[doc = "Bit 4 - Filter bits"]
    #[inline(always)]
    pub fn fb4(&self) -> Fb4R {
        Fb4R::new(((self.bits >> 4) & 1) != 0)
    }
    #[doc = "Bit 5 - Filter bits"]
    #[inline(always)]
    pub fn fb5(&self) -> Fb5R {
        Fb5R::new(((self.bits >> 5) & 1) != 0)
    }
    #[doc = "Bit 6 - Filter bits"]
    #[inline(always)]
    pub fn fb6(&self) -> Fb6R {
        Fb6R::new(((self.bits >> 6) & 1) != 0)
    }
    #[doc = "Bit 7 - Filter bits"]
    #[inline(always)]
    pub fn fb7(&self) -> Fb7R {
        Fb7R::new(((self.bits >> 7) & 1) != 0)
    }
    #[doc = "Bit 8 - Filter bits"]
    #[inline(always)]
    pub fn fb8(&self) -> Fb8R {
        Fb8R::new(((self.bits >> 8) & 1) != 0)
    }
    #[doc = "Bit 9 - Filter bits"]
    #[inline(always)]
    pub fn fb9(&self) -> Fb9R {
        Fb9R::new(((self.bits >> 9) & 1) != 0)
    }
    #[doc = "Bit 10 - Filter bits"]
    #[inline(always)]
    pub fn fb10(&self) -> Fb10R {
        Fb10R::new(((self.bits >> 10) & 1) != 0)
    }
    #[doc = "Bit 11 - Filter bits"]
    #[inline(always)]
    pub fn fb11(&self) -> Fb11R {
        Fb11R::new(((self.bits >> 11) & 1) != 0)
    }
    #[doc = "Bit 12 - Filter bits"]
    #[inline(always)]
    pub fn fb12(&self) -> Fb12R {
        Fb12R::new(((self.bits >> 12) & 1) != 0)
    }
    #[doc = "Bit 13 - Filter bits"]
    #[inline(always)]
    pub fn fb13(&self) -> Fb13R {
        Fb13R::new(((self.bits >> 13) & 1) != 0)
    }
    #[doc = "Bit 14 - Filter bits"]
    #[inline(always)]
    pub fn fb14(&self) -> Fb14R {
        Fb14R::new(((self.bits >> 14) & 1) != 0)
    }
    #[doc = "Bit 15 - Filter bits"]
    #[inline(always)]
    pub fn fb15(&self) -> Fb15R {
        Fb15R::new(((self.bits >> 15) & 1) != 0)
    }
    #[doc = "Bit 16 - Filter bits"]
    #[inline(always)]
    pub fn fb16(&self) -> Fb16R {
        Fb16R::new(((self.bits >> 16) & 1) != 0)
    }
    #[doc = "Bit 17 - Filter bits"]
    #[inline(always)]
    pub fn fb17(&self) -> Fb17R {
        Fb17R::new(((self.bits >> 17) & 1) != 0)
    }
    #[doc = "Bit 18 - Filter bits"]
    #[inline(always)]
    pub fn fb18(&self) -> Fb18R {
        Fb18R::new(((self.bits >> 18) & 1) != 0)
    }
    #[doc = "Bit 19 - Filter bits"]
    #[inline(always)]
    pub fn fb19(&self) -> Fb19R {
        Fb19R::new(((self.bits >> 19) & 1) != 0)
    }
    #[doc = "Bit 20 - Filter bits"]
    #[inline(always)]
    pub fn fb20(&self) -> Fb20R {
        Fb20R::new(((self.bits >> 20) & 1) != 0)
    }
    #[doc = "Bit 21 - Filter bits"]
    #[inline(always)]
    pub fn fb21(&self) -> Fb21R {
        Fb21R::new(((self.bits >> 21) & 1) != 0)
    }
    #[doc = "Bit 22 - Filter bits"]
    #[inline(always)]
    pub fn fb22(&self) -> Fb22R {
        Fb22R::new(((self.bits >> 22) & 1) != 0)
    }
    #[doc = "Bit 23 - Filter bits"]
    #[inline(always)]
    pub fn fb23(&self) -> Fb23R {
        Fb23R::new(((self.bits >> 23) & 1) != 0)
    }
    #[doc = "Bit 24 - Filter bits"]
    #[inline(always)]
    pub fn fb24(&self) -> Fb24R {
        Fb24R::new(((self.bits >> 24) & 1) != 0)
    }
    #[doc = "Bit 25 - Filter bits"]
    #[inline(always)]
    pub fn fb25(&self) -> Fb25R {
        Fb25R::new(((self.bits >> 25) & 1) != 0)
    }
    #[doc = "Bit 26 - Filter bits"]
    #[inline(always)]
    pub fn fb26(&self) -> Fb26R {
        Fb26R::new(((self.bits >> 26) & 1) != 0)
    }
    #[doc = "Bit 27 - Filter bits"]
    #[inline(always)]
    pub fn fb27(&self) -> Fb27R {
        Fb27R::new(((self.bits >> 27) & 1) != 0)
    }
    #[doc = "Bit 28 - Filter bits"]
    #[inline(always)]
    pub fn fb28(&self) -> Fb28R {
        Fb28R::new(((self.bits >> 28) & 1) != 0)
    }
    #[doc = "Bit 29 - Filter bits"]
    #[inline(always)]
    pub fn fb29(&self) -> Fb29R {
        Fb29R::new(((self.bits >> 29) & 1) != 0)
    }
    #[doc = "Bit 30 - Filter bits"]
    #[inline(always)]
    pub fn fb30(&self) -> Fb30R {
        Fb30R::new(((self.bits >> 30) & 1) != 0)
    }
    #[doc = "Bit 31 - Filter bits"]
    #[inline(always)]
    pub fn fb31(&self) -> Fb31R {
        Fb31R::new(((self.bits >> 31) & 1) != 0)
    }
}
impl W {
    #[doc = "Bit 0 - Filter bits"]
    #[inline(always)]
    pub fn fb0(&mut self) -> Fb0W<'_, F2r2Spec> {
        Fb0W::new(self, 0)
    }
    #[doc = "Bit 1 - Filter bits"]
    #[inline(always)]
    pub fn fb1(&mut self) -> Fb1W<'_, F2r2Spec> {
        Fb1W::new(self, 1)
    }
    #[doc = "Bit 2 - Filter bits"]
    #[inline(always)]
    pub fn fb2(&mut self) -> Fb2W<'_, F2r2Spec> {
        Fb2W::new(self, 2)
    }
    #[doc = "Bit 3 - Filter bits"]
    #[inline(always)]
    pub fn fb3(&mut self) -> Fb3W<'_, F2r2Spec> {
        Fb3W::new(self, 3)
    }
    #[doc = "Bit 4 - Filter bits"]
    #[inline(always)]
    pub fn fb4(&mut self) -> Fb4W<'_, F2r2Spec> {
        Fb4W::new(self, 4)
    }
    #[doc = "Bit 5 - Filter bits"]
    #[inline(always)]
    pub fn fb5(&mut self) -> Fb5W<'_, F2r2Spec> {
        Fb5W::new(self, 5)
    }
    #[doc = "Bit 6 - Filter bits"]
    #[inline(always)]
    pub fn fb6(&mut self) -> Fb6W<'_, F2r2Spec> {
        Fb6W::new(self, 6)
    }
    #[doc = "Bit 7 - Filter bits"]
    #[inline(always)]
    pub fn fb7(&mut self) -> Fb7W<'_, F2r2Spec> {
        Fb7W::new(self, 7)
    }
    #[doc = "Bit 8 - Filter bits"]
    #[inline(always)]
    pub fn fb8(&mut self) -> Fb8W<'_, F2r2Spec> {
        Fb8W::new(self, 8)
    }
    #[doc = "Bit 9 - Filter bits"]
    #[inline(always)]
    pub fn fb9(&mut self) -> Fb9W<'_, F2r2Spec> {
        Fb9W::new(self, 9)
    }
    #[doc = "Bit 10 - Filter bits"]
    #[inline(always)]
    pub fn fb10(&mut self) -> Fb10W<'_, F2r2Spec> {
        Fb10W::new(self, 10)
    }
    #[doc = "Bit 11 - Filter bits"]
    #[inline(always)]
    pub fn fb11(&mut self) -> Fb11W<'_, F2r2Spec> {
        Fb11W::new(self, 11)
    }
    #[doc = "Bit 12 - Filter bits"]
    #[inline(always)]
    pub fn fb12(&mut self) -> Fb12W<'_, F2r2Spec> {
        Fb12W::new(self, 12)
    }
    #[doc = "Bit 13 - Filter bits"]
    #[inline(always)]
    pub fn fb13(&mut self) -> Fb13W<'_, F2r2Spec> {
        Fb13W::new(self, 13)
    }
    #[doc = "Bit 14 - Filter bits"]
    #[inline(always)]
    pub fn fb14(&mut self) -> Fb14W<'_, F2r2Spec> {
        Fb14W::new(self, 14)
    }
    #[doc = "Bit 15 - Filter bits"]
    #[inline(always)]
    pub fn fb15(&mut self) -> Fb15W<'_, F2r2Spec> {
        Fb15W::new(self, 15)
    }
    #[doc = "Bit 16 - Filter bits"]
    #[inline(always)]
    pub fn fb16(&mut self) -> Fb16W<'_, F2r2Spec> {
        Fb16W::new(self, 16)
    }
    #[doc = "Bit 17 - Filter bits"]
    #[inline(always)]
    pub fn fb17(&mut self) -> Fb17W<'_, F2r2Spec> {
        Fb17W::new(self, 17)
    }
    #[doc = "Bit 18 - Filter bits"]
    #[inline(always)]
    pub fn fb18(&mut self) -> Fb18W<'_, F2r2Spec> {
        Fb18W::new(self, 18)
    }
    #[doc = "Bit 19 - Filter bits"]
    #[inline(always)]
    pub fn fb19(&mut self) -> Fb19W<'_, F2r2Spec> {
        Fb19W::new(self, 19)
    }
    #[doc = "Bit 20 - Filter bits"]
    #[inline(always)]
    pub fn fb20(&mut self) -> Fb20W<'_, F2r2Spec> {
        Fb20W::new(self, 20)
    }
    #[doc = "Bit 21 - Filter bits"]
    #[inline(always)]
    pub fn fb21(&mut self) -> Fb21W<'_, F2r2Spec> {
        Fb21W::new(self, 21)
    }
    #[doc = "Bit 22 - Filter bits"]
    #[inline(always)]
    pub fn fb22(&mut self) -> Fb22W<'_, F2r2Spec> {
        Fb22W::new(self, 22)
    }
    #[doc = "Bit 23 - Filter bits"]
    #[inline(always)]
    pub fn fb23(&mut self) -> Fb23W<'_, F2r2Spec> {
        Fb23W::new(self, 23)
    }
    #[doc = "Bit 24 - Filter bits"]
    #[inline(always)]
    pub fn fb24(&mut self) -> Fb24W<'_, F2r2Spec> {
        Fb24W::new(self, 24)
    }
    #[doc = "Bit 25 - Filter bits"]
    #[inline(always)]
    pub fn fb25(&mut self) -> Fb25W<'_, F2r2Spec> {
        Fb25W::new(self, 25)
    }
    #[doc = "Bit 26 - Filter bits"]
    #[inline(always)]
    pub fn fb26(&mut self) -> Fb26W<'_, F2r2Spec> {
        Fb26W::new(self, 26)
    }
    #[doc = "Bit 27 - Filter bits"]
    #[inline(always)]
    pub fn fb27(&mut self) -> Fb27W<'_, F2r2Spec> {
        Fb27W::new(self, 27)
    }
    #[doc = "Bit 28 - Filter bits"]
    #[inline(always)]
    pub fn fb28(&mut self) -> Fb28W<'_, F2r2Spec> {
        Fb28W::new(self, 28)
    }
    #[doc = "Bit 29 - Filter bits"]
    #[inline(always)]
    pub fn fb29(&mut self) -> Fb29W<'_, F2r2Spec> {
        Fb29W::new(self, 29)
    }
    #[doc = "Bit 30 - Filter bits"]
    #[inline(always)]
    pub fn fb30(&mut self) -> Fb30W<'_, F2r2Spec> {
        Fb30W::new(self, 30)
    }
    #[doc = "Bit 31 - Filter bits"]
    #[inline(always)]
    pub fn fb31(&mut self) -> Fb31W<'_, F2r2Spec> {
        Fb31W::new(self, 31)
    }
}
#[doc = "Filter bank 2 register 2\n\nYou can [`read`](crate::Reg::read) this register and get [`f2r2::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`f2r2::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
pub struct F2r2Spec;
impl crate::RegisterSpec for F2r2Spec {
    type Ux = u32;
}
#[doc = "`read()` method returns [`f2r2::R`](R) reader structure"]
impl crate::Readable for F2r2Spec {}
#[doc = "`write(|w| ..)` method takes [`f2r2::W`](W) writer structure"]
impl crate::Writable for F2r2Spec {
    type Safety = crate::Unsafe;
}
#[doc = "`reset()` method sets F2R2 to value 0"]
impl crate::Resettable for F2r2Spec {}
