diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 25 |
1 files changed, 21 insertions, 4 deletions
| @@ -28,9 +28,10 @@ The `embassy::executor` module provides an async/await executor designed for emb | |||
| 28 | 28 | ||
| 29 | `embassy::util` contains some lightweight async/await utilities, mainly helpful for async driver development (signaling a task that an interrupt has occured, for example). | 29 | `embassy::util` contains some lightweight async/await utilities, mainly helpful for async driver development (signaling a task that an interrupt has occured, for example). |
| 30 | 30 | ||
| 31 | ## embassy-nrf | 31 | ## HALs |
| 32 | 32 | ||
| 33 | The `embassy-nrf` crate contains implementations for nRF 52 series SoCs. | 33 | Hardware Absraction Layers with asynchronous behaviors are provided for a variety of platforms. |
| 34 | For example, the `embassy-nrf` crate contains implementations for nRF 52 series SoCs. | ||
| 34 | 35 | ||
| 35 | - `uarte`: UARTE driver implementing `AsyncBufRead` and `AsyncWrite`. | 36 | - `uarte`: UARTE driver implementing `AsyncBufRead` and `AsyncWrite`. |
| 36 | - `qspi`: QSPI driver implementing `Flash`. | 37 | - `qspi`: QSPI driver implementing `Flash`. |
| @@ -41,7 +42,8 @@ The `embassy-nrf` crate contains implementations for nRF 52 series SoCs. | |||
| 41 | 42 | ||
| 42 | ## Examples | 43 | ## Examples |
| 43 | 44 | ||
| 44 | Examples are found in the `examples/` folder seperated by the chip manufacturer they are designed to run on: | 45 | Examples are found in the `examples/` folder seperated by the chip manufacturer they are designed to run on. For example: |
| 46 | |||
| 45 | * `examples/nrf` are designed to run on the `nrf52840-dk` board (PCA10056) but should be easily adaptable to other nRF52 chips and boards. | 47 | * `examples/nrf` are designed to run on the `nrf52840-dk` board (PCA10056) but should be easily adaptable to other nRF52 chips and boards. |
| 46 | * `examples/rp` are for the RP2040 chip. | 48 | * `examples/rp` are for the RP2040 chip. |
| 47 | * `examples/stm32` are designed for the STM32F429ZI chip but should be easily adaptable to other STM32F4xx chips. | 49 | * `examples/stm32` are designed for the STM32F429ZI chip but should be easily adaptable to other STM32F4xx chips. |
| @@ -61,12 +63,27 @@ git submodule update | |||
| 61 | cargo install probe-run | 63 | cargo install probe-run |
| 62 | ``` | 64 | ``` |
| 63 | 65 | ||
| 66 | - Change directory to the sample's base directory. For example: | ||
| 67 | |||
| 68 | ``` | ||
| 69 | cd examples/nrf | ||
| 70 | ``` | ||
| 71 | |||
| 64 | - Run the example | 72 | - Run the example |
| 65 | 73 | ||
| 74 | For example: | ||
| 75 | |||
| 66 | ``` | 76 | ``` |
| 67 | cargo run --bin rtc_async | 77 | cargo run --bin blinky |
| 68 | ``` | 78 | ``` |
| 69 | 79 | ||
| 80 | ## Developing Embassy with Rust Analyzer based editors | ||
| 81 | |||
| 82 | The [Rust Analyzer](https://rust-analyzer.github.io/) is used by [Visual Studio Code](https://code.visualstudio.com/) | ||
| 83 | and others. Given the multiple targets that Embassy serves, there is no Cargo workspace file. Instead, the Rust Analyzer | ||
| 84 | must be told of the target project to work with. In the case of Visual Studio Code, | ||
| 85 | please refer to the `.vscode/settings.json` file's `rust-analyzer.linkedProjects`setting. | ||
| 86 | |||
| 70 | ## Minimum supported Rust version (MSRV) | 87 | ## Minimum supported Rust version (MSRV) |
| 71 | 88 | ||
| 72 | Required nightly version is specified in the `rust-toolchain.toml` file. Nightly is required for: | 89 | Required nightly version is specified in the `rust-toolchain.toml` file. Nightly is required for: |
