aboutsummaryrefslogtreecommitdiff
path: root/examples/stm32f4/src
Commit message (Collapse)AuthorAgeFilesLines
* examples: use nicer InterrupExt to set irq priority in multprio.Dario Nieuwenhuis2023-06-091-9/+5
|
* net: Support dual stack IPRuben De Smet2023-06-071-2/+2
|
* Rename StaticConfig to StaticConfigV4Ruben De Smet2023-06-061-1/+1
|
* Use make_static! from static-cell v1.1Dario Nieuwenhuis2023-06-011-18/+14
|
* Fix blocking exampleRasmus Melchior Jacobsen2023-05-261-2/+2
|
* FormattingRasmus Melchior Jacobsen2023-05-251-3/+3
|
* Fix examplesRasmus Melchior Jacobsen2023-05-251-2/+2
|
* Let Flash<Async/Blocking> be a thingRasmus Melchior Jacobsen2023-05-251-1/+1
|
* Align with new bind_interruptRasmus Melchior Jacobsen2023-05-252-5/+9
|
* Align examplesRasmus Melchior Jacobsen2023-05-252-7/+88
|
*-. Merge #1340 #1474bors[bot]2023-05-251-0/+36
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1340: Add I2S for f4 r=Dirbaio a=xoviat This is only for f4, but it puts us equal to or ahead of the standard rust hal. 1474: stm32: Fix watchdog timeout computation r=Dirbaio a=rmja Co-authored-by: xoviat <[email protected]> Co-authored-by: Rasmus Melchior Jacobsen <[email protected]>
| * | 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
|