4ce1c5f27d
Add MCO support for L4 and F4 families
2023-04-03 16:41:25 +02:00
b2c6dc45e3
Fix examples broken by the macro fix.
2023-03-08 09:17:01 +01:00
3af991ab63
usb: unify ControlHandler+DeviceStateHandler, route all control requests to all handlers.
...
- Allows classes to handle vendor requests.
- Allows classes to use a single handler for multiple interfaces.
- Allows classes to access the other events (previously only `reset` was available).
2023-02-08 00:17:08 +01:00
1af102a1aa
stm32 otg: add examples.
2023-01-11 17:58:15 +01:00
9cac649fcf
stm32: Add support for read_until_idle on UART
2022-10-26 19:06:18 +02:00
5daa173ce4
Split embassy-time from embassy-executor.
2022-08-18 01:22:30 +02:00
2e85eaf7d5
examples Remove the fn config()
idiom.
...
It was only useful for doing #[embassy_executor::main(config = "config()")]`. Now that
it's gone, it makes more sense to build the config in main directly.
2022-08-17 22:25:58 +02:00
fc6e1e06b3
Remove HAL initialization from #[embassy::main] macro.
2022-08-17 22:16:46 +02:00
6498324b58
Implement I2C pullup configuration
2022-08-09 22:13:35 +03:00
a0f1b0ee01
Split embassy crate into embassy-executor, embassy-util.
2022-07-29 23:40:36 +02:00
a8703b7598
Run rustfmt.
2022-06-12 22:22:31 +02:00
e10fc2bada
Async shared bus for SPI & I2C + rename embassy-traits ( #769 )
...
* Rename embassy-traits to embassy-embedded-hal
* Rename embassy-traits to embassy-embedded-hal
* Add shared bus for SPI and I2C
* rustfmt
* EHA alpha 1
* Rename embedded-traits in examples
* rustfmt
* rustfmt
Co-authored-by: Henrik Alsér <henrik@mindbite.se >
2022-05-26 18:54:58 +02:00
fc32b3750c
Remove embassy_hal_common::usb.
...
The replacement is `embassy-usb`. There's a WIP driver for stm32 USBD in #709 ,
there's no WIP driver for stm32 USB_OTG. This means we're left without
USB_OTG support for now.
Reason for removing is I'm going to soon remove `embassy::io`, and
USB uses it. I don't want to spend time maintaining "dead" code
that is going to be removed. Volunteers welcome, either to update
old USB to the new IO, or write a USB_OTG driver fo the new USB.
2022-05-04 01:41:37 +02:00
3251a21fb7
Switch to crates.io embedded-hal, embedded-hal-async.
...
This temporarily removes support for the async UART trait, since it's
not yet in embedded-hal-async.
2022-04-22 19:58:24 +02:00
8f6fccf012
fix clock in l4 rng example
2022-04-11 21:06:22 -06:00
d8860c0b80
add stm32l4 hsi48 and usb example
2022-04-09 14:55:03 -06:00
82803bffda
Use embassy/defmt-timestamp-uptime in all examples.
2022-04-02 04:35:06 +02:00
9bad9365dc
Update rust nightly, embedded-hal 1.0, embedded-hal-async.
2022-03-11 00:38:07 +01:00
ed84d753c7
Update examples
2022-03-08 17:12:50 -06:00
550da471be
stm32: Remove OptionalPin
...
The idea behind OptionalPin has a few problems:
- you need to impl the signal traits for NoPin which is a bit weird https://github.com/embassy-rs/embassy/blob/master/embassy-stm32/src/dcmi.rs#L413-L416
- you can pass any combination of set/unset pins, which needs checking at runtime https://github.com/embassy-rs/embassy/blob/master/embassy-stm32/src/dcmi.rs#L130
The replacement is to do multiple `new` constructors for each combination of pins you want to take.
2022-02-10 02:38:10 +01:00
0719b05d63
traits: migrate Delay to embedded-hal 1.0+async, remove Rng and Flash.
2022-01-27 00:08:02 +01:00
4032fc0655
Support unstable-trait feature for stm32
2022-01-26 22:39:06 +01:00
889d757ab8
stm32/spi: expose all functionality as inherent methods.
2022-01-19 17:59:55 +01:00
97ab859f00
stm32/i2c: expose all functionality as inherent methods.
2022-01-19 17:59:55 +01:00
c949519714
stm32/usart: expose all functionality as inherent methods.
2022-01-19 17:59:55 +01:00
b526addf7b
stm32/exti: expose all functionality as inherent methods.
2022-01-19 17:59:55 +01:00
58fc64722c
stm32/gpio: expose all functionality as inherent methods.
2022-01-19 17:59:55 +01:00
cdc66e110f
stm32/rcc: remove builders on Config.
...
This makes API consistent with other Config structs in Embassy, where
the convention is to not use builders.
2022-01-04 13:31:30 +01: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
01e5376b25
Merge #456
...
456: Fix L4 clock setup for MSI and PLL to allow RNG operation r=Dirbaio a=lulf
Example is tested on STM32L475VG.
Co-authored-by: Ulf Lilleengen <lulf@redhat.com >
2021-10-26 11:59:14 +00:00
e55726964d
Fix clock setup for MSI and PLL to allow RNG opereation
...
Add RNG example using PLL as clock source.
2021-10-26 13:45:53 +02:00
f8ebc967a9
Add implementation of async trait for STM32 I2C v2
...
* Add DMA read implementation for I2C v2
* Add example using DMA for I2C
2021-10-21 12:30:02 +02:00
9e461b771a
Add i2c example for L4
2021-10-20 10:11:34 +02:00
de016e8456
Remove trait_alias, allow(incomplete_features).
...
trait_alias seems unused. no idea why it's there.
2021-09-03 17:00:58 +02:00
2c992f7010
stm32: move dbgmcu stuff to toplevel config setting, defaulting to true.
2021-08-19 23:50:19 +02:00
f4950c4449
examples: Consistently use unwrap! in favor of .unwrap()
...
Unfortunately errors from `embedded_graphics` and `core` doesn't provide
the necessary instances currently.
2021-08-05 22:39:59 +02:00
0ea6a2d890
time: replace dyn clock/alarm with a global Driver trait
2021-08-05 19:14:09 +02:00
07d4b196f7
Update nightly, remove removed features.
2021-08-04 19:48:14 +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
4ccac69929
stm32l4: Cleanup examples
...
* Use `cortex_m_rt::entry` for sync examples
* Use `Dbgmcu::enable_all()` everywhere
2021-07-29 15:54:11 +02:00
5b0ae5c25b
stm32/examples: cleanup L4
2021-07-24 13:57:11 +02:00
06fb2a7a80
Enable SYSCFG clock in exti::init()
2021-07-24 11:13:49 +02:00
34dfe28d3a
FFS warnings about unused Result<>.
2021-07-23 13:22:39 -04:00
053e330375
Fix warnings about un-used variables.
2021-07-23 13:22:39 -04:00
e269971597
Fix extraneous mut
warnings in L4 example.
2021-07-23 13:22:39 -04:00
bee7f60f08
Improve the SPIv2 DMA example to verify it actually works.
2021-07-23 13:22:39 -04:00
0d2051243e
SPIv2 + DMA.
2021-07-23 13:22:39 -04:00
5ac91933ff
stm32: No need to enable GPIO clocks manually
2021-07-23 17:54:13 +02:00
d7176da37c
stm32/examples: update DMA channel names
2021-07-17 08:04:33 +02:00