diff options
Diffstat (limited to 'Projects/TemperatureDataLogger/TempLogHostApp/DataLoggerSettings.cs')
-rw-r--r-- | Projects/TemperatureDataLogger/TempLogHostApp/DataLoggerSettings.cs | 344 |
1 files changed, 172 insertions, 172 deletions
diff --git a/Projects/TemperatureDataLogger/TempLogHostApp/DataLoggerSettings.cs b/Projects/TemperatureDataLogger/TempLogHostApp/DataLoggerSettings.cs index 370dfbd69f..0168fb8cfd 100644 --- a/Projects/TemperatureDataLogger/TempLogHostApp/DataLoggerSettings.cs +++ b/Projects/TemperatureDataLogger/TempLogHostApp/DataLoggerSettings.cs @@ -1,172 +1,172 @@ -using System;
-using System.Collections.Generic;
-using System.ComponentModel;
-using System.Data;
-using System.Drawing;
-using System.Linq;
-using System.Text;
-using System.Windows.Forms;
-using Hid;
-
-namespace Project1HostApp
-{
- public partial class frmDataloggerSettings : Form
- {
- private const int DEVICE_VID = 0x03EB;
- private const int DEVICE_PID = 0xFAFA;
-
- private struct Device_Report_t
- {
- public Byte Day;
- public Byte Month;
- public Byte Year;
-
- public Byte Hour;
- public Byte Minute;
- public Byte Second;
-
- public Byte LogInterval500MS;
-
- public Byte[] ToReport()
- {
- Byte[] Report = new Byte[7];
-
- Report[0] = this.Day;
- Report[1] = this.Month;
- Report[2] = this.Year;
- Report[3] = this.Hour;
- Report[4] = this.Minute;
- Report[5] = this.Second;
- Report[6] = this.LogInterval500MS;
-
- return Report;
- }
-
- public void FromReport(Byte[] Report)
- {
- this.Day = Report[0];
- this.Month = Report[1];
- this.Year = Report[2];
- this.Hour = Report[3];
- this.Minute = Report[4];
- this.Second = Report[5];
- this.LogInterval500MS = Report[6];
- }
- };
-
- private IDevice GetDeviceConnection()
- {
- IDevice[] ConnectedDevices = DeviceFactory.Enumerate(DEVICE_VID, DEVICE_PID);
- IDevice ConnectionHandle = null;
-
- if (ConnectedDevices.Count() > 0)
- ConnectionHandle = ConnectedDevices[0];
- else
- return null;
-
- // Fix report handle under Windows
- if (ConnectionHandle is Hid.Win32.Win32DeviceSet)
- {
- ((Hid.Win32.Win32DeviceSet)ConnectionHandle).AddDevice(0x00,
- ((Hid.Win32.Win32DeviceSet)ConnectionHandle).UnallocatedDevices[0]);
- }
-
- return ConnectionHandle;
- }
-
- public frmDataloggerSettings()
- {
- InitializeComponent();
- }
-
- private void btnSetValues_Click(object sender, EventArgs e)
- {
- IDevice ConnectionHandle = GetDeviceConnection();
-
- if (ConnectionHandle == null)
- {
- MessageBox.Show("Error: Cannot connect to DataLogger device.");
- return;
- }
-
- Device_Report_t DeviceReport = new Device_Report_t();
- DeviceReport.Day = (byte)dtpDate.Value.Day;
- DeviceReport.Month = (byte)dtpDate.Value.Month;
- DeviceReport.Year = (byte)((dtpDate.Value.Year < 2000) ? 0 : (dtpDate.Value.Year - 2000));
- DeviceReport.Hour = (byte)dtpTime.Value.Hour;
- DeviceReport.Minute = (byte)dtpTime.Value.Minute;
- DeviceReport.Second = (byte)dtpTime.Value.Second;
- DeviceReport.LogInterval500MS = (byte)(nudLogInterval.Value * 2);
-
- try
- {
- ConnectionHandle.Write(0x00, DeviceReport.ToReport());
- MessageBox.Show("Device parameters updated sucessfully.");
- }
- catch (Exception ex)
- {
- MessageBox.Show("Error: " + ex.Message);
- }
- }
-
- private void btnGetValues_Click(object sender, EventArgs e)
- {
- IDevice ConnectionHandle = GetDeviceConnection();
-
- if (ConnectionHandle == null)
- {
- MessageBox.Show("Error: Cannot connect to DataLogger device.");
- return;
- }
-
- Device_Report_t DeviceReport = new Device_Report_t();
-
- try
- {
- Byte[] Report = new Byte[7];
-
- ConnectionHandle.Read(0x00, Report);
- DeviceReport.FromReport(Report);
-
- try
- {
- dtpDate.Value = new DateTime(
- (2000 + DeviceReport.Year),
- DeviceReport.Month,
- DeviceReport.Day);
-
- dtpTime.Value = new DateTime(
- DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day,
- DeviceReport.Hour,
- DeviceReport.Minute,
- DeviceReport.Second);
- }
- catch (Exception ex)
- {
- dtpDate.Value = DateTime.Now;
- dtpTime.Value = DateTime.Now;
- }
-
- try
- {
- nudLogInterval.Value = (DeviceReport.LogInterval500MS / 2);
- }
- catch (Exception ex)
- {
- nudLogInterval.Value = nudLogInterval.Minimum;
- }
-
- MessageBox.Show("Device parameters retrieved sucessfully.");
- }
- catch (Exception ex)
- {
- MessageBox.Show("Error: " + ex.Message);
- }
- }
-
- private void frmDataloggerSettings_Load(object sender, EventArgs e)
- {
-
- }
- }
-}
+using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; +using Hid; + +namespace Project1HostApp +{ + public partial class frmDataloggerSettings : Form + { + private const int DEVICE_VID = 0x03EB; + private const int DEVICE_PID = 0xFAFA; + + private struct Device_Report_t + { + public Byte Day; + public Byte Month; + public Byte Year; + + public Byte Hour; + public Byte Minute; + public Byte Second; + + public Byte LogInterval500MS; + + public Byte[] ToReport() + { + Byte[] Report = new Byte[7]; + + Report[0] = this.Day; + Report[1] = this.Month; + Report[2] = this.Year; + Report[3] = this.Hour; + Report[4] = this.Minute; + Report[5] = this.Second; + Report[6] = this.LogInterval500MS; + + return Report; + } + + public void FromReport(Byte[] Report) + { + this.Day = Report[0]; + this.Month = Report[1]; + this.Year = Report[2]; + this.Hour = Report[3]; + this.Minute = Report[4]; + this.Second = Report[5]; + this.LogInterval500MS = Report[6]; + } + }; + + private IDevice GetDeviceConnection() + { + IDevice[] ConnectedDevices = DeviceFactory.Enumerate(DEVICE_VID, DEVICE_PID); + IDevice ConnectionHandle = null; + + if (ConnectedDevices.Count() > 0) + ConnectionHandle = ConnectedDevices[0]; + else + return null; + + // Fix report handle under Windows + if (ConnectionHandle is Hid.Win32.Win32DeviceSet) + { + ((Hid.Win32.Win32DeviceSet)ConnectionHandle).AddDevice(0x00, + ((Hid.Win32.Win32DeviceSet)ConnectionHandle).UnallocatedDevices[0]); + } + + return ConnectionHandle; + } + + public frmDataloggerSettings() + { + InitializeComponent(); + } + + private void btnSetValues_Click(object sender, EventArgs e) + { + IDevice ConnectionHandle = GetDeviceConnection(); + + if (ConnectionHandle == null) + { + MessageBox.Show("Error: Cannot connect to DataLogger device."); + return; + } + + Device_Report_t DeviceReport = new Device_Report_t(); + DeviceReport.Day = (byte)dtpDate.Value.Day; + DeviceReport.Month = (byte)dtpDate.Value.Month; + DeviceReport.Year = (byte)((dtpDate.Value.Year < 2000) ? 0 : (dtpDate.Value.Year - 2000)); + DeviceReport.Hour = (byte)dtpTime.Value.Hour; + DeviceReport.Minute = (byte)dtpTime.Value.Minute; + DeviceReport.Second = (byte)dtpTime.Value.Second; + DeviceReport.LogInterval500MS = (byte)(nudLogInterval.Value * 2); + + try + { + ConnectionHandle.Write(0x00, DeviceReport.ToReport()); + MessageBox.Show("Device parameters updated sucessfully."); + } + catch (Exception ex) + { + MessageBox.Show("Error: " + ex.Message); + } + } + + private void btnGetValues_Click(object sender, EventArgs e) + { + IDevice ConnectionHandle = GetDeviceConnection(); + + if (ConnectionHandle == null) + { + MessageBox.Show("Error: Cannot connect to DataLogger device."); + return; + } + + Device_Report_t DeviceReport = new Device_Report_t(); + + try + { + Byte[] Report = new Byte[7]; + + ConnectionHandle.Read(0x00, Report); + DeviceReport.FromReport(Report); + + try + { + dtpDate.Value = new DateTime( + (2000 + DeviceReport.Year), + DeviceReport.Month, + DeviceReport.Day); + + dtpTime.Value = new DateTime( + DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, + DeviceReport.Hour, + DeviceReport.Minute, + DeviceReport.Second); + } + catch (Exception ex) + { + dtpDate.Value = DateTime.Now; + dtpTime.Value = DateTime.Now; + } + + try + { + nudLogInterval.Value = (DeviceReport.LogInterval500MS / 2); + } + catch (Exception ex) + { + nudLogInterval.Value = nudLogInterval.Minimum; + } + + MessageBox.Show("Device parameters retrieved sucessfully."); + } + catch (Exception ex) + { + MessageBox.Show("Error: " + ex.Message); + } + } + + private void frmDataloggerSettings_Load(object sender, EventArgs e) + { + + } + } +} |