A simple script (in Rust lang) to create HTML from SVD

Related tags

Utilities svd2html
Overview

A simple script to create HTML from an SVD file

This is a simple script written in Rust language to create a single HTML file from an SVD file.

How it looks like

It's really simple and makes some assumptions (e.g. registers are 32 bit wide, the target is little endian etc.)

I created this for myself to make it easier to visually compare and inspect the contents of SVD files. But maybe it's useful to you.

It also omits a lot of things which I might or might not add in the future as needed by myself.

Please note that it will generate a huge HTML file which might bring your browser down on it's knees. Speaking of browsers: I only tested it with Chrome and I am really bad at HTML and CSS. So it might not look good in other browsers.

Also there is almost no error handling in place, currently. i.e. if an error occurs you won't get a nice error message but just some gibberish.

Installation

cargo install --path .

How to use

svd2html 

USAGE:
    svd2html --input <INPUT> --output <OUTPUT>

OPTIONS:
    -h, --help               Print help information
    -i, --input <INPUT>      
    -o, --output <OUTPUT>    
You might also like...
File Tree Fuzzer allows you to create a pseudo-random directory hierarchy filled with some number of files.

FTZZ File Tree Fuzzer allows you to create a pseudo-random directory hierarchy filled with some number of files. Installation $ cargo +nightly install

Simple ray tracer written in Rust
Simple ray tracer written in Rust

Simple ray tracer written in Rust from scratch I've just finished my first semester at the Faculty of Applied Mathematics and Computer Science at the

Simple RSA VDF in Rust

Simple RSA VDF in Rust

Simple Spreadsheet editor written in Rust

Rexcel Simple Spreadsheet editor written in Rust Keyboard Shortcuts: CTRL + S = Save CTRL + Q = Quit CTRL + W + Save And Quit CTRL + ALT + S = Sav

A simple omegle API written in Rust

omegalul-rs omegalul-rs is a work-in-progress opensource library for building Omegle clients. Features Current Features Fetching random server from om

Simple interoperability between C++ coroutines and asynchronous Rust

cxx-async Overview cxx-async is a Rust crate that extends the cxx library to provide seamless interoperability between asynchronous Rust code using as

A simple code boilerplate generator written in Rust.

💻 Cgen What is Cgen? A modern, cross-platform, multi-language boilerplate generator aimed to make your code generation less hectic! If you wish to su

A simple string interner / symbol table for Rust projects.

Symbol Interner A small Rust crate that provides a naïve string interner. Consult the documentation to learn about the types that are exposed. Install

Simple and efficient time representation in Rust.

timens-rs Simple and efficient timestamp representation. The main objective being interoperability with OCaml Core_kernel.Time_ns. A significant part

Comments
  • Duplicated fields

    Duplicated fields

    I've been using this on the generated soc.svd in the betrusted repo: https://github.com/betrusted-io/xous-core/blob/main/precursors/soc.svd

    It looks like every (edit: no, only the last?) field is shown twice. For example:

    20220619_12h08m18s_grim

    As far as I can see they're only once in the XML:

                        <fields>
                            <field>
                                <name>soc_reset</name>
                                <msb>7</msb>
                                <bitRange>[7:0]</bitRange>
                                <lsb>0</lsb>
                            </field>
                        </fields>
    

    Edit: ok, looking at it some more, my guess is that the unused bits in the field are labaled in the same way as the last field encountered.

    opened by laanwj 4
  • Re-write using templates

    Re-write using templates

    Just wanted to upstream the changes I've made to this project. It's fairly usable in its current state, but could still use a bit of work. Let me know if you'd like any changes!

    opened by jessebraham 1
  • Render fields' enumerated values when present

    Render fields' enumerated values when present

    There aren't many of these in our SVDs yet, but there will be eventually. There are some for the ESP32, so I was able to verify using these. You can check out RTC_CNTL -> CLK_CONF to see this:

    Screen Shot 2022-07-13 at 11 56 46

    I also bumped all the dependencies, because why not.

    opened by jessebraham 0
Owner
Björn Quentin
💖 Rust everywhere 💖
Björn Quentin
Convert an MCU register description from the EDC format to the SVD format

edc2svd Convert an MCU register description from the EDC format to the SVD format EDC files are used to describe the special function registers of PIC

Stephan 4 Oct 9, 2021
Like jq, but for HTML. Uses CSS selectors to extract bits content from HTML files.

Like jq, but for HTML. Uses CSS selectors to extract bits content from HTML files. Mozilla's MDN has a good reference for CSS selector syntax.

Michael Maclean 6.3k Jan 3, 2023
Director is a simple, versatile, ergonomic state machine in Rust-lang.

Director Director is a simple, versatile, ergonomic state machine in Rust-lang. (no-std) | Examples | Docs | Latest Note | director = "0.5.0" Why? Bec

Doha Lee 2 Sep 19, 2022
Create virtual serial ports, connect them to physical serial ports, and create routes between them all.

Virtual Serial Port Router (vsp-router) Create virtual serial ports, connect them to physical serial ports, and create routes between them all. vsp-ro

Rob Donnelly 3 Nov 24, 2022
A fork of 'discord-token-botter' for rust lang.

Shahzain Botter V3(Rust) - If you were sold this tool, you have been scammed, this tool is free & open source Please DO NOT pay money for this tool A

Shahzain 5 Nov 7, 2022
High-performance, Reliable ChatGLM SDK natural language processing in Rust-Lang

RustGLM for ChatGLM Rust SDK - 中文文档 High-performance, high-quality Experience and Reliable ChatGLM SDK natural language processing in Rust-Language 1.

Blueokanna 3 Feb 29, 2024
PM-Tools - a simple Rust util to easily create server directories

PM-Tools PM-Tools is a simple Rust util to easily create server directories or plugins without the hassle of unzipping or creating directories Progres

null 2 Mar 19, 2022
Simple color picker that lets the user create harmonic palettes with ease.

epick Simple color picker that lets the user create harmonic palettes with ease. Get it You can checkout the web demo over here or get a native binary

Wojciech Kępka 101 Dec 19, 2022
Generate an HTML page based on a Notion document

Notion Generator Generate an HTML page based on a Notion document! Still a bit of a work in progress, but I am about to actually use it for some actua

null 9 Dec 14, 2022
Fusion is a cross-platform App Dev ToolKit build on Rust . Fusion lets you create Beautiful and Fast apps for mobile and desktop platform.

Fusion is a cross-platform App Dev ToolKit build on Rust . Fusion lets you create Beautiful and Fast apps for mobile and desktop platform.

Fusion 1 Oct 19, 2021