void GetData(bool now = false) { if (lastgetdata.AddMilliseconds(timeout) < DateTime.Now && open || now) { mavint.SendSerialControl(port, timeout, null); lastgetdata = DateTime.Now; } }
bool ReceviedPacket(byte[] packet) { if (packetcounttimer.Second != DateTime.Now.Second) { log.Info("packet count " + packetcount + " with data " + packetwithdata + " " + buffer.Size); packetcount = 0; packetwithdata = 0; packetcounttimer = DateTime.Now; } packetcount++; MAVLink.mavlink_serial_control_t item = packet.ByteArrayToStructure <MAVLink.mavlink_serial_control_t>(); if (item.count == 0) { return(true); } packetwithdata++; Console.WriteLine(DateTime.Now.Millisecond + "data count " + item.count); // ASCIIEncoding.ASCII.GetString(item.data, 0, item.count) lock (buffer) { buffer.Put(item.data, 0, item.count); } mavint.SendSerialControl(port, 10, null); lastgetdata = DateTime.Now; return(true); }