Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rbran/svd2icicle
Convert SVD files into Icicle-emu VM peripherals
https://github.com/rbran/svd2icicle
icicle rust svd virtual-machine vm
Last synced: 2 days ago
JSON representation
Convert SVD files into Icicle-emu VM peripherals
- Host: GitHub
- URL: https://github.com/rbran/svd2icicle
- Owner: rbran
- Created: 2023-06-29T18:02:29.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-08-30T15:06:49.000Z (about 1 year ago)
- Last Synced: 2024-05-01T13:00:01.944Z (6 months ago)
- Topics: icicle, rust, svd, virtual-machine, vm
- Language: Rust
- Homepage:
- Size: 308 KB
- Stars: 3
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# Svd2Icicle
This project convert multiple [svd](https://www.keil.com/pack/doc/CMSIS/SVD/html/index.html)
files into a single peripheral struct compatible with [icicle-emu](https://github.com/icicle-emu/icicle-emu).## How to use
To generate the files use the compiled binary, the first arguments should be
the output `lib.rs` file, all other arguments are svd files used to generate
the peripheral struct.The output file is not formatted, is possible prettify it using
[cargo-fmt](https://github.com/rust-lang/rustfmt), it's also possible to split
the file using the [form](https://github.com/djmcgill/form) command.```
cargo run "YOUR_PROJECT_HERE/src/lib.rs" "svd_file1.svd" "svd_file2.svd" "svd_fileN.svd"
cd YOUR_PROJECT_HERE
form -i src/lib.rs -o src
cargo fmt
```The result files should can be edited afterwards to implemented the required
behavior.## Example
The project [icicle-nrf52832](https://github.com/rbran/icicle-nrf52832/)
is an example of a partial implementation of a nrf52832 VM generated using this
tool.