public static void Main() { daq.Initialize(GoSockets.Socket4); var state = daq.GetClockState(); if (state == NwazetDAQ.ClockState.Invalid) { daq.SetDateTime(new DateTime(2012, 10, 05, 20, 39, 00)); } var usartConfig = new UsartConfig(); usartConfig.BaudRate = UsartBaudRate.Baud57600; daq.UsartPort.SetConfig(usartConfig); daq.UsartPort.Write("\r\n\r\nNwazet DAQ Pro Kit - demo\r\n"); canvas.Initialize(GoSockets.Socket5); canvas.SetOrientation(Orientation.Landscape); InitDisplay(); seg.SetBrightness(.1f); seg.SetColon(true); while (true) { var hih = new HIH613x(daq.I2cPort); var bmp085 = new BoschBmp085(daq.I2cPort); var taos = new TaosTSL256x(daq.I2cPort); var pressure = 0; AdcSample sample = null; try { while (true) { try { seg.SetBrightness(pot.GetValue()); sample = daq.ReadAnalogInputs(); ShowTime(sample.Time); hih.Read(); pressure = bmp085.ReadPressurePascals(); taos.Read(); } catch (I2cException e) { Debug.Print("I2C transaction failed: " + e.Message); daq.I2cPort.BusReset(); } UpdateDisplay(hih.TemperatureCelsius, hih.RelativeHumidityPercent, pressure, taos.Lux, taos.InfraredSpectrum, sample); daq.UsartPort.Write( sample.Time.ToString() + "," + hih.TemperatureCelsius + "," + hih.RelativeHumidityPercent + "," + pressure + "," + taos.Lux + "," + taos.InfraredSpectrum + "," + sample.Values[(int)ADC.A0].ToString() + "\r\n"); } } catch (Exception e) { Debug.Print("Other exception: " + e.Message); hih.Dispose(); bmp085.Dispose(); taos.Dispose(); } } }
public static void UpdateDisplay(ushort temp, ushort humidity, Int32 pressurePa, UInt32 lux, UInt16 infraredSpectrum, AdcSample sample) { canvas.DrawRectangleFilled( 180, 30, 300, 162, ColorHelpers.GetRGB24toRGB565(0, 0, 0)); canvas.DrawString( TextAlignmentX, 40, ColorHelpers.GetRGB24toRGB565(255, 255, 255), VerdanaBold14.ID, temp.ToString()); canvas.DrawString( TextAlignmentX, 65, ColorHelpers.GetRGB24toRGB565(255, 255, 255), VerdanaBold14.ID, humidity.ToString()); canvas.DrawString( TextAlignmentX, 90, ColorHelpers.GetRGB24toRGB565(255, 255, 255), VerdanaBold14.ID, lux.ToString()); canvas.DrawString( TextAlignmentX, 115, ColorHelpers.GetRGB24toRGB565(255, 255, 255), VerdanaBold14.ID, infraredSpectrum.ToString()); canvas.DrawString( TextAlignmentX, 140, ColorHelpers.GetRGB24toRGB565(255, 255, 255), VerdanaBold14.ID, pressurePa.ToString()); canvas.DrawProgressBar( 148, 171, 154, 10, RoundedCornerStyle.All, RoundedCornerStyle.All, ColorHelpers.GetRGB24toRGB565(214, 214, 214), ColorHelpers.GetRGB24toRGB565(108, 224, 217), ColorHelpers.GetRGB24toRGB565(255, 255, 255), ColorHelpers.GetRGB24toRGB565(233, 15, 7), (int)DaqUtility.MapRange(0, 4095, 0, 100, (double)sample.Values[(int)ADC.A0])); canvas.Execute(); }