cdfd128185
Merge #545
...
545: Add adapter for implementing async traits for blocking types r=lulf a=lulf
This allows writing drivers relying on async traits, while still
functioning with implementations that already implement the embedded-hal
traits.
Co-authored-by: Ulf Lilleengen <lulf@redhat.com >
2022-01-03 14:17:21 +00:00
a94932be02
Mark clear_interrupt_flag as unsafe
2021-12-26 18:29:41 +03:00
6b08c70273
Port buffered uart to v1 stm32 hardware
...
- No DMA
- Create clear_interrupt_flag function to
handle differences between v1 and v2 hardware
2021-12-26 18:13:19 +03:00
3811c0a401
Add adapter for implementing async traits for blocking types
...
This allows writing drivers relying on async traits, while still
functioning with implementations that already implement the embedded-hal
traits.
Add examples to stm32l4 for using this feature.
2021-12-17 12:54:51 +01:00
2bbd1ddb8a
Remove unneeded rustfmt::skip
2021-12-16 11:37:53 +01:00
45ef944457
Stm flush required implementing also, along with std alloc split
2021-12-10 15:11:41 +11:00
4ddd23d623
stm32/usart: unify v1 and v2
2021-12-08 05:12:48 +01:00
b316d2620c
stm32/dma: improve trait docs, seal Word.
2021-12-08 03:18:15 +01:00
b2910558d3
Refactor DMA traits.
2021-12-07 21:43:47 +01:00
44056c2e75
Less allowy.
2021-11-02 15:32:20 -04:00
076c795ebb
Even more allowed unused.
2021-11-02 15:28:14 -04:00
6bbf450478
Allow unused macros temporarily until U5 supports DMA.
2021-11-02 15:20:42 -04:00
091e7e1f98
Generate USART pin definitions for stm32f1
2021-10-11 22:57:21 +02:00
39880de958
partial alternate function configuration on STM32f1
2021-10-11 22:57:10 +02:00
bce909ec1e
Initial STM32F1 family support with two examples for STM32F103C8 (Blue Pill)
2021-09-28 18:31:04 +02:00
e4b37c40c9
Code review request - moving OutputType
to mod sealed
2021-09-24 19:56:48 +02:00
d371298a27
Small adjustment to 'set_as_af' interface
...
Small adjustment to 'set_as_af' interface - v2
2021-09-24 18:39:07 +02:00
ead987245d
embassy: Refactor module structure to remove kitchen-sink util
.
2021-09-11 02:35:35 +02:00
cbff0398bb
Add IRQ-driven buffered USART implementation for STM32 v2 usart ( #356 )
...
* Add IRQ-driven buffered USART implementation for STM32 v2 usart
* Implementation based on nRF UARTE, but simplified to not use DMA to
avoid complex interaction between DMA and USART.
* Implementation of AsyncBufRead and AsyncWrite traits
* Some unit tests to ring buffer
* Update polyfill version
* Update sub module to get usart IRQ fix
2021-08-16 17:16:49 +02:00
9bd34429f3
stm32: add missing + 'a
bounds on trait GATs
2021-08-04 19:39:54 +02:00
0d02342b2d
Rename bread -> read_blocking
2021-08-04 08:34:30 +02:00
6ff0614cb6
Add uart::Read DMA-based implementation
...
* Rename existing read() to bread() (blocking)
2021-08-03 15:31:24 +02:00
7bfb763e09
Rename embassy-extras to embassy-hal-common
2021-07-29 13:44:51 +02:00
3655048e0f
stm32/dma: add MuxChannel trait to distinguish DMAMUX1 and DMAMUX2 channels.
2021-07-17 07:54:16 +02:00
54b5012c56
stm32/dma: update codegen+macrotables for new stm32-data
2021-07-17 07:35:59 +02:00
d0f2dc3abd
Fix rustfmt
2021-07-16 14:41:20 -04:00
3d1391ef2d
stm32/dma: impl all variants
2021-07-16 14:41:20 -04:00
4361cb15f1
stm32/usart: merge v2 and v3 (they're identical)
2021-07-15 00:52:37 +02:00
43cb8de434
Remove gratuitous NoDmaMarker.
2021-07-14 14:37:42 -04:00
38b1359c40
Remove pub and cfg's, since they will be implied by the existance of TxDma<T> in theory.
2021-07-14 14:35:03 -04:00
a88f0028ef
First shot at async dma usart for stm32.
2021-07-14 14:14:14 -04:00
f01ddd5f5c
Mix dmamux into bdma_v1.
2021-07-13 10:09:35 -04:00
043f0ea508
Checkpoint DMAMUX channel setup.
2021-07-13 10:08:43 -04:00
91521a86a0
F0: usart + DMA working
2021-07-13 10:08:43 -04:00
a56ddfdc04
STM: Add usart v2
2021-07-13 10:08:43 -04:00
8f94123ca4
argh, intellij.
2021-07-01 11:37:01 -04:00
0920c0cb1d
Make UART pins Rx/Tx/etc in addition to USART.
2021-07-01 11:30:54 -04:00
54ada5bae1
Stub in the DMA bits that aren't yet there.
2021-07-01 11:30:54 -04:00
bf3bc92525
Re-enable because intellij.
2021-07-01 11:30:54 -04:00
497d3aa153
Add USARTv3 support.
2021-07-01 11:30:54 -04:00
cf5b7dc943
Because IntelliJ makes life hard.
2021-06-30 10:03:18 -04:00
6a0b0f3162
Enable RCC within the USART itself.
2021-06-30 09:57:27 -04:00
07a6686879
Protect DMA-related things with cfg.
2021-06-29 13:00:52 -04:00
c53ab325c1
Wire up DMA with USART v1.
2021-06-29 11:01:57 -04:00
b88fc2847a
Checkpoint with lifetime issues.
2021-06-29 11:01:57 -04:00
00892c7362
Migrate USART to macro tables.
2021-06-03 13:12:38 -04:00
d8e4421fc6
Add stm32-metapac crate, with codegen in rust
2021-05-31 02:40:58 +02:00
82f9242df2
Fix warnings for embassy-stm32 and embassy-stm32-examples
2021-05-20 22:25:12 +10:00
f7858631d8
stm32: fix build, add ci
2021-05-17 03:16:58 +02:00
2303364322
Standardize module structure, fix some build failures
2021-05-17 02:04:51 +02:00