nxp-pac

Crates

git

Versions

mcxa556

Flavors

Flexio

Struct Flexio 

Source
pub struct Flexio { /* private fields */ }
Expand description

Flexible I/O: four shifters, four timers, 32 pins, four external triggers. Register accesses are 32-bit even when a field is narrower.

Implementations§

Source§

impl Flexio

Source

pub const unsafe fn from_ptr(ptr: *mut ()) -> Self

Source

pub const fn as_ptr(&self) -> *mut ()

Source

pub const fn verid(self) -> Reg<Verid, R>

Version ID.

Source

pub const fn param(self) -> Reg<Param, R>

Parameter.

Source

pub const fn ctrl(self) -> Reg<Ctrl, RW>

FLEXIO Control. FASTACC requires functional clock >= bus clock. SWRST leaves CTRL intact; other accesses are ignored until software clears it and clock-domain reset completes.

Source

pub const fn pin(self) -> Reg<Pin, R>

Pin State.

Source

pub const fn shiftstat(self) -> Reg<Shiftstat, RW>

Shifter Status. Per-shifter flag mask; clearing semantics depend on shifter mode. Do not assume every mode supports write-one-to-clear.

Source

pub const fn shifterr(self) -> Reg<Shifterr, RW>

Shifter Error. Per-shifter error mask, write one to clear. In Match Continuous mode, reading the corresponding SHIFTBUF additionally clears SEF; reading SHIFTERR itself is not that clearing operation.

Source

pub const fn timstat(self) -> Reg<Timstat, RW>

Timer Status Flag.

Source

pub const fn shiftsien(self) -> Reg<Shiftsien, RW>

Shifter Status Interrupt Enable.

Source

pub const fn shifteien(self) -> Reg<Shifteien, RW>

Shifter Error Interrupt Enable.

Source

pub const fn timien(self) -> Reg<Timien, RW>

Timer Interrupt Enable.

Source

pub const fn shiftsden(self) -> Reg<Shiftsden, RW>

Shifter Status DMA Enable.

Source

pub const fn timersden(self) -> Reg<Timersden, RW>

Timer Status DMA Enable. Timer DMA requests remain asserted until the required TIMCMP read/write is performed.

Source

pub const fn shiftstate(self) -> Reg<Shiftstate, RW>

Shifter State.

Source

pub const fn trgstat(self) -> Reg<Trgstat, RW>

Trigger Status.

Source

pub const fn trigien(self) -> Reg<Trigien, RW>

External Trigger Interrupt Enable.

Source

pub const fn pinstat(self) -> Reg<Pinstat, RW>

Pin Status.

Source

pub const fn pinien(self) -> Reg<Pinien, RW>

Pin Interrupt Enable.

Source

pub const fn pinren(self) -> Reg<Pinren, RW>

Pin Rising Edge Enable.

Source

pub const fn pinfen(self) -> Reg<Pinfen, RW>

Pin Falling Edge Enable.

Source

pub const fn pinoutd(self) -> Reg<Pinoutd, RW>

Pin Output Data.

Source

pub const fn pinoute(self) -> Reg<Pinoute, RW>

Pin Output Enable.

Source

pub const fn pinoutdis(self) -> Reg<Pinoutdis, RW>

Direct pin command: clears both pin output data and output enable.

Source

pub const fn pinoutclr(self) -> Reg<Pinoutclr, RW>

Direct pin command: clears data and enables output for the selected pins.

Source

pub const fn pinoutset(self) -> Reg<Pinoutset, RW>

Direct pin command: sets data and enables output for the selected pins.

Source

pub const fn pinouttog(self) -> Reg<Pinouttog, RW>

Direct pin command: toggles data and enables output for the selected pins.

Source

pub const fn shiftctl(self, n: usize) -> Reg<Shiftctl, RW>

Shifter Control.

Source

pub const fn shiftcfg(self, n: usize) -> Reg<Shiftcfg, RW>

Shifter Configuration.

Source

pub const fn shiftbuf(self, n: usize) -> Reg<Shiftbuf, RW>

Shifter Buffer. Receive/Match Store reads require SSF set. Swapped buffer views alias this buffer; they are not independent storage.

Source

pub const fn shiftbufbis(self, n: usize) -> Reg<Shiftbufbis, RW>

Shifter Buffer Bit Swapped.

Source

pub const fn shiftbufbys(self, n: usize) -> Reg<Shiftbufbys, RW>

Shifter Buffer Byte Swapped.

Source

pub const fn shiftbufbbs(self, n: usize) -> Reg<Shiftbufbbs, RW>

Shifter Buffer Bit Byte Swapped.

Source

pub const fn timctl(self, n: usize) -> Reg<Timctl, RW>

Timer Control.

Source

pub const fn timcfg(self, n: usize) -> Reg<Timcfg, RW>

Timer Configuration.

Source

pub const fn timcmp(self, n: usize) -> Reg<Timcmp, RW>

Timer Compare. Input-capture reads require TSF set. The data field is 16-bit, but accesses remain 32-bit.

Source

pub const fn shiftbufnbs(self, n: usize) -> Reg<Shiftbufnbs, RW>

Shifter Buffer Nibble Byte Swapped.

Source

pub const fn shiftbufhws(self, n: usize) -> Reg<Shiftbufhws, RW>

Shifter Buffer Halfword Swapped.

Source

pub const fn shiftbufnis(self, n: usize) -> Reg<Shiftbufnis, RW>

Shifter Buffer Nibble Swapped.

Source

pub const fn shiftbufoes(self, n: usize) -> Reg<Shiftbufoes, RW>

Shifter Buffer Odd Even Swapped.

Source

pub const fn shiftbufeos(self, n: usize) -> Reg<Shiftbufeos, RW>

Shifter Buffer Even Odd Swapped.

Source

pub const fn shiftbufhbs(self, n: usize) -> Reg<Shiftbufhbs, RW>

Shifter Buffer Halfword Byte Swapped.

Trait Implementations§

Source§

impl Clone for Flexio

Source§

fn clone(&self) -> Flexio

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl PartialEq for Flexio

Source§

fn eq(&self, other: &Flexio) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Flexio

Source§

impl Eq for Flexio

Source§

impl Send for Flexio

Source§

impl StructuralPartialEq for Flexio

Source§

impl Sync for Flexio

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.