Struct rp_pac::i2c::regs::IcFsSpklen
source · #[repr(transparent)]pub struct IcFsSpklen(pub u32);
Expand description
I2C SS, FS or FM+ spike suppression limit This register is used to store the duration, measured in ic_clk cycles, of the longest spike that is filtered out by the spike suppression logic when the component is operating in SS, FS or FM+ modes. The relevant I2C requirement is tSP (table 4) as detailed in the I2C Bus Specification. This register must be programmed with a minimum value of 1.
Tuple Fields§
§0: u32
Implementations§
source§impl IcFsSpklen
impl IcFsSpklen
sourcepub const fn ic_fs_spklen(&self) -> u8
pub const fn ic_fs_spklen(&self) -> u8
This register must be set before any I2C bus transaction can take place to ensure stable operation. This register sets the duration, measured in ic_clk cycles, of the longest spike in the SCL or SDA lines that will be filtered out by the spike suppression logic. This register can be written only when the I2C interface is disabled which corresponds to the IC_ENABLE[0] register being set to 0. Writes at other times have no effect. The minimum valid value is 1; hardware prevents values less than this being written, and if attempted results in 1 being set. or more information, refer to ‘Spike Suppression’.
sourcepub fn set_ic_fs_spklen(&mut self, val: u8)
pub fn set_ic_fs_spklen(&mut self, val: u8)
This register must be set before any I2C bus transaction can take place to ensure stable operation. This register sets the duration, measured in ic_clk cycles, of the longest spike in the SCL or SDA lines that will be filtered out by the spike suppression logic. This register can be written only when the I2C interface is disabled which corresponds to the IC_ENABLE[0] register being set to 0. Writes at other times have no effect. The minimum valid value is 1; hardware prevents values less than this being written, and if attempted results in 1 being set. or more information, refer to ‘Spike Suppression’.
Trait Implementations§
source§impl Clone for IcFsSpklen
impl Clone for IcFsSpklen
source§fn clone(&self) -> IcFsSpklen
fn clone(&self) -> IcFsSpklen
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Default for IcFsSpklen
impl Default for IcFsSpklen
source§fn default() -> IcFsSpklen
fn default() -> IcFsSpklen
source§impl PartialEq for IcFsSpklen
impl PartialEq for IcFsSpklen
impl Copy for IcFsSpklen
impl Eq for IcFsSpklen
impl StructuralPartialEq for IcFsSpklen
Auto Trait Implementations§
impl Freeze for IcFsSpklen
impl RefUnwindSafe for IcFsSpklen
impl Send for IcFsSpklen
impl Sync for IcFsSpklen
impl Unpin for IcFsSpklen
impl UnwindSafe for IcFsSpklen
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)