analog/
analog.rs

1extern crate firmata;
2
3use firmata::*;
4use std::thread;
5
6fn main() {
7    let mut b = firmata::Board::new("/dev/ttyACM0");
8
9    let pin = 14; // A0
10
11    println!("firmware version {}", b.firmware_version);
12    println!("firmware name {}", b.firmware_name);
13    println!("protocol version {}", b.protocol_version);
14
15    b.set_pin_mode(pin, firmata::ANALOG);
16
17    b.report_analog(pin, 1);
18
19    loop {
20        b.decode();
21        println!("analog value: {:o}", b.pins[pin as usize].value);
22        thread::sleep_ms(10);
23    }
24}