projects
/
pub
/
USBasp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Documentation: Add additional project links.
[pub/USBasp.git]
/
Projects
/
AVRISP-MKII
/
Lib
/
ISP
/
ISPTarget.h
diff --git
a/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
b/Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
index
3108b16
..
16fd330
100644
(file)
--- a/
Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
+++ b/
Projects/AVRISP-MKII/Lib/ISP/ISPTarget.h
@@
-1,13
+1,13
@@
/*
LUFA Library
/*
LUFA Library
- Copyright (C) Dean Camera, 201
2
.
+ Copyright (C) Dean Camera, 201
9
.
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
dean [at] fourwalledcubicle [dot] com
www.lufa-lib.org
*/
/*
- Copyright 201
2
Dean Camera (dean [at] fourwalledcubicle [dot] com)
+ Copyright 201
9
Dean Camera (dean [at] fourwalledcubicle [dot] com)
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
Permission to use, copy, modify, distribute, and sell this
software and its documentation for any purpose is hereby granted
@@
-47,7
+47,7
@@
#include "../V2Protocol.h"
#include "ISPProtocol.h"
#include "Config/AppConfig.h"
#include "../V2Protocol.h"
#include "ISPProtocol.h"
#include "Config/AppConfig.h"
-
+
/* Preprocessor Checks: */
#if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1))
#undef ENABLE_ISP_PROTOCOL
/* Preprocessor Checks: */
#if ((BOARD == BOARD_XPLAIN) || (BOARD == BOARD_XPLAIN_REV1))
#undef ENABLE_ISP_PROTOCOL
@@
-62,13
+62,13
@@
#define LOAD_EXTENDED_ADDRESS_CMD 0x4D
/** Macro to convert an ISP frequency to a number of timer clock cycles for the software SPI driver. */
#define LOAD_EXTENDED_ADDRESS_CMD 0x4D
/** Macro to convert an ISP frequency to a number of timer clock cycles for the software SPI driver. */
- #define
TIMER_COMP(freq)
(((F_CPU / 8) / 2 / freq) - 1)
+ #define
ISP_TIMER_COMP(freq)
(((F_CPU / 8) / 2 / freq) - 1)
/** ISP rescue clock speed in Hz, for clocking targets with incorrectly set fuses. */
#define ISP_RESCUE_CLOCK_SPEED 4000000
/* External Variables: */
/** ISP rescue clock speed in Hz, for clocking targets with incorrectly set fuses. */
#define ISP_RESCUE_CLOCK_SPEED 4000000
/* External Variables: */
- extern bool HardwareSPIMode;
+ extern bool
ISPTarget_
HardwareSPIMode;
/* Function Prototypes: */
void ISPTarget_EnableTargetISP(void);
/* Function Prototypes: */
void ISPTarget_EnableTargetISP(void);
@@
-93,7
+93,7
@@
*/
static inline void ISPTarget_SendByte(const uint8_t Byte)
{
*/
static inline void ISPTarget_SendByte(const uint8_t Byte)
{
- if (HardwareSPIMode)
+ if (
ISPTarget_
HardwareSPIMode)
SPI_SendByte(Byte);
else
ISPTarget_TransferSoftSPIByte(Byte);
SPI_SendByte(Byte);
else
ISPTarget_TransferSoftSPIByte(Byte);
@@
-106,16
+106,17
@@
*/
static inline uint8_t ISPTarget_ReceiveByte(void)
{
*/
static inline uint8_t ISPTarget_ReceiveByte(void)
{
- #if !defined(INVERTED_ISP_MISO)
- if (HardwareSPIMode)
- return SPI_ReceiveByte();
+ uint8_t ReceivedByte;
+
+ if (ISPTarget_HardwareSPIMode)
+ ReceivedByte = SPI_ReceiveByte();
else
else
- return ISPTarget_TransferSoftSPIByte(0x00);
+ ReceivedByte = ISPTarget_TransferSoftSPIByte(0x00);
+
+ #if defined(INVERTED_ISP_MISO)
+ return ~ReceivedByte;
#else
#else
- if (HardwareSPIMode)
- return ~SPI_ReceiveByte();
- else
- return ~ISPTarget_TransferSoftSPIByte(0x00);
+ return ReceivedByte;
#endif
}
#endif
}
@@
-128,16
+129,17
@@
*/
static inline uint8_t ISPTarget_TransferByte(const uint8_t Byte)
{
*/
static inline uint8_t ISPTarget_TransferByte(const uint8_t Byte)
{
- #if !defined(INVERTED_ISP_MISO)
- if (HardwareSPIMode)
- return SPI_TransferByte(Byte);
+ uint8_t ReceivedByte;
+
+ if (ISPTarget_HardwareSPIMode)
+ ReceivedByte = SPI_TransferByte(Byte);
else
else
- return ISPTarget_TransferSoftSPIByte(Byte);
+ ReceivedByte = ISPTarget_TransferSoftSPIByte(Byte);
+
+ #if defined(INVERTED_ISP_MISO)
+ return ~ReceivedByte;
#else
#else
- if (HardwareSPIMode)
- return ~SPI_TransferByte(Byte);
- else
- return ~ISPTarget_TransferSoftSPIByte(Byte);
+ return ReceivedByte;
#endif
}
#endif
}