Last active
May 20, 2017 13:29
-
-
Save dylanede/6aaafb9f7eb4e330bf77c2fb724d01ea to your computer and use it in GitHub Desktop.
Possible API for LimeSuite in Rust
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let specs = lime_suite::connected_devices()?; | |
let device = specs[0].open()?.unwrap(); | |
device.init()?; // put into default state | |
device.set_sample_rate(10.0e6)?; | |
let channel = &device.channels(Dir::Rx)?[0]; | |
channel.set_enabled(true)?; | |
channel.set_frequency(1575.42e6)?; | |
channel.antennas()?["LNA_H"].select()?; | |
let stream = channel.create_stream(StreamConfig::<i16> { | |
fifo_size: 1024 * 128, | |
throughput_vs_latency: 1.0 | |
})?; | |
let len = 16384; | |
let mut buffer = vec![Sample::zero(); len]; | |
stream.start()?; | |
for i in 0..100 { | |
let samples_read = stream.read(&mut buffer, Some(Timestamp(i*len)), Flush(false), Duration::milliseconds(200))?; | |
let samples = &buffer[0..samples_read]; | |
// do stuff with samples here | |
} | |
stream.stop()?; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment