@@ -16,31 +16,68 @@ peripherals available on those MCUs so a HAL can be written for all
1616chips in that same family without having to cut and paste crates for
1717every single model.
1818
19- ### Supported Configurations
19+ ## Supported MCUs
2020
21- | Part | Supported | RM | Dev board |
22- | --------- | --------- | -- | --------- |
23- | stm32h503 | 🚧 (WIP) | [ RM0492] ( https://www.st.com/resource/en/reference_manual/rm0492-stm32h503-line-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0561-stm32h503cbebkbrb-device-errata-stmicroelectronics.pdf ) </sup > | [ Nucleo H503RB] ( https://www.st.com/en/evaluation-tools/nucleo-h503rb.html ) |
24- | stm32h523 | 🚧 (WIP) | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup >| |
25- | stm32h533 | 🚧 (WIP) | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup >| [ Nucleo H533RE] ( https://www.st.com/en/evaluation-tools/nucleo-h533re.html ) |
26- | stm32h562 | ❌* | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup >| |
27- | stm32h563 | ❌* | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup > | [ Nucleo H563ZI] ( https://www.st.com/en/evaluation-tools/nucleo-h563zi.html ) |
28- | stm32h573 | ❌* | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup > | |
21+ The following STM32H5xx MCUs are supported by the HAL:
2922
30- \* Support planned
23+ | Part | RM | Dev board |
24+ | --------- | -- | --------- |
25+ | stm32h503 | [ RM0492] ( https://www.st.com/resource/en/reference_manual/rm0492-stm32h503-line-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0561-stm32h503cbebkbrb-device-errata-stmicroelectronics.pdf ) </sup > | [ Nucleo H503RB] ( https://www.st.com/en/evaluation-tools/nucleo-h503rb.html ) |
26+ | stm32h523 | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup >| |
27+ | stm32h533 | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup >| [ Nucleo H533RE] ( https://www.st.com/en/evaluation-tools/nucleo-h533re.html ) |
28+ | stm32h562 | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup >| |
29+ | stm32h563 | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup > | [ Nucleo H563ZI] ( https://www.st.com/en/evaluation-tools/nucleo-h563zi.html ) |
30+ | stm32h573 | [ RM0481] ( https://www.st.com/resource/en/reference_manual/rm0481-stm32h563h573-and-stm32h562-armbased-32bit-mcus-stmicroelectronics.pdf ) <sup >[ (errata)] ( https://www.st.com/resource/en/errata_sheet/es0565-stm32h562xx563xx573xx-device-errata-stmicroelectronics.pdf ) </sup > | |
3131
32- ### Minimum supported Rust version
32+ ## Peripheral Support
33+ For all listed MCUs above, core clock & power configuration and startup is implemented. The status
34+ of support for peripherals is shown in the table below.
35+
36+ | Peripheral/Feature | Supported? | Issue | Notes |
37+ | ------------| ----| ---| ---|
38+ | GPIO | ✅ | - | |
39+ | ICache | ✅ | - | |
40+ | I2C | ✅ | - | Controller operation is done; Target is 🚧 |
41+ | CAN | 🚧 | - | |
42+ | Rng | 🚧 | #34 | |
43+ | SPI | 🚧 | #36 | |
44+ | UART | 🚧 | - | |
45+ | DMA | 🚧 | - | |
46+ | ADC | ❌ | #35 | |
47+ | Timers | ❌ | - | |
48+ | PWM | ❌ | - | |
49+ | Rtc | ❌ | - | |
50+ | Flash | ❌ | - | |
51+
52+ ## Minimum supported Rust version
3353
3454The Minimum Supported Rust Version (MSRV) at the moment is ** 1.78.0** . Older
3555versions ** may** compile, especially when some features are not used in your
3656application.
3757
38- ### Changelog
58+ ## Getting Started
59+
60+ The [ examples folder] ( examples/ ) contains several example programs. To compile
61+ them, specify the target device in a cargo feature:
62+
63+ ```
64+ $ cargo build --features=stm32h523,rt --example <example>
65+ ```
66+
67+ If you are unfamiliar with embedded development using Rust, there are
68+ a number of fantastic resources available to help.
69+
70+ - [ Embedded Rust Documentation] ( https://docs.rust-embedded.org/ )
71+ - [ The Embedded Rust Book] ( https://docs.rust-embedded.org/book/ )
72+ - [ Rust Embedded FAQ] ( https://docs.rust-embedded.org/faq.html )
73+ - [ rust-embedded/awesome-embedded-rust] ( https://github.com/rust-embedded/awesome-embedded-rust )
3974
40- See [ CHANGELOG.md ] ( CHANGELOG.md ) .
75+ ## Changelog
4176
77+ See [ CHANGELOG.md] ( CHANGELOG.md ) . Note: this will be populated once the first crates have been
78+ published to crates.io.
4279
43- ### License
80+ ## License
4481
45820-Clause BSD License, see [ LICENSE-0BSD.txt] ( LICENSE-0BSD.txt ) for more details.
4683
0 commit comments