bool HardwareSPIMode = true;
/** Software SPI data register for sending and receiving */
-volatile uint8_t SoftSPI_Data;
+static volatile uint8_t SoftSPI_Data;
/** Number of bits left to transfer in the software SPI driver */
-volatile uint8_t SoftSPI_BitsRemaining;
+static volatile uint8_t SoftSPI_BitsRemaining;
/** ISR to handle software SPI transmission and reception */
{
if (HardwareSPIMode)
{
- SPI_ShutDown();
+ SPI_Disable();
}
else
{
TCNT1 = 0;
TCCR1B = ((1 << WGM12) | (1 << CS11));
- while (SoftSPI_BitsRemaining && TimeoutTicksRemaining);
+ while (SoftSPI_BitsRemaining && !(TimeoutExpired));
TCCR1B = 0;
return SoftSPI_Data;
ISPTarget_SendByte(0x00);
ISPTarget_SendByte(0x00);
}
- while ((ISPTarget_ReceiveByte() & 0x01) && TimeoutTicksRemaining);
+ while ((ISPTarget_ReceiveByte() & 0x01) && !(TimeoutExpired));
- return TimeoutTicksRemaining ? STATUS_CMD_OK : STATUS_RDY_BSY_TOUT;
+ return (TimeoutExpired) ? STATUS_RDY_BSY_TOUT : STATUS_CMD_OK;
}
/** Sends a low-level LOAD EXTENDED ADDRESS command to the target, for addressing of memory beyond the
ISPTarget_SendByte(PollAddress >> 8);
ISPTarget_SendByte(PollAddress & 0xFF);
}
- while ((ISPTarget_TransferByte(0x00) == PollValue) && TimeoutTicksRemaining);
+ while ((ISPTarget_TransferByte(0x00) == PollValue) && !(TimeoutExpired));
- if (!(TimeoutTicksRemaining))
+ if (TimeoutExpired)
ProgrammingStatus = STATUS_CMD_TOUT;
break;