Minor changes

This commit is contained in:
Jonny007-MKD 2014-07-07 10:24:11 +00:00
parent 2df8f31eb7
commit 7b08b19840
2 changed files with 12 additions and 22 deletions

View file

@ -169,15 +169,15 @@ void OnModbusReadRegistersSuccess(struct ModbusResReceiveRegisters mbres, struct
}
// This method gets called when a bit was set successfully.
void OnModbusWriteBitSuccess(struct ModbusResConfirmSingle mbc){}
void OnModbusWriteBitSuccess(struct ModbusResConfirmSingle mbres){}
// This method gets called when a register was set successsfully.
void OnModbusWriteRegisterSuccess(struct ModbusResConfirmSingle mbc){}
void OnModbusWriteRegisterSuccess(struct ModbusResConfirmSingle mbres){}
// This method gets called when multiple bits were set successfully.
void OnModbusWriteBitsSuccess(struct ModbusResConfirmMultiple mbc){}
void OnModbusWriteBitsSuccess(struct ModbusResConfirmMultiple mbres){}
// This method gets called when multiple registers were set successfully.
void OnModbusWriteRegistersSuccess(struct ModbusResConfirmMultiple mbc){}
void OnModbusWriteRegistersSuccess(struct ModbusResConfirmMultiple mbres){}
// This method gets called when a mask was applied successfully.
void OnModbusWriteMasksSuccess(struct ModbusResConfirmMasks mbc){}
void OnModbusWriteMasksSuccess(struct ModbusResConfirmMasks mbres){}
// This method gets called when the Modbus Client panics (saying a fatal error occured).

View file

@ -386,11 +386,7 @@ void ModbusWriteBits(word address, long count, byte values[])
dataLength = _ceil(curCount / 8.0);
overallLength = maxLength - gMaxBitsPerWrite/8 + dataLength;
}
if (curCount == 1)
{
ModbusWriteBit(address+offset, values[offset/8]);
return;
}
_ModbusMakeHeader(mbreq.Header, overallLength, funcCode);
mbreq.Address = address+offset; // [2] Output address
@ -500,12 +496,6 @@ void ModbusWriteRegisters(word address, long count, word values[])
dataLength = 2 * curCount;
overallLength = maxLength - 2*gMaxRegsPerWrite + dataLength;
if (curCount == 1)
{
ModbusWriteRegister(address, values[offset]);
return;
}
_ModbusMakeHeader(mbreq.Header, overallLength, funcCode);
mbreq.Address = address+offset; // [2] Output address
@ -514,8 +504,8 @@ void ModbusWriteRegisters(word address, long count, word values[])
for (i = 0; i < curCount; i++)
mbreq.Data[i] = values[i+offset];
for ( ; i < gMaxRegsPerWrite; i++) // do we need this?
mbreq.Data[i] = 0;
//for ( ; i < gMaxRegsPerWrite; i++) // do we need this?
// mbreq.Data[i] = 0; // I'd say that the Modbus server will stop when it has read curCount values
memcpy_h2n(buffer, mbreq);
_ModbusSend(buffer, overallLength, mbreq.Header.TxID);
@ -767,15 +757,15 @@ void _OnModbusReceive2OnePacket(byte buffer[], int offset, struct ModbusApHeader
return;
//write("Received TxID: %d", mbap.TxID);
memcpy(gQueueAck[mbap.TxID], gQueueSent[mbap.TxID]);
memcpy(gQueueAck[mbap.TxID], gQueueSent[mbap.TxID]); // Move to acknowledge queue
gQueueSent.Remove(mbap.TxID);
if (mbap.FuncCode > 0x80) // Oh no, we got a exception!
if (mbap.FuncCode > 0x80) // Oh no, we got a exception!
_OnModbusReceive2Exceptions(buffer[offset+08], mbap);
else // Ok, everything is alright
else // Ok, everything is alright
_OnModbusReceive2Success(buffer, mbap, offset, length);
gQueueAck.Remove(mbap.TxID); // Remove from acknowledge queue
gQueueAck.Remove(mbap.TxID); // Remove from acknowledge queue
}
/// <-OnModbusReceive>