private void timer1_Tick(object sender, EventArgs e) { string errmsg = ""; if (hardwaredetect == 0) { YAPI.UpdateDeviceList(ref errmsg); } hardwaredetect = (hardwaredetect + 1) % 20; YAPI.HandleEvents(ref errmsg); if (sensor == null) { sensor = YSensor.FirstSensor(); } if (sensor != null) { if (sensor.isOnline()) { label1.Text = sensor.get_friendlyName(); label2.Text = sensor.get_currentValue() + " " + sensor.get_unit(); } else { label1.Text = "OFFLINE"; label2.Text = "Sensor is offline"; sensor = null; } } }
async Task dispatcherTimer_Tick() { try { if (hardwaredetect == 0) { await YAPI.UpdateDeviceList(); } hardwaredetect = (hardwaredetect + 1) % 20; await YAPI.HandleEvents(); if (sensor == null) { sensor = YSensor.FirstSensor(); } if (sensor != null) { HwIdTextBox.Text = await sensor.get_friendlyName(); TempTextBox.Text = await sensor.get_currentValue() + await sensor.get_unit(); } } catch (YAPI_Exception ex) { HwIdTextBox.Text = "Sensor is offline"; TempTextBox.Text = "OFFLINE"; sensor = null; } }
static void Main(string[] args) { Console.WriteLine("Console dotNET Application 0.1.0"); Console.WriteLine("--------------------------------"); Console.WriteLine(""); Console.WriteLine("Using Yoctopuce lib " + YAPI.GetAPIVersion()); string errsmg = ""; if (YAPI.RegisterHub("usb", ref errsmg) != YAPI.SUCCESS) { Console.WriteLine("Unable to register the USB port :" + errsmg); return; } YSensor sensor = YSensor.FirstSensor(); if (sensor == null) { Console.WriteLine("No Yoctopuce sensor find on USB."); return; } YDisplay display = YDisplay.FirstDisplay(); if (display == null) { Console.WriteLine("No Yoctopuce display find on USB."); return; } // display clean up display.resetAll(); YDisplayLayer l1 = display.get_displayLayer(1); l1.hide(); // L1 is hidden, l2 stay visible int w = display.get_displayWidth(); int h = display.get_displayHeight(); while (sensor.isOnline() && display.isOnline()) { string value = sensor.get_currentValue() + " " + sensor.get_unit(); string name = sensor.get_friendlyName(); // display a text in the middle of the screen l1.clear(); l1.selectFont("Large.yfm"); l1.drawText(w / 2, h / 2, YDisplayLayer.ALIGN.CENTER, value); l1.selectFont("Small.yfm"); l1.drawText(w - 1, h - 1, YDisplayLayer.ALIGN.BOTTOM_RIGHT, name); display.swapLayerContent(0, 1); Console.WriteLine(name + " ->" + value); YAPI.Sleep(500, ref errsmg); } YAPI.FreeAPI(); }
static void dumpSensor(YSensor sensor) { string fmt = "dd MMM yyyy hh:mm:ss,fff"; Console.WriteLine("Using DataLogger of " + sensor.get_friendlyName()); YDataSet dataset = sensor.get_recordedData(0, 0); Console.WriteLine("loading summary... "); dataset.loadMore(); YMeasure summary = dataset.get_summary(); String line = String.Format("from {0} to {1} : min={2:0.00}{5} avg={3:0.00}{5} max={4:0.00}{5}", summary.get_startTimeUTC_asDateTime().ToString(fmt), summary.get_endTimeUTC_asDateTime().ToString(fmt), summary.get_minValue(), summary.get_averageValue(), summary.get_maxValue(), sensor.get_unit()); Console.WriteLine(line); Console.Write("loading details : 0%"); int progress = 0; do { progress = dataset.loadMore(); Console.Write(String.Format("\b\b\b\b{0,3:##0}%", progress)); } while(progress < 100); Console.WriteLine(""); List <YMeasure> details = dataset.get_measures(); foreach (YMeasure m in details) { Console.WriteLine( String.Format("from {0} to {1} : min={2:0.00}{5} avg={3:0.00}{5} max={4:0.00}{5}", m.get_startTimeUTC_asDateTime().ToString(fmt), m.get_endTimeUTC_asDateTime().ToString(fmt), m.get_minValue(), m.get_averageValue(), m.get_maxValue(), sensor.get_unit())); } }