Compare commits

..

No commits in common. '120bd5f421b2c9afbb85b08f5859c7c6fec64157' and 'bf14cbd8df7e764c095f10164422694d349928bb' have entirely different histories.

@ -44,21 +44,12 @@ void modbusGet(void) {
case fcReadInputRegisters:
if(modbusRequestedAddress() < 100)
modbusExchangeRegisters((void *)inStates,0,nrOfInputs/16);
else if(modbusRequestedAddress() < 200){
modbusExchangeRegisters((void *)&inputEdgesBoth,100,nrOfInputs/16);
for(uint16_t i = modbusDataLocation - 100; i < modbusDataLocation-100+(modbusDataAmount*16); i++)
inputEdgesBoth &= ~(1 << i);
}
else if(modbusRequestedAddress() < 300){
modbusExchangeRegisters((void *)&inputEdgesFalling,200,nrOfInputs/16);
for(uint16_t i = modbusDataLocation - 200; i < modbusDataLocation-200+(modbusDataAmount*16); i++)
inputEdgesFalling &= ~(1 << i);
}
else if(modbusRequestedAddress() < 400){
modbusExchangeRegisters((void *)&inputEdgesRising,300,nrOfInputs/16);
for(uint16_t i = modbusDataLocation - 300; i < modbusDataLocation-300+(modbusDataAmount*16); i++)
inputEdgesRising &= ~(1 << i);
}
else if(modbusRequestedAddress() < 200)
modbusExchangeRegisters((void *)inStatesBothEdges,100,nrOfInputs/16);
else if(modbusRequestedAddress() < 300)
modbusExchangeRegisters((void *)inStatesFallingEdge,200,nrOfInputs/16);
else if(modbusRequestedAddress() < 400)
modbusExchangeRegisters((void *)inStatesRisingEdge,300,nrOfInputs/16);
break;
case fcReadInputStatus:
@ -88,15 +79,6 @@ void modbusGet(void) {
modbusExchangeBits(outStates,0,nrOfOutputs);
else if(modbusRequestedAddress() < 200)
modbusExchangeBits(outStatesBlinking,100,nrOfOutputs);
else if(modbusRequestedAddress() < 300){
uint8_t outStatesToggle[sizeof(outStates)];
memset(outStatesToggle, 0, sizeof(outStatesToggle));
modbusExchangeBits(outStatesToggle,200,nrOfOutputs);
for(uint8_t i=0; i<sizeof(outStates); i++){
outStates[i] ^= outStatesToggle[i];
}
}
break;
default: