using FUTEK.Devices; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace USB225StreamingExample { class Program { static void Main(string[] args) { DeviceRepository repo = new DeviceRepository(); //Use DetectDevices to discover usb225. List devices = repo.DetectDevices().ToList(); DeviceUSB225 usb225 = devices.First() as DeviceUSB225; List samplingRates = usb225.GetChannelXSamplingRatePossibleValues(0); //Set sampling rate to 5 samples per second. This is only used for this example. usb225.SetChannelXSamplingRate(0, samplingRates.First(x => x == "20")); //Must run pre streaming operations before using GetStreamingDataConverted or GetStreamingData. Console.WriteLine("Running pre streaming operations"); usb225.PreStreamingOperations(); Console.WriteLine("Press Q to stop"); do { while (!Console.KeyAvailable) { //GetStreamingConverted will convert stream data collected and return values. StreamDataPoint[] points = usb225.GetStreamingDataConverted(); foreach (StreamDataPoint point in points) { Console.WriteLine(point.ConvertedValue.ToString()); } } } while (Console.ReadKey(true).Key != ConsoleKey.Escape); //Must run post streaming operations once stream has been complete. Console.WriteLine("Running post streaming operations"); usb225.PostStreamingOperations(); } } }