Commit Graph

854 Commits

Author SHA1 Message Date
039acda3a8 Fix writing to last sector of F4 flash 2022-07-14 19:41:39 +03:00
53e40860c1 Move all gpio logic to Flex 2022-07-13 02:45:37 +03:00
a335589f34 Change get_set_level to get_output_level 2022-07-13 02:25:09 +03:00
329955f718 Use Into conversions instead of matches 2022-07-13 02:08:31 +03:00
98dcce81ca Add more convenience GPIO functions 2022-07-13 01:43:22 +03:00
2df665da8a Revert "Make advanced timer trait not require general purpose timer trait as the timers are too different."
This reverts commit 4988dfe981.
2022-07-12 15:11:57 +03:00
2adee4af38 Merge #858
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 <GrantM11235@gmail.com>
2022-07-11 02:51:06 +00:00
5ecbe5c918 embassy-stm32: Simplify time
- 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
2022-07-10 21:46:45 -05:00
99f4fd33b4 Merge #859
859: Add F4 flash driver r=Dirbaio a=chemicstry

Pending on https://github.com/embassy-rs/stm32-data/pull/152

Co-authored-by: chemicstry <chemicstry@gmail.com>
2022-07-11 01:37:19 +00:00
3271ba36e4 Fix cfg flags 2022-07-11 04:07:28 +03:00
734c38eb9c Add F4 flash driver 2022-07-11 03:57:46 +03:00
9753f76794 Merge #810
810: Takes care of power for nRF USB devices r=Dirbaio a=huntc

Modifies the usb-serial example to illustrate how to setup USB for situations where the USB power can be detected and removed.

Gaps:

~~* No support for the nrf-softdevices as yet, although this should be possible via another constructor.~~
* No support for the nrf5340, although this should be possible via USBREG.

The change is tested and appears to work. Some notes:

* There's an existing field named self_powered as a UsbDevice field. It doesn't ever appear to get set. I'm wondering if this field is intended to signal that a device has the nRF VBUS power situation or not. I'm not presently using it.
* The new PowerDetected event is generated on the bus initially in situations where just new is used i.e. without power management, including on STM. We can therefore rely on this event always being generated.

Old description:

~~EnabledUsbDevice is a wrapper around the `UsbDevice` where its enablement is also subject to external events, such as `POWER` events for nRF. It is introduced generically to support other platforms should they also require external signaling for enablement.~~

Co-authored-by: huntc <huntchr@gmail.com>
2022-07-11 00:01:41 +00:00
c6a11db39e Merge #854
854: Implement IWDG timeout calculation r=Dirbaio a=chemicstry

Allow specifying `IndependentWatchdog` timeout as `Duration` instead of prescaler value.

Since IWDG is clocked from LSI, which differs between families, I standardized HSI/LSI definitions in RCC and used that.

Co-authored-by: chemicstry <chemicstry@gmail.com>
2022-07-10 21:45:34 +00:00
5a208d28d0 Fix g0 rcc build 2022-07-11 00:37:00 +03:00
93e7d53e39 Merge #851
851: Gpio dynamic flex r=Dirbaio a=AntoineMugnier

Add Flex GPIO type for embassy-stm32 as it is the case for  embassy-nrf.


Co-authored-by: amugniere@gmail.com <antoine.mugnier@depixus.com>
2022-07-10 21:22:46 +00:00
d7d1e46a5f Use u32 instead of Duration for IWDG 2022-07-11 00:00:33 +03:00
323b0d1a5c Have removed ANOTHER redondant ErrorType trait impl 2022-07-10 22:01:48 +02:00
1eca026ebd Have removed redondant ErrorType trait impl 2022-07-10 21:36:04 +02:00
e4a36e1d98 rustfmt on previously edited files 2022-07-10 21:08:12 +02:00
53388d4576 have adapted access to pin() and port() methods of Sealed::Pin in exti.rs according to previous changes on Input struct 2022-07-10 20:55:04 +02:00
3bf1e1d4aa Fix f2, wl compilation 2022-07-10 21:46:14 +03:00
f43545f36e Fix warnings 2022-07-10 21:16:54 +03:00
85054a7233 Fix typo 2022-07-10 21:15:38 +03:00
1fd5022e72 Refactor IWDG to use LSI frequency from RCC 2022-07-10 20:59:36 +03:00
bd01e90bfa Implement IWDG timeout calculation 2022-07-10 20:38:30 +03:00
5f43c1d37e Merge #850
850: Shared buses with SetConfig r=Dirbaio a=kalkyl

Addresses issue #830 

Co-authored-by: Henrik Alsér <henrik@mindbite.se>
2022-07-10 00:03:44 +00:00
baae64d911 Add embassy-embedded-hal nightly feature 2022-07-09 23:41:02 +02:00
fa3e1ab68a correction of the access to flex pin attribute in gpio_v2 2022-07-09 14:06:47 +02:00
880b71a1e8 impl SetConfig for stm32 i2c and SPI 2022-07-09 02:28:05 +02:00
39702d7624 set_as_input_output() and set_as_output() : Have added comments and made functions public 2022-07-08 21:46:16 +02:00
43aec9083c Cleanup 2022-07-08 08:03:38 +02:00
01ef03f446 stm32/i2c: impl ErrorType for all. 2022-07-07 15:46:30 +02:00
399e7a4791 NoDma 2022-07-07 15:46:30 +02:00
be731b222e Cleanup 2022-07-07 15:46:30 +02:00
0fe818f4f8 v1 fix 2022-07-07 15:46:30 +02:00
1ed5b387f9 v2 fix 2022-07-07 15:46:30 +02:00
02812754ec rustfmt 2022-07-07 15:46:30 +02:00
2460d21fa4 Add EH 1.0 impls for stm32 i2c 2022-07-07 15:46:30 +02:00
4a8f117f25 Puts in the machinery to handle power detected/removed 2022-07-07 10:08:57 +10:00
4e54d09ab1 Have added OutputOpenDrain with Flex 2022-07-04 22:38:05 +02:00
13b259d7cd Have added Flex to eh01 and eh2 2022-07-04 22:19:02 +02:00
359fc4d124 Flex GPIO implementation : Output 2022-06-30 23:03:15 +02:00
f05082b9a3 have reverted changed in mod eh1 from previous commit 2022-06-30 22:55:57 +02:00
9b3c5af92a Flex GPIO implementation : Input 2022-06-30 22:50:53 +02:00
d1d07cd9e3 fix case when chip has multiple iwdg 2022-06-28 13:22:43 +02:00
f2ad9c2d9d rebase and fix unborrow 2022-06-28 12:51:08 +02:00
74bbf5aa02 address review 2022-06-28 12:46:17 +02:00
5cf3fbece4 initial independent watchdog implementation 2022-06-28 12:46:17 +02:00
42bc510eff Remove STM32L485 "ghost chips" 2022-06-27 02:47:15 +02:00
a855889f70 Update stm32-data 2022-06-27 02:10:01 +02:00