2 releases

Uses old Rust 2015

0.1.1 Nov 17, 2017
0.1.0 Nov 16, 2017

#31 in #microcontroller

MIT and GPL-3.0 licenses

23KB
482 lines

Contains (ELF exe/lib, 17KB) atmega328-factorial.elf

avr-test-suite

Crates.io Build Status license

A standalone test-suite for AVR compilers.

Uses simavr under the hood.

Usage

git clone https://github.com/dylanmckay/avr-test-suite.git
cd avr-test-suite

# Run all tests
./test.sh

Binaries

There are two binaries included in this crate.

avr-lit

The test runner.

Usage

cd avr-test-suite

# Run all tests
cargo run --bin avr-lit

# Run specific test
cargo run --bin avr-lit tests/add.cpp

avr-sim

An avr simulator that will flash binaries given to it onto an emulated AVR and execute the program until it goes into indefinite sleep mode with interrupts disabled.

It will also connect the simulated UART to standard output, which can then be used by tests or other stuff.

Usage

cd avr-test-suite

# Run a program by loading it via disk
cargo run --bin avr-sim MyExecutable.elf

# Compile a file and pipe it directly into the simulator to run.
echo 'int main() { return 0; }' > main.c
avr-gcc main.c -mmcu=atmega328 -o /dev/stdout | cargo run --bin avr-sim MyExecutable

Test format

Uses the lit crate.

Dependencies

~9–20MB
~231K SLoC