aboutsummaryrefslogtreecommitdiffstats
path: root/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
diff options
context:
space:
mode:
Diffstat (limited to 'Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h')
-rw-r--r--Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
index 906ee82fb..350283f5e 100644
--- a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
+++ b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
@@ -104,10 +104,17 @@
*/
static inline uint8_t ISPTarget_ReceiveByte(void)
{
+ #if !defined(INVERTED_ISP_MISO)
if (HardwareSPIMode)
return SPI_ReceiveByte();
else
return ISPTarget_TransferSoftSPIByte(0x00);
+ #else
+ if (HardwareSPIMode)
+ return ~SPI_ReceiveByte();
+ else
+ return ~ISPTarget_TransferSoftSPIByte(0x00);
+ #endif
}
/** Sends and receives a byte of ISP data to and from the attached target, using the
@@ -119,10 +126,17 @@
*/
static inline uint8_t ISPTarget_TransferByte(const uint8_t Byte)
{
+ #if !defined(INVERTED_ISP_MISO)
if (HardwareSPIMode)
return SPI_TransferByte(Byte);
else
return ISPTarget_TransferSoftSPIByte(Byte);
+ #else
+ if (HardwareSPIMode)
+ return ~SPI_TransferByte(Byte);
+ else
+ return ~ISPTarget_TransferSoftSPIByte(Byte);
+ #endif
}
#endif