embassy/embassy-rp
Dario Nieuwenhuis cc9e2a51da
Merge pull request #3345 from CBJamo/rp2350_clock_padiso
rp23: Disable pad isolation on clock in/out pins
2024-09-17 19:17:31 +00:00
..
src Merge pull request #3345 from CBJamo/rp2350_clock_padiso 2024-09-17 19:17:31 +00:00
build.rs Initial rp235x support 2024-08-08 21:35:21 -04:00
Cargo.toml rp: use the rp-binary-info crate for binary info. 2024-08-17 22:12:39 +02:00
CHANGELOG.md update dates 2024-08-05 08:58:56 +02:00
funcsel.txt rp: add initial version 2021-03-29 21:35:25 +02:00
LICENSE-APACHE Add license files to embassy-rp crediting rp-rs. 2024-08-16 17:51:52 +02:00
LICENSE-MIT Add license files to embassy-rp crediting rp-rs. 2024-08-16 17:51:52 +02:00
link-rp.x.in Initial rp235x support 2024-08-08 21:35:21 -04:00
README.md Fix possible typo in embassy-rp README.md 2024-08-03 15:32:39 +02:00

Embassy RP HAL

HALs implement safe, idiomatic Rust APIs to use the hardware capabilities, so raw register manipulation is not needed.

The embassy-rp HAL targets the Raspberry Pi RP2040 microcontroller. The HAL implements both blocking and async APIs for many peripherals. The benefit of using the async APIs is that the HAL takes care of waiting for peripherals to complete operations in low power mode and handling interrupts, so that applications can focus on more important matters.

embassy-time time driver

If the time-driver feature is enabled, the HAL uses the TIMER peripheral as a global time driver for embassy-time, with a tick rate of 1MHz.

Embedded-hal

The embassy-rp HAL implements the traits from embedded-hal (v0.2 and 1.0) and embedded-hal-async, as well as embedded-io and embedded-io-async.

Interoperability

This crate can run on any executor.

Optionally, some features requiring embassy-time can be activated with the time-driver feature. If you enable it, you must link an embassy-time driver in your project.