{"id":15032168,"url":"https://github.com/drone-os/drone-stm32-map","last_synced_at":"2025-06-16T06:35:53.304Z","repository":{"id":52473818,"uuid":"158371221","full_name":"drone-os/drone-stm32-map","owner":"drone-os","description":" STM32 peripheral mappings for Drone, an Embedded Operating System.","archived":false,"fork":false,"pushed_at":"2022-11-22T09:57:58.000Z","size":855,"stargazers_count":22,"open_issues_count":6,"forks_count":16,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-10T22:53:09.417Z","etag":null,"topics":["arm","asynchronous","bare-metal","concurrency","cortex","embedded","hardware-support","no-std","rtos","rust","stm32"],"latest_commit_sha":null,"homepage":"https://www.drone-os.com/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/drone-os.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-11-20T10:27:29.000Z","updated_at":"2024-10-28T12:29:03.000Z","dependencies_parsed_at":"2023-01-23T07:31:30.594Z","dependency_job_id":null,"html_url":"https://github.com/drone-os/drone-stm32-map","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/drone-os/drone-stm32-map","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drone-os%2Fdrone-stm32-map","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drone-os%2Fdrone-stm32-map/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drone-os%2Fdrone-stm32-map/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drone-os%2Fdrone-stm32-map/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/drone-os","download_url":"https://codeload.github.com/drone-os/drone-stm32-map/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/drone-os%2Fdrone-stm32-map/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259719887,"owners_count":22901275,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arm","asynchronous","bare-metal","concurrency","cortex","embedded","hardware-support","no-std","rtos","rust","stm32"],"created_at":"2024-09-24T20:17:37.779Z","updated_at":"2025-06-16T06:35:53.263Z","avatar_url":"https://github.com/drone-os.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![crates.io](https://img.shields.io/crates/v/drone-stm32-map.svg)](https://crates.io/crates/drone-stm32-map)\n![maintenance](https://img.shields.io/badge/maintenance-actively--developed-brightgreen.svg)\n\n# Drone STM32 Map\n\n\u003c!-- cargo-rdme start --\u003e\n\nSTM32 peripheral mappings for Drone, an Embedded Operating System.\n\nThis crate uses\n[CMSIS-SVD](https://arm-software.github.io/CMSIS_5/SVD/html/index.html)\nfiles provided by [STMicroelectronics](https://www.st.com/) to automatically\ngenerate Drone register and interrupt bindings. However only the\ncorresponding Reference Manual is the single source of truth. A difference\nbetween this crate bindings and the Reference Manual is considered a\nbug. Fixing such a bug is *not a breaking change*.\n\nThis crate re-exports the contents of [`drone_cortexm::map`] module and is a\ndrop-in replacement for it.\n\n## Supported Devices\n\n| `drone_stm32_map` | Core name             | Reference manual                                                         | Available features                                       |\n|-------------------|-----------------------|--------------------------------------------------------------------------|----------------------------------------------------------|\n| `stm32f100`       | ARM® Cortex®-M3 r1p1  | [RM0041](https://www.st.com/resource/en/reference_manual/cd00246267.pdf) | `dma` `gpio` `spi` `tim`                                 |\n| `stm32f101`       | ARM® Cortex®-M3 r1p1  | [RM0008](https://www.st.com/resource/en/reference_manual/cd00171190.pdf) | `dma` `gpio` `spi` `tim`                                 |\n| `stm32f102`       | ARM® Cortex®-M3 r1p1  | [RM0008](https://www.st.com/resource/en/reference_manual/cd00171190.pdf) | `dma` `gpio` `spi` `tim`                                 |\n| `stm32f103`       | ARM® Cortex®-M3 r1p1  | [RM0008](https://www.st.com/resource/en/reference_manual/cd00171190.pdf) | `dma` `gpio` `spi` `tim`                                 |\n| `stm32f107`       | ARM® Cortex®-M3 r1p1  | [RM0008](https://www.st.com/resource/en/reference_manual/cd00171190.pdf) | `dma` `gpio` `spi` `tim`                                 |\n| `stm32f303`       | ARM® Cortex®-M4F r0p1 | [RM0316](https://www.st.com/resource/en/reference_manual/dm00043574.pdf) | `adc` `dma` `exti` `gpio` `i2c` `tim`                    |\n| `stm32f401`       | ARM® Cortex®-M4F r0p1 | [RM0368](https://www.st.com/resource/en/reference_manual/dm00096844.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f405`       | ARM® Cortex®-M4F r0p1 | [RM0090](https://www.st.com/resource/en/reference_manual/dm00031020.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f407`       | ARM® Cortex®-M4F r0p1 | [RM0090](https://www.st.com/resource/en/reference_manual/dm00031020.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f410`       | ARM® Cortex®-M4F r0p1 | [RM0401](https://www.st.com/resource/en/reference_manual/dm00180366.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f411`       | ARM® Cortex®-M4F r0p1 | [RM0383](https://www.st.com/resource/en/reference_manual/dm00119316.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f412`       | ARM® Cortex®-M4F r0p1 | [RM0402](https://www.st.com/resource/en/reference_manual/dm00180369.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f413`       | ARM® Cortex®-M4F r0p1 | [RM0430](https://www.st.com/resource/en/reference_manual/dm00305666.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f427`       | ARM® Cortex®-M4F r0p1 | [RM0090](https://www.st.com/resource/en/reference_manual/dm00031020.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f429`       | ARM® Cortex®-M4F r0p1 | [RM0090](https://www.st.com/resource/en/reference_manual/dm00031020.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f446`       | ARM® Cortex®-M4F r0p1 | [RM0390](https://www.st.com/resource/en/reference_manual/dm00135183.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32f469`       | ARM® Cortex®-M4F r0p1 | [RM0386](https://www.st.com/resource/en/reference_manual/dm00127514.pdf) | `adc` `dma` `exti` `gpio` `i2c` `spi` `tim` `uart`       |\n| `stm32l4x1`       | ARM® Cortex®-M4F r0p1 | [RM0394](https://www.st.com/resource/en/reference_manual/dm00151940.pdf) | `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart`       |\n| `stm32l4x2`       | ARM® Cortex®-M4F r0p1 | [RM0394](https://www.st.com/resource/en/reference_manual/dm00151940.pdf) | `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart`       |\n| `stm32l4x3`       | ARM® Cortex®-M4F r0p1 | [RM0394](https://www.st.com/resource/en/reference_manual/dm00151940.pdf) | `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart`       |\n| `stm32l4x5`       | ARM® Cortex®-M4F r0p1 | [RM0351](https://www.st.com/resource/en/reference_manual/dm00083560.pdf) | `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart`       |\n| `stm32l4x6`       | ARM® Cortex®-M4F r0p1 | [RM0351](https://www.st.com/resource/en/reference_manual/dm00083560.pdf) | `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart`       |\n| `stm32l4r5`       | ARM® Cortex®-M4F r0p1 | [RM0432](https://www.st.com/resource/en/reference_manual/dm00310109.pdf) | `adc` `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart` |\n| `stm32l4s5`       | ARM® Cortex®-M4F r0p1 | [RM0432](https://www.st.com/resource/en/reference_manual/dm00310109.pdf) | `adc` `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart` |\n| `stm32l4r7`       | ARM® Cortex®-M4F r0p1 | [RM0432](https://www.st.com/resource/en/reference_manual/dm00310109.pdf) | `adc` `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart` |\n| `stm32l4s7`       | ARM® Cortex®-M4F r0p1 | [RM0432](https://www.st.com/resource/en/reference_manual/dm00310109.pdf) | `adc` `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart` |\n| `stm32l4r9`       | ARM® Cortex®-M4F r0p1 | [RM0432](https://www.st.com/resource/en/reference_manual/dm00310109.pdf) | `adc` `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart` |\n| `stm32l4s9`       | ARM® Cortex®-M4F r0p1 | [RM0432](https://www.st.com/resource/en/reference_manual/dm00310109.pdf) | `adc` `dma` `exti` `gpio` `i2c` `rtc` `spi` `tim` `uart` |\n\n`drone_stm32_map` config flag should be set at the application level\naccording to this table.\n\n## Documentation\n\n- [Drone Book](https://book.drone-os.com/)\n- [API documentation](https://api.drone-os.com/drone-stm32-map/0.15/)\n\nThe API documentation intentionally skips auto-generated [`reg`] and [`thr`]\nbindings. Otherwise it would use several gigabytes of space and would be\nvery slow to render in a browser. One should refer to the Reference Manual\ninstead. And to get an idea of what the API looks like on the Drone side,\nlook at the [`drone_cortexm::map`] module documentation.\n\n## Usage\n\nAdd the crate to your `Cargo.toml` dependencies:\n\n```toml\n[dependencies]\ndrone-stm32-map = { version = \"0.15.0\", features = [...] }\n```\n\nAdd or extend `host` feature as follows:\n\n```toml\n[features]\nhost = [\"drone-stm32-map/host\"]\n```\n\n\u003c!-- cargo-rdme end --\u003e\n\n## License\n\nLicensed under either of\n\n * Apache License, Version 2.0\n   ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n * MIT license\n   ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)\n\nat your option.\n\n## Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be\ndual licensed as above, without any additional terms or conditions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrone-os%2Fdrone-stm32-map","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdrone-os%2Fdrone-stm32-map","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdrone-os%2Fdrone-stm32-map/lists"}