added steal API for RxWithInterrupt
Some checks failed
shared-hal-ci / Check build (push) Has been cancelled
shared-hal-ci / Check formatting (push) Has been cancelled
shared-hal-ci / Check Documentation Build (push) Has been cancelled
shared-hal-ci / Clippy (push) Has been cancelled
va108xx-ci / Check build (push) Has been cancelled
va108xx-ci / Run Tests (push) Has been cancelled
va108xx-ci / Check formatting (push) Has been cancelled
va108xx-ci / Check Documentation Build (push) Has been cancelled
va108xx-ci / Clippy (push) Has been cancelled
va416xx-ci / Check build (push) Has been cancelled
va416xx-ci / Run Tests (push) Has been cancelled
va416xx-ci / Check formatting (push) Has been cancelled
va416xx-ci / Check Documentation Build (push) Has been cancelled
va416xx-ci / Clippy (push) Has been cancelled
shared-hal-ci / Check build (pull_request) Has been cancelled
shared-hal-ci / Check formatting (pull_request) Has been cancelled
shared-hal-ci / Check Documentation Build (pull_request) Has been cancelled
shared-hal-ci / Clippy (pull_request) Has been cancelled
va108xx-ci / Check build (pull_request) Has been cancelled
va108xx-ci / Run Tests (pull_request) Has been cancelled
va108xx-ci / Check formatting (pull_request) Has been cancelled
va108xx-ci / Check Documentation Build (pull_request) Has been cancelled
va108xx-ci / Clippy (pull_request) Has been cancelled
va416xx-ci / Check build (pull_request) Has been cancelled
va416xx-ci / Run Tests (pull_request) Has been cancelled
va416xx-ci / Check formatting (pull_request) Has been cancelled
va416xx-ci / Check Documentation Build (pull_request) Has been cancelled
va416xx-ci / Clippy (pull_request) Has been cancelled

This commit is contained in:
Robin Mueller
2025-12-08 15:03:08 +01:00
parent 8b8822139f
commit 6718872aed
2 changed files with 19 additions and 0 deletions

View File

@@ -8,6 +8,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [unreleased] ## [unreleased]
### Added
### Changed
- Added `RxWithInterrupt::steal`.
- Improved type level support for resource management for SPI, PWM, UART.
## [v0.2.0] 2025-09-03 ## [v0.2.0] 2025-09-03
Renamed to `vorago-shared-hal` Renamed to `vorago-shared-hal`

View File

@@ -1306,6 +1306,18 @@ impl RxWithInterrupt {
Self(rx) Self(rx)
} }
/// Steal the RX peripheral with interrupt support for the given UART bank.
///
/// Can be useful to retrieve an instance in an interrupt if this instance is not used in the
/// main thread after initialization time.
///
/// # Safety
///
/// Circumvents the HAL ownership and safety guarantees.
pub unsafe fn steal(id: Bank) -> Self {
Self(unsafe { Rx::steal(id) })
}
/// This function should be called once at initialization time if the regular /// This function should be called once at initialization time if the regular
/// [Self::on_interrupt] is used to read the UART receiver to enable and start the receiver. /// [Self::on_interrupt] is used to read the UART receiver to enable and start the receiver.
pub fn start(&mut self) { pub fn start(&mut self) {