#arduino #avr #hal #atmega #leonardo

无-std arduino-leonardo

Arduino Leonardo 开发板支持库

4 个版本

使用旧 Rust 2015

0.1.3 2018年12月5日
0.1.2 2018年10月9日
0.1.1 2018年10月7日
0.1.0 2018年10月7日

#avr 中排名 35

MIT/Apache

11KB
74

arduino-leonardo docs.rs

Arduino Leonardo 开发板支持库。重新导出类型以更紧密地匹配 Leonardo 的标记。

示例

要查看以下示例的实际效果,请查看 leonardo-examples 仓库。

#![no_std]
#![no_main]
extern crate arduino_leonardo;

use arduino_leonardo::prelude::*;

#[no_mangle]
pub extern fn main() {
    let dp = arduino_leonardo::Peripherals::take().unwrap();

    let mut delay = arduino_leonardo::Delay::new();
    let mut pins = arduino_leonardo::Pins::new(dp.PORTB, dp.PORTC, dp.PORTD, dp.PORTE);

    let mut led0 = pins.led_rx.into_output(&mut pins.ddr);
    let mut led1 = pins.led_tx.into_output(&mut pins.ddr);
    let mut led2 = pins.d13.into_output(&mut pins.ddr);

    led0.set_high();
    led1.set_high();
    led2.set_high();

    let mut leds = [
        led0.downgrade(),
        led1.downgrade(),
        led2.downgrade(),
    ];

    loop {
        for i in 0..3 {
            leds[i].toggle();
            leds[(i+2)%3].toggle();
            delay.delay_ms(200);
        }
    }
}

许可

许可协议为以下之一

任选其一。

贡献

除非您明确表示,否则根据 Apache-2.0 许可证定义的,您有意提交的任何贡献,将根据上述条款双许可,不附加任何额外的条款或条件。

依赖项

~1MB
~28K SLoC