aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32f3/src
Commit message (Collapse)AuthorAgeFilesLines
* stm32/gpio: remove generics.Dario Nieuwenhuis2024-01-222-18/+15
|
* Change GPIO inherent methods back to `&self`.Dario Nieuwenhuis2024-01-101-1/+1
| | | | | | | With the embedded-hal rc3 update I changed them to require `&mut self`, but in retrospect I think `&self` is better, for extra flexibility. This PR reverts the changes from the rc3 update to inherent methods.
* ci: use beta, add secondary nightly ci.Dario Nieuwenhuis2023-12-2110-10/+0
|
* Update embedded-hal to 1.0.0-rc.3Dario Nieuwenhuis2023-12-141-1/+1
|
* usb: remove msos-descriptor feature.Dario Nieuwenhuis2023-11-081-0/+1
|
* time: Update examples, tests, and other code to use new Timer::after_x ↵Adam Greig2023-10-155-13/+13
| | | | convenience methods
* stm32/usart: return error instead of panicking on bad baudrate.Dario Nieuwenhuis2023-09-261-1/+1
|
* Deprecate *recv* in favor of *receive*Ruben De Smet2023-08-221-2/+2
|
* Set frequency in stm32 SPI examplesbofh2023-07-311-1/+5
|
* Fix formattingbofh2023-07-301-9/+1
|
* Fix stm32 SPI examplesbofh2023-07-301-2/+0
|
* examples: use nicer InterrupExt to set irq priority in multprio.Dario Nieuwenhuis2023-06-091-9/+5
|
* Fix examplesRasmus Melchior Jacobsen2023-05-251-5/+5
|
* Let Flash<Async/Blocking> be a thingRasmus Melchior Jacobsen2023-05-251-1/+1
|
* Align with new bind_interruptRasmus Melchior Jacobsen2023-05-251-2/+2
|
* Align examplesRasmus Melchior Jacobsen2023-05-251-6/+6
|
* Align examplesRasmus Melchior Jacobsen2023-05-251-3/+2
|
* stm32: move to bind_interruptsxoviat2023-05-242-6/+12
| | | | disable lora functionality for now
* Align flash examplesRasmus Melchior Jacobsen2023-04-051-1/+1
|
* executor: add Pender, rework Cargo features.Dario Nieuwenhuis2023-04-031-1/+1
| | | | | | | | | This introduces a `Pender` struct with enum cases for thread-mode, interrupt-mode and custom callback executors. This avoids calls through function pointers when using only the thread or interrupt executors. Faster, and friendlier to `cargo-call-stack`. `embassy-executor` now has `arch-xxx` Cargo features to select the arch and to enable the builtin executors (thread and interrupt).
* cortex-m/executor: don't use the owned interrupts system.Dario Nieuwenhuis2023-02-281-13/+23
| | | | Preparation for #1224.
* usb: unify ControlHandler+DeviceStateHandler, route all control requests to ↵Dario Nieuwenhuis2023-02-081-1/+0
| | | | | | | | 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).
* stm32: Add support for read_until_idle on UARTGuillaume MICHEL2022-10-261-1/+3
|
* Remove flash lock/unlock public API from stm32 flash, and perform the ↵Mathias2022-09-301-1/+1
| | | | unlocking and locking automatically on erase and write operations
* usb: move classes into the `embassy-usb` crate.Dario Nieuwenhuis2022-09-261-1/+1
|
* Replace futures::future::join -> embassy_futures::join::join.Dario Nieuwenhuis2022-09-221-1/+1
|
* sync: flatten module structure.Dario Nieuwenhuis2022-08-221-1/+1
|
* split `embassy-util` into `embassy-futures`, `embassy-sync`.Dario Nieuwenhuis2022-08-221-2/+2
|
* Remove Forever, switch to static_cell.Dario Nieuwenhuis2022-08-221-7/+7
|
* Split embassy-time from embassy-executor.Dario Nieuwenhuis2022-08-189-13/+13
|
* examples Remove the `fn config()` idiom.Dario Nieuwenhuis2022-08-172-14/+6
| | | | | 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.
* Remove HAL initialization from #[embassy::main] macro.Dario Nieuwenhuis2022-08-178-18/+20
|
* Split embassy crate into embassy-executor, embassy-util.Dario Nieuwenhuis2022-07-299-29/+29
|
* embassy-stm32: Simplify timeGrant Miller2022-07-101-5/+5
| | | | | | | | | | - Remove unused `MilliSeconds`, `MicroSeconds`, and `NanoSeconds` types - Remove `Bps`, `KiloHertz`, and `MegaHertz` types that were only used for converting to `Hertz` - Replace all instances of `impl Into<Hertz>` with `Hertz` - Add `hz`, `khz`, and `mhz` methods to `Hertz`, as well as free function shortcuts - Remove `U32Ext` extension trait
* Run rustfmt.Dario Nieuwenhuis2022-06-1210-57/+27
|
* Merge #806bors[bot]2022-06-121-2/+2
|\ | | | | | | | | | | | | | | | | | | 806: Add embassy-cortex-m crate. r=Dirbaio a=Dirbaio - 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`. Co-authored-by: Dario Nieuwenhuis <[email protected]>
| * Add embassy-cortex-m crate.Dario Nieuwenhuis2022-06-121-2/+2
| | | | | | | | | | | | - 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`.
* | Rename channel to mpmchuntc2022-06-121-1/+1
|/ | | | I've renamed the channel module for the MPMC as mpmc. There was a previous debate about this, but I feel that the strategy here avoids importing `channel::channel`. The change leaves `signal::Signal`, but I think that's ok. It is all a bit subjective of course. The bottom line for me is that I really like the term mpmc - it means something to me and aligns with broader naming e.g. in Tokio.
* stm32: add USB driver.Dario Nieuwenhuis2022-06-071-0/+116
|
* Add support for F3 flashMatous Hybl2022-05-062-1/+44
|
* executor: fix unsoundness in InterruptExecutor::start.Dario Nieuwenhuis2022-04-251-6/+4
| | | | | | | The initial closure is not actually called in the interrupt, so this is illegally sending non-Send futures to the interrupt. Remove the closure, and return a SendSpawner instead.
* Simpler Channel.Dario Nieuwenhuis2022-04-061-35/+24
| | | | | | | - Allow initializing in a static, without Forever. - Remove ability to close, since in embedded enviromnents channels usually live forever and don't get closed. - Remove MPSC restriction, it's MPMC now. Rename "mpsc" to "channel". - `Sender` and `Receiver` are still available if you want to enforce a piece of code only has send/receive access, but are optional: you can send/receive directly into the Channel if you want.
* Use embassy/defmt-timestamp-uptime in all examples.Dario Nieuwenhuis2022-04-029-43/+25
|
* Improve logic for processing button eventsCristian Eigel2022-02-161-15/+25
|
* blocking_mutex: refactor to work on stable. No GATs, and can be constructed ↵Dario Nieuwenhuis2022-02-121-4/+7
| | | | in const.
* Add button_events example for stm32f3Cristian Eigel2022-02-111-0/+163
|
* Port multiprio example to stm32f3 and stm32f4 platformsCristian Eigel2022-02-101-0/+144
|
* Support unstable-trait feature for stm32Ulf Lilleengen2022-01-261-2/+1
|
* stm32/usart: expose all functionality as inherent methods.Dario Nieuwenhuis2022-01-191-1/+0
|
* stm32/exti: expose all functionality as inherent methods.Dario Nieuwenhuis2022-01-191-1/+0
|