Skip to content

vexide/vexide-embedded-graphics

Repository files navigation

embedded-graphics Driver for the VEX V5

This crate provides a DrawTarget implementation for the VEX V5 brain display, allowing you to draw to the display using the embedded-graphics ecosystem.

Usage

To begin, turn your display peripheral into a DisplayDriver:

#![no_std]
#![no_main]

use vexide::prelude::*;
use vexide_embedded_graphics::DisplayDriver;

#[vexide::main]
async fn main(peripherals: Peripherals) {
    let mut display = DisplayDriver::new(peripherals.display);
}

DisplayDriver is a DrawTarget that the embedded-graphics crate is able to draw to.

#![no_std]
#![no_main]

use vexide::prelude::*;
use vexide_embedded_graphics::DisplayDriver;

use embedded_graphics::{
    mono_font::{ascii::FONT_6X10, MonoTextStyle},
    pixelcolor::Rgb888,
    prelude::*,
    text::Text,
};

#[vexide::main]
async fn main(peripherals: Peripherals) {
    let mut display = DisplayDriver::new(peripherals.display);
    let style = MonoTextStyle::new(&FONT_6X10, Rgb888::GREEN);
    
    Text::new("Hello,\nRust!", Point::new(2, 28), style)
        .draw(&mut display)
        .unwrap();
}

Check out the embedded-graphics docs for more examples.

About

Rust embedded-graphics driver for the VEX V5 Brain.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages