X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/244bba2097574fd9c4905eadac069c57796cbc28..f9f1bcc25c17b031029200cd9648d76d4ee39dc4:/Projects/AVRISP/Lib/V2ProtocolTarget.c diff --git a/Projects/AVRISP/Lib/V2ProtocolTarget.c b/Projects/AVRISP/Lib/V2ProtocolTarget.c index c36295ea0..24cd941a4 100644 --- a/Projects/AVRISP/Lib/V2ProtocolTarget.c +++ b/Projects/AVRISP/Lib/V2ProtocolTarget.c @@ -92,8 +92,8 @@ void V2Protocol_ChangeTargetResetLine(bool ResetTarget) } else { - RESET_LINE_PORT &= ~RESET_LINE_MASK; RESET_LINE_DDR &= ~RESET_LINE_MASK; + RESET_LINE_PORT &= ~RESET_LINE_MASK; } } @@ -155,14 +155,17 @@ uint8_t V2Protocol_WaitWhileTargetBusy(void) { TCNT0 = 0; + bool DeviceBusy; + do { SPI_SendByte(0xF0); SPI_SendByte(0x00); SPI_SendByte(0x00); + DeviceBusy = (SPI_ReceiveByte() & 0x01); } - while ((SPI_ReceiveByte() & 0x01) && (TCNT0 < TARGET_BUSY_TIMEOUT_MS)); + while (DeviceBusy && (TCNT0 < TARGET_BUSY_TIMEOUT_MS)); if (TCNT0 >= TARGET_BUSY_TIMEOUT_MS) return STATUS_RDY_BSY_TOUT;