Commit Graph

71 Commits

Author SHA1 Message Date
9626aee7db Move traits to separate crate. 2021-03-02 00:32:23 +01:00
45355f184a move most interrupt methods to InterruptExt extension trait. Fixes #35 2021-03-01 00:44:38 +01:00
da91779117 interrupt: Split set_handler context.
Since introducing the ctx pointer, the handler is now two words, so setting it can
race with the interrupt firing. On race it's possible for the new handler to be
alled with the old ctx pointer or viceversa.

Rather than documenting this, it's better to split the function in two to make it
obvious to the user that it's not atomic. The user can use a critical section, or
disable/enable the interrupt to avoid races if this is a concern.
2021-02-26 02:04:48 +01:00
11be9170ec Cleanup interrupt package naming. Fixes #40
The `interrupt` package previously tried to be drop-in compatible with the
`interrupt` package from PACs. THis meant that there was both a PAC-style enum
value `UARTE0` and an embassy-style owned `UARTE0Interrupt` type. This made
things VERY confusing.

This drops compatibility with the PAC, improving the names for embassy interrupts.
2021-02-26 01:55:27 +01:00
b69f72e055 Get rid of some warnings 2021-02-13 21:41:36 -03:00
a7797a918d nrf/gpiote: new api: switch to owned structs, implement WaitForHigh/WaitForLow. 2021-02-04 23:56:17 +01:00
9e88718fbd Add "context" pointer to owned interrupt handlers. 2021-01-04 22:25:39 +01:00
af5454fbfe Update drivers to owned irqs. 2020-12-29 01:53:17 +01:00
6f76c0ebcc Add support for log+defmt again, but better. 2020-12-01 17:46:56 +01:00
78135a81d9 Remove anyfmt 2020-11-27 18:42:59 +01:00
2e062f5627 gpiote: change port api to directly return futures. 2020-11-09 01:04:34 +01:00
61b1d4e188 Fix build for nrfs with 32 gpios 2020-11-08 19:05:34 +01:00
e539cd32ca Fix logging with anyfmt/log 2020-11-08 19:00:23 +01:00
fc0fe842ee Add support for GPIOTE Port event. 2020-11-08 18:59:31 +01:00
def225b982 gpiote: better naming 2020-11-08 17:38:45 +01:00
5e8608c7a5 Make defmt optional with new anyfmt crate 2020-11-01 17:17:24 +01:00
0643095695 Fix build with all nrf chip models 2020-10-31 23:03:09 +01:00
ec4b95579d gpiote: take owned pin but add function to borrow it. 2020-10-19 21:25:54 +02:00
33dce24e8a Add gpiote output channel. 2020-09-29 19:18:52 +02:00
c81d626254 gpiote: take borrow instead of owned pin.
This makes it possible to read the pin while the channel is created.
2020-09-29 04:17:32 +02:00
f9e2cef7f2 Add GPIOTE async hal. 2020-09-23 00:32:49 +02:00