protected void Events_ReceivedPackets(Object sender, RS485Events.ReceivedPacketsArg arg)
 {
     // lock (RS485Events.synchronized)
     {
         RS485Packet packet = new RS485Packet(source, source, arg.Packet.source, RS485Packet.PriorityEnum.Highest, RS485Packet.CommandEnum.Successed, "*");
         lastSend = packet;
         client.Send(packet);
     }
 }
 protected void Events_AllowNextEvent(object sender, RS485Events.ReceivedPacketsArg arg)
 {
     // lock (RS485Events.synchronized)
     {
         RS485Packet packet = new RS485Packet(source, source, NextDestination(source), RS485Packet.PriorityEnum.Highest, RS485Packet.CommandEnum.AllowTransmit, "x");
         lastSend = packet;
         client.Send(packet);
     }
 }
 protected void Events_OutputEvent(object sender, RS485Events.OutputEventArg arg)
 {
 }
 public RS485Base()
 {
     events = new RS485Events();
 }