procedure tModule.setModulBaudrate(const Value: tBaudrate);
var
  i : integer;
begin
  for i := 0 to sModule.Count-1 do
    tModul(sModule.items[i]).Baudrate := Value;
  sModulBaudrate := Value;
  init;
end;

procedure tModule.setWaitforAnswer(b : boolean);
var
  i : integer;
begin
  for i := 0 to sModule.Count-1 do
    tModul(sModule.items[i]).WaitforAnswer := b;
  sWaitforAnswer := b;
end;

procedure tModule.init;
begin
  with lCom do begin
    active := false;
    close;

    BaudRate   := sCompiBaudrate;
    DeviceName := sComport;

    open;
    active     := true;

    WriteString(#$0d);
  end;
end;

procedure TModule.setChangeableAddress(b : boolean);
var
  i : integer;
begin
  for i := 0 to sModule.Count-1 do
    tModul(sModule.items[i]).ChangeableAddress := b;
  sChangeableAddress := b;
end;

Constructor tModule.Create;
begin
  inherited;
  sAnzahl := 0;
  sModule := tList.create;
  setAnzahl(2);

  sCompiBaudrate := comport.br9600;
  sComport       := 'COM1';
  
  init;
end;

Destructor tModule.Destroy;
begin
  setAnzahl(-1);
  sModule.free;
  inherited;
end;