public void Request(byte requestByte, ResponseCallback responseCallback, byte fan, byte speed) { Response resp = new Response(); if (requestByte == 1) { resp.answerBytes = new byte[] { 13, 12, 11, 10, 9, 8, 7, 6, 0 }; } else { resp.answerBytes = new byte[] { 1, 0 }; } responseCallback(resp); }
public void ListFans(Response resp) { int counter = 1; foreach (byte rByte in resp.answerBytes) { if (rByte == 0) { return; } fanDataObject.setPinByte(counter, rByte); fanDataObject.setPinSpeed(counter, 0, false); counter++; } }
private void worker_DoWork(object sender, DoWorkEventArgs e) { Job j = (Job)e.Argument; sPort.Open(); sPort.Write(new byte[] { j.MessageType, j.FanPort, j.FanSpeed }, 0, 3); LinkedList<byte> answerBytes = new LinkedList<byte>(); byte rByte; while ((rByte = (byte)sPort.ReadByte()) != 0) { answerBytes.AddLast(rByte); } sPort.Close(); Response resp = new Response(); resp.answerBytes = answerBytes.ToArray<byte>(); j.response = resp; e.Result = j; }
public void SpeedChangeCallback(Response resp) { Trace.WriteLine("Speed change send."); }