| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
|
| | |
|
| |
|
|
|
|
| |
* Add TEMP peripheral to all nRF52 chips
* Add async HAL for reading temperature values
* Add example application reading temperature values
|
| | |
|
| |
|
|
| |
assert channel limits
|
| | |
|
| |
|
|
| |
The handler may well need to close over and mutate state
|
| |
|
|
|
|
| |
Implements continuous sampling for the nRF SAADC and also renames `OneShot` to `Saadc`. The one-shot behaviour is retained with the `sample` method and a new `run_sampler` method is provided for efficiently (i.e. zero copying) sampler processing. A double buffer is used for continuously sampling, which wlll be swapped once sampling has taken place.
A sample frequency is provided and will set the internal timer of the SAADC when there is just the one channel being sampled. Otherwise, PPI will be used to hook up the TIMER peripheral to drive the sampling task.
|
| |
|
|
|
|
|
|
| |
One-shot mode now permits the sampling of differential pins, and the sampling of multiple pins simultaneously.
A new ChannelConfig structure has been introduced so that multiple channels can be configured individually. Further, the `sample` method now accepts a buffer into which samples are written.
Along the way, I've reset some default configuration to align with Nordic's settings in their nrfx saadc driver. Specifically, the channel gain defaults to 6 (from 4) and the time defaults to 10us (from 20us).
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
trait_alias seems unused. no idea why it's there.
|
| |\
| |
| | |
Typestate nrf timer
|
| | |
| |
| |
| |
| | |
NotAwaitable as default generic param
added awaitable_timer example
|
| |/ |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Unfortunately errors from `embedded_graphics` and `core` doesn't provide
the necessary instances currently.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
At the expense of exposing the channel types again. We do this as we want to avoid using dyn traits given their overhead for embedded environments.
|
| |
|
|
| |
Using a new ChannelCell so that there's no leaking of the abstraction
|
| |
|
|
| |
In exchange for an UnsafeCell being passed into split
|
| |
|
|
| |
An MPSC inspired by Tokio and Crossbeam. The MPSC is designed to support both single and multi core processors, with only single core implemented at this time. The allocation of the channel’s buffer is inspired by the const generic parameters that Heapless provides.
|
| | |
|
| |
|
|
|
|
| |
Resolves #187
Like the stm32 driver, this has both a non-blocking and blocking API, and implements `rand_core::RngCore` for the blocking API.
|
| |
|