3220 Commits

Author SHA1 Message Date
Christoph Baechler
02829f5e4b embassy-stm32: fix temperature channel for L0 series 2025-07-01 12:56:25 +02:00
Süha Ünüvar
5cbc9a235f correct documentation 2025-06-27 09:23:53 +08:00
Süha Ünüvar
04bf17dde6 rename fns and add documentation 2025-06-27 09:23:53 +08:00
melvdl
2727fb266f run cargo fmt 2025-06-27 01:28:47 +02:00
melvdl
6f88c2c73c stm32: rename timer channel trait; replace impls via macro with impls generic over timer channels 2025-06-27 01:08:28 +02:00
melvdl
cbd24bf2ee stm32: fix timer break input 2 trait name in build script 2025-06-27 01:04:47 +02:00
melvdl
1623d4e639 stm32: generify timer::one_pulse and timer::qei pin constructors 2025-06-26 22:55:12 +02:00
melvdl
3e78f8a108 stm32: generify timer channels 2025-06-26 19:35:19 +02:00
Gerzain Mata
51675e9bc7 Added STM32WBA6XXX devices as features
Added 2 wba6 features to cargo batch in ci.sh

WIP

Added default RTC rust version for undefined peripherals

Added missing generated RTC peripheral to be handled by rtc/v3.rs

Reordered cfg_attrs in rtc/mod.rs
2025-06-26 04:38:22 -07:00
Thomas Giesel
ef4faffcb5
Merge branch 'main' into generate_all_opamp_pins 2025-06-25 21:10:25 +02:00
Thomas Giesel
ca14f54529 Adapt opamp driver to new opamp IP version numbers 2025-06-25 21:06:39 +02:00
Thomas Giesel
cbf61765f1 Generate pins for new opamp pin naming scheme
The new code implements the corresponding traits for the
common opamp pin naming scheme of all families, which
is VINPx/VINMx.

The same pin must not be used for multiple channels for the
same opamp. For example, if VINM0 and VINM1 of the same opamp
were assigned to the same pin, the channel would not be unique,
meaning that the traits would be implemented in a conflicting
manner.
2025-06-25 08:27:44 +02:00
jake-taf
9cb5c6d001
Fix issues #4333
Allow configs to be used in this macro
2025-06-23 10:30:09 -04:00
Dario Nieuwenhuis
454a5e9044
Merge pull request #4272 from cschuhen/fdcan_refcounter_raii
Fdcan use RAII for reference counting.
2025-06-22 21:37:15 +00:00
Dario Nieuwenhuis
bf3170ed38
Merge pull request #4294 from AlanRosenthal/rtc_c0
Add RTC example for STM32C0
2025-06-22 21:22:10 +00:00
Dario Nieuwenhuis
699626ced7
Merge pull request #4324 from plorefice/hsem-fixes
embassy-stm32: fix HSEM initialization and core detection
2025-06-22 21:08:38 +00:00
Dario Nieuwenhuis
c9709cf19d
Merge pull request #4311 from antonok-edm/sdmmc-set-datatime-during-init
[sdmmc] Set `datatime` during initialization
2025-06-22 21:04:22 +00:00
Corey Schuhen
8b280688e1 FDCAN/BXCAN: Finish implementation of RAII instance counters.
- Use DeRef in all types
    - Change Name of internal_operation and its enum
    - move into Info to avoid macro code dup
2025-06-21 12:31:56 +10:00
Tobias Naumann
e75b344089 Add TxGuard and RxGuard which impl RAII for the STM32 CAN reference counting 2025-06-21 12:29:36 +10:00
Corey Schuhen
b2dcdad51d BXCAN: Put State inside a critical section mutex of RefCell. This removed unsound code that was giving out mut& to State
This change is equiverlent to f5658d6833cb140296a0b6f25b7eb6d16f06c520
that was already done for the FDCAN driver.
2025-06-21 11:58:53 +10:00
Pietro Lorefice
59228e2ab4 stm32: hsem: fix broken CPUID detection 2025-06-20 10:47:37 +02:00
Pietro Lorefice
be5b62bdd4 stm32: hsem: add missing RCC initialization 2025-06-20 10:46:33 +02:00
Anton Lazarev
e155d17328
sdmmc: set datatime during initialization 2025-06-16 17:55:29 -07:00
Alan Rosenthal
5534a36507 Add RTC example for STM32C0
Tested on STM32C0116F6

Requries: https://github.com/embassy-rs/stm32-data/pull/617
2025-06-10 18:46:41 -04:00
jrmoulton
fb71139522
fix name change 2025-06-10 15:53:06 -06:00
jrmoulton
3b2dd2bad8
fmt 2025-06-10 15:53:02 -06:00
jrmoulton
cfad9798ff
merge new embassy changes 2025-06-10 15:48:36 -06:00
David Lawrence
c10688cd40 Add public function to get current clock configuration 2025-06-06 13:05:35 -04:00
Dario Nieuwenhuis
141c170db4
Merge pull request #4277 from diondokter/fix-usb-race
STM32 USB: Read data before register update
2025-06-03 14:14:45 +00:00
Dion Dokter
9b3b6c5421 STM32 USB: Read data before register update 2025-06-03 16:08:55 +02:00
Frank Stevenson
011d7832f8 Use modify() for subsequent changes to RCC.cr() 2025-06-03 15:47:33 +02:00
Dario Nieuwenhuis
c637ee7d79
Merge pull request #4271 from cschuhen/fdcan_critical_section
Use a critical section mutex in CAN Fdcan driver.
2025-06-01 12:37:12 +00:00
Dario Nieuwenhuis
f3983328e0
Merge pull request #4231 from ROMemories/feat/stm32-rcc-const-constructors
feat(stm32): provide a `const` constructor on `rcc::Config`
2025-06-01 12:19:39 +00:00
Dario Nieuwenhuis
fc4139146f
Merge pull request #4251 from kpfleming/improve-stm32-ringbuffereduart-docs
stm32: Expand documentation of RingBufferedUartRx.
2025-06-01 12:15:19 +00:00
Corey Schuhen
010744802f Remove duplicate calc_timestamp and move to 'Registers' struct. 2025-05-31 09:09:12 +10:00
Corey Schuhen
f5658d6833 Put State inside a critical section mutex of RefCell. This removes the unsound code that was giving out mut&. to State 2025-05-31 08:20:03 +10:00
Corey Schuhen
eba9ddc805 Switch to SendDynamicSender for FDCAN. 2025-05-31 08:20:03 +10:00
Dario Nieuwenhuis
9b8d6d6f22
Merge pull request #4267 from melvdlin/stm32-qspi-from
convert embassy-stm32::qspi::enums `Into` impls into equivalant `From` impls
2025-05-30 11:15:54 +00:00
melvdl
86efdc9cc3 convert embassy-stm32::qspi::enums Into impls into equivalant From impls 2025-05-30 00:30:27 +02:00
Willdew
3d617007a2 fixed n in set_sq to be indexed correctly 2025-05-29 23:06:01 +02:00
Dario Nieuwenhuis
645883d874
Merge pull request #4223 from embedded-rust-iml/feature/drop-impl-for-stm32-fdcan
Cleanup Pins and RCC for FDCAN on STM32
2025-05-27 17:44:11 +00:00
Dario Nieuwenhuis
aab043b0f3
Merge pull request #4252 from kpfleming/assert-empty-buffer-buffereduart
stm32: Assert in BufferedUart that the buffers are not empty.
2025-05-27 15:17:29 +00:00
Ulf Lilleengen
5f3204f9c3
Merge pull request #4232 from RaulIQ/main
[embassy-stm32] add PWM multi channel waveform generation using DMA burst mode
2025-05-27 06:25:33 +00:00
Kevin P. Fleming
b9f7478ada stm32: Improvements to CRC HAL.
* Corrects spelling and grammar errors in documentation.

* Removes non-v1 code from v1-only source file.

* Adds 'read' operation for v2/v3, to be consistent with v1.

* Removes 'reset' from the v2/v3 'reconfigure' operation to match the
  documentation (the only user is the 'new' function which already
  issues a reset).
2025-05-26 18:43:09 -04:00
ROMemories
44c53365ad fixup! feat(stm32-l): provide a const constructor on rcc::Config 2025-05-26 14:44:48 +02:00
ROMemories
a5a27ef52b fixup! feat(stm32-wba): provide a const constructor on rcc::Config 2025-05-26 14:43:46 +02:00
ROMemories
5d6b51d910 fixup! feat(stm32-l): provide a const constructor on rcc::Config 2025-05-26 14:43:39 +02:00
ROMemories
fce84bd51b fixup! feat(stm32-g4): provide a const constructor on rcc::Config 2025-05-26 14:43:29 +02:00
ROMemories
ca17b41d0d fixup! feat(stm32-g0): provide a const constructor on rcc::Config 2025-05-26 14:43:21 +02:00
ROMemories
8fa07ac062 fixup! feat(stm32-c0): provide a const constructor on rcc::Config 2025-05-26 14:43:07 +02:00