Dario Nieuwenhuis
bd9021ca1d
Make irq token Copy+Clone
2023-09-25 22:35:31 +02:00
Dario Nieuwenhuis
036e6ae30c
Rename embassy-hal-common to embassy-hal-internal, document it's for internal use only. ( #1700 )
2023-07-28 13:23:22 +02:00
Dario Nieuwenhuis
f7ec579c18
Update probe-rs-cli -> probe-rs
2023-06-29 02:39:28 +02:00
Dario Nieuwenhuis
98c821ac39
Remove embassy-cortex-m crate, move stuff to embassy-hal-common.
2023-06-09 16:44:20 +02:00
Dario Nieuwenhuis
dc8e34420f
Remove executor dep+reexports from HALs.
...
Closes #1547
2023-06-09 16:29:45 +02:00
Dario Nieuwenhuis
5c2f02c735
Reexport NVIC_PRIO_BITS at HAL root.
...
This allows using RTIC with `#[rtic::app(device = embassy_nrf, ...)]`
2023-06-08 18:07:49 +02:00
Dario Nieuwenhuis
921780e6bf
Make interrupt module more standard.
...
- Move typelevel interrupts to a special-purpose mod: `embassy_xx::interrupt::typelevel`.
- Reexport the PAC interrupt enum in `embassy_xx::interrupt`.
This has a few advantages:
- The `embassy_xx::interrupt` module is now more "standard".
- It works with `cortex-m` functions for manipulating interrupts, for example.
- It works with RTIC.
- the interrupt enum allows holding value that can be "any interrupt at runtime", this can't be done with typelevel irqs.
- When "const-generics on enums" is stable, we can remove the typelevel interrupts without disruptive changes to `embassy_xx::interrupt`.
2023-06-08 18:00:48 +02:00
Dario Nieuwenhuis
404aa29289
cortex-m: remove owned interrupts.
2023-06-01 03:25:19 +02:00
Dario Nieuwenhuis
9f7392474b
Update Rust nightly.
2023-05-19 17:12:39 +02:00
Dario Nieuwenhuis
2d65373f63
Remove unused feature(type_alias_impl_trait)
.
2023-05-14 23:44:53 +02:00
Emil Fresk
f8b359dc5a
Add support for setting up the nRFs internal DCDCs
2023-04-26 21:24:50 +02:00
Dario Nieuwenhuis
27e989afa9
nrf/uicr: only check lowest bit.
...
This mirrors what nrfx does. Also it won't reboot/warn if NFCPINS is set to either
0xFFFF_FFFE or 0x0000_0000, which are all valid.
2023-03-07 15:28:27 +01:00
Dario Nieuwenhuis
f5e09a8f4a
nrf/interrupt: do not reexport take!
macro.
2023-03-06 00:17:51 +01:00
Dario Nieuwenhuis
d113fcfe32
nrf/rng: make available on all chips, use Instance trait, switch to new interrupt binding.
2023-03-06 00:17:51 +01:00
Dario Nieuwenhuis
c66b28e759
nrf/qdec: make available on all chips, use Instance trait, switch to new interrupt binding.
2023-03-06 00:17:51 +01:00
Dario Nieuwenhuis
f8f1d3bcf0
nrf/pdm: make available on all chips, use Instance trait, switch to new interrupt binding.
2023-03-06 00:17:51 +01:00
Dario Nieuwenhuis
42c13c8c3d
nrf: add new interrupt binding traits and macro.
2023-03-06 00:17:51 +01:00
Dario Nieuwenhuis
bf013be9ba
Merge pull request #1232 from embassy-rs/nrf-qspi-fixes
...
nrf/qspi: nrf53 support, u32 addrs, remove const generic, add raw read/write.
2023-03-05 03:19:11 +01:00
Dario Nieuwenhuis
1955a225e8
nrf/qspi: add nrf53 support.
2023-03-05 02:17:59 +01:00
Dario Nieuwenhuis
916f94b366
nrf/buffered_uarte: make available on stable.
2023-03-04 15:12:49 +01:00
Dario Nieuwenhuis
7fa478358a
nrf: warn if uicr configuration could not be written.
...
If the user requests some configuration, but UICR is already programmed
to something else, detect this and warn the user.
We don't do it for the debug port settings, because if they are wrong
then the user will simply not be able to read debug logs.
2023-02-20 01:31:02 +01:00
Dario Nieuwenhuis
3f88bf6f9b
nrf: add support for UICR configuration.
...
- APPROTECT enable/disable. Notably this fixes issues with nrf52-rev3 and nrf53 from locking itself at reset.
- Use NFC pins as GPIO.
- Use RESET pin as GPIO.
NFC and RESET pins singletons are made available only when usable as GPIO,
for compile-time checking.
2023-02-20 01:28:45 +01:00
Dario Nieuwenhuis
b5cf332cc0
nrf: docs.
2023-02-01 01:17:41 +01:00
Dion Dokter
f22297e3d6
Merge branch 'master' into nrf91/53-nvmc
2022-12-09 11:04:55 +01:00
bors[bot]
58ab829049
Merge #1049
...
1049: embassy-nrf: Add I2S module r=lulf a=chris-zen
This PR adds I2S support for the nrf52 series (`nrf52832`, `nrf52833`, `nrf52840`).
We could only test it in a `nrf52840` in master mode for an output stream (see `i2s_waveform` example), using a clone of the [Adafruit I2S Stereo Decoder - UDA1334A](https://learn.adafruit.com/adafruit-i2s-stereo-decoder-uda1334a/overview ).
We were wondering if this could be a welcome addition to embassy, as we are working on this very informally and don't have much free time for it.
<img src="https://user-images.githubusercontent.com/932644/202316127-a8cf90ef-1e1a-4e1d-b796-961b8ad6cef5.png " width="600">
https://user-images.githubusercontent.com/932644/202316609-e53cd912-e463-4e01-839e-0bbdf37020da.mp4
Co-authored-by: `@brainstorm` <brainstorm@nopcode.org>
Co-authored-by: Christian Perez Llamas <932644+chris-zen@users.noreply.github.com>
Co-authored-by: Roman Valls Guimera <brainstorm@users.noreply.github.com>
2022-12-09 07:49:40 +00:00
Dario Nieuwenhuis
1e2fb0459d
Switch to async-fn-in-trait
2022-11-25 21:02:06 +01:00
bors[bot]
83b199a874
Merge #1056
...
1056: embassy-nrf: Add TWIS module r=Dirbaio a=kalkyl
Verified to be working on nrf9160
Co-authored-by: kalkyl <henrik.alser@me.com>
Co-authored-by: Henrik Alsér <henrik.alser@me.com>
2022-11-22 21:50:42 +00:00
bors[bot]
97cb95bbf4
Merge #1042
...
1042: embassy-nrf: Add SPIS module r=Dirbaio a=kalkyl
Verified to be working on nrf9160
Co-authored-by: Henrik Alsér <henrik.alser@me.com>
Co-authored-by: Henrik Alsér <henrik.alser@ucsmindbite.se>
Co-authored-by: kalkyl <henrik.alser@me.com>
2022-11-22 11:20:14 +00:00
Henrik Alsér
f09745dfe1
embassy-nrf: Default disable UARTE (nrf9160)
2022-11-22 02:21:06 +01:00
Henrik Alsér
633ffe46ae
config write, docs, add address_match_index
2022-11-22 01:57:00 +01:00
Henrik Alsér
e6b9722a31
Remove nrf9160 UARTE fix
2022-11-22 01:07:59 +01:00
kalkyl
eba42cb5f4
embassy-nrf: Add TWIS module
2022-11-13 22:15:19 +01:00
Henrik Alsér
5cfad3f853
Feature gate UARTE disable
2022-11-13 02:37:23 +01:00
Henrik Alsér
dca11095e2
Disable UARTE in embassy-nrf::init
2022-11-13 01:49:55 +01:00
Christian Perez Llamas
122a31d208
Interrupts, async, sine oscillator
2022-11-12 18:48:57 +01:00
Roman Valls Guimera
10e3c3f2ec
Cargo fmt
2022-11-11 23:49:20 +01:00
Christian Perez Llamas
4a2e810485
Restrict to pacs supporting i2s
2022-11-10 23:13:01 +01:00
Dion Dokter
dbe97b4098
Adapted nvmc so it can be used for all nrf targets
2022-11-10 14:37:42 +01:00
Christian Perez Llamas
cecd77938c
Draft: Initial support for I2S with a working example.
...
Co-authored-by: @brainstorm <brainstorm@nopcode.org>
2022-11-09 19:19:01 +01:00
Henrik Alsér
1920e90dcd
embassy-nrf: Add SPIS module
2022-11-05 00:15:43 +01:00
pbert
a4afab4640
add support for pdm microphones in nrf driver
2022-10-13 18:37:53 +02:00
Dario Nieuwenhuis
897b72c872
Update Rust nightly.
...
Removes feature(generic_associated_types)
2022-09-22 16:38:14 +02:00
Dario Nieuwenhuis
fc6e1e06b3
Remove HAL initialization from #[embassy::main] macro.
2022-08-17 22:16:46 +02:00
Dario Nieuwenhuis
4901c34d9c
Rename Unborrowed -> PeripheralRef, Unborrow -> Peripheral
2022-07-23 14:00:19 +02:00
Dario Nieuwenhuis
8a9d2f59af
Update embassy-stm32
2022-07-23 02:40:13 +02:00
Ulf Lilleengen
ca59c1ff35
Add more API docs for embassy-cortex-m and embassy-nrf
2022-06-23 13:17:56 +02:00
Dario Nieuwenhuis
a8703b7598
Run rustfmt.
2022-06-12 22:22:31 +02:00
Dario Nieuwenhuis
5085100df2
Add embassy-cortex-m crate.
...
- Move Interrupt and InterruptExecutor from `embassy` to `embassy-cortex-m`.
- Move Unborrow from `embassy` to `embassy-hal-common` (nothing in `embassy` requires it anymore)
- Move PeripheralMutex from `embassy-hal-common` to `embassy-cortex-m`.
2022-06-12 21:45:38 +02:00
Henrik Alsér
1ca5475010
Merge branch 'embassy-rs:master' into qdec
2022-05-07 09:47:29 +02:00
Dario Nieuwenhuis
931a137f8c
Replace embassy::io with embedded_io.
2022-05-07 01:45:54 +02:00