aboutsummaryrefslogtreecommitdiff
path: root/embassy-stm32/src/timer
Commit message (Collapse)AuthorAgeFilesLines
...
| * feat: Add 32-bit timer support for waveform functionLiu Hancheng2025-01-012-9/+34
| |
* | chore: fix buildelagil2025-01-033-25/+25
|/
* Merge pull request #3549 from aurelj/stm32_pwm_32bits_timerDario Nieuwenhuis2024-12-023-10/+18
|\ | | | | | | stm32/timer: avoid max_compare_value >= u16::MAX
| * stm32/timer: avoid max_compare_value >= u16::MAXAurélien Jacobs2024-11-203-10/+18
| | | | | | | | | | | | | | | | | | | | With STM32 32 bits timers, the max_compare_value (AKA, ARR register) can currently be set greater than u16::MAX, which leads to the following assert!(max < u16::MAX as u32) in max_duty_cycle() when setting up a 1 kHz SimplePwm on 84 MHz MCU. The issue is fixed by forcing a max_compare_value that fits into 16 bits when setting the frequency for a PWM.
* | Use inline const for initializing arrays. (#3567)Dario Nieuwenhuis2024-11-241-3/+2
|/
* Make clone_unchecked workGrant Miller2024-09-212-4/+2
|
* wip: split by valueGrant Miller2024-09-073-6/+21
|
* last oops I promiseGrant Miller2024-09-061-3/+3
|
* Missing docsGrant Miller2024-09-061-0/+9
|
* oops againGrant Miller2024-09-061-4/+4
|
* oopsGrant Miller2024-09-061-2/+6
|
* Match embedded-hal apiGrant Miller2024-09-061-33/+72
|
* Deduplicate SimplePwm's channel methodsGrant Miller2024-09-061-56/+63
|
* embassy-stm32: Add SimplePwmChannelGrant Miller2024-09-061-0/+112
|
* stm32/gpio: refactor AfTypeJan Špaček2024-06-165-21/+16
|
* Merge pull request #3014 from brunob45/pwm_inputDario Nieuwenhuis2024-05-314-28/+154
|\ | | | | | | Add PWM Input for STM32
| * rust fmt really does not want blank space thereBruno Bousquet2024-05-301-1/+0
| |
| * fix fmt (again)Bruno Bousquet2024-05-301-2/+3
| |
| * fix fmtBruno Bousquet2024-05-301-3/+1
| |
| * undo changes in input_captureBruno Bousquet2024-05-301-6/+6
| |
| * create functions in inner to handle register modificationBruno Bousquet2024-05-303-46/+31
| |
| * rename get_width_ticks and add info!() in examplesBruno Bousquet2024-05-291-3/+3
| |
| * Apply suggestions from code reviewBruno Bousquet2024-05-291-4/+4
| | | | | | Co-authored-by: Romain Reignier <[email protected]>
| * pwm_input is working on F446Bruno Bousquet2024-05-294-25/+159
| |
| * undo minor changesBruno Bousquet2024-05-281-4/+10
| |
| * use timer LLBruno Bousquet2024-05-281-45/+7
| |
| * example is working nowBruno Bousquet2024-05-281-11/+52
| |
* | stm32/rcc: replace generated enable/disable code with runtime infoJan Špaček2024-05-251-2/+3
|/
* fix fmt for ciBruno Bousquet2024-05-062-2/+5
|
* add async captureBruno Bousquet2024-05-062-8/+185
|
* format timer/mod.rsBruno Bousquet2024-05-051-1/+1
|
* add get_input_interruptBruno Bousquet2024-05-052-0/+10
|
* formattingBruno Bousquet2024-05-051-1/+0
|
* create input_captureBruno Bousquet2024-05-052-0/+142
|
* stm32/timer: add `low_level::Timer::get_clock_frequency()`Jan Špaček2024-05-041-0/+5
|
* stm32 timer: fix 32bit timer off by 1 ARR errorftk2024-04-271-1/+4
|
* add missing interrupt for timereZio Pan2024-04-051-39/+66
|
* "separate CC interrupt" is for AdvCh4 onlyeZio Pan2024-04-051-19/+20
|
* move `enable_outputs` to private trait ...eZio Pan2024-04-051-6/+37
| | | | ... to avoid API leaking.
* stm32: use private_bounds for sealed traits.Dario Nieuwenhuis2024-03-231-2/+1
|
* stm32/timer: simplify traits, convert from trait methods to struct.Dario Nieuwenhuis2024-03-235-945/+815
|
* stm32: Fix psc compile error with current stm32-dataRené van Dorst2024-03-201-4/+4
| | | | | Commit https://github.com/embassy-rs/stm32-data/commit/cc525f1b252c91272529cbea1d3d4399b43c60b4 has changed the definition of the `psc` register. Update timer/mod.rs to reflect the stm32-data change.
* Fix warnings in recent nightly.Dario Nieuwenhuis2024-03-202-2/+0
|
* STM32 SimplePwm: Fix regression and re-enable output pinRalf2024-03-082-6/+32
| | | | | | | | PR #2499 implemented timer hierarchy, but removed enable_outputs() from trait CaptureCompare16bitInstance and from SimplePwm. This functions is required for advanced timers to set bit BDTR.MOE and to enable the output signal.
* update metapaceZio Pan2024-02-291-6/+6
|
* stm32: timers: use TIMx_CC interrupt source for advanced timersTorin Cooper-Bennun2024-02-261-4/+15
| | | | fixes (hopefully) time driver when using TIM1/8/20
* hal-internal: remove impl DerefMut for PeripheralRef.Dario Nieuwenhuis2024-02-201-32/+32
| | | | | | | | | if you have `PeripheralRef<'a, AnyPIn>` for pin A, and `AnyPin` (owned) for pin B, you can `mem::swap` them. so, getting access forever to pin A, just by "sacrificing" pin B this defeats the point of PeripheralRef, which is if you got a `PeripheralRef<'a, T>` then you're only allowed to use the peripheral for `'a`. Also some drivers rely on the fact only one instance of a singleton exists for soundness, so this is a soundness fix for those.
* timer-doc-fixeZio Pan2024-02-101-8/+14
|
* use cfg_if to reduce macro conditioneZio Pan2024-02-101-20/+14
|
* doc fixeZio Pan2024-02-101-8/+11
|