#[doc = r" Value read from the register"]
pub struct R {
bits: u32,
}
impl super::IDR {
#[doc = r" Reads the contents of the register"]
#[inline]
pub fn read(&self) -> R {
R {
bits: self.register.get(),
}
}
}
#[doc = "Possible values of the field `IDR0`"]
#[derive(Clone, Copy, Debug, PartialEq)]
pub enum IDR0R {
#[doc = "Input is logic high"]
HIGH,
#[doc = "Input is logic low"]
LOW,
}
impl IDR0R {
#[doc = r" Returns `true` if the bit is clear (0)"]
#[inline]
pub fn bit_is_clear(&self) -> bool {
!self.bit()
}
#[doc = r" Returns `true` if the bit is set (1)"]
#[inline]
pub fn bit_is_set(&self) -> bool {
self.bit()
}
#[doc = r" Value of the field as raw bits"]
#[inline]
pub fn bit(&self) -> bool {
match *self {
IDR0R::HIGH => true,
IDR0R::LOW => false,
}
}
#[allow(missing_docs)]
#[doc(hidden)]
#[inline]
pub fn _from(value: bool) -> IDR0R {
match value {
true => IDR0R::HIGH,
false => IDR0R::LOW,
}
}
#[doc = "Checks if the value of the field is `HIGH`"]
#[inline]
pub fn is_high(&self) -> bool {
*self == IDR0R::HIGH
}
#[doc = "Checks if the value of the field is `LOW`"]
#[inline]
pub fn is_low(&self) -> bool {
*self == IDR0R::LOW
}
}
#[doc = "Possible values of the field `IDR1`"]
pub type IDR1R = IDR0R;
#[doc = "Possible values of the field `IDR2`"]
pub type IDR2R = IDR0R;
#[doc = "Possible values of the field `IDR3`"]
pub type IDR3R = IDR0R;
#[doc = "Possible values of the field `IDR4`"]
pub type IDR4R = IDR0R;
#[doc = "Possible values of the field `IDR5`"]
pub type IDR5R = IDR0R;
#[doc = "Possible values of the field `IDR6`"]
pub type IDR6R = IDR0R;
#[doc = "Possible values of the field `IDR7`"]
pub type IDR7R = IDR0R;
#[doc = "Possible values of the field `IDR8`"]
pub type IDR8R = IDR0R;
#[doc = "Possible values of the field `IDR9`"]
pub type IDR9R = IDR0R;
#[doc = "Possible values of the field `IDR10`"]
pub type IDR10R = IDR0R;
#[doc = "Possible values of the field `IDR11`"]
pub type IDR11R = IDR0R;
#[doc = "Possible values of the field `IDR12`"]
pub type IDR12R = IDR0R;
#[doc = "Possible values of the field `IDR13`"]
pub type IDR13R = IDR0R;
#[doc = "Possible values of the field `IDR14`"]
pub type IDR14R = IDR0R;
#[doc = "Possible values of the field `IDR15`"]
pub type IDR15R = IDR0R;
impl R {
#[doc = r" Value of the register as raw bits"]
#[inline]
pub fn bits(&self) -> u32 {
self.bits
}
#[doc = "Bit 0 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr0(&self) -> IDR0R {
IDR0R::_from({
const MASK: bool = true;
const OFFSET: u8 = 0;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 1 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr1(&self) -> IDR1R {
IDR1R::_from({
const MASK: bool = true;
const OFFSET: u8 = 1;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 2 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr2(&self) -> IDR2R {
IDR2R::_from({
const MASK: bool = true;
const OFFSET: u8 = 2;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 3 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr3(&self) -> IDR3R {
IDR3R::_from({
const MASK: bool = true;
const OFFSET: u8 = 3;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 4 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr4(&self) -> IDR4R {
IDR4R::_from({
const MASK: bool = true;
const OFFSET: u8 = 4;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 5 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr5(&self) -> IDR5R {
IDR5R::_from({
const MASK: bool = true;
const OFFSET: u8 = 5;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 6 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr6(&self) -> IDR6R {
IDR6R::_from({
const MASK: bool = true;
const OFFSET: u8 = 6;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 7 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr7(&self) -> IDR7R {
IDR7R::_from({
const MASK: bool = true;
const OFFSET: u8 = 7;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 8 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr8(&self) -> IDR8R {
IDR8R::_from({
const MASK: bool = true;
const OFFSET: u8 = 8;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 9 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr9(&self) -> IDR9R {
IDR9R::_from({
const MASK: bool = true;
const OFFSET: u8 = 9;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 10 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr10(&self) -> IDR10R {
IDR10R::_from({
const MASK: bool = true;
const OFFSET: u8 = 10;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 11 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr11(&self) -> IDR11R {
IDR11R::_from({
const MASK: bool = true;
const OFFSET: u8 = 11;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 12 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr12(&self) -> IDR12R {
IDR12R::_from({
const MASK: bool = true;
const OFFSET: u8 = 12;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 13 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr13(&self) -> IDR13R {
IDR13R::_from({
const MASK: bool = true;
const OFFSET: u8 = 13;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 14 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr14(&self) -> IDR14R {
IDR14R::_from({
const MASK: bool = true;
const OFFSET: u8 = 14;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
#[doc = "Bit 15 - Port input data bit (y = 0..15) These bits are read-only. They contain the input value of the corresponding I/O port."]
#[inline]
pub fn idr15(&self) -> IDR15R {
IDR15R::_from({
const MASK: bool = true;
const OFFSET: u8 = 15;
((self.bits >> OFFSET) & MASK as u32) != 0
})
}
}