aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32f4/src/bin
Commit message (Collapse)AuthorAgeFilesLines
...
| * | stm32/i2s: add module and example for f4xoviat2023-05-031-0/+36
| | |
* | | stm32: move to bind_interruptsxoviat2023-05-247-22/+42
| |/ |/| | | | | disable lora functionality for now
* | Merge #1419bors[bot]2023-05-191-28/+3
|\ \ | | | | | | | | | | | | | | | | | | | | | 1419: stm32/pwm: improve dead-time api r=Dirbaio a=xoviat Co-authored-by: xoviat <[email protected]>
| * | stm32/pwm: improve dead-time apixoviat2023-05-011-28/+3
| | |
* | | net: do not use smoltcp Instant/Duration in public API.Dario Nieuwenhuis2023-05-151-1/+1
| | |
* | | Fix some typosDirk Stolle2023-05-081-1/+1
| |/ |/|
* | stm32/rtc: cleanup and consolidatexoviat2023-04-181-0/+30
|/
* stm32/sdmmc: add init_card retry.Dario Nieuwenhuis2023-04-171-1/+12
|
* Merge #1330bors[bot]2023-04-061-0/+77
|\ | | | | | | | | | | | | | | 1330: stm32/pwm: add complementary pwm r=Dirbaio a=xoviat This implements complementary PWM with dead time on many supported targets. The specific dead-time programming functions are passed through directly to the user, which is a bit ugly but the best compromise I could reach for now. Co-authored-by: xoviat <[email protected]>
| * stm32/pwm: fix unused importxoviat2023-04-051-1/+1
| |
| * stm32/pwm: add complementary pwm examplexoviat2023-04-051-0/+77
| |
* | Align flash examplesRasmus Melchior Jacobsen2023-04-051-6/+7
|/
* Merge #1321bors[bot]2023-04-041-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | 1321: executor: add Pender, rework Cargo features. r=Dirbaio a=Dirbaio 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). Co-authored-by: Dario Nieuwenhuis <[email protected]>
| * 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).
* | Merge #1313bors[bot]2023-04-041-12/+2
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1313: (embassy-stm32): rework bufferedUart to get rid of PeripheralMutex r=Dirbaio a=MathiasKoch New implementation is very similar to the implementation of embassy-nrf & embassy-rp. Also adds embedded-hal traits to bufferedUart. **NB**: Still needs testing on actual hardware Co-authored-by: Mathias <[email protected]>
| * | Fix interrupt handling so it is similar to before the rework, and fix examplesMathias2023-03-311-12/+2
| |/
* | run fmtMathieu Dupont2023-04-031-1/+0
| |
* | Add MCO support for L4 and F4 familiesMathieu Dupont2023-04-031-0/+31
|/
* Fix examples broken by the macro fix.Dario Nieuwenhuis2023-03-082-4/+2
|
* Merge pull request #1244 from embassy-rs/interruptexecutorDario Nieuwenhuis2023-03-011-13/+23
|\ | | | | cortex-m/executor: don't use the owned interrupts system.
| * cortex-m/executor: don't use the owned interrupts system.Dario Nieuwenhuis2023-02-281-13/+23
| | | | | | | | Preparation for #1224.
* | Example fixes.Dario Nieuwenhuis2023-03-011-8/+3
|/
* stm32/sdmmc: Implement proper clock configurationchemicstry2023-02-231-1/+2
|
* stm32/sdmmc: Fix SDIOv1 writeschemicstry2023-02-181-2/+37
|
* usb: unify ControlHandler+DeviceStateHandler, route all control requests to ↵Dario Nieuwenhuis2023-02-082-2/+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/usb_otg: Add F4 usb_ethernet examplechemicstry2023-01-181-0/+169
|
* stm32 otg: add examples.chemicstry2023-01-111-0/+106
|
* Merge #1024bors[bot]2022-10-261-3/+28
|\ | | | | | | | | | | | | | | | | | | | | | | 1024: stm32/adc: Remove voltage and temperature conversions r=Dirbaio a=GrantM11235 The current conversion utilities are confusing and a bit of a footgun. (Two out of the three examples got it wrong! They didn't measure vref at all, so all the conversions are completely wrong if vcca isn't 3.3v) I think we should eventually have some sort of conversion utilities in the HAL, but for now I think it is best to just remove it and let the users do their own math. cc `@chemicstry` Co-authored-by: Grant Miller <[email protected]>
| * Improve examplesGrant Miller2022-10-241-4/+8
| |
| * stm32/adc: Remove voltage and temperature conversionsGrant Miller2022-10-241-3/+24
| |
* | Merge #1025bors[bot]2022-10-261-0/+45
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1025: Implement I2C timeouts, second attempt r=Dirbaio a=chemicstry This is an alterrnative to #1022 as discussed there. Timeouts are implemented using suggested `check_timeout: impl Fn() -> Result<(), Error>` function, which does not depend on `embassy-time` by default and is a noop for regular I2C. This also adds `time` feature like in `embassy-nrf` to enable `embassy-time` dependencies. While at it, I also gated some other peripherals that depend on `embassy-time`, notably `usb` and (partially) `subghz`. `TimeoutI2c` is currently only implemented for i2cv1, because i2cv2 has additional complications: - Async methods still use a lot of busy waiting code in between DMA transfers, so simple `with_timeout()` will not work and it will have to use both types of timeouts. It could probably be rewritten to replace busy waits with IRQs, but that's outside the scope of this PR. - I2C definition `I2c<'d, T, TXDMA, RXDMA>` is different from i2cv1 `I2c<'d, T>` making it hard to share single `TimeoutI2c` wrapper. A couple of options here: - Duplicate `TimeoutI2c` code - Add dummy `TXDMA`, `RXDMA` types to i2cv1 considering that in the future it should also support DMA Co-authored-by: chemicstry <[email protected]>
| * | Add more docschemicstry2022-10-241-0/+3
| | |
| * | Unify i2cv1 definition with i2cv2chemicstry2022-10-241-1/+13
| | |
| * | Implement i2cv1 timeoutchemicstry2022-10-241-0/+30
| |/
* / stm32: Add support for read_until_idle on UARTGuillaume MICHEL2022-10-263-6/+17
|/
* Fix adc_v4 compilationchemicstry2022-10-071-1/+1
|
* Fix internal channel reading on adc_v2chemicstry2022-10-071-3/+22
|
* 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
* Remove Forever, switch to static_cell.Dario Nieuwenhuis2022-08-221-7/+7
|
* Split embassy-time from embassy-executor.Dario Nieuwenhuis2022-08-1813-18/+18
|
* examples Remove the `fn config()` idiom.Dario Nieuwenhuis2022-08-172-13/+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-1712-26/+29
|
* Add DACv1 example for F4chemicstry2022-08-041-0/+37
|
* Split embassy crate into embassy-executor, embassy-util.Dario Nieuwenhuis2022-07-2912-32/+32
|
* rename PwmPin::new_chX, update examples.Dario Nieuwenhuis2022-07-231-2/+3
|
* Update embassy-stm32Dario Nieuwenhuis2022-07-231-3/+8
|
* Fix unused importschemicstry2022-07-141-1/+0
|
* Fix erasing across bankschemicstry2022-07-141-5/+3
|
* Fix writing to last sector of F4 flashchemicstry2022-07-141-10/+20
|
* Merge #858bors[bot]2022-07-112-5/+5
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 858: embassy-stm32: Simplify time r=Dirbaio a=GrantM11235 - 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 Co-authored-by: Grant Miller <[email protected]>