//private Semaphore SerialPort_Lock = new Semaphore(1, 1); private void SendPackage(DashboardPackages package, byte[] data) { DevicePacket packet = new DevicePacket { Data = data, ID = Convert.ToInt16(package), Length = data.Length }; Telemetry.m.Peripherals.TX(packet, ""); /*SerialPort_Lock.WaitOne(); * DashboardPacket packet = new DashboardPacket(); * packet.Sync1 = '$'; * packet.Sync2 = '&'; * packet.length = (UInt16) (data.Length); * packet.id = (byte) package; * * byte[] bPacket = ByteMethods.ToBytes(packet); * sp.Write(bPacket, 0, 5); * sp.Write(data, 0, data.Length); * byte[] bf = new byte[2]; * bf[0] = 0; * bf[1] = 0; * sp.Write(bf, 0, 2); * SerialPort_Lock.Release();*/ }
private void SendPackage(DashboardPackages package, byte[] data) { DevicePacket pk = new DevicePacket((int)package, data); Telemetry.m.Peripherals.TX(pk, ""); return; SerialPort_Lock.WaitOne(); DashboardPacket packet = new DashboardPacket(); packet.Sync1 = '$'; packet.Sync2 = '&'; packet.length = (UInt16)(data.Length); packet.id = (byte)package; byte[] bPacket = ByteMethods.ToBytes(packet); sp.Write(bPacket, 0, 5); sp.Write(data, 0, data.Length); byte[] bf = new byte[2]; bf[0] = 0; bf[1] = 0; sp.Write(bf, 0, 2); SerialPort_Lock.Release(); }
private void SendPackage(DashboardPackages package, byte[] data) { DevicePacket pk = new DevicePacket { Data = data, ID = Convert.ToInt32(package), Length = data.Length }; Telemetry.m.Peripherals.TX(pk, ""); return; SerialPort_Lock.WaitOne(); DashboardPacket packet = new DashboardPacket(); packet.Sync1 = '$'; packet.Sync2 = '&'; packet.length = (UInt16)(data.Length); packet.id = (byte)package; byte[] bPacket = ByteMethods.ToBytes(packet); sp.Write(bPacket, 0, 5); sp.Write(data, 0, data.Length); byte[] bf = new byte[2]; bf[0] = 0; bf[1] = 0; sp.Write(bf, 0, 2); SerialPort_Lock.Release(); }