#intel #hex #ihex

ihex

A Rust library for parsing and generating Intel HEX (or IHEX) objects. This format is commonly used for representing compiled program code and data to be loaded into a microcontroller, flash memory or ROM.

10 releases (6 stable)

1.1.2 Aug 22, 2018
1.0.2 Aug 22, 2018
1.0.1 Jan 13, 2018
1.0.0 Jun 10, 2016
0.1.3 Jun 10, 2016

#25 in Emulators

Download history 74/week @ 2018-10-31 27/week @ 2018-11-07 50/week @ 2018-11-14 32/week @ 2018-11-21 166/week @ 2018-11-28 60/week @ 2018-12-05 81/week @ 2018-12-12 64/week @ 2018-12-19 57/week @ 2018-12-26 52/week @ 2019-01-02 36/week @ 2019-01-09 50/week @ 2019-01-16 58/week @ 2019-01-23 39/week @ 2019-01-30 56/week @ 2019-02-06

106 downloads per month

MIT/Apache

29KB
447 lines

Intel HEX (IHEX) Library

A Rust library for parsing and generating Intel HEX (or IHEX) objects. This format is commonly used for representing compiled program code and data to be loaded into a microcontroller, flash memory or ROM.

Build Status Coverage Status

Usage

Add the following to your Cargo.toml:

[dependencies]
ihex = "1.1"

In addition, and this to your crate root:

extern crate ihex;

Here is an example which builds an IHEX object file with test data and prints it:

extern crate ihex;

use ihex::record::Record;
use ihex::writer;

fn main() {
    let records = &[
        Record::Data { offset: 0x0010, value: vec![0x48,0x65,0x6C,0x6C,0x6F] },
        Record::EndOfFile
    ];

    if let Ok(object) = writer::create_object_file_representation(records) {
        println!("{}", object);
    }
}

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

No runtime deps