diff --git a/IOB-WIN/IobSiemens.cs b/IOB-WIN/IobSiemens.cs index ae665209..51037d42 100644 --- a/IOB-WIN/IobSiemens.cs +++ b/IOB-WIN/IobSiemens.cs @@ -136,6 +136,31 @@ namespace IOB_WIN //tslRTime.Text = string.Format("{0}", sw.Elapsed); return answ; } + /// + /// Override scrittura in area DBB + /// + /// + /// + /// + /// + /// + public bool S7WriteBB(ref byte[] Value, string memAddrWrite, int dbNum, int indiceMem) + { + bool answ = false; + sw.Restart(); + if (testCncConn()) + { + // decodifico memoria... + memAreaSiemens memoria = new memAreaSiemens(memAddrWrite); + int numByte = Value.Length; + var errorCode = currPLC.WriteBytes(DataType.DataBlock, dbNum, indiceMem, Value); + + answ = true; + } + sw.Stop(); + //tslRTime.Text = string.Format("{0}", sw.Elapsed); + return answ; + } #endregion diff --git a/IOB-WIN/IobSiemensTorri.cs b/IOB-WIN/IobSiemensTorri.cs index 71e76501..b1765555 100644 --- a/IOB-WIN/IobSiemensTorri.cs +++ b/IOB-WIN/IobSiemensTorri.cs @@ -42,7 +42,7 @@ namespace IOB_WIN // cerco task specifici: se ho startSetup --> imposto bit DBB701.DBB0.4 foreach (var item in task2exe) - { + { taskVal = ""; // controllo sulal KEY switch (item.Key) @@ -54,10 +54,16 @@ namespace IOB_WIN case "stopSetup": taskVal = "VALUE DB701.0.4 --> 0"; break; + //case "forceSetPzCount": + // taskVal = "Wrote PzCount as ##"; + //bool fatto = S7WriteBB(ref MemBlock,"DB700",22, 0); + //break; default: // anche se non faccio nulla SEGNO con value = NOT DONE taskVal = "UNKNOWN KEY | NO EXEC"; break; + + } taskDone.Add(item.Key, taskVal); }