private void usb_OnDataRecieved_5(object sender, UsbLibrary.DataRecievedEventArgs args) { SensorData tmp = new SensorData(args.data); i++; if (i % speedChar == 0) { this.BeginInvoke(updateCrartDelegat, tmp); i = 1; } switch (status) { case Status.Mouse: Mouse.MoveMouse(tmp.Gz, tmp.Gx); break; case Status.Gestures: GesturesEnum ge = Gestures.IdentifyGesture(tmp); if (ge != GesturesEnum.None) { this.BeginInvoke(updateGesturesLableDelegat, ge); } if (ge != GesturesEnum.None) { System.Diagnostics.Debug.Print("--------------{0}", ge.ToString()); } break; case Status.Level: this.BeginInvoke(updateLevelDelegat, tmp); break; } }
private void usbHidPort1_OnDataRecieved(object sender, UsbLibrary.DataRecievedEventArgs args) { if (InvokeRequired) { try { Invoke(new UsbLibrary.DataRecievedEventHandler(usbHidPort1_OnDataRecieved), new object[] { sender, args }); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } else { byte[] usb_gelen = new byte[usbHidPort1.SpecifiedDevice.OutputReportLength + 1]; byte i = 0; foreach (byte myData in args.data) { usb_gelen[i++] = myData; } label2.Text = Convert.ToString(Convert.ToChar(usb_gelen[1])) + Convert.ToString(Convert.ToChar(usb_gelen[2])) + Convert.ToString(Convert.ToChar(usb_gelen[3])) + Convert.ToString(Convert.ToChar(usb_gelen[4])) + Convert.ToString(Convert.ToChar(usb_gelen[5])) + Convert.ToString(Convert.ToChar(usb_gelen[6])) + Convert.ToString(Convert.ToChar(usb_gelen[7])) + " " + Convert.ToString(Convert.ToChar(176)) + "C"; } }
private void usbHidPort1_OnDataRecieved(object sender, UsbLibrary.DataRecievedEventArgs args) { if (InvokeRequired) { try { Invoke(new UsbLibrary.DataRecievedEventHandler(usbHidPort1_OnDataRecieved), new object[] { sender, args }); } catch (Exception ex) { Console.WriteLine(ex.ToString()); } } else { byte[] usb_gelen = new byte[usbHidPort1.SpecifiedDevice.OutputReportLength + 1]; byte i = 0, porte = 0x00; foreach (byte myData in args.data) { usb_gelen[i++] = myData; } if (usb_gelen[3] == 1) { label5.BackColor = Color.Red; porte = Convert.ToByte(porte | 0x01); } else { label5.BackColor = Color.LightSkyBlue; } label5.Text = "RE0 : " + Convert.ToString(usb_gelen[3]); label7.Text = porte.ToString("X2"); if (usb_gelen[4] == 1) { label6.BackColor = Color.Red; porte = Convert.ToByte(porte | 0x02); } else { label6.BackColor = Color.LightSkyBlue; } label6.Text = "RE1 : " + Convert.ToString(usb_gelen[4]); label7.Text = "0X" + porte.ToString("X2"); } }
public void DataReceived(object sender, UsbLibrary.DataRecievedEventArgs e) { Array.Clear(writeBuffer, 0, writeBuffer.Length); char[] asciiChars = new char[Encoding.ASCII.GetCharCount(e.data, 0, e.data.Length)]; Encoding.ASCII.GetChars(e.data, 0, e.data.Length, asciiChars, 0); string newString = new string(asciiChars); tempString += new string(asciiChars).Substring(5); tempString = tempString.Replace("\0", string.Empty); //send read number of results on device message if (_HeaderRead && !_NumResultsRead && _CountStep <= 3) { GetSampleCountMessages(); return; } ////send read config message //if (_HeaderRead && _NumResultsRead && !_ConfigRead && _CountStep <= 1) //{ // GetConfigMessages(); // return; //} //preheader if (tempString.StartsWith(Statics.GetStringFromAsciiCode((byte)AsciiCodes.ENQ)) && tempString.Length == 1) { tempString = string.Empty; writeBuffer[3] = (byte)AsciiCodes.RH; writeBuffer[4] = (byte)AsciiCodes.ACK; Port.SpecifiedDevice.SendData(writeBuffer); return; } //new line detected so frame is complete if (tempString.Contains("\r\n")) { tempString = tempString.Split(new string[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries)[0]; //header if (tempString.Contains(((char)AsciiCodes.STX).ToString() + "1H")) { _HeaderRead = true; ParseHeader(tempString); tempString = string.Empty; writeBuffer[3] = (byte)AsciiCodes.RH; writeBuffer[4] = (byte)AsciiCodes.EOT; Port.SpecifiedDevice.SendData(writeBuffer); Thread.Sleep(100); return; } //patient record if (tempString.Length > tempString.IndexOf((char)AsciiCodes.STX) + 2 && tempString[tempString.IndexOf((char)AsciiCodes.STX) + 2] == 'P') { tempString = string.Empty; } //terminator record if (tempString.Length > tempString.IndexOf((char)AsciiCodes.STX) + 2 && tempString[tempString.IndexOf((char)AsciiCodes.STX) + 2] == 'L') { tempString = string.Empty; } //glucose record if (tempString.Contains("^^^Glucose")) { string[] splitrecord = tempString.Split(new string[] { "|", "\r", "^" }, StringSplitOptions.RemoveEmptyEntries); int year = int.Parse(splitrecord[7].Substring(0, 4)); int month = int.Parse(splitrecord[7].Substring(4, 2)); int day = int.Parse(splitrecord[7].Substring(6, 2)); int hour = int.Parse(splitrecord[7].Substring(8, 2)); int minute = int.Parse(splitrecord[7].Substring(10, 2)); DateTime dtTimeStamp = new DateTime(year, month, day, hour, minute, 0); int glucose = int.Parse(splitrecord[3]); string sampleFormat = splitrecord[4]; this.SampleFormat = sampleFormat.ToLowerInvariant().Contains("mmol") ? SampleFormat.MMOL : SampleFormat.MGDL; //put the record in the dataset and raise the read event try { if (Records.FindByTimestamp(dtTimeStamp) == null) { //only insert non-duplicate records OnRecordRead(new RecordReadEventArgs(this._Records.AddRecordRow(dtTimeStamp, glucose, sampleFormat))); RecordsRead++; } //if } //try catch { }//catch tempString = string.Empty; } //num results message arrived if (tempString.Contains("D|") && !_NumResultsRead) { //cut message out of string string message = tempString.Substring(tempString.IndexOf("D|")); string [] splits = tempString.Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries); this.SampleCount = Convert.ToInt32(splits[1]); tempString = string.Empty; _NumResultsRead = true; _CountStep = 0; Thread.Sleep(100); OnHeaderRead(new HeaderReadEventArgs(SampleCount, this)); //GetConfigMessages(); return; } ////results format //if (tempString.Contains("D|") && !_ConfigRead) //{ // //cut message out of string // string message = tempString.Substring(tempString.IndexOf("D|")); // string[] splits = tempString.Split(new string[] { "|" }, StringSplitOptions.RemoveEmptyEntries); // BitArray bitary = new BitArray(Byte.Parse(splits[1])); // SampleFormat = (bitary.Get(2)) ? SampleFormat.MMOL : SampleFormat.MGDL; // tempString = string.Empty; // _ConfigRead = true; // _CountStep = 0; // Thread.Sleep(100); // return; //} } //end of transmission encountered after a header record is read if (_HeaderRead && _NumResultsRead && RecordsRead >= SampleCount) { _HeaderRead = false; Port.OnDataRecieved -= new UsbLibrary.DataRecievedEventHandler(DataReceived); Port.SpecifiedDevice.DataRecieved -= SpecifiedDevice_DataRecieved; OnReadFinished(new ReadFinishedEventArgs(this)); Close(); Dispose(); return; }//elseif if (_NumResultsRead)// && _ConfigRead) { Array.Clear(writeBuffer, 0, writeBuffer.Length); writeBuffer[4] = (byte)AsciiCodes.RH; writeBuffer[5] = (byte)AsciiCodes.ACK; Port.SpecifiedDevice.SendData(writeBuffer); Thread.Sleep(100); } }
void SpecifiedDevice_DataRecieved(object sender, UsbLibrary.DataRecievedEventArgs args) { DataReceived(sender, args); }
private void usb_OnDataRecieved_6(object sender, UsbLibrary.DataRecievedEventArgs args) { System.Diagnostics.Debug.Print("---usb_OnDataRecieved_6"); }
private void usb_OnDataRecieved(object sender, UsbLibrary.DataRecievedEventArgs args) { }
public void USBCom_OnDataReceived(object sender, UsbLibrary.DataRecievedEventArgs args) { OnLaserReportReceived(args.data); }