Dario Nieuwenhuis
97ca0e77bf
stm32: avoid creating many tiny critical sections in init.
...
Saves 292 bytes on stm32f0 bilnky with max optimizations (from 3132 to 2840).
2023-10-12 16:20:34 +02:00
pbert
ecdd7c0e2f
enable clock first
2023-10-12 11:04:44 +02:00
pbert
f65a96c541
STM32: combine RccPeripherals reset() and enable() to reset_and_enable()
2023-10-12 11:04:19 +02:00
Gabriel Górski
c6513f93fe
stm32/gpio: Implement eh1::digital::InputPin
for OutputOpenDrain
...
Pins in open-drain mode are outputs and inputs simultaneously.
2023-10-04 18:20:25 +02:00
Dario Nieuwenhuis
e03239e88d
stm32: centralize enabling pwr, syscfg, flash.
2023-09-25 01:07:55 +02:00
xoviat
d375c46590
Merge pull request #1751 from oro-os/add-pin-drop-docs
...
stm32: add note about Output/OutputOpenDrain drop behavior
2023-08-08 23:05:12 +00:00
Grant Miller
d49f40dd5c
embassy-stm32: Misc clippy fixes
2023-08-06 15:00:39 -05:00
Josh Junon
7b3d7a3826
stm32: add note about Output/OutputOpenDrain drop behavior
2023-08-06 05:58:38 +02:00
xoviat
a9f6e30bcd
rustfmt
2023-07-29 12:03:01 -05:00
xoviat
0d7b005252
stm32/pwm: add output type control
2023-07-29 12:01:32 -05:00
Dario Nieuwenhuis
036e6ae30c
Rename embassy-hal-common to embassy-hal-internal, document it's for internal use only. ( #1700 )
2023-07-28 13:23:22 +02:00
Dario Nieuwenhuis
558918651e
stm32: update stm32-metapac.
2023-06-19 03:22:12 +02:00
ExplodingWaffle
a4b8fc420a
Replace Into<bool> for Level with From<Level> for bool
2023-06-05 01:37:56 +01:00
Dario Nieuwenhuis
9a677ab618
common/peripheral: do not require mut in PeripheralRef clone_unchecked.
2023-04-11 23:09:02 +02:00
Josh Mcguigan
0bb6000e5c
stm32 gpio implement degrade to AnyPin
2023-02-02 21:42:42 -08:00
Ulf Lilleengen
72c2e985bb
Update embedded-hal versions and explicitly pin
2022-09-29 11:27:46 +02:00
chemicstry
6498324b58
Implement I2C pullup configuration
2022-08-09 22:13:35 +03:00
Dario Nieuwenhuis
19d1ef0e29
stm32/gpio: Add Peripheral<Self> bound to Pin.
2022-07-23 14:28:42 +02:00
Dario Nieuwenhuis
4901c34d9c
Rename Unborrowed -> PeripheralRef, Unborrow -> Peripheral
2022-07-23 14:00:19 +02:00
Dario Nieuwenhuis
8a9d2f59af
Update embassy-stm32
2022-07-23 02:40:13 +02:00
Dario Nieuwenhuis
be6408e202
Rename unsafe_impl_unborrow to impl_unborrow
2022-07-23 01:33:22 +02:00
chemicstry
53e40860c1
Move all gpio logic to Flex
2022-07-13 02:45:37 +03:00
chemicstry
a335589f34
Change get_set_level to get_output_level
2022-07-13 02:25:09 +03:00
chemicstry
329955f718
Use Into conversions instead of matches
2022-07-13 02:08:31 +03:00
chemicstry
98dcce81ca
Add more convenience GPIO functions
2022-07-13 01:43:22 +03:00
amugniere@gmail.com
323b0d1a5c
Have removed ANOTHER redondant ErrorType trait impl
2022-07-10 22:01:48 +02:00
amugniere@gmail.com
1eca026ebd
Have removed redondant ErrorType trait impl
2022-07-10 21:36:04 +02:00
amugniere@gmail.com
e4a36e1d98
rustfmt on previously edited files
2022-07-10 21:08:12 +02:00
amugniere@gmail.com
fa3e1ab68a
correction of the access to flex pin attribute in gpio_v2
2022-07-09 14:06:47 +02:00
amugniere@gmail.com
39702d7624
set_as_input_output() and set_as_output() : Have added comments and made functions public
2022-07-08 21:46:16 +02:00
amugniere@gmail.com
4e54d09ab1
Have added OutputOpenDrain with Flex
2022-07-04 22:38:05 +02:00
amugniere@gmail.com
13b259d7cd
Have added Flex to eh01 and eh2
2022-07-04 22:19:02 +02:00
amugniere@gmail.com
359fc4d124
Flex GPIO implementation : Output
2022-06-30 23:03:15 +02:00
amugniere@gmail.com
f05082b9a3
have reverted changed in mod eh1 from previous commit
2022-06-30 22:55:57 +02:00
amugniere@gmail.com
9b3c5af92a
Flex GPIO implementation : Input
2022-06-30 22:50:53 +02:00
Dario Nieuwenhuis
a8703b7598
Run rustfmt.
2022-06-12 22:22:31 +02:00
Dario Nieuwenhuis
5085100df2
Add embassy-cortex-m crate.
...
- 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`.
2022-06-12 21:45:38 +02:00
chemicstry
b0ffd9a1cc
Fix AF pullup configuration for GPIOv1
2022-06-06 17:12:52 +03:00
Grant Miller
acc1761637
Remove unnecessary cfg
2022-05-08 14:50:15 -05:00
Grant Miller
b230ac9c1a
stm32/gpio: Add support for set_speed
for gpio v1
2022-05-08 14:43:37 -05:00
Dario Nieuwenhuis
71e46d7efd
stm32/gpio: add EH1.0 trait impls.
2022-05-03 00:52:48 +02:00
Nicolas Viennot
4aba87f983
Inline GPIO functions
...
All GPIO functions are monomorphized (per pin). Inlining these make the
ROM smaller when using opt-level="z"
2022-03-19 14:06:11 -04:00
Dario Nieuwenhuis
53d9a0b516
stm32: exclude spammy files from docs by prefixing with _
.
...
These files end up containing chip-specific info, so they deduplicate
really badly when building docs for all 1200 chips.
The doc generator removes files starting with `_`.
2022-03-04 18:03:41 +01:00
Dario Nieuwenhuis
dd828a7a92
stm32: move macrotables to embassy-stm32 build.rs
2022-02-26 03:23:09 +01:00
Dario Nieuwenhuis
bf80504ac7
stm32: centralize gpio reg access in the gpio module.
2022-02-24 02:49:20 +01:00
Dario Nieuwenhuis
1b3c34b923
stm32/gpio: fix wrong conf for AF input.
2022-02-24 00:37:15 +01:00
Dario Nieuwenhuis
4a75475cfc
stm32: remove unused sealed::OptionalPin
2022-02-12 01:34:09 +01:00
Dario Nieuwenhuis
b99ab3d5d9
stm32: Add standard crate-wide macros for pin/dma traits, switch all drivers to use them.
2022-02-10 21:38:03 +01:00
Dario Nieuwenhuis
550da471be
stm32: Remove OptionalPin
...
The idea behind OptionalPin has a few problems:
- you need to impl the signal traits for NoPin which is a bit weird https://github.com/embassy-rs/embassy/blob/master/embassy-stm32/src/dcmi.rs#L413-L416
- you can pass any combination of set/unset pins, which needs checking at runtime https://github.com/embassy-rs/embassy/blob/master/embassy-stm32/src/dcmi.rs#L130
The replacement is to do multiple `new` constructors for each combination of pins you want to take.
2022-02-10 02:38:10 +01:00
Dario Nieuwenhuis
8160af6af9
stm32: replace peripheral_rcc!
macrotable with build.rs
2022-02-09 00:58:17 +01:00