pub struct Aw88298<I2C> { /* private fields */ }Expand description
AW88298 speaker amplifier I²C control driver.
Implementations§
Source§impl<I2C, Error> Aw88298<I2C>where
I2C: I2c<Error = Error>,
impl<I2C, Error> Aw88298<I2C>where
I2C: I2c<Error = Error>,
Sourcepub fn init(&mut self, config: SpeakerConfig) -> Result<(), Error>
pub fn init(&mut self, config: SpeakerConfig) -> Result<(), Error>
Apply the CoreS3 AW88298 speaker amplifier sequence used by M5Unified.
The CoreS3 speaker path clocks the amplifier from BCK/WS/DOUT. The helper
selects the AW88298 sample-rate bucket from SpeakerConfig::format and
enables I²S input, unmutes the high-level path, disables boost mode, and
applies a clamped volume value.
Sourcepub fn set_enabled(&mut self, enabled: bool) -> Result<(), Error>
pub fn set_enabled(&mut self, enabled: bool) -> Result<(), Error>
Enable or disable the CoreS3 amplifier output path.
Sourcepub fn set_volume(&mut self, volume: u8) -> Result<(), Error>
pub fn set_volume(&mut self, volume: u8) -> Result<(), Error>
Set the CoreS3 amplifier volume register value.
Sourcepub fn read_register16(&mut self, register: u8) -> Result<u16, Error>
pub fn read_register16(&mut self, register: u8) -> Result<u16, Error>
Read one 16-bit AW88298 register.
Auto Trait Implementations§
impl<I2C> Freeze for Aw88298<I2C>where
I2C: Freeze,
impl<I2C> RefUnwindSafe for Aw88298<I2C>where
I2C: RefUnwindSafe,
impl<I2C> Send for Aw88298<I2C>where
I2C: Send,
impl<I2C> Sync for Aw88298<I2C>where
I2C: Sync,
impl<I2C> Unpin for Aw88298<I2C>where
I2C: Unpin,
impl<I2C> UnsafeUnpin for Aw88298<I2C>where
I2C: UnsafeUnpin,
impl<I2C> UnwindSafe for Aw88298<I2C>where
I2C: UnwindSafe,
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
Mutably borrows from an owned value. Read more
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Casts the value.
Source§impl<T> OverflowingAs for T
impl<T> OverflowingAs for T
Source§fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
fn overflowing_as<Dst>(self) -> (Dst, bool)where
T: OverflowingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
impl<Src, Dst> OverflowingCastFrom<Src> for Dstwhere
Src: OverflowingCast<Dst>,
Source§fn overflowing_cast_from(src: Src) -> (Dst, bool)
fn overflowing_cast_from(src: Src) -> (Dst, bool)
Casts the value.
Source§impl<T> SaturatingAs for T
impl<T> SaturatingAs for T
Source§fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
fn saturating_as<Dst>(self) -> Dstwhere
T: SaturatingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
impl<Src, Dst> SaturatingCastFrom<Src> for Dstwhere
Src: SaturatingCast<Dst>,
Source§fn saturating_cast_from(src: Src) -> Dst
fn saturating_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> UnwrappedAs for T
impl<T> UnwrappedAs for T
Source§fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
fn unwrapped_as<Dst>(self) -> Dstwhere
T: UnwrappedCast<Dst>,
Casts the value.
Source§impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
impl<Src, Dst> UnwrappedCastFrom<Src> for Dstwhere
Src: UnwrappedCast<Dst>,
Source§fn unwrapped_cast_from(src: Src) -> Dst
fn unwrapped_cast_from(src: Src) -> Dst
Casts the value.
Source§impl<T> WrappingAs for T
impl<T> WrappingAs for T
Source§fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
fn wrapping_as<Dst>(self) -> Dstwhere
T: WrappingCast<Dst>,
Casts the value.
Source§impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
impl<Src, Dst> WrappingCastFrom<Src> for Dstwhere
Src: WrappingCast<Dst>,
Source§fn wrapping_cast_from(src: Src) -> Dst
fn wrapping_cast_from(src: Src) -> Dst
Casts the value.