@@ -7,20 +7,34 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
77
88## [ Unreleased]
99
10- ## [ v0.7.0] - 2021-03-10
11-
1210### Added
1311
14- - Replace custom time based units with types defined in the [ embedded-time] [ ] crate ([ #192 ] )
1512- Make ` Clocks ` ` ppre1() ` and ` ppre2() ` methods public, to get the current
1613 Prescaler value. ([ #210 ] )
14+ - Implement ` into_xxx ` methods for partially erased pins ([ #189 ] )
15+ - Enable better GPIO internal resistor configuration ([ #189 ] )
16+ - Support for GPIO output slew rate configuration ([ #189 ] )
17+ - Support for GPIO interrupts ([ #189 ] )
1718
18- ### Breaking changes
19+ ### Changed
1920
21+ - Added support for more CAN bit rates and modes. ([ #186 ] )
22+ - The structure of ` gpio.rs ` is greatly changed. Generic ` Pin ` struct is used
23+ for every GPIO pin now ([ #189 ] )
24+
25+ ### Fixed
26+
27+ - Delay based on systick no longer panics ([ #203 ] ) for to high values
28+ and support longer delays ([ #208 ] )
29+
30+ ### Breaking Changes
31+
32+ - Replace custom time based units with types defined in the [ embedded-time] [ ]
33+ crate ([ #192 ] )
2034- The ` rcc ` public API now expects time based units in ` Megahertz ` .
2135 If the supplied frequency cannot be converted to ` Hertz ` the code
2236 will ` panic ` . This will occur if the supplied ` Megahertz ` frequency
23- cannot fit into ` u32::MAX ` when converting to ` Hertz `
37+ cannot fit into ` u32::MAX ` when converting to ` Hertz ` ( [ # 192 ] )
2438
2539``` rust
2640// The supplied frequencies must be in `MHz`.
@@ -34,21 +48,17 @@ let clocks = rcc
3448```
3549
3650- Bump dependencies: ([ #211 ] )
37- - ` stm32f3 ` dependency to 0.13.0
38- - ` nb ` to 1.0
51+ - ` stm32f3 ` dependency to 0.13
52+ - ` nb ` to 1
3953 - ` cortex-m ` to 0.7
4054 - ` stm32-usbd ` to 0.6
4155 - ` defmt ` to 0.2
42-
43- [ embedded-time ] : https://github.com/FluenTech/embedded-time/
44- ### Changed
45-
46- - Added support for more CAN bit rates and modes. ([ #186 ] )
47-
48- ### Fixed
49-
50- - Delay based on systick no longer panics ([ #203 ] ) for to high values
51- and support longer delays ([ #208 ] )
56+ - ` into_afx ` methods are splitted into ` into_afx_push_pull ` and
57+ ` into_afx_open_drain ` ([ #189 ] )
58+ - GPIO output mode (` PushPull ` or ` OpenDrain ` ) is encoded into pin typestate
59+ in alternate function mode ([ #189 ] )
60+ - GPIO internal resistor configuration is no longer encoded into pin typestate
61+ in input mode ([ #189 ] )
5262
5363## [ v0.6.1] - 2020-12-10
5464
@@ -69,8 +79,7 @@ let clocks = rcc
6979- Impls for all SPI pins for all ` stm32f302 ` sub-targets, ` stm32f303 `
7080 subtargets, ` stm32f3x8 ` targets, ` stm32f334 ` , and ` stm32f373 `
7181 ([ #99 ] )
72- - SPI4 peripheral for supported
73- devices. ([ #99 ] )
82+ - SPI4 peripheral for supported devices. ([ #99 ] )
7483- Support for I2C transfer of more than 255 bytes, and 0 byte write ([ #154 ] )
7584- Support for HSE bypass and CSS ([ #156 ] )
7685- Impls for missing I2C pin definitions ([ #164 ] )
@@ -85,9 +94,6 @@ let clocks = rcc
8594 The support of this feature is subject to change as the development
8695 of [ defmt] [ ] is advancing.
8796
88- [ defmt ] : https://github.com/knurling-rs/defmt
89- [ filter ] : https://defmt.ferrous-systems.com/filtering.html
90-
9197### Changed
9298
9399- Introduced auto-generated GPIO mappings based on the STM32CubeMX database
@@ -99,8 +105,6 @@ let clocks = rcc
99105 ([ #152 ] )
100106- Wrong I2C clock source ([ #164 ] )
101107
102- [ #151 ] : https://github.com/stm32-rs/stm32f3xx-hal/issues/151
103-
104108### Breaking Changes
105109
106110- Removed impl for ` SckPin<SPI2> ` for ` PB13<AF5> ` from ` stm32f328 ` and
@@ -305,20 +309,21 @@ let clocks = rcc
305309
306310- Support ` stm32f303 ` device
307311
312+ [ embedded-time ] : https://github.com/FluenTech/embedded-time/
313+ [ defmt ] : https://github.com/knurling-rs/defmt
314+ [ filter ] : https://defmt.ferrous-systems.com/filtering.html
315+
308316[ #211 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/211
309317[ #210 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/210
310318[ #208 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/208
311319[ #203 ] : https://github.com/stm32-rs/stm32f3xx-hal/issues/203
312320[ #192 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/192
321+ [ #189 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/189
313322[ #186 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/186
314323[ #184 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/184
315324[ #172 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/172
316325[ #170 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/170
317326[ #164 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/164
318- [ #164 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/164
319- [ #164 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/164
320- [ #164 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/164
321- [ #164 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/164
322327[ #156 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/156
323328[ #154 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/154
324329[ #152 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/152
@@ -333,30 +338,24 @@ let clocks = rcc
333338[ #101 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/101
334339[ #100 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/100
335340[ #99 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/99
336- [ #99 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/99
337- [ #99 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/99
338341[ #98 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/98
339342[ #97 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/97
340343[ #91 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/91
341344[ #86 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/86
342- [ #86 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/86
343345[ #82 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/82
344346[ #75 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/75
345347[ #72 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/72
346348[ #70 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/70
347349[ #67 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/67
348- [ #67 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/67
349350[ #60 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/60
350351[ #58 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/58
351352[ #56 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/56
352353[ #52 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/52
353354[ #50 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/50
354- [ #50 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/50
355355[ #47 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/47
356356[ #42 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/42
357357[ #39 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/39
358358[ #35 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/18
359- [ #35 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/35
360359[ #34 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/34
361360[ #33 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/33
362361[ #31 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/33
@@ -369,7 +368,6 @@ let clocks = rcc
369368[ #16 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/16
370369[ #14 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/14
371370[ #12 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/12
372- [ #12 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/12
373371[ #11 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/11
374372[ #6 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/6
375373[ #4 ] : https://github.com/stm32-rs/stm32f3xx-hal/pull/4
0 commit comments