* \return V2 Protocol status \ref STATUS_CMD_OK if the no timeout occurred, \ref STATUS_RDY_BSY_TOUT or
* \ref STATUS_CMD_TOUT otherwise
*/
-uint8_t ISPTarget_WaitForProgComplete(const uint8_t ProgrammingMode, const uint16_t PollAddress, const uint8_t PollValue,
- const uint8_t DelayMS, const uint8_t ReadMemCommand)
+uint8_t ISPTarget_WaitForProgComplete(const uint8_t ProgrammingMode,
+ const uint16_t PollAddress,
+ const uint8_t PollValue,
+ const uint8_t DelayMS,
+ const uint8_t ReadMemCommand)
{
uint8_t ProgrammingStatus = STATUS_CMD_OK;
SPI_SendByte(PollAddress >> 8);
SPI_SendByte(PollAddress & 0xFF);
}
- while ((SPI_TransferByte(0x00) == PollValue) && TimeoutMSRemaining);
+ while ((SPI_TransferByte(0x00) == PollValue) && TimeoutTicksRemaining);
- if (!(TimeoutMSRemaining))
+ if (!(TimeoutTicksRemaining))
ProgrammingStatus = STATUS_CMD_TOUT;
break;
break;
}
- if (ProgrammingStatus == STATUS_CMD_OK)
- TimeoutMSRemaining = COMMAND_TIMEOUT_MS;
-
return ProgrammingStatus;
}
SPI_SendByte(0x00);
SPI_SendByte(0x00);
}
- while ((SPI_ReceiveByte() & 0x01) && TimeoutMSRemaining);
+ while ((SPI_ReceiveByte() & 0x01) && TimeoutTicksRemaining);
- if (TimeoutMSRemaining)
- {
- TimeoutMSRemaining = COMMAND_TIMEOUT_MS;
- return STATUS_CMD_OK;
- }
- else
- {
- return STATUS_RDY_BSY_TOUT;
- }
+ return TimeoutTicksRemaining ? STATUS_CMD_OK : STATUS_RDY_BSY_TOUT;
}
/** Sends a low-level LOAD EXTENDED ADDRESS command to the target, for addressing of memory beyond the