mirror of
https://github.com/rtic-rs/rtic.git
synced 2024-11-29 15:04:32 +01:00
rtic-sync Arbiter: impl more I2C trait fns
For example embassy-stm32 I2C does not impl transaction yet but other fns are available. So it would be better to impl all of them here.
This commit is contained in:
parent
e8667d7872
commit
9f5820da1d
2 changed files with 22 additions and 2 deletions
|
@ -9,8 +9,8 @@ For each category, _Added_, _Changed_, _Fixed_ add new entries at the top!
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- `arbiter::spi::ArbiterDevice` for sharing SPI buses using `embedded-hal-async`
|
- `arbiter::spi::ArbiterDevice` for sharing SPI buses using `embedded-hal-async` traits.
|
||||||
- `arbiter::i2c::ArbiterDevice` for sharing I2C buses using `embedded-hal-async`
|
- `arbiter::i2c::ArbiterDevice` for sharing I2C buses using `embedded-hal-async` traits.
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
|
|
@ -352,6 +352,26 @@ pub mod i2c {
|
||||||
BUS: I2c<A>,
|
BUS: I2c<A>,
|
||||||
A: AddressMode,
|
A: AddressMode,
|
||||||
{
|
{
|
||||||
|
async fn read(&mut self, address: A, read: &mut [u8]) -> Result<(), Self::Error> {
|
||||||
|
let mut bus = self.bus.access().await;
|
||||||
|
bus.read(address, read).await
|
||||||
|
}
|
||||||
|
|
||||||
|
async fn write(&mut self, address: A, write: &[u8]) -> Result<(), Self::Error> {
|
||||||
|
let mut bus = self.bus.access().await;
|
||||||
|
bus.write(address, write).await
|
||||||
|
}
|
||||||
|
|
||||||
|
async fn write_read(
|
||||||
|
&mut self,
|
||||||
|
address: A,
|
||||||
|
write: &[u8],
|
||||||
|
read: &mut [u8],
|
||||||
|
) -> Result<(), Self::Error> {
|
||||||
|
let mut bus = self.bus.access().await;
|
||||||
|
bus.write_read(address, write, read).await
|
||||||
|
}
|
||||||
|
|
||||||
async fn transaction(
|
async fn transaction(
|
||||||
&mut self,
|
&mut self,
|
||||||
address: A,
|
address: A,
|
||||||
|
|
Loading…
Reference in a new issue