huntc
5f87c7808c
Remove the cell and trait
...
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.
2021-07-15 12:31:52 +10:00
huntc
ae62948d6c
Replace UnsafeCell
...
Using a new ChannelCell so that there's no leaking of the abstraction
2021-07-15 12:31:52 +10:00
huntc
816b78c0d9
Reduces the types on sender and receiver
...
In exchange for an UnsafeCell being passed into split
2021-07-15 12:31:52 +10:00
huntc
1b9d5e5071
Multi Producer Single Consumer channel
...
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.
2021-07-15 12:31:52 +10:00
Dario Nieuwenhuis
71c8d7aa7d
stm32l4/examples: remove old-pac uses.
2021-07-15 00:37:00 +02:00
Bob McWhirter
21e94972dc
Fix more warnings and examples.
2021-07-14 14:55:20 -04:00
Bob McWhirter
3fd9023fce
Fix the h7 example.
2021-07-14 14:45:54 -04:00
Bob McWhirter
a88f0028ef
First shot at async dma usart for stm32.
2021-07-14 14:14:14 -04:00
Bob McWhirter
f01ddd5f5c
Mix dmamux into bdma_v1.
2021-07-13 10:09:35 -04:00
Bob McWhirter
043f0ea508
Checkpoint DMAMUX channel setup.
2021-07-13 10:08:43 -04:00
Dario Nieuwenhuis
7547c8d8d6
rp/timer: add
2021-07-12 03:45:57 +02:00
Dario Nieuwenhuis
ecc151d4e2
stm32/adc: simplify delay handling
2021-07-05 03:18:23 +02:00
Dario Nieuwenhuis
3ce32d6624
Merge pull request #273 from rukai/fix_warnings_again
...
fix stm32 warnings
2021-07-05 02:00:51 +02:00
Rukai
25d4b2ea26
fix stm32 warnings
2021-07-05 01:54:29 +02:00
Rukai
56d0c5ffe1
Fix warnings in std and rp
2021-07-04 12:46:04 +10:00
Bob McWhirter
0920c0cb1d
Make UART pins Rx/Tx/etc in addition to USART.
2021-07-01 11:30:54 -04:00
Bob McWhirter
54ada5bae1
Stub in the DMA bits that aren't yet there.
2021-07-01 11:30:54 -04:00
Bob McWhirter
f83559c6ab
Add L4+ example for USART.
2021-07-01 11:30:54 -04:00
Dario Nieuwenhuis
e55c89f890
Merge pull request #262 from Liamolucko/nrf-rng
...
Add an nRF RNG driver
2021-07-01 01:55:55 +02:00
Liam Murphy
a64dec517c
Update RNG example
2021-06-30 12:55:30 +10:00
Bob McWhirter
d5fb558005
Fix non-DMA USART example.
2021-06-29 13:08:18 -04:00
Bob McWhirter
24f18819c8
Adjust example for RCC and DMA.
2021-06-29 11:01:57 -04:00
Liam Murphy
8a4ab29819
Add an nRF RNG driver
...
Resolves #187
Like the stm32 driver, this has both a non-blocking and blocking API, and implements `rand_core::RngCore` for the blocking API.
2021-06-29 17:26:16 +10:00
Dario Nieuwenhuis
cdb0c72849
Merge pull request #255 from thalesfragoso/od-pin
...
stm32: Allow for open drain configuration for output pin
2021-06-27 19:29:18 +02:00
Thales Fragoso
0eaadfc125
stm32: Update gpio examples
2021-06-25 18:16:43 -03:00
Dario Nieuwenhuis
c7c897bb72
rp/gpio: add infallible inherent methods
2021-06-25 06:24:14 +02:00
Dario Nieuwenhuis
5a6384d199
rp: clock setup
2021-06-25 03:38:21 +02:00
Thales Fragoso
aca0fb1065
net: Make the user pass in the StackResources in init
...
By having the user pass in the resources, we can make them generic, this way
the user can choose the size of the individual resources
2021-06-20 17:15:18 -03:00
Thales Fragoso
098ce6e740
stm32h7: Add ethernet example
2021-06-16 16:48:35 +02:00
Ulf Lilleengen
b6a8703698
Add support for generating PAC for dual cores
...
* Chips that have multiple cores will be exposed as chipname_corename,
i.e. stm32wl55jc_cm4
* Chips that have single cores will use the chip family as feature name
and pick the first and only core from the list
* Add support for stm32wl55 chip family
2021-06-16 15:12:07 +02:00
Bob McWhirter
d58fb11b2e
ADCv3 and example.
2021-06-14 13:20:42 -04:00
Ulf Lilleengen
95532726b2
Add minimal RCC impls for L4 and F4
2021-06-14 11:33:11 +02:00
Dario Nieuwenhuis
97e2f10665
Merge pull request #242 from Tiwalun/stm32wb55-metapac
...
Initial support and example for STM32WB55
2021-06-12 16:33:40 +02:00
Dominik Boehi
b82e2627aa
Add STM32WB55 examples to CI, fix example crate name
2021-06-12 07:06:42 +02:00
Dominik Boehi
0eab96f573
Initial support and example for STM32WB55
2021-06-12 07:06:36 +02:00
Dario Nieuwenhuis
890e93f367
UPdate smoltcp
2021-06-12 00:50:36 +02:00
Ulf Lilleengen
1bb7123156
Add examples for STM32L0
2021-06-09 23:09:48 +02:00
Bob McWhirter
6295589467
Bring over DAC example (relies upon stm32-data update)
2021-06-08 15:25:38 -04:00
Bob McWhirter
4f1f63f336
Initial swag at h7 examples.
2021-06-08 15:25:38 -04:00
Bob McWhirter
ecd53c916c
Small changes to support DAC example.
2021-06-08 14:04:56 -04:00
Bob McWhirter
cf3c021c37
Initial examples for STM32L4+
2021-06-08 10:37:11 -04:00
Bob McWhirter
b8690e5f5d
Add blinky example.
2021-06-08 10:37:11 -04:00
Rukai
010b2b9497
Fix stm32 warnings
2021-06-06 00:46:20 +10:00
Dario Nieuwenhuis
7d869bdec8
Update heapless
2021-06-04 01:35:04 +02:00
Dario Nieuwenhuis
dff03ecfc7
Move examples to a subdirectory
2021-06-02 01:32:19 +02:00
Dario Nieuwenhuis
20d3dc87f9
Rename examples -> embassy-nrf-examples
2021-01-01 22:46:32 +01:00
Timo Kröger
6695bf0f21
Low power UART driver
2020-12-30 19:24:12 +01:00
Dario Nieuwenhuis
015b6bbce4
Ensure timers always yield at least once.
...
This prevents a task that's constantly running late from monopolizing the CPU.
Add executor_fairness_test example showcasing it.
2020-12-30 00:57:35 +01:00
Dario Nieuwenhuis
af5454fbfe
Update drivers to owned irqs.
2020-12-29 01:53:17 +01:00
Dario Nieuwenhuis
4b8d8ba87e
Update RTC for owned irqs
2020-12-29 01:05:28 +01:00
Dario Nieuwenhuis
0750234fbe
WIP owned irqs
2020-12-29 00:05:52 +01:00
Dario Nieuwenhuis
267ec334ac
Rename Uarte -> BufferedUarte
2020-12-28 23:57:50 +01:00
Dario Nieuwenhuis
692d8bb813
More efficient timer queue, integrated into Executor directly.
2020-12-26 23:44:53 +01:00
Dario Nieuwenhuis
80c504cd95
Add std impl for rand
2020-12-14 00:36:29 +01:00
Dario Nieuwenhuis
6f76c0ebcc
Add support for log+defmt again, but better.
2020-12-01 17:46:56 +01:00
Dario Nieuwenhuis
78135a81d9
Remove anyfmt
2020-11-27 18:42:59 +01:00
Dario Nieuwenhuis
2e062f5627
gpiote: change port api to directly return futures.
2020-11-09 01:04:34 +01:00
Dario Nieuwenhuis
36517fd1c5
Add gpiote port example.
2020-11-08 19:00:08 +01:00
Dario Nieuwenhuis
def225b982
gpiote: better naming
2020-11-08 17:38:45 +01:00
Dario Nieuwenhuis
5e8608c7a5
Make defmt optional with new anyfmt
crate
2020-11-01 17:17:24 +01:00
Dario Nieuwenhuis
2684bf605a
update multiprio example.
2020-10-31 22:45:35 +01:00
Dario Nieuwenhuis
b3858441f7
Update examples.
2020-10-31 22:37:24 +01:00
Dario Nieuwenhuis
cd9ecaef57
integrate static-executor, cleanup time module.
2020-10-19 21:25:54 +02:00
Dario Nieuwenhuis
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
Dario Nieuwenhuis
68eac3a57c
Add multi-priority executor example.
2020-09-26 00:36:02 +02:00
Dario Nieuwenhuis
f88f233e39
Remove executor model (it's not a nice enough abstraction).
2020-09-25 23:42:49 +02:00
Dario Nieuwenhuis
19a89b5c14
Add Clock trait
2020-09-25 23:38:42 +02:00
Dario Nieuwenhuis
cf1d604749
Add support for multi alarm to RTC.
2020-09-25 23:25:49 +02:00
Dario Nieuwenhuis
4333105341
Add Executor with timer queue, Timer, Instant, Duration, Alarm.
2020-09-25 03:25:06 +02:00
Dario Nieuwenhuis
05ca563e7d
Add clock::Monotonic trait.
2020-09-24 23:26:24 +02:00
Dario Nieuwenhuis
afcf725519
Add rtc_async example
2020-09-24 22:46:00 +02:00
Dario Nieuwenhuis
82e5e3c45f
rtc: Add alarm callback.
2020-09-24 22:41:52 +02:00
Dario Nieuwenhuis
f8d63b1f30
Update to static-executor "multi"
2020-09-24 22:04:45 +02:00
Dario Nieuwenhuis
3b39ab07e5
Add 64-bit rtc driver with alarm support.
2020-09-24 19:59:20 +02:00
Dario Nieuwenhuis
4e4241bf90
remove nrf
prefix in features, for consistency with nrf-hal
2020-09-24 19:56:47 +02:00
Dario Nieuwenhuis
f9e2cef7f2
Add GPIOTE async hal.
2020-09-23 00:32:49 +02:00
Dario Nieuwenhuis
9a57deef9b
First commit
2020-09-22 18:03:43 +02:00